{"_id":"hand-polard","_rev":"281-bbd986ba5a7ff6dc244aff39bed1f2b8","name":"hand-polard","dist-tags":{"alpha":"1.7.7-alpha.0","latest":"1.7.7","beta":"1.7.5-beta.0","xc":"1.5.7-beta.4","dj":"1.7.5-dj.2"},"versions":{"1.5.0-alpha.0":{"name":"hand-polard","version":"1.5.0-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"56de4af23d9260b62117d2d0917512cb8369621b","description":"## Getting Started","_id":"hand-polard@1.5.0-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ffstXToA1NCrEGnB/go0RVe6PM5KGoC3NiG9VmCrEKYlTe9cmIGlT8hUGoSvY8htgn5N/FPI54KE/UG3M6pA5Q==","shasum":"08cf3f0a96dbbbffaf726362516c952a6aab9bd6","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.0-alpha.0.tgz","fileCount":84,"unpackedSize":3148025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyWbzCRA9TVsSAnZWagAA1J8QAISkvRqwNcRbszH8F06V\nP7Cd+3DuiBwfcyMfkKejcQ4qEHjyrlssZeFdzpcHe0bNbCVj5XlJH8yXPEw5\nfh+G3kwpwQ2808GEx+X8nIDCf1jENyO9qv5NHN51O3OaBViqgsr2QK8aM6tW\njHRXakCjsT9HTnoWso7sAYh9TSQBjMQ6JZ/wt8oB2nf2K1/Bbj0seQ58lFKV\nOgBbXYmnz1Ny2GOEeiI2pXEMfUlwzmQmXwAOqOkYBqHEqvgVimaU15HMYDg/\n2rr0Sv40Hr/8dX1NE7ArhdokOPpUMcbTXTGKfiMeqIx2Qlzddq3tEzrqQW7L\nlJS5mU8u6pK83vgxSrGsUf4d7603cM6M1N+cm+T7loy6ZC0jpYE4APrA0LW9\nNwY0kW9WiUpkl3Rn8VPo38z+/a0oIWZKSVsWw2CKQ2T6O695Faaj+W598j73\nKWuyUfI4iPNXYPgVFgpLI8L73NLUcFnzW1btC0hcIbLfd8iFhZs9j1r8VGdI\nf6G2lGATGniGrsxXJNGv5Img2UzGFGLzO9nLmPzEzrKw0aTZjEcvE/CftmO/\nC44rZG/dnJ5PjZ7QLVWXxGXMck5BLT9XEkM1GDVCE3y5F1n7yVL34AzuMKyH\nUTMhll36GrFyD23hT/Wu0BfMNwxhyf3Tv5aSFjga7jZsaSU88BROsFbqGQZS\n1kxD\r\n=JDqb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIElLS8kW0/ZsLhtPFFQR8g+Xr2Da/g7C2pkLP80HB6VTAiEAmOzmr46gXLfuL4PCxeSFzDcqVgTlMm5bEsod45qocAc="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.0-alpha.0_1640589043412_0.6461019325685184"},"_hasShrinkwrap":false},"1.5.1-alpha.0":{"name":"hand-polard","version":"1.5.1-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9cbd5fc87e00ed5da05232c09f579920e4e06616","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-vpXALUH8t49sojqEFrkQ5mPkM8rABTvILM5lwRnyigHkNcm2mrCWNTH/yNOvQ60SmAqSkmB/f4Mv+mx9xPhQug==","shasum":"ed4a94dbaf3397b892b2948d7fe054716255b0d3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.0.tgz","fileCount":84,"unpackedSize":3148714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyqjMCRA9TVsSAnZWagAAL2MQAJGRTfFPzgODje7M4N4o\nEe3Ao46fz+7zl7XC+qWR1QUT3/mDgAZBBd52tYRK9BJ6M32d3CH3klr3/pgv\n2XWMVBqgligMHgc96KQfj9uZupqvEF2uuZfr40aj9nzFeaU0cRkNZTc/y4Kj\nEbwfYHgtroQRp6aEO64w6iuD0Sq5Dc8KspWEqTdMuCllBpN5QDm45QN4B32j\nQENfMblq6Ikmyossy6XkQRC2OooR2Cs39TVuHDQICuBsLq3U7xjdHf1gBast\ns/Z/OZBSpIKKf2x3s9SRJxj93vlmbmlHsIsqgywczsDa6QumtwbnO4bJgjFQ\n9LpQsvPQG6FemFowvtfN0TJ6fKnBZiTMirZxJbUpIV4g+b7kf6P9s4mtveST\ng9nn/HtDiywHby1ivFs9otCGx+NVgMzUMpQYwB+BfOjNTPiqqGLPQBf4tWww\n4BIVCkJMinwTL5u/vtVNkKqMfS6gp4GwaAXDe2UQD62DA8U44s/e+FyOnHVF\nEKWmkU5yLlmExSfNJXQw0+kLFjdW1T8tk85pBPQSqNwJmhLJ3R4DgaJzCTld\nvyyinSSNgLlVXPIpEF3E77vXU1gTtbcMUErfHS+RsL+9ewkqvDgePWAx4hOH\n3KJ8MbepBZAehxNf7DOqTsj1g83S9J7sxeKwQuH7dFBiD3x4fTvTYTGaNmlR\nWhpy\r\n=0kNd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0JfVWw5HXLj1TxLqPmvNgbSQdskRTBOR6Ezk7JtS1JQIgItjrjpjvUq23z1rXCEky3CTNjfIc1f4cba9Xo7ttbTg="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.0_1640671436384_0.783726543149351"},"_hasShrinkwrap":false},"1.5.1-alpha.1":{"name":"hand-polard","version":"1.5.1-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6f37a1765d60823850b50b5dbceea045e90fae51","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-1/S8y6vpp51iq+SQxHxQcVHMQZkw+S5c1wioEvRnTdFUByFG0w3vEVD77XKOAKSHP0ewk/GoZi5Je+lDosuYew==","shasum":"5f9d8d75e07839b1baae8cbf8899c6b70ed50a58","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.1.tgz","fileCount":84,"unpackedSize":3148843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyrMeCRA9TVsSAnZWagAAieAP/ikATmxdCdzwVoqsGK3L\nI9JZN2SjuLkUaTiZfawgaL5ITM6NbiNc8zni09LO7fQ8dwA2GXZKuuO3eW0Y\n57Z3+nDZ5w7KFV7xGONT/Cr6SRoSAKo17ZGKwSO9pinF57wWra9cGpx8aWNk\nspbwlC9cFf8yXaTbgLRK3Xysq8xYt2ndlkiG1BMl3x6uk9XyNhEmLh2AuOm2\ndS02ugiBmJ55HMGhVtzBZwryqVX4ji06cPIz1col1HOa3brDtyRm/Q1yXwvm\nzi8eGe3ZMZe7AxXf8cNsHLu7EEqVIw88fvCWn89+jhQTxpCofxo+oMaiawIJ\nyACT8P0RJ7lF6An2AT5e0IhlhRaAFJRpFflO2pyoeu6ENyMjS9CGT0oEZ33A\nRgPZVeEjp+3yC6UMsqsmXp5kxxm9SR6Q9SkaY+XUZgPS8gYhYYw1KQRCYkRf\n/Ti2bO0p++MSLKYZUxw86mAuQ1Ep/QsDMUCBGqJmQyCER3d4xbTB7NHWm8h4\nVBZ81zD1Vm9Mgfhh4xeqvK6rD2tYwmf3K9NxSf7xTsWlqMOKpfj0M2d0koKn\ny4DFSt7Y3PIOkoIaICWg9eAWsAzNNTBDWp6adr7XBswcVVag3XGtJ5V2FEnz\nkoo2VtUyxTaFf4U2OFArSHvsDApTwjkwIOhzREbizisCYMQTXKZsZG/IuJcx\nKEF5\r\n=Axfl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA6iQOlPKze3zNpKY/C6frKI2XTF4nM2c9u/g80ahSMZAiEAoJ5FbJD7vverW4W2WboExDmYyrltSfPNM0iJcdpbEKU="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.1_1640674078429_0.5105933907786708"},"_hasShrinkwrap":false},"1.5.1-beta.0":{"name":"hand-polard","version":"1.5.1-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"52b701385a181cc9dec1d28e7569c0f31fc050d4","description":"## Getting Started","_id":"hand-polard@1.5.1-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-B+LrDrER+oipjrxfvsrjKHmNDtxOr8fVbGN5VYHW2euMMqMMYmH+vYSdvZ+KiMPGh+OF/+s8NSpDofq/rdprAA==","shasum":"f4049966722cdda000b0da0da05d137e32d4906b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-beta.0.tgz","fileCount":84,"unpackedSize":3148844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhytvTCRA9TVsSAnZWagAARoIP/2CjG3ObxOBs6+X9KwnQ\nLA9aNP33de5hgKy0G3Iho45QC8+brjVAr7Wune4QaTER2igqmVgKWBhEdwOh\n4Fx9NvyUaew/UzwuZ1ctoUJRtoo6AVNbdIrBR8QlJLZkxbTZhP2xvjdkhhgL\nL9zvfEhnu7BtbjOddiyMkEPDBl7WUFLfcao6Rul0nM+DaPYxIuZzUPihwZlJ\nW/3xRFBrrwzbXib12S7PcjuNX6epAWDlOh03mioX+p0cB+EcWgk0Tt3jvdfc\nsPA19aaBHyDKRpthKX3wA7HyZbJlOty9SwT1yEyv4PYEzLX1Xttrlu/M454k\n/McGf3A2neTpQuefkGxYeF4PycQL4XPZ4z/lErhqwcvrqoccCguo4ktadGqO\nFkk/QChmLLZ+I0m+waeegOw3l9IxKRvScTll3nzaKm6ymgTWCO/Cu8CpsIZL\n6v57wC43rKfPuwtCciiUHltECja9UIeqSYRnCcYO2sIuQADc7gP/dlfu7GHS\nZLN9JWLHDCS6h34Yj0eoeaK73ZmUcpEMyXBUnyyke6PPss9tSF0+lBc7tc8J\n41NvWn46CbVEBEaPing+8gkh9wrWBTIA663Ou4P/ZMVT5sQoPHuPfSz+HqLG\nOuxXycsnY7wAvmS1r0JwBziLWvmy7zQLTMI4/2wuCDfXLmmSRkuJZ9FLDaOy\nrNAH\r\n=fxFQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJJ32SXoxqISNsNAXngxsjlp2D+hOHsn8P0o0kNP6zLwIhAPdbipl22czd+1Q+QqDTc5+qFjPQMk0UQbTRKB62fzQ7"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-beta.0_1640684499321_0.8465772816991461"},"_hasShrinkwrap":false},"1.5.1-alpha.2":{"name":"hand-polard","version":"1.5.1-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"da4b604fe43b1b3ca9ef99868c6985bee3864244","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-BxpZlizcAmVxhnAen6oOvvCctjTFXPrW4y+wgjS7NUPtsFqNUJv+t4wV0DY5Ty1LbFOqAI0FMuQzXUipedK1Sw==","shasum":"116a6187000e2b7462fefbe466d501e345584be7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.2.tgz","fileCount":84,"unpackedSize":3149058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhy+pbCRA9TVsSAnZWagAAArIP/RRv/f7F1lI8X1lhEcCJ\nSpSfvemaw91WpwFvBAYVl0QlkEARPwnzR4tPr7Htf/o05fHjhKwQPro0lnRh\n7lvY+p+Gb0f/G1B1f4wuzWbvzcS3mzfCe2DUfACK2KNiQIE0khdaCpXKpv/B\n14UcrOw8dv3U8Q0eFMqTH8PnBFV0+qzDk/TIUckDn7yUenc9vwYig0sIM+58\nlYIas4bGuS6ke2afIb6zkskMWOyp7ET1fNHNubghV2c8kXX8yH+tefQwj3XK\nyehasIdJXRqF5Wmr9YVjKc3kkY8k33L2HTbtLtDOELuxiWPFv0hpHdF45ur/\n2skSLE9q4DsEgE1BZCrLRchwhN/WxpscoN4lEPgTAOZ3NIDIATGwJ2A4AkVw\n+DF8fwdKwK+dgGxUc4wkBf6BktnHm6C4K/D3tr6IK352huCWhFYj1rXqlUEZ\nSJjxpD3OWhXogJehnTGUPn0tkCuU799euIYBpiTKzFQFxzNYNTOlRbGAxMEV\nTp6N4f+3v3m2+Q+5Vd+uM2oa1DN/5KIXr1BIO4zeEijkHFCnmGduKlhvii0o\n52ovFFubJF9I8nVTeaDB0lKVzHkmBP/HpdjpU1dz5zqyw6zTKiaKFtxSFj8z\nUqc//QEPd5m5FoPfP8XTUk01oxSazI6iAenAaHwxMu621t3ZGuevtMj2r6Y2\n/UW2\r\n=wG8k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBgAbYOPxCSiErYJZsZcHO1kusbhwlB+/vVKW5axgyIpAiAZl3oNfMOSTnK7EyzIF0KRXw2nM/+gv8plXd9On2NUMw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.2_1640753755752_0.41169545958268183"},"_hasShrinkwrap":false},"1.5.1-alpha.3":{"name":"hand-polard","version":"1.5.1-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"07248ffcc73e5f835ec63b3c9bca8bc5ccf6fc04","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-wL0px0h4EKLPg9iuD9c/wWkxrnj4enlBtp/LGzkkX1RRn7SUvsPkbShq2ycPiE+Wt4TF3ZrkhEnU4kvtp3FHhg==","shasum":"f2a728d67c3ea897406545b5ae2e7c9067217c28","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.3.tgz","fileCount":84,"unpackedSize":3150029,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzml+CRA9TVsSAnZWagAAfaAP/A4bGIlEjBEP8o6vx3rU\nMxZ5ypPUomFA9iExfyV5V+we8ym7PwmfeFNuzSznKGREZ719m2XD0lpfH1+8\njbXNM0t3wlXtAxSJjCbbUdcwTGtJsGoipJ3hrcN9KbT6mHHR5M6Vm7CWbbwK\nKM7nJwAjxOhuicSEiR25rzaFIeR1zCN4FIvXYQeJWu/YH5y1A9iu9oFoSGgh\nQZaMAOSLPOCv0WC5Lq/xTxj6XnGMl9vzeZTnmurS+8Pcm/mzNHOX+Nq6Vdo3\n9A0+XVxxANm2aHH3DngS3Ytcr3R0NcQGeNaBPAOFtKGMgtAA/dPIynWonAtY\nPmvk1jeJmXhbR3g3AlBHqVmbzjWzcyStI1TTjjGvJahTKHAcswmDly0+aPUv\n5zMOtLQdkhhhcMrmAM1DgDNyrPv+LmmRPxjxTssy0s95GW9v48QiRGweZBM6\nAP932DmG4Yo1QO1yICE1wbdb/8z3H+ZxaJ9S6qfdo1fZsOm9doYbU3I37aOY\nDi9rAFOJ6KPpD30q6j8nAD4I3vhTrgIPIcTF/rYzhDKUrhTeG7adEKUGsS1W\nMWDdh5DBz+tD+WXrtxsPQ76LWbp4NdJ7renvp7S45NzrfepjwY4OWf7VHudk\nXIbgwd1l1LqWjQrwa49+gw+9qbT9AP8HyMC+M0sCJ2w4x6Ebl1FG74bKWi9j\n//+q\r\n=x6U3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCn+9X3LpJnp42GVcG33mUpQoz8koUJJnl6MRPWFjth7gIgF2oJJQwnSUJ/A8k0kgYa2llTaUqcA7wYYDO6onZdy5Y="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.3_1640917374682_0.9927400930941808"},"_hasShrinkwrap":false},"1.5.1-alpha.4":{"name":"hand-polard","version":"1.5.1-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"452f46203a78b62f9dacd246518830501f4cbf26","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-iTnofa37mnhJGWp8Jzyjhm29hVxMUWPkGMOwJrqpKJS5iEAQw/5THxSsdvXle5q4JQ3pFB3gvdEJ3GrDnaRrhQ==","shasum":"ab363a5dc56598647c5b5b2716283424a05c4cbe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.4.tgz","fileCount":84,"unpackedSize":3152640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzqqbCRA9TVsSAnZWagAAVNgP/2s5t/uJEDssgnxtts8U\n2/H4kyQGTwjqqlNcwkLGfBrtUpRQJVtcsevOcL2NeThtLXbq0V0nWZI7v1gU\n0kbiC2/qRG0/d/y6bvowBKlMg0dkXxddvp9iX/6ypTP2Wg/2ljaOqlDRviRz\ngPzCLu+o+ACt1gzr/XmAUC0G78i4NY8tyTWZ0h9t6duUDLcnzFwDOiHBP9nX\ndAsNt6jblzMSjQUPElTkG+6QaRlIsrFy8ruuqfgk6jHwSOyQ0vRTuKmHfl0P\nsqmmde/4P2cjm3T1kpbWQohCsO7YHzy91PmZTm35HkRbAJFj/rX4vDoaPt8A\nqTyZP1ewWlrtu+XIBtfLLWa9os17534twwWVWZWnIMloT/9/qlGczZtdPPBm\nLwmG2mwaa778ydP/aLx5v7MJwKiJG0HYfQekiW8EcVYGPkTyQGwRuUqBJ6JR\nLUbpKytQj1Jg9YhlswZmMyj6rVHRo5fz/o2zgi5YOTp2eVe0izz6YzEHnzgO\nvF2EWGT+QqjxnVq6zF8vyFDbAx+TiJIvql3MSxxNh8Y3Oa7d05pzIgPTSFbe\nD44BU2FABuxAh3HiS8Nmhds+g5Mp+Nau4MR8aR6oycgRzdNL5p/pDftGLc1D\n04qtcY9XrNH1ieBPdVg4LxS90mAStogZv6e5hGX+vV402ZtHwq/R33dLvXA5\nn6wL\r\n=tUIj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTmyK2r2HCtbYzamFQQikkj2GJXA33aQcRDDqytNA7DgIgQ7Xmx9NtPCzn9VOkZlrZOCoQAFaORcucDDiKeUs4jk8="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.4_1640934043411_0.5146972001836658"},"_hasShrinkwrap":false},"1.5.1-alpha.5":{"name":"hand-polard","version":"1.5.1-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2c8e8065a082690b0a9247de8262f29ccaf5fe5e","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-DPpYwAdeuwij52V0DNm2JKhFhOhwiXIR5rN934W1X7AKifHFjA9B5ybfMX9uD5sLZwsGudkMUZQoHO+gQZLLyQ==","shasum":"b40c48b3ea4d5171812f46c805d7241b68081504","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.5.tgz","fileCount":84,"unpackedSize":3153069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzq6OCRA9TVsSAnZWagAALnkP/iqLUHznAPZl3fgWKmIt\nIq3nWf26iN+mjAJkHjOEI9vMHqFijsJn9yIzK3aJPVUTQ++D/6xTE5EtIHe2\n7YOlkRFIz6FY5LGz31Qh+GSedwPw3NncgQ4Oxa9czoGfhq9pugduWFwDwZPS\nOnwap+2dmCE45WdlK6XsqMqQFKPxSvCBkc1A1hOVoVsK0LjCq9KzGgybr9ON\nFS1iCJVYKBUx+htsCfc0Hjn8JOZ4kDJbIg4Die3hQRs+H52sj9c+lJaj7wuW\nmpJocCyOUAWd56XC03Z/ceD4tA0h9ROMrZtdLetyRfcKsiPm6Vj8g/uKUn5O\nAE5UW80vODAC3Bc/MglB1LulWms8T4gz5tM2pqmiTnXhWTs50SG8d/MU7hgG\nKhAmhOdnWOOQ9USqAFmUJKuHn579dVAai53nCVhgEUncuhLyKPvJal66OYie\n32ofKAOt459e1f0u9aXtDFuPN3GQBikaIc4v1vWBvRj0VvT1z1/pjPeGT11y\ne+jX4Sd6hD+r37Q6lCsHS8N0RJXbSUR8+jZ2V4m2pHv8+ShzLCL/OJB8o8Mh\n/rnp9XRHMA/6A8vak1/lcpUVvI/6GswGP4xwLrKyYP4t3uVxAUJKbWXuxW7b\nkGK+XnLnk/K7Ks+KdhJxXMqUhmVNDpTIHm1xESb6TQFfdj66qlykXPdhOYAm\ns5AS\r\n=t/gH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBy6oM1yWVBlPskEY8Br0w8crDjEVhpou2TsQDYUe/QNAiEA1JALY3Oss4YFooskxREm4CxtJczr13bUURAPKjMy/5g="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.5_1640935054345_0.5661000586435139"},"_hasShrinkwrap":false},"1.5.1-alpha.6":{"name":"hand-polard","version":"1.5.1-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"398c7dc65244b0cddcdc5c98bfd97b3d695b63b7","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Um16IxbCPSG88uAW7su+g8RJJo48CXvsPx9OoGBp3sN1IYIvg+Dhe3QnID0VZey2hxMsyR8/wsd4f5s0qzlUiw==","shasum":"34006d4f04c730bd984a815f536c68bbaf6f6983","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.6.tgz","fileCount":84,"unpackedSize":3153623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzr5BCRA9TVsSAnZWagAAW6QP/0jNgOgB4lPCHBZGxgKI\n7sZiKSvA7NvVw5vOIS1Q+4RauFvw1DdOdQiF1B4+0Xg4b3GcmMkax94s5AUI\nBdoDSy8+oeSQ59C9iZPec/GsqxdYOvhwUCpYCec52tITn+uruhX6bgSClooH\nO14h19TfT/W9L4iP1SyFpe4mC19KRQo1zsNxnF2F1LQf10Xm7lueF0/7Mp2V\nxkmYjoOzRjIfjWyMAsYI9XRHAXH/ix9IZoEJf3QhGJpZ15goSQ9ll1rs6mZF\nLAETbtR0fnWvT1GJ/PPfH+iWkj7mvM2r+YhMHJ8WFL6xoGqWFDGsTe5AafpR\nw2bstJ9fpI2rYjKlAg8oVvaebeWByIdP90dHQNh3UDW7Xr1Y44k5AJ7gOnMj\nQYfgK8d/stpD5iU3C9xzfjoyGLsC2almAMjX287y5ye4+ePt4AQs45rqEvYI\n6q5DlDMerlB/hHCtIC8zLA5bYqf6rblHBtSBbEGihkcnVWrGi+RyzpPR5liC\n6xpAkHMQCBWzKj9hRN2z/dqJ/73O440Ou28FCeoNbiON0I/Ya5wgU2EjN0FD\nbmPObJw3Dzh79VfMUyVrIFynA5F30bwRF8R+Q7RdDIdIjIU1gIDheO7sjvVo\npYfbasTRi7cK3GW4myBbkMU4je5DU6lJnAG8kWHdO9nCidLdt3AI8gYDwfg/\nI1r5\r\n=VN7V\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFn8oBe12j5MW4hCbvNKrGxMiMOHH7W4tgCSF4B0FVoCAiEA86dtysKix33qBfF5OXONC5YY75SmyPMEhVIStcfth50="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.6_1640939073651_0.6082715336671625"},"_hasShrinkwrap":false},"1.5.1-alpha.7":{"name":"hand-polard","version":"1.5.1-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"989160858e4425fe9fe2fdbc5f5e6a4389858c16","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-2mlpWHnBRDPuemasdJT8br5tkLNq+NMs4p6M5m0mVUKE7j40QhXei7nbDDhB/q4HyeORgBUuM7Abuipe1WQYxQ==","shasum":"736ee159ca3523c782a5eb8e979190616e840f8b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.7.tgz","fileCount":84,"unpackedSize":3155289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1BllCRA9TVsSAnZWagAA5YEP/1YuV7d5WZf+g5GFmIy5\nknvjvjbb8oDFIN9sMFRN13JZCHg+VXnCONtG7s7i+GsaT2BZuvgRY+xccoXp\np5MXCMSMVEBEdBk1F+AJYD2MSROztTAiVQbeGseiBGFWJvc9D3SopxTu1P3n\nNio2mnTB5/3sQ8tuSoPstb3n7fCFo6owyOeld6pzOOIRK+ZFuidUOuAYWn4N\nlQy48p2kiUKisYCuu2S0f2WdVzT+ItORx38o+KMQxv1m5VpiVDeJpf24cnI5\naaPw/DaQZYNLZAcLIPOuR/nsvhsCsRaYTKjXG8QYDC4ahC5NxEXGXn4wEr93\n9rVDWCtoE1SyEMtPzlkEIuGjvPspK0sIw4lUJkWc/D3xFz8U1RjWffzPvoAf\nGklvjABU/Z+zHXH18ic2rb7VUuUN7Hkg86FexyqOtWL2I8B8RUXnls0ohYHh\ng/NXqzflFR+l4rSPWaGf+F53vEhF2B+DhSNGScSrp3wl5cKfuXEA9fPJz7/C\nDRI/myi38iBcDA6KTsS8im9qS9dXvpJGKy92qXLyWLpBViseAmkbL1DFZ90d\ndyGjNTVHnzZgS+3AmHAOj8P1a0b9vSMyjciD9J3cBGjIFMhBULJ1RewdBuXY\nQTDmq9QqAJWzm4TonnfYFMZyi4KPRwpg4P1j0ZOy8C4HHdju5ugVKVmy7S1/\nzxQy\r\n=6eqn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCoD91nzDZiBm9b2ALJTGzhp/Cf6wtKiRozKv5l0BnpJAIgDswGqKMx4zvmxxnbgGzcSzPS/3eaXFTf7WleLrjMTGo="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.7_1641290085613_0.10989884352739954"},"_hasShrinkwrap":false},"1.5.1-beta.1":{"name":"hand-polard","version":"1.5.1-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8fa39ea9926da733a1a42a458f492f0f822e8662","description":"## Getting Started","_id":"hand-polard@1.5.1-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-k2LMX2HCcJe8dyzZSef7PQNl2ClicCcZqRSIpg225UTDvJfCDzMwqWSZAPm2xFqSPbDZD9NsLHDz6NvomkOdbA==","shasum":"e585adfd119ba4dcd9f4bd66a1f9848aa97b7b9d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-beta.1.tgz","fileCount":84,"unpackedSize":3152533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1BorCRA9TVsSAnZWagAASW8QAJCXwCjY6kcu6/eS1VUR\n/UMejAfLNpi2yMBNi5wtZcg2petUDl+iTL70ChV4rZQdOQo1CubAjsCGURBF\nIvr95ubRYkoBe9rhLfa4pqXXHRjcfGpY6UF3T4MqvZersASafT7nesAMBZFD\nMQPWmoNJt7en/elsIy/qvajhT8iqcX+je7bsVejrZuKQNr0Ov+OLcXrL4bqF\nweHFb0wlHnf8BU4p1e91O9c3Dfbf3oomZU4orenvxa+VvqU2G2R/NJGWRjdg\nNtKcEo3BefDzwUW1MPFOLwtlc2OnFnn2OL6IsZnB3WifmIbXlrBpnl56VhVT\ntSUfRLAoTGqef/tLNzf5qes4TiNroMGmtG0oat79bhJYEGP1F+kjBR633966\nebABe+efIXVX9laDJN0+HjKiIgrrjb8Jivcev18BoJZIAS1uPCJwVeZNpJ1q\n6xqv9ldlBYWe7+tOguE4rM/uyFTdszDjmYOqJ5rIC9f6aum0CDjLQdjTyQus\nkjnMBMwHJOmBLcoCgDfjemTJ27ME211JCLhXHO4zOq6den1KxQq2C9c/459y\nJIZroC/nWj+caZBbyW4yme6TWybyBHmUSdTVf3sskE1dTdJeX3v058nFGlSF\nThLmpwUb3d+IbhB1DOFnEV3d3n0866SpKcG0S9ngqwN/r3O/CQpGEGYyuOxY\nFrGy\r\n=7WGt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHgxeanFEgtuet4RjYPLwQEJakmdn07gUOTcVhKQRRshAiEAm/W5zsP95FOA6za3at6Xx9HTEXUb2KmBJOge3y+K2/k="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-beta.1_1641290283173_0.1834635737785837"},"_hasShrinkwrap":false},"1.5.1-alpha.8":{"name":"hand-polard","version":"1.5.1-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"354f0d0191ce5131b25839ccc22c20c46f35a1aa","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-KSMKDa/pPYxo0AmWpwRRRt4RdB5xbwIFyL/q00iFUE8kr5SGVY8bPjIPkXR2FUoMiICDvRO2oxY4anqxryCgPQ==","shasum":"f02dc7fe94d68d58f912cdbc1045b6674774b81f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.8.tgz","fileCount":84,"unpackedSize":3157606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1UwtCRA9TVsSAnZWagAATkUP/A7HrGGabDLQjPAKtctZ\nXtAlZfHP1V7lj5C6WuSCZ345oGtx/MKw4USoA1q8pN/HV3dcBu1Nm+Md+rg2\nid28l+kq94LkW+b4sElgvk5/cCuoC5y6IYUXDt5n7gqpAmDKmVFnoMeU+M16\nfRSD/NOzjfmx071Us3b2NI+Q3ujFDmfkK36Z1as2XES+sqeOE0qsPE7DKgPH\n7EJzGssjUM//BKk6gHMRZHGI/4L0V2EZq/fGs0BgW0e8sVkwzpIjFBa5hFiC\nf6Xw8wlsbRzreg8HAkyYanaJ99yhjIxRc8xdNX6S6cyfz+qyX8vGMcSlrcES\nQc6cSZV+VtJSAnskoeUBruT2a0MFOznFilP0efVlfOshfTlu5N/XxvUu6pxq\nJQBV7lXEyQFozduBfpQF6YOXjg8fg05/dDlQ+5wiNJBkaDhs0QH6KSrOO+5Z\nPd03IwCBk4HUtyProQDCdQoNXc3tRertW4JaPoAj4gtz5lQx5hIceCw+jst+\nybCbky2/PmexBHf1GLCBZ/3ELcI1a6OptYjNLHdmFTJjhyoecr1h1X8fHubK\nXZdvdikB8mo+pJruoDZ822q+2/Qqjb1lpRwsBgr+30B8Z80Y3iQ0iTmZWsxt\neLYnHWnFhA29711T7ZtmZ7SIekITsW3vcGxLa1TCRwvqcSQa0np+SWQ9uwuM\nYipY\r\n=8RrW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEocuahbF8qR1Alcn1hKaWgZyxSHE0RtESj3ptBKWfCdAiAyOGzJGcciwnwvKGAXIDnzGnNtFSGWuWIePuK57n9Ugg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.8_1641368621103_0.08245443737888225"},"_hasShrinkwrap":false},"1.5.1-beta.2":{"name":"hand-polard","version":"1.5.1-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"57a33a437b292c27230d2b736ec02ec48159c34f","description":"## Getting Started","_id":"hand-polard@1.5.1-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-I5hdj4FbwWho5fegTF08zaz7H6xK+/o9vzOn/IHxQWr5u7aXjjVhqfzHr57IHWy4osJYuYivnkeyqAdasowb3A==","shasum":"d3848074762edf61ab872a8c3b55fbdbd5fe41ec","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-beta.2.tgz","fileCount":84,"unpackedSize":3157058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1WFeCRA9TVsSAnZWagAAEe0QAIzynJLimNnZTO24jHVy\nz12XvlbYUKXzUfyXx69d+mLQnxMLz5qlQK+37YBAncl9gnFZevSWZQuO/EXG\nyR1AXydHiK7wyVgUzwYoK/LWjxzcL88GQ24ze6dDQ/AtPRJeiy57MZs4WWMQ\nvJyIMCYd+UPG4KqNNM9qtM8pYRvF4G2M8wl1fzwxZ9gT2m7ytAaTkwT3qIDc\nckI7lgrXQRRMkVxsPh8FX47dTpzPhvaKf5y11wOOZ/w0jf4IIUm9kcPnI12f\nsvCcPRcLQ2STaXGyIA1HnS4xfV1uD7USgvLhtFJeyrnO5TOn73uJzossorWY\nEC3j2a4rduLKQxmMyRu01xa+uJauaPeKjdf8w1/EaZghLeH6s5JzEi/qYPFi\nQ8Y2JNcnd/j6OBtnWW/z4kEznAgpTiOtIa3YqdSDD/jT5Y0PgTVJ2QPf37Qv\nuJ8/hscK8GaD8VK2SuHI7dP82CWpDYFeyKc0G8c39nezTRC3nlOeroBADMtI\n/6ZieZLjRTk4hALCZ9yBkb4SPXFukQOMyWwTivw4ccqUmN0IsFaBCgsMWq0a\nwDiOOhVUvAMYI6ubvAa62Q7Xh+FKexQAqjX7L1Yc7mzXMH5DXMFQ1zUMxM6T\nEp0HxrEujg9uRay5Bk/eayPzigiShqcUICPOewFvDFuk41kdwDWWDdH9VKGI\n8rCs\r\n=tGZ1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX91tK/NdJQK7BJ3DEHhtSeM6WX2wGSPDsc9jrn56tPQIhAKkkQ2udPSdk9pGbUcdqjTYsfmUP04wEJDqylWuzsQbx"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-beta.2_1641374045907_0.43515262451754655"},"_hasShrinkwrap":false},"1.5.1-alpha.9":{"name":"hand-polard","version":"1.5.1-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"77938bec05a611030ae7f487f2a26714b4faeb5c","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-sSoYC9rPeWcUhUdDUV4k8tGcvL6kLKoXwevVE9YaZZOCGvnFYI2NK/4EoN/RWeBf918W4CnyvWJr/yHDs043rQ==","shasum":"1af68fb376468444308d794f38813ebd201e3752","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.9.tgz","fileCount":84,"unpackedSize":3157910,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1WKKCRA9TVsSAnZWagAATvIP/0Gqc/x2d9q0qy2+p9on\nOp42whgg/sFGGuMBt2bkRMtaNwzhOvZYdQVPj1amWidMn131xD52NAqUNoTc\nAUrxTKgKFifegtoyuzLtdMeRT27dk+vRaQMyaTY62WkypuYHKymGs/ix9Nh2\negI5c2dP4re7ep9t7imOh75ZFFPXX4T3jKNjgph86Yu5Jn9GjEMG/JVb/Pdc\nLL3YCuIFCl2+SwWsDFeYnpJr82pgiUx4Yijy5loTryZw9FNZT2LNH/LbDFug\njhaQN9lvUYlInHXjQgj8uNroszMoWGVN6fZFDbg8QU3yE/yvewI/OZq+GYS4\nhu9una40dBZsrOC7QwLQFwgmFZakcVdTq4p5DZ9i6DlUqU0Ncy2y5Y36G+qS\nrvkmyUFKg3ovEUTo/q5B/jgrk39Uv8dcacE+97cZk3768f3HJl3skYotpj+N\nva/f4VbgUlGgVvDGb10pXSzUS9yz1CN1bSRDTABlXOtOR544udRu8nUn14i8\ncZ8of2mcNmwt6P47QiHpDpkE/rEcs69weE9yLSJ6edCRyRHgSyUInhXUBdw/\n94ehKC272zw0n/2xXc0KXUWSC9/Eb1VW4I8cxWQLcOux8NFE0ooGHDnHJYB6\nxWju3tqlLp1kXw2zD1vYUSpNO9YeIZ0iQSO5WWxgKVbwyIHLILsxViYY2ISP\nEX3w\r\n=H6Fd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFYlWvXoE4YpQf22hoZZWD5TIpTyV9RiuP82Yz6hCs+XAiBCZ4/Iu002E7UR/8Qr9ie4VrKFU3wp1FCaElWftBEPlQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.9_1641374346433_0.9763898595785365"},"_hasShrinkwrap":false},"1.5.1-alpha.10":{"name":"hand-polard","version":"1.5.1-alpha.10","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"82cebd3d0fcbc239e5eaad752926f5fbb1f1a20c","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.10","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-HOGvN1NHI6jVueJ9aiw38fHYoKaXEtVlpGEXJNDLfaXlvcqz4N4tNJvqOZch3fAwTwMzo0hv2pZBIpkYDFQ7Dg==","shasum":"91949d81416e27a9f506e3c9cb74000749097ae3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.10.tgz","fileCount":84,"unpackedSize":3158471,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1lm/CRA9TVsSAnZWagAAbWwP/3z9rq/S6LBx5nbJPIEw\n8JJTzEtgMHjDMPBsG0qvtsqljMzykW5hwQK7XkzStQz/5MPO8HdbI4FJIG8/\nT+BrwZDzhrcU8OEJY9aEST6pHtSKKZ4Zfs96TgI1R1ql7XmejDtDGCGdiiK3\nJSW70Nrp8yRR2L3NIfOGMElM6Bt/Y8OLLahrsbcmR9+HdLsBvV5OAzebFhqb\nT3ndsuqmbimFXOzJNMTXSpSViSST849I/c9TVi0iVak78KPSqeTyohWzJYu+\nGnZmqOOSGHjvM5YoQlXzVuB+oaZAbtDfbT/LuSfan6KEwKCowwwwe6l8P/8J\nwGzk5ZvHU2qrJ+g1mUS0wut7Fkv0flq86YyESG4EqaP6wmnIYfNLn/1ryvxA\n9rc6fg9SL4CJ9p4L1Mxp+aUUlMq/K3+i+OHup8YY5hrD62Sf0V2Oi23lf6aV\niId4S76R9CMkaRxvDHBWBHkhA8p9n4DfC1kNRMgGlbtnqVmh6luegU7I2/M2\nX+r+uv8CVAZc7CS3PNp4GRcy/OnGSJDA6TFqe/j+w31gKWRDNP9Jx3BC1yP0\nrDh7Skp69jTnnbFOTwjmwAlUvi2mnNv3o6xIobu2powtBaKJYEHROTnSDpf8\nPnpK4HXMT2dUTi3orrJxliS+5viIG01zDWrjP2JMtUYy6FonDTQEt2VW7dW9\nwsZZ\r\n=GoOn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXACwkr3pMEEM87Y9DIazXjmd0Wrcwi/7616sBMR85WgIgG8I2Jyi62fy4g/EFZkmictM0+ktuHF46wZ3GM27G75M="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.10_1641437630957_0.38752886912669493"},"_hasShrinkwrap":false},"1.5.1-alpha.11":{"name":"hand-polard","version":"1.5.1-alpha.11","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"124d2a317d63598bf0fa6f372acc155e46c0ef08","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.11","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-X0ZSt4zIgHuUBsG8WzhSVTNFTMUazcAAL+GE7Nfx3UGECz/4up72aRFUpiywMDRf3A0rKyCfkFYbFNmuKzkbWw==","shasum":"cee61483c4c900ab943470ec8071238ad93b14eb","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.11.tgz","fileCount":84,"unpackedSize":3159031,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1nIfCRA9TVsSAnZWagAAOlkP/31oAEqcFU7/c3vys7+a\nzb84Dhgsn8R7HsU1vgXclqv0SVdrNeJL1mkJljxM3YaOOPRq4Ek+OAAPccN5\nywmGbVPj5xBAMbnO7PeNheEt89VOVThsBHRsG/8EQ19WOMe2d9aoQlenE555\nl4XGx3VQjYvZp9iRIjB7aAy7ayjF5KHjRlgSqW3yPczFZ13mEGhiVVgzVdxg\nw52PRm67SlBs+h3/tBT9BdoiwaVzZWOrtZRnB9VDxL15nDbXNQFgxSuxIcZG\nhpBmw9u6kEpbxqU3ggqzMbtk2v9uqP00vWpa/Ic75DQD+OzssgA+UJnlRi1Z\n2MJTueBzRAKLqJwdWoCRrVLHhuFmoV8UWd66O9S1A1meoJgsqTTV9AoW1Mcz\nfcgbaw9Uwc4ovnivkFQWyIEurWy2pyrrObhEytDCRHNu319BWZEbYKz7zvG5\nE3OVlJ/TCRUp/vhfyx6QqaS0k0mPLR+FpwyerfgIhwQEP22MvvWk0RI9i6PE\n8X8DBcEVkBnDCeLXu7r2w08ehDBJlgvKCJ03QGNOVvU4clkfbZnsgsf9WmfV\nyd3pE7Uqhrvh7SSDxBmk5RLf4b1npJ2TUsG69i2sCghr0+ytmEltjNJVjMQH\nHlT8TiQmZEK0jOm0QBoN649CNI/RDxpHdszdvsm5fBClkJCQIimjGNJAPfQ6\nr9X9\r\n=Rwg1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICB6vOiC0kyordDkdbdrxp/ZYAAwwBxG865EoMaamdXhAiACtYvpkYM3ZnDwgN1aqu7uK6kUat4ziaUQmeAeewciEg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.11_1641443871166_0.13580893397975702"},"_hasShrinkwrap":false},"1.5.1-beta.3":{"name":"hand-polard","version":"1.5.1-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8af9f43c263a2115aead3a641097074f93d91457","description":"## Getting Started","_id":"hand-polard@1.5.1-beta.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6O3XfgsPcWzSJXQA1sUtHC4a10C9gM+zatdyyxg/a/LXWavMEa921hQ8KbSagdw39JWYDHfQ5oMlbqecTNGxrw==","shasum":"7b52e5cba3085049241469d4d632293cf201273a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-beta.3.tgz","fileCount":84,"unpackedSize":3158037,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1oyzCRA9TVsSAnZWagAAFeUP/0YYWWtpxF5cl415x0fc\nOZ5JVAfKHE31rWVmK9OeBsy8rh6Qh/U10AW47bGT9fbCZjDoHWNSXidH18Jl\n2A3kNXLYD8uhJ6Duvyj1VPqouWWREpNC2BwrH60ZseuKRNUIXRwXOFmw/Qtk\n7gZuqzVCEHteeytGFsDFXieU/xch3w0jg/uypvW/aYwgNDmvathWf2ABv9cJ\nh1s+My2eTqJzD9UjfWLQPntRWKxlYitY6u6rdrPPt3uYeNhiZBfde27zvLc8\nNUpmsRMh7LVp8+eLdfXKeETPEQ8dmP+v7vY1jjCRb1mERMDlEKqueWdjO111\ntsHfb8UTSJfa66jV64zKmrq7oQj/krScJdss4yDSO1Ew2ckktXF68sO7eC/m\nqQ0cVJHk4mLNo3R89t8k3xWlHzmk6Ubgf0WiocRQ2V6wmw3dhGknhGhKV5Rg\nSvFF6jy3aP9VBYjN1weqnHP1jgHw96kroCPLDyixqbkt8QYPinO5+wJnlsIX\nbgIMpIO+5gp7Ce/H1g8BTdcofCHFN+X0MpASL76+iuZAOhis489Xdxn/+hdE\njUVwP8cM2sjPi7FkEYD96jOhZ2JcQcG2rr+aFHAnZ+4whfE0sFkBqoAzL8fY\n5Aq6CWG+VFno1Ztc3+TD65Dq935PX250uar+G+fPwGWdqOt5TNKFrBD+5F7w\n8Du4\r\n=Ktu4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0CPB9UrIuCh1Xj5bCjW2QBJAEnWAdEKOuYYyUvItyVAIhAKDYga1XnrsUmi5mS9HNL7lR0MeugtYNFfKUZvVY5l8d"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-beta.3_1641450675332_0.042519306931362744"},"_hasShrinkwrap":false},"1.5.1":{"name":"hand-polard","version":"1.5.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"d977eedf73c92a9222c2e90c304f4f6ba4b43682","description":"## Getting Started","_id":"hand-polard@1.5.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-L3QdkKA9u1s1L0JF9Iq6J9gD1rkOhWxiB9LuZ4xs74gcb8gkbzUMINMrgsTvx5OLDdRIZYkZ9Q1KqZo0olBELw==","shasum":"16dd5f288fd14b75ebcd6014f3032c02cc504302","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1.tgz","fileCount":84,"unpackedSize":3158146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1o0wCRA9TVsSAnZWagAAF4YP/iE8PsK8mMUODXAw1lVT\nKIb1p59j7VvG5TG5oeI+Xw0ppljBQry/AtJXbZF8A/1Jf/qokfl/JO11O9p4\nt0TwNbsqlT3PKvFXh47xOCr3De1QOXKB4yF9lyuZaUOJPgJXfPhK6BqsKefC\nKFPxS5w0fSd6bouzPWG646OwOolHWPgrZkzSMS/IB8wm00579wYmG29u/Q+l\nkvrRVKM0N6VMYWWYMMMCr62nAsrYjrQIZkTiv7ylcVXm8mZjHDKcctXMDDMd\nEUSe/L2/GxB2yrtZJKjujS5CoBQ2n+bz1WeE6U5b14KWIWKt3DW/0ZT+69Re\nK2awHBahyzeDbiUm9a+YyqTCKJrgMKA39MUxen5ufkSqW/+zaSVosHp3GZGK\nf1A3YbxschVeBgaiJqFLj5tXw7+9H7UA+vb6/FuJwU5pvnHBk+KNB9beB6PY\nLqKxgkuYPqJeq3GOm0ErBdxXrtTUn4godrq2AntpNmfI1i+epsQjjqYWMOAg\nl0NOFcCvFXwRg/Qnnt0Z5Eo5ym5See1dMr/F2EIT7/8+mQ2rPz/5eb07z9ca\nqE6LyGFKABCPKYrvAY87dGwvJ28I0WkobC1+Fdx0gphScrtH2mdvs34jdU6a\nIru3hSc1I5BdHNXQmtc3iakhfMEOqkVRv3qxCedIA4lz0/T2y3H5rsjuws6L\nH68A\r\n=jjyc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDOZtMW7zg/uK3pT1nWJT4JYhZBeEm0Lt3TxAA7YtrNpAiEAmcyy96iqRGSA8XGylBagzIN5I+12DoTKjkscvPMXm6U="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1_1641450800297_0.6853055731020226"},"_hasShrinkwrap":false},"1.5.1-alpha.12":{"name":"hand-polard","version":"1.5.1-alpha.12","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"89d332823a606c89101786067fbd9d1963a66788","readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","description":"## Getting Started","_id":"hand-polard@1.5.1-alpha.12","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-BZkdLPVcozyWWV43Ub2hG2ZaHw9LNhRCtIdpcIxc9hTkaqp6HmJSpErCbbcW0qQ1UOLeXvn7o8A1ed2+keTC3g==","shasum":"adc620471317052b3177216c986f5c41c7658f8f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.1-alpha.12.tgz","fileCount":84,"unpackedSize":3160786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh17KnCRA9TVsSAnZWagAAJZoP/RvW22+R+uRLXtPG2AU4\nWW1al4CMNI/p/7HDRQQ7u2T/umzoGj5F8dTGWLJj6GabrpQjI7Ayf1qTEAHL\nJ4o/aHvjfTbvAqkViBJhmI5QJppC9du23uVYtX72rUjIuFFaMwlh6BXz/Epi\nJmHFBziNI+rM8ZC1Obn3NvYSCqTw1eaVV942pbK9lnlJzcp8PaMUbqEb1Fbm\n5znVI3UBJ8rOUhZ5q1wcnD86eYvanUBoWhP2GdvZy5XCJaPWFNENGif8y80L\nPY9FhND5Csv0U+xAAe7F27jXjjNsz5TIn1xPBUVxcZl02GXe8we7ON33DpHz\njaeDS/vkmvgPrmEvZfPxlB9S8LvJolqZMapUcOyOCc5hfmnCbBhe73ZyNoKF\n//kwOkqgK5jLdon/u4NXnXj8H+X/1amKGx0m9rtT8f/RkXYxXtyOzn9VYl9K\nYeONAIZO2SSyZnRAtMO8ZKDNb2pW8D+IKCpa59GfFZvEPKai73HQ2NTGroHq\nqe475tVfOKmbzjRqgeAT4qzuMAU3oiDiOLZRMChn5v97qxVfriWQ3Yl6EIrY\nAE4Zh5P5WJ0HAqOgpyKG7BADy/cd0Tn+5xGfaCz+JZNh405Lvuiu6pWOaHpb\nJ1+lPXAogoAJSaMvZV788QW1W+AACBNRsQS/gwuCB+1EDTODsfU+NvyM1rbx\ntEr6\r\n=ZyWE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSmxWrzvVo8fitAkK0Yd9AoE77AxU4iGSfNbYp7YhVcwIhAPy2VMWiJl6ATBXxGRpSD9784jWcWgk9NPqAds3zwgyX"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.1-alpha.12_1641525927088_0.11125847354539897"},"_hasShrinkwrap":false},"1.5.2-alpha.0":{"name":"hand-polard","version":"1.5.2-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f7302f5a8883bc826f7f362b465c505881fd0aa0","description":"## Getting Started","_id":"hand-polard@1.5.2-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Ow/6gmzkG14Flqg7VH2uEjU21js2/ph+i9Ml5+pGQeqGksZZlIzUMcFK2yC2PXmhN54R9nOuNTpRsClluX3rPQ==","shasum":"fb7b8609d61a214bdfc8a488a765630a418c8825","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-alpha.0.tgz","fileCount":84,"unpackedSize":3161646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1+BiCRA9TVsSAnZWagAA2agP/if6Az5ka+An1ga3FUAj\n5PVApQyhbJHoezn3RyG2FeqtIlUsOfu3UzQ2Fs12U0WuzCaM4erHiDNPFWZr\nNbtJIs0S/4wLDVSomvA9D9J0swg6TN3594SJ2e3fngJ9vA+uISShMOpGua/x\nUmymewapgDqDHgcgHW4btEhE3y2t+r8vEYBve1Fgmxyk6Pgf1SS7YDIicYym\nV33fBbxRGZEjiWGXBU96EtbtadvPaaoH1t/A5kZw20xexigjxXFtlE0DtRqs\n7ZS55e/DtVZCgURlpriGiRsRSvBweQ47RN1Cr8WE3Hae+rDAid23gpsUE4+J\nUHrf4LVlHNsTEf3KBbppxO3Vaha0UjAXqwGOp7R+3wxsDMjHVzp8ooGvgDmB\n4ZbY2FTvQxkiZagtcpAUdQ+8hmSNLIK1YMWxt06nW5ReJcQ6VlsrC0TUA+V8\nQYgipIXb7pT1M9odL97umGkKTvHMAVLFIrcGJReaUar2QXoHrs2ybaG4OxoK\nn55ON2ToHl7eYN24Hoqxe8aLr8VrovpIQcWVoWbmf3BB3C/s/R+srYPJRgfa\nCkxFUzY2nWkIApYnHIspsGaANifzpAbufN3QmsqvALwF8vTZao1QCjXEijx0\nyba5oqYxHYVM/L207JuedobzpnOBHo9DMNW7yU4hOkFQO00hWr0VrN0rMwHN\n1Z3I\r\n=CESr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDvTTmRp6yZLuuMm+sIrJ7l/9nVZuzmjc7zCly1OTL7QIhAKTbQmrP3CSF56z4VJj+uscCxhDzXM86i6EkDqwVVSbL"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-alpha.0_1641537634489_0.9326997182980981"},"_hasShrinkwrap":false},"1.5.2-alpha.1":{"name":"hand-polard","version":"1.5.2-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"53c339f6d021c50e3a41dbcc42eb1b1c24fd26f8","description":"## Getting Started","_id":"hand-polard@1.5.2-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-p5mf74M3U8vGzswdxWkZTqxA04akRSd4DlC/+pq9kdj49WP22SxlUuJq3i3chKQE+c+Y6kGLydFYLTr0NXgUqg==","shasum":"63b17aed38cf778fe2c815b4d772a153cab3e569","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-alpha.1.tgz","fileCount":84,"unpackedSize":3162289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2Au9CRA9TVsSAnZWagAAZYsP/2akcdPB/nmR66mUBOdn\nWu0t0LJujZiBUSmyAyPwiXf1MoekaLSg/hflaOSA+MI7M9UjHjyX8fuiAuUD\nu/e8ffNmu3eeLQb1OIHtx25s6oewrUhk6o4qGd+ylC+4G/4+hAwwiv88RnZd\nj0spDnLpz2ykV9LAVux/k4IRaX9VARkIZsxy52g48WMtDaxr5RTPllhnKU67\nRLAW0FwZyHywPfsWC8nd2x3uSMZTKIKtJg9/RyNaz9XZWwwNi5O5TW5Nm+2+\n50BhLsymzz/uJBqm84lAyffQcqeRKm+zrkfCZ3wsSrmyd7uub1Sn5LkVz369\nPwDQtpHcY3RndkUAQBlpH3u/IBPvyrXmC9dDm4d+5jpG7c+pT+2Z0AqrrS/i\nx7cr/5oOJRodpoAZouawrlGx5HTzJsaihGHL3umNlmBtpoaJ6A8LqLJDhfp4\nbvFdyJqX9zT0454asdUhJCExiTNXEeemPZVoYqw8d96dt7FyzgtQPFIzUALO\nhraj7LUx9N6Ij8n02ZE1wX1HBY4sIP9w2gutTUMjYxklo+4+yLQX129nJx3W\ntjHXpOLJ8f70+pY2aPZiiI7dFLBs9ocwi/mZYpNFqD4BNArz9TQDi9hWflug\n7kKhKd0ngvEc1PY/m1/8ERzjDS/WeuhV637ocMbQKGxfkMgcgAudW8K6sWNA\nslNn\r\n=fF5b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiJrOZBGO595FzHFQW1Ti7qGliNArzVbgP8EHDp5XfGQIhAPqJR27XBWqJ+ea+6Lo3pbeuuKhXQoHuMv7u+XqjOpfI"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-alpha.1_1641548733092_0.9806532121102916"},"_hasShrinkwrap":false},"1.5.2-beta.0":{"name":"hand-polard","version":"1.5.2-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"b6c71dc7830be2e7102809d41a757a30a120e771","description":"## Getting Started","_id":"hand-polard@1.5.2-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ltHGjV8K1Rj3OpRj+MhSvi3YkIabiqWTT3NDhiRmM88ppGOsoq42n2zwR78UkTws5tXL8pver5MSSkb2DME4Rw==","shasum":"eb19d2e777197094c288597e41b53765e6133f4f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-beta.0.tgz","fileCount":84,"unpackedSize":3159181,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh29XECRA9TVsSAnZWagAAz8QQAIY4Z8uPzEIjBhM0nnoe\nIupCiEIjagAesmzb9cBSCKssFxrvLQMh8Rhd7g24W+tBQtZKl8PAGDhfdRfm\nelaXd5xY3oo9SPmQ8RCMfZX7eP6log11B2cviX7Yl3DopVKwvZzPLsm7cNbZ\n5wNxBOAjxdxCo/yi2IhMvDxmUqZ4lRl/udKyJ0wiUteXJsqgoBe7UIFeG+tj\nauPZyZyAb8FylgsUM79VRjC2mUvUAe0+7hjtZC3MC4Xg7NcUGKe22C5oYweE\nY/64/nUqjoxkvSpOXPe/aLno45Ds3K7qvcl4QGWJDn+X00hMGE9c5IC5R6xC\niK4/TRLk7OddINSvrJGSpk4t8xzIvcWPFrkqHt31HkmsP1X4OW73Ew+3i96f\n1OaffUt6WaTR1zIhSXuQGxJJjf92kILESbU6Sjc7+SRs95wg6D2AISx21yFI\nitk59/CMzxNZwr4O5pWCBAkgnN4qmDZEAN2AUaGkdtze0dWY/M4aj7cEY0w+\niE1V8q6ycwhzmIiN/sz5H6CnjuQbb70O3atAsgQvGv6WgkiXudewsQweR3Fh\nIO9siqJY7MG301j/xI7qngXOZsgLwlnUan1AcmfVZut0iiNchvKAIpHfXe/k\nhxKvtMk+s9cn8dByrWzbvgafAtnU3lUanHVourYZx551x0AxqRGLejvd9UWk\nA8yn\r\n=B7XE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0A6y43BuBhCRMy73qVFG4qxYnFB1JPF0sdARaukg6fQIhAOKAu03n6hA9FDn7Z1HMQ8GkYjSH5m50sO6d2lApnVoL"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-beta.0_1641797059948_0.4848136828311058"},"_hasShrinkwrap":false},"1.5.2-alpha.2":{"name":"hand-polard","version":"1.5.2-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9c690139e7bba11ddd9ad7e06d75372c4c7f6628","description":"## Getting Started","_id":"hand-polard@1.5.2-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-UK+qOBdAErznAL8RyTHPwdhbR0vnWl1BUoqe7ant6C54cqFrfq5UpGgqUOp4KNBAWJdqR48uirauWQ+0Lu6Y5w==","shasum":"aa7fcd0f5a1f00a21a3017a57c801dedd60b9b94","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-alpha.2.tgz","fileCount":84,"unpackedSize":3162760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3SdiCRA9TVsSAnZWagAABDsP/ikRagtp890oOX9t5PCE\n0OCY446BnSCz5y+pqzuVXST4eb5SMJtKUwop2SocI2J2rnMq9T37f/DNAPdQ\nRN7gTHOHxy2+8zHgsWqSRrp0JQGhR/u/P1TonjXl7B5zO7ruz6MoND+grn/8\nJ3EDR9JkrBB5gh/bEBdadNEDa2/U/QWxu9sm1OnxshebmxNxVvwmKYXwwsqO\nFxcFgQLfT5jX7civjE7uJOqSU32rRW5AVxa5/7qyjvMrD+iRw5u5og79ndDE\nqjOBDo9YLB3wGexroZccaTYDLU4/y5S5UutDrmLabaDfzyvw/gQybPNSjKeN\nKNe+bojLm0TQCpX2dGhknuIQ9j5ypw2JdmS4a7eHYqagMYRIyExninVlvxr2\n/jxuRRPtww9AoMMICM+rU0/APAZUENuRMS014pYCV8v0bzLF6tN+H1HCmxnK\nLNRbjAfmpzLbd7423YnmQZBZxusjH156E+2SEYCe4VmWVpm2NYcfF/g8pwwz\nkFdLe/Kh3Ex/xlXeKznQbCIsX8KciPaYqLp7Y3WassbQOIqnY+Gq55X+b8K9\n7rK9jT76DlCc9Klz/dE22aX0J9yKvbz7rifPg26akCEMHqkEkwAmxFzp5CuX\nexpsm9QQV/hs656ygnDT+Y7hJKUj/Z5OJwn3qZI/sP77BDCSwtKdm83Rhw1i\n/KtE\r\n=Q6rg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuGbnbnpGqvBE/SSBC9Bu7ULDLJ2bb+p+66cFeE/fZYAIge6ZQRMzl12qRu2KbgZNcXdXU6ckg6jEJ8+zN1vd/SYQ="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-alpha.2_1641883490582_0.5489942658498734"},"_hasShrinkwrap":false},"1.5.2-alpha.3":{"name":"hand-polard","version":"1.5.2-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8de20778a4bd037ffef19a26267a00b314a8e1d9","description":"## Getting Started","_id":"hand-polard@1.5.2-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-MaRxuJLNbNxA0VxdZMPPrlvfnFE7GTuk0uRRsFHQvU7NZJG7VtpmZhJfm0+zMg2o8iY4wZGbbmgYZlnvxPPDTw==","shasum":"7027af78d8cc3a1065c36fc995d8655df320f63b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-alpha.3.tgz","fileCount":84,"unpackedSize":3163751,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3UnbCRA9TVsSAnZWagAArFQP/0GBzuTlkqUvjOVjecjn\nFXT9yiMpn3o0brFNKMFeidU3oU8BOJsX6KCTSItrnvEywX6xmXxM6qggiA+1\ndghKlokjPkeyIkfkvmpth+I4A4UPAfXGUbuuiPIVb/pZo2G4rXoHNqFg2D7a\nhPlkTIq/8E17epbMZOJXBTH5EDuVdg9pt2ctdAUGrkgGnYtfS6CZCV0UKHZ+\ngPzUm6T0uvsg7xTgtNYb2Ls1tmdAOg8KPG9qK8jQrg+/2nHXshwYJuQFRUrx\nJJ1SE14B6aYoISfq9HTRXNGA+LBWLx8uHY3Cvozcn5GSrWhLJY6BLJYVpvE1\nconAQMtpO28frhFguxvGmcxmsHuyeoioeHj0JJ3cW4mVgfQbtqUyLqbCdXwM\nRpJEuDWbEiRD3Jv6VsslyELnmmP0K5fnJv3TAgxsyc85kWBHXZisK715Kaot\nlK4jmGiU24r+AScU1smqHvl2Trupt2fzmid7e0JY/KQXnKh851v6bVKoDA4z\nX8r24JxwsJRlByUHEjGZ6YT8NyKmWxySjLtfIfA1hm2QCGhPTwQxz4Tg08Ut\n1s73vDYNRApXI/3y4t7xHJoKASWNHFr780bW3IJfWMzm8k2WIuaFI1IGwEI2\ngCbeEY0WNlZ1HPX17D5NzcWQmBA52WTlNPAdqmItVJBoCNk4AmR4C58w0klY\nEuy1\r\n=M/0R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE3fpF+ugdGSYd2x4Ah35PXth5S/1Vth0JC1YZ7s9tEtAiEAxO8P6pfPyMRVrDPICboAQMUacLsdu69teBtmwy/NXpk="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-alpha.3_1641892315331_0.8429063591995445"},"_hasShrinkwrap":false},"1.5.2-alpha.4":{"name":"hand-polard","version":"1.5.2-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7053f7a23cf62f5d368081369ad21d1b22595f69","description":"## Getting Started","_id":"hand-polard@1.5.2-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-/GjLj9CgTS65BavONL0b+x662rkwF5XFFAlsYzTHwHWyB96/p6dXyk48/KjLWTV8AV0n24cyvaWwWZvsHuXTIw==","shasum":"a64874445a4eb27cb9ab21786bc5c30969c6489c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-alpha.4.tgz","fileCount":84,"unpackedSize":3164142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3lL8CRA9TVsSAnZWagAAVqwP/3lWY1Lr5vzcMbFluF6y\nhH53aK/KuJ4OUjF/9AkklZ0CGE/2aTA0jpY96GtxGbZzAWPeW6uZv/bsVoWd\n6WccnJ/e893XDosLyTMf5WNVTPpE2HYMI9iEtIfmZrpE16pAGXQdJYsk9KU3\nlAcfFbYO7DOaifMOpcKGStfTsEkHEgDAuPvcZXMXV3TiENIUOrFWvwziG03s\nTn8ExkhsOTRunqXrR07wZVPeLfB9lu+YPsculuOKmDedX0jgcsy4T2+Qatz/\npRBQPawosqicBQDUWwCFDCDIglC/sJ0uaxF0kAprSIFnfnPY2ib+em9+orZU\nicpwhEe8D16QXDmPVRE5vVwNhsx+feV6U2p52VkWG+1hZA18rp6IELgTcBZg\nQOleepOMLceyUPU0R6S6ZUrwDU39/KJdio8ExSuQFv8xXyms1hFzZTGTcWFH\nKtbV1p1dlghY/isnvjdLQ3LiqIxpjJGCRYUpYlNga/UbnGuJ0ACMT3OGROa8\nSbIBcvEa7FU6G//sZnpEnUcu/KIgJHDiFB3B7rP2lxNzcLoMptIzEfgPyysT\nqhZFEfH4CL6ywd3wu+YVDy/qcohpaG/j8F4gDGjnuoiOeFdkSG42kSeUUVNr\ns74utAOZJCkC9F0ZR/bvlWCbJ2s9A96qkfe27g1+6QHuMWPBdf63Vyec1LAm\nELi0\r\n=kywh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDjANA4M5Pc8CjX1N6EWX+4fCEUMZpiGmAt/JySJQa+OAiEAhzBZisCNS8CzecPwpcjcFKSLzex0RW6lS6HYHBIy90Q="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-alpha.4_1641960188457_0.5366756057265152"},"_hasShrinkwrap":false},"1.5.2":{"name":"hand-polard","version":"1.5.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"cae2f509d66c773ca85cefd1179a5677b9db24fd","description":"## Getting Started","_id":"hand-polard@1.5.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-a5wda6sAUWYzaGeFIPJ925a2djf2UPMRiQ5GmamG9xPS6gGEwxq9q2y0QMDwMpmxahc/V+SCY2U91KaBZojhXA==","shasum":"fb99848b528a605f1630f904a944a08b27de1321","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2.tgz","fileCount":84,"unpackedSize":3158945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3oA6CRA9TVsSAnZWagAAEtYP/0UrJgGwhC7h4jXs9hVM\nehmWZfkpUvvW3cfbIbU0fgzsOusahU4zuJlu3eVw0bWyORzp+3ktvEw8BYx9\n/wcx4bgdxBSbH9w9hGsbdkXDCHZ/xn1u+T8SOVuq7OpOC0w2ze5BNg0NkKZb\nSdmZxD5gQvi/4tc5RJD2vl10LaznHxCX0MM8zHHSWs3oy5HWA+cy0xHAL0D/\nG2P5o7KnRRpyqLZ7X6Kf51uXXXqbLX3ustr9n/zpJjrp7GfyHVHGBTuncZl+\nZ2MDFKFXEJAi0JRorZmHrlwoG8WyyFrDujZJXt8KD6B16VOKYf9OBJ2e2xkj\nsY8w6TasCCWOGwGZOl8HCTOkC6labFNsGWQwFqFByh3t0zV4b+7sE/T8yUa1\nzBR8CvMRzha+FRHvdP/CzWrSrCzvFMMXX/MK2ESzzyuznEWx4I5pM6QmgdEk\nPi7rZqVt+6tfYak9MqU9EhV0xuObtr9wxHyAFdnLi+YEKOWTOkJVQbWLWfgj\nHk0ACFvhCcJx7lZsPR5ni2hyR0evEeDsvLMx3mP8Ikocmm+VlPdZk9u9GZIE\nPkhlzOLGnX5kWHJgO4agAHaQSDiOGhhcxGklDE+d1uoYa/r8ZVM8sU2o1FZY\nVjCQcrXusd/b8LwmE9T6+IWi+ybMMPupxdUM4wEpsSECUtF4Kwz4LIzfgL3j\nnSFa\r\n=Lztp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0gj3zkgz8vqgqB4NjgAxpocYHC5a+siNHeeFNCy+siAIgD9ki/bpVAoMhNxIqYKh0ENn8ZTMEWjIdYM1M6eqeHvg="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2_1641971770074_0.48641614151323553"},"_hasShrinkwrap":false},"1.5.2-beta.1":{"name":"hand-polard","version":"1.5.2-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ee313f68aff1073213c754ceeb7247d4d0f349ac","description":"## Getting Started","_id":"hand-polard@1.5.2-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-GQ4pJQa/pPJOHae6kP5TKrhgAslanYE3sVfKJEK9osDG3y+ZKfofX8Roae7xgahR9atKJ5ZYEcj/6akg3crupg==","shasum":"7c6cbe71e80d85e376900541b6a6b43e55bd03fd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.2-beta.1.tgz","fileCount":84,"unpackedSize":3160599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3oKTCRA9TVsSAnZWagAAwksP/Aj/5Fw6/JH4X47wZtKB\nnnC2CsWq6rL8Jh7t+ovTkfwliPUING/OATwT3DfB+AW83r1IFVznxYDb/EFZ\n8y9BTUVmSaXSNg+JaZXsXUN9I/0n3tCAT1N1IEZaT9ONUVUy460Czq08/gij\nkwoKu6MPs5LAdvQIZQU0p9YmIVeel1kmqIydshNgTkWXNWF5+9+A9vW91gPy\nH4lFeaiFQtW8zCzRbZUE7+oi7XG/VEtB0kUALladzVDtA4C1tjm1oUQzQ3NP\n3bdaB+7K4M4EDdmBetF1JDhf2EM086w7Xgb2ADg13/m4u8oLJrHefVlK9jhg\nvCenxGaPlzeBO3m+Nr9iQrEpTF5Zyk9EMqysk1ZEHtxBJNs7+/P6GLoiNGOd\nfXUx8if4pc+3zI3BYUXXp8o62zxJ8oeVk6A0aV66xVn8KOdClx+BjHabvjF+\nFW/56wLatTSDRL42WDSvYr/jbEuaW/9w6BGwaLryWdSQbggeSYEBAkqtQjiq\nM/XjYgvZ/99EJ+xeiPoiNl5+KKchEP0qrwMgcUW+uBUzIrDug208wctDQiaJ\nd0/dPcpPhRSYif/oTHuO01Ig9Ww2BnDK3lP3DSut+gWIe2r0Y3lhpSTM/b9u\n+MKyrI0+9IFzBlgh3N8yKt9zl6xorFWSEXpLV4ndgj/PvuyZwC3RLNtR0Nsc\niv2b\r\n=L3oT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGgq7SXqwecYtnivHDNy6RPFh5JiRzBX3a/aoX1KjBT7AiBdENX/sycnZ4UEZllOQAIWfidx3Dxu5w0HfJ0BPjuQaQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.2-beta.1_1641972371404_0.24679092610429065"},"_hasShrinkwrap":false},"1.5.3":{"name":"hand-polard","version":"1.5.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"e93eae71a3514431eefd5be5ada42a9179e5421d","description":"## Getting Started","_id":"hand-polard@1.5.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-RLKxeqLs7N6ANZ1DzR3mlP3hYRvk4VYwPCQ6Rfuu133L3NoIrbOa0VpMKonhRBhX2aRLApgJRUhnuNcYKHp41Q==","shasum":"37cb23792b1f4dd4e34ae03a0a571d17ac07ff4f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.3.tgz","fileCount":84,"unpackedSize":3160557,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3oTECRA9TVsSAnZWagAAKiYP/0vYbYrPLCXLzUZTIME2\nQvLhJd5VzCqhz2tJiNESE+rSdLedZy7JIUtQGIU36OFPfLOaxtmf0Xvc3YBI\n9VqNnNFiahyge37C2aGCD6x0yblWmyF/5MR+5f8NTgZ1nrGMUvVHxUuiP8Qt\nfmZEJkyX5F7KbI86e48mP8hs9xPbFP8ZQ6igy9fHJ6H7e+hE7iel3BecRgcR\nHT+H5N8ouZ0jDL3TYP2joavSI6KmLUPAeixvQTdi6wjbPYG4rHBxzU97t6zz\ntc4rrblUlJgn1kqI2IY3WKXSnWMt04sron43hZviSvxXQLQUJ5jd+PusPqQ0\ncKXSTVP6ZOPTPYd3WuXNW6+hJiz0cR4PP+b0dEnoURIFlulEK4EK1SvLezk7\n8uhLGKaVdKtJXRXf7NuOVDdigbcBbi9ESUYhBQDBJkMjHJVbQKVdGryW8SbM\nS+NkkjIDSNc6wf6KD28i3LeQaW9XNv6ECnmNRo3oW0sHhLUMmkiEllnYOcQ+\n1MIOdhEfRmYaNM/zIDmvhy3PhXFtBs5cwfxAgalGbs0HMQ26zpWY/4a1XKjz\nbHe+VM9WL2iJYr6RtwVYwpIabt4ShSaOq1MA1lGrg1YbmZ3+fySqcOnZaaAz\nWfyLjNplgAMkne+m5M4jTWNS4fXjwEUrmBzy+4ntG3SW1J6D8K3AoytUVE75\nlF6z\r\n=cZXn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF+zlkt+MdMbB8PbgxR/FbBNeoSS6oRst4u/5TS5dcRnAiEA7ATR62OLItJgQmvpVVdq/6e+wPUATRfFtB1BfAT7aQg="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.3_1641972932249_0.11671521974207555"},"_hasShrinkwrap":false},"1.5.4-alpha.0":{"name":"hand-polard","version":"1.5.4-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7378b382e699638b11109c27c7e3791a071b4f8f","description":"## Getting Started","_id":"hand-polard@1.5.4-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Svy95KlLR3m2CgLr1oLBOW7VeYkf6jez5mVt/40KOBz05Y0Dm9lJWOFTucNe6JXaBdydtAbh+8R/q9AbSgNq7Q==","shasum":"e40618e0d12e39473eaa68832b199093d248a56f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-alpha.0.tgz","fileCount":84,"unpackedSize":3168915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3/sQCRA9TVsSAnZWagAA3UgQAKBBmecD4xreOnTi35zx\nWmHIhgXJmvhxekKtf1GvVxOOEnqbzTNjhxlstsUE605YEnsK4CGz3FOyi8Ny\ngcXMUNkHancuNFak7EQfuvvCwh/0RrYNlnXbOMIYSaH37U8qVberRUzKDQVF\nY3mMd7qLIJGCi0rTwddtBNdCe6pFIW+CWev/oIFlzCqky7Qty+UWC2NWIm8b\ngwetYFH+DDygidM1mozF8AFwJGvXYPamF2PbAj8vGYfBV8/XAClPJgJBlEoH\nnOsLtbycV7u9RBfTehkWCbqOpMK2FDZBJ8QxhsCzXxkEcu00aYDSsEM8g45b\nCuT8IipgszKXRHcbuOL84nz7EgpUi2YdL0fuEO79pZ4i/7Af6/JCQDXU++9/\n2szBXRK9bk+kK6BUs2rvi5LVdKVI0ilKg32kTu6+zRExmG4TMVQp2VA7VIL+\nDBd6O1Y6T/l83PtNNe0b6B+eChVrsg/p3Fut5UEUq5TsRZT/B3ZPpXdIMl1O\nkFAwqQtH+K7c0+s4r4eZd5Phf+PMdR9wtyAY71CT8pNgPvRhL5qggOjLYqqx\nHAFfnu4sNYTTEgMf6lhdQzEWn37NSt6qAWlha3XVU404NATd9ZfLQlTpH0zz\nkftqM6T+GYLwEfrNa84ki0wKY8Q0gaFprQ7kwDdy+pHHuwiR2vXazSMnB7p9\nuwOW\r\n=tkQr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGbwpvt+ibMMUe1+VYC+JoIcP9PEOvE2TiwSZkAA1NcAIhAMetPMmUSk9psZzCLMLXgAzCbxOpRHdwkHcGbABVJiN8"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-alpha.0_1642068752125_0.8877901657875362"},"_hasShrinkwrap":false},"1.5.4-alpha.1":{"name":"hand-polard","version":"1.5.4-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"d8fc8879b7060a5cfbe2fd741467f94fae2c11dc","description":"## Getting Started","_id":"hand-polard@1.5.4-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6bzSkNjHngvZ/jqvh2K7dZWTsWO1zKDiXwYbgkXFjKMeslBITJMho1S1Z6CHw9eIr7OpylRzLRjAyb33jYGz5g==","shasum":"7c4def8f857aaaaa679ea71b8aec8ee4b08286c0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-alpha.1.tgz","fileCount":84,"unpackedSize":3171435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4AO3CRA9TVsSAnZWagAABiEQAJDATI6yetB86LS4Qm6+\n9CvRft1Fqp5kC0x2Y37PTsYISezG1jvIfhEI7L3iFqzb4U/MRLKf78sGkQAq\nBDLxEh90wZwgnuJrHo9Q3cmLwNq11h0UAJMseQm2ZO/ycIo5mQPH5ogKPJB6\nDP3Po0kwtdZHr/kPi8Iqx1PFB7lQ5qnRtnPvCSbM/OnEawrhTtshEGW2BGNg\nBmEmVsdnsraMUL6EsArJmX4P+RTRhlPOjAU6TTdKdz8MsTvNw6T+X4zyrKLt\nE4Kj3iJ16WoLvEK4DnVgd2JsZqhtK276YvL2fIP1YQTU8el2f0+9ZsAeKAkS\nd182TDoTR+O3xSbi83azk4+fd8/G31jTtOcbT5lIxtob8hioczzLA+XK1Cyh\nv+KYJ0UxrXnUMJ7o+gWa2e6EsKTXOmOj9NK4AxRqcmnPV311v5ljePC8G+Ub\n+Nv9IBdw2GlSArDH6u0OS3Uk+TAQAnJqd781oiXcZnLmGbf1D/+bKlwQN9M4\nURpuTwovyQK8+gEZRmOSQyrwoexL3J0VAbaOGJy2g8A9Y0nBxaJs/42Myn0H\nr/8dVk4h+SlsMarSTerh493aUESpYEnqNCRjcf0BDK46xpJ/LsDLjd48YQlS\n8FC+96Sc0h9EkVZHAMYPBTv5VpIe4I02MqgNgs9Mxcdfg1Z2RIEq7pxMPIqc\nwjsv\r\n=DGm4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHIlS6wuzG6F6miCH189By/zjVdq0X6WaEHn27pJVI61AiEAt0zx7/TKd9SmG/NbiBm+gH8bmMGnTw4eVDsUjCfbzHY="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-alpha.1_1642070966712_0.356345756962521"},"_hasShrinkwrap":false},"1.5.4-alpha.2":{"name":"hand-polard","version":"1.5.4-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"a710b9c7f1d5ac55e7bdf406ca5d1cbfbd00fd6e","description":"## Getting Started","_id":"hand-polard@1.5.4-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-39+/fx4+0vbQtR2oDqt9FOuFvNC71NiezdBPNtrOJza0+XQhkOAiMsjRU6z//ebhl5rD8T5Io0ul/IyQDDOyeQ==","shasum":"78cb3c5163eb1dd609a854501cb8a1f60261d199","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-alpha.2.tgz","fileCount":84,"unpackedSize":3171343,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4NXLCRA9TVsSAnZWagAAOR0QAIFxJqf6AHHmKXgnzDEL\nxfOLkPdaXwrHBWzEfM1L8WSZab+vYbAz/v8PonowLUvTss1fswm6W1SP2+rW\nfortK3kHDWIVzL942fPhlwDZ+qNB/xYV1l52Rl1avUodtNECKh1Oi4Klvvlz\n9C3VP+jYisodfAn1GXGoot4VxMANLyeneYKTfQsrBUuCqmtRBSrSEF4S82ns\nF1zam1ZcaWbBNAWGQM5SnqpNssFXgR1z8Ngb8lv1G+MftLJ6q/OzqhKKzst1\nYqkwNaHpZq7JcyCJgIZBdbIutnc9zxiU1/fwU8nu5cJ8hjX/o8s5RNNP6mgC\ngmj1BPSux1xMkSnyeoP248nhGd1qEQZ9kVjSJH72Dhw4yUQ5yJAYTABDIdau\nHF5AE6FGXwjxeVvu6+S8sAqtqAlgEAof5Z8SSm4f9XX+1GNLgCsMIfLCBRM7\npdhUCRrr5090i+YgsOe3jodWGFTPtNFUeOXZaoSOcdOGajTXZ67nyEWIL+Ge\ncJ+ujzTckspE6j2eWSQpAmkljSOiFDdVuf5ScSCK0fxOuInvKxBEZ5DxUbvU\neI6tVGaSjUCrTPq/AGDMOpcx7iyhlCf7BtobjrgKEr/kzcvcIiT/HZczv8ig\nk2TfEJ5L2eROS9M80+nAVznKTnzVQM5zbEKmMLRRi+2a1uxM1rh8OUKrrl8o\nS+ut\r\n=lC5y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH/ODLsKrKtyv33QtkZ7yZo0/AwjI9clfoi7o2xrKb4bAiEA8UHNDlotFNBE++4ldBbLRJq+shbzqLx3pBUCF9HfpIM="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-alpha.2_1642124747579_0.7045779535756882"},"_hasShrinkwrap":false},"1.5.4-beta.0":{"name":"hand-polard","version":"1.5.4-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"a6d31f0760c56cebef4b6bac9903e8ecd0d197db","description":"## Getting Started","_id":"hand-polard@1.5.4-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-95+vHlhgerRL85sYY9/6JbvK0XLSwlnDwjZYgxUZXukadPqF7INjKdum61hiZQWECWqZ+Ud9tgDD+aIiy/rW8Q==","shasum":"91cdc1c196edcb8d26b6b47194960a12a1747249","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-beta.0.tgz","fileCount":84,"unpackedSize":3163889,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4UZJCRA9TVsSAnZWagAAXWsP/0nl34LzegkqxHnkv81T\nebvuVbKFme8pFki/w/GUMB+r5t/7GOE9uowCZKnYKbjG4mUaM/l/aKkoKFHh\nw+tlBJmdPUqtlFz3aU/FxwR8OS4mAMIjhMshtpG0cv+BGIEjwh/LEqktSowP\nty0iZ5Zey5r6KGbXzhjR8unz01YSHmisUa3PoKVlSWqjJWzXOmGnkaFwC3ll\nd9JFYWj5D9OKd8Jq2oViHfFIGgAom53ahZ1pEGXj1+F/vbORBqYxX0tEKf6v\ngBWuTDoAamqo7uxRNcmCbW/gFc78JYwtyKiGPkRBvGiKrAc5X0PZli1x5mcl\njHrTl+oWQ8JZ2sv+WagqV5r1/jyLYgnGYEwtdMzfkPqH0m0uoQWO3gbXJRWf\nnR0mv3jMuA+PZLIKOuu8QdkZYrIuEe2Lsta6amPAlFclOKw3NIzWfw328XBg\nWfPqxIR5c5OuJCCFCWjz/GFyvwK1/tA+25gcB/rlulU6dKQC+IOXRSCLa76t\nZJ8Sb0ZkWVF/lvLgmeOLXCkKJM/LF/GPYNmZfdmCLdgK0zb7YBZL5yw3bzOL\nGLrn0oXKYym7ZQnc4Pd2zGZ8hJ8rvEv3uJnoYcYEPbn8WRFnXmzS2DDxjJHY\nzZECjSx8c1dfpa2npC7BVtjCBdZub36w8MyxtHNW+O+oVYPrl8nXdgZJhROj\nIiaM\r\n=K+J1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClDpVj6h9EiwNou4wTE8kztD1RgWNxql3rv/KvZAxClAIhAJgDg7xPowKcSJ3kiL6VCi0Zg5K+3OhH3W8hWGtL9yS8"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-beta.0_1642153544974_0.6612541158565481"},"_hasShrinkwrap":false},"1.5.4-alpha.3":{"name":"hand-polard","version":"1.5.4-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"72d2fb3315e0b413caf9b61da17e1ae7320aba8c","description":"## Getting Started","_id":"hand-polard@1.5.4-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-GJNqkM+afeXrqLoTxL/W+Am5Ghi0I/+O1/0dF7ALXr6AOqp3Dssr+PNO23qCHAfL5Oj4fJ2BhLxTptWPoizalg==","shasum":"b2635def7ba1ccd8f39e4b44841eec97978f7b38","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-alpha.3.tgz","fileCount":84,"unpackedSize":3174741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5mIQCRA9TVsSAnZWagAA7hIP/iKhrt1UGg9yTmy834mJ\nXHk7qULXHNZAZYgdVp9wu2OKOfTPYmVTh8n9dDzFE21quefTn3wPkRs+chqY\n3Jk37ktnrETFVrs8HeE+ijizQe9go6N4zVAjIvkN9sDg9gWijhEs5613RpxX\nr7g42tWbEivl3QnHBMlG0QJrcqMx4Fslsrwc9YvUIQ9xiuZU9WVToYfk+GYU\n7hXPsaxhfPa/Wap+oMsfHDNkFv7d10kB8NfpGlu6KXj/S3CBD9phhMy8sONF\ngy1bcH56aNPlTL0nAlIkMG2+FQoln6wwm7hkIhQVqqlYkNv7IqT+hD+K3avU\nBtRltfERNxvhq4KozgDvsbs65M3Ms4/gfNLLlzyULkAgLSIAMv4JmLMZQ5IF\n8OADpohb21vRGa1q1E6XfUmC8b1RbzBbiFOkBwaalXuoNPHIUZ2qp8RiLSLq\neZbNv+1jkTQ17V9PLNKPTYZ3LO6vcoXxYdYnALEc6OMJNqtGwld2nPPhJfp5\n1V//wFka+vNvY2KUG3M8DRmoxQp/UdRey1F98vwM8rIEhd7Va8mA6ZrU1M03\nByZDMSVUcrPcTD8z+Au1W/91hrcFOLPj29qlTvHC/NWr2EPNpuqhEdzwoizX\nJRogcjVy9RBr94uoKYCI15acKaotfzoWWSnLgnzaa49JIo5pBcFcTqKc2z0e\n93TT\r\n=5uEJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXRGpQZ2EKDEPuFvC8oxCQH14sjM8cHZnSP/br1XNZxwIgZktXKFQFl8xvJM+d12CEqmeAFIyXEC87ZitKt75eBME="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-alpha.3_1642488336499_0.3139676670400502"},"_hasShrinkwrap":false},"1.5.4":{"name":"hand-polard","version":"1.5.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"33354357d0d2003e3e334c1d6ec65b64b4d30c8e","description":"## Getting Started","_id":"hand-polard@1.5.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-TKvfpmyD+J9hA7UYF3U/riu3TCGqFJzEB4sSa/VIhaI6VsGgcGKyRwEREIKcuNRYjSIZRjU9p5Cb2DY7FX9jZg==","shasum":"3ec9f2b90d012d4be6f1d6b1d1c295626259f46e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4.tgz","fileCount":84,"unpackedSize":3163622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh52mRCRA9TVsSAnZWagAAzTcP/3jVLC6Tua5xEhdBoBRB\nr1/ysH3tUlwTB62Ar4+7UhQm1bPNof/tqg4I4ulB353nCl4ThQzy83fRRNOv\ngYc4VstmlYncu7nC8/uOqI9Zkewxwn5rYzeufYSYoNBRZeNmnknXKnPc3xzU\nPO5dGoMVcurV6DED1I5H/Kqn2yE+/eiCsMpf5b5i6BA1AIN7GOZq2zTVgFs6\nR27Xl7c9BKEeZuaqM11Izaove4NwrQ5DxfUF69/fCqac+v73h5G+uvNqEw8s\nCRlrzUikOz2622xJP0sicT/cSowKVblNb5BxKRP9jwsSDHZPrePjCwlCWRXk\n90TpihXAmZ903HbAKci/YKXkqHyBBv2ItaCE2zgaAeNK5tkdJfwB2XilMB+N\nLFqyJTARTrFoDxG8F+EbX9TyxPckxU3Xu0Q/eL57zDNOxxCMYlJ5CxloqmRn\nCzs2v/AXW9PhCz4jdkTy/iS7WmU0nhhiHDybdpPw9AkAE1gi32mQo8TGfNnZ\nhUjsGQa9YSHgRcvOYM53lLTX1wwwo+N3g2H+saoWBFHpdf3l5etlNM0OuhST\npqauGK+cHSwZp5qq2v0EutT+4mTYp4uFPvGqWLVtadIuSUONp8sT5A0UWD/w\nxliC9tHFoLKoeZqu0WqQTFdeLnJsqG/cMq65k0JfOwYUSDKWX0lmnI4j9rwX\n1zaC\r\n=WZiz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMc1uy8Q33Ukvv1xUWenOlPRtYUyyJJWscU6E+HWhlTwIhANVcbfCgqb6++Fz46PH9JNxaK5QgYABiTXYhcLAMGNKJ"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4_1642555792849_0.7858602997731676"},"_hasShrinkwrap":false},"1.5.5-alpha.0":{"name":"hand-polard","version":"1.5.5-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9bf078b61265b830300e9e515f5bb52119fc8b7a","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-e18dT7bpmGjtRXrB7GPJD8VV+Zq8FwszLsYE18qrkCwAwLnJE7s06Rexj9btJKOWuaLHeN+na9yp2D6ey7MzEg==","shasum":"ace7a54ad03be5cef4193a48e3736612468a1cd4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.0.tgz","fileCount":84,"unpackedSize":3182089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6SkgCRA9TVsSAnZWagAA1WIQAKFe7ZotS/OH4WKUHEUJ\nRpc5nS6DPRHB184c6sVsq/6p80dhvGZmYmImqhDosI21iv7Ss/9/xpNHK4c5\nq5IqcOJd9EQGYVVZnNS5Z6NSlNrPl+OIgNzg9X9mXlbtZMH3XG/rnkyGjwuc\nDf1XEXudgPiG/L3imZPCdsHbt6jlIbyRSZ3TBfJ+o9XQme+aUTxqjGReLx7C\nMWWkE/URww+XJR4eAHtWgC75kdEO7/UIIjy3h3f1ra/Y43sGCbsRDqdm/LGu\nQY2ji8HT/7krFAEylaEgZ77MbwK0tbTkaX+mAWh1chOz5w5hDKcoLYKwOOVL\nEGrb9p8Qkq2/Pax/vdYF6Uk9NPqw2AQzDwoZpu/hfW+qVh6JWWh2WoZ5BxF5\nXz3emoxbF4FCdRLTmKJNltgRZemVWM7qXEOXLsA7gZ3ZDMnamox2h8QCgXJz\ndcVb9GDPxPSWGuckfidFH0QDVH5C+pSgSeVqduO9+B5Hj/YvYixvBhpSFRiu\nEL1CyRw3mlp6U60TeSr4dVZOETVkVfFhx/yLjXKsycUl4oaLEZSGily3SlMA\nuyLcWWd9enUMp/z3BmAgk8crmtMmAtAWhU5uKbZ3NywwBnKxB4p9XJxl3KjF\nY536tkpc/XV8EyiuX8tY8EuxcWUtYlqKcn8+0sd/pQvOdzTeQ5htGMhgvlnV\nK2Zj\r\n=u9WL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfVRp0uKK/zWN/PhlVfmdb4EKZx5XqGXJbI/Ghtrd7GAiBQyciQYZSuOYJpOVwsGS8wLDF1mZQNE2OO5DAqNXWT+w=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.0_1642670367836_0.8649011501659818"},"_hasShrinkwrap":false},"1.5.5-alpha.1":{"name":"hand-polard","version":"1.5.5-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5ae35488e2e59c2d82d4d1484a6460c428ceaae3","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-EF8g4x27YFsDG3Djo/ehTQeGe7xi+iblngCHaVb4ZOHsAkbZUQEcK6lFm4Pabd7t2BwvURAmG8N9QR9h4B4k7A==","shasum":"50aee402080d0cbaa6efdd5772c9e220341a0819","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.1.tgz","fileCount":84,"unpackedSize":3182520,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6nlHCRA9TVsSAnZWagAAploP/2lzLdKUrY/nhSCnAPks\nZZM9A+sgKxqlrx9hje2AvIFyaMYzxyRcc+npCCyfSeN26gJJLW/uP04dviFr\nBZDSt32N5qN53BqB2RnBvaFaQ8HpOQbQBf0yZea7nAGfuVwsY97DNmNZo5Ke\nmQpSXIAoOqblXc6CSU/RkMP++uLn8gTRGESiQ/tcdl2AvFTqSUxnG55nzXj7\nZfIA5H6wbNOySdm0QrqzJXCqyb6BqB0JUNBp7JQCB+y0qACwgcvhhT9HPJjZ\nW7GftUPEY0nFCuvJormfRqO4uGAUxDH2smxyKWbwpysKHutUeqLiDCS8Igbo\nGwolmcO7Ol+njBtIZFy7uGfe7Xy4EVR9mrmVIz/8arzmoUOrgnHfYhEO+hdX\nPMqbJt03wD1+b0UCvzi180sxs61+Uv6Nf2xkyvAYazuHQTREwon0GGjw8rhG\nxwb1OXhEuxhcYzk4LRFmwnYieqj7XvC+Ka4KZwAoCY1pZn2V2QyPzN+7Hsi+\n0dOoL9tOYHk3tT2IU8NRx/HJbXT/8nA4r6zHIu6Q9bchJst4RhMbktY5x2ka\nBH0Yn3SXvRFm2nzm0yvtj7er1Ml8cxh7zuMM8YPm5bqQr0ndK6sCeEXNxdrh\nS+Ai08r4PpDP3rP+zfvzlOTMJtdYb22UOKYVwvCFtZD+AX+rj1d+2F6jrYGQ\nHBQV\r\n=lUWO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEvV9zvW7LaVJuXGk808mZQFl+m0mwf4qTg1IUhKbu4jAiEAj2ihpzSHbg6NJVizGvr6WgVqC4Ej0lBONzSxuwdTL0c="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.1_1642756423113_0.9936394065375798"},"_hasShrinkwrap":false},"1.5.5-alpha.2":{"name":"hand-polard","version":"1.5.5-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"a59d1a68c533e5f41b0b7799c34fd019f5afb8a2","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-s1SEOE96YhzKtExpWvwJUpeH9+cOo/i0crPAibfhJb4js8dsM03KcFCpXW+OUg3/Cr6LTTQKVR60+dKF4InCHQ==","shasum":"f39833d15463a445771b78cf56ef3ea45673628a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.2.tgz","fileCount":84,"unpackedSize":3182914,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7lWsCRA9TVsSAnZWagAA4H4P/jJJHSQg8VautLzweIIg\nsX9lnB8FZ9kAjE3k4uldevn7ctv+CmXKetFKelzJA8TGgrwtWahiVJ0E0uQK\nFFg856sd9a3VB9l62wv85ly//FCojpJ0PtYiF1uAqmsbIJWYiFf8tslevcbh\nKU1toHj52WENwqMiVcWmVh7rCySrTTUf1TSBKysu87PAt9pUywKRhF7ZrJBD\ncmaZqGG38xT5dLw3c7plAB7ioQJCYUYPs5ml60VC+X8l795K7VLu+oVJ+Jgw\n1hbkOErRtb6S6/D704I2Rcc0eJ4OzAkKSzP+TG8FVWaA3Pg5dAAayLDOX9OO\nP0aFDs5EDFeMy4zPBUm7QW/WOnTCKmJwS0aV7100Xqk8ovDz/tb2O7b3D0w0\n+boaN90Vep2356lBkJAXHXOmzd1oqUdEoX47N8CEjuDMIulYg9nrwLtRPTdH\n0OLt2W3W5sRnEQ7GY9AeGUwv0ddpRiKI91amuD1MiexGg7PkWP17izGoeAQe\nzOCLxu7uvnxsJT5v5fzxBchoC9H4sm3zLnC6JVeSYz+KNCyYThIfo4jjAuMS\n/BdR2WHtaHHJE0dPBY248+THY35lBwQMpJbFMhCoyhMPIKd7zgpgSriCM2Fa\nSeqdwEp9LD42GgYVVMNaF5q15M/lxlaZkTSYhJ4IvOGBIF+7w0inQJNIHyw7\nq9aA\r\n=rbRC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHcDcfx34ts2ickBzNq0PPxp5IYkYbzxxQ1gJuMULro/AiAF9KrvhdfwH0qyjdo4j9KOYk4GISg9FmmYjAFsqmrudw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.2_1643009451875_0.8266932348559959"},"_hasShrinkwrap":false},"1.5.5-alpha.3":{"name":"hand-polard","version":"1.5.5-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"a70199f1332e5377b187d65ea6732c7ffa319508","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-iZjJBcA8uMSaMqPdhGVqETVPHRu/ijGmOg3uZFq2H/76w36MY9S2ie9CbHBnI9ebzSAxz80CzfONZa8W/smpyg==","shasum":"6617e3142d163173bee5a67a2848f1a8b504b6ce","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.3.tgz","fileCount":84,"unpackedSize":3183498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7mOMCRA9TVsSAnZWagAAZtoP/0jACxEnVNh7ljL1AKu3\nqHOiCe7uYeNA0rbre0VjB//nTGhX9wFpD1PxZGYEonYocA7TZbjozolzibhm\nBi4iY4JF0lCH9zyiUztY0We6QOXw9B3vN2hGqGDYI82tFtNM9ST5oMyZ9gv1\nCfsGCd10A71bf/vi82ULOxBSum5VMAFeX0wkireD+nx+JmMHBitUiCu9RFJE\n/KMDTfd36uhGzM6jWJK4aW7gEvAKCK0AWvYqGYt6yNOUL38yvH6VeGvykNnG\nxnAByaW5C/yt8l+E0svFcNkxtzN1TNerlOPSHSPS9eNwAhdR4REuiducbMhE\ncHzjeBDClpCFKjoQSSIg9G1DCtSfhWfz4XldmXRdVLxq/roFh0D3QckhEodg\nemTevWYA+FMdXd/UTHdOg8zaJW4usLzPPWd6pk8NRI+YyVKoZWrm9QVSY0VZ\n4DsIJs/q4uPaotDBpTPjWAkwXpy2/3928SIeuXhLxhmyjalQk5GOWN5YBXGp\ni7RVNBu23lGujNRg9u2liCEzWlQK9Oyfl04Kx0wNPr42qtjShVatSzmPgmD+\nzT37NyphMw3I6+kQZNdeS0JaDzE5YS+so46LfJ6lVehcJlq63meF/ffbhm3C\nvjtSZeYrKdOr/c/+m5bWx8NA8klKJiniyyJh5PTiy6+aD4GbX8r2PeyWfISd\nEX89\r\n=Szsf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAroEAAucYclVk9P/d4hzCg19qEO5aGSVIRYh+O0aDVYAiB9wlZQVlnMlWaDts9pc4/fsOIfRgsok/dbHPdkjwNaFg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.3_1643013004288_0.6975137952762203"},"_hasShrinkwrap":false},"1.5.5-alpha.4":{"name":"hand-polard","version":"1.5.5-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"484bbac8a6d8db7b3e41ef18538c5236be4453a2","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-DPPRkrLZ0zDLZQ1jB9TSIPtAOq335mR5VqCI23QKQ2G0R8fjXC+kxrkbmVjHmRG53mSl7H6GVSzxSCSBF+OZbQ==","shasum":"edb0a3b02e4b3fcce2f27c1702b09d98235e4104","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.4.tgz","fileCount":84,"unpackedSize":3194130,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh78jbCRA9TVsSAnZWagAAeNkP/RWJzEIUHMnrV5Qr6ukl\n5IqvhGrA0vIMSmafiM3EDw94Sv5E7UJAkH2XRbKz8v7uAdtMLBtfJEnIFRji\n4My1C2qCedeymSAjApBBYRjiFX+Av1w1jczZFyjmZkuW4KhRRVbD8H3xd2So\nlz6887LXk5jj1C8ea1mCg1RFeenCQq8ka4/A/YxeHoKNx/1RpGfd1bGnTFv0\nLzRKjAEXBI9V7Qju6Dz9zM5ef2oR6RQBUy9i92PdG8P7NargGCazZXdCn/UL\n8VSR3C3b5pK1Kc/J8ih3xEYKeFwdTh3kdgv/8YdujX41TsDDkZaOuUGAK+bR\ndY9qQeWt4f4fj70I5YgTx0G33/GdKKYzIaXwk7QsyeW2UBxE6VPS+81cmw5l\npIpRHf4orWcMKUQeT46S7Z5LDkB2w4Z5v3iM16rI4bLQCxwhS9gJ1CGWMl5W\noD4Azy+5HtGu5qYRjfypsP8UZaQP3EaqelNq63OrWblLpDoPhz/ikAsZpFwq\ncGa9cGVkZaUEIAiPnYCVL4UX0uCyTf/CAVCTYnhPl+aqJZj8luauwaan9B/b\nKTAXEtBfc5W8cQoN94HgTGXy/thWPYPxA0uoqDeptKe2pJ2FO4NhTO0x60d2\nvqe9LDEWk4A8NXXlRxYOCln8YO60N73pWvXvjJUj9VpyjNYFs634BATylkMy\nToXU\r\n=8RYB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEZ2aeMAI4lnvZIaa09tjeTgkysTSeZkpDfEt4rSEs+RAiEAnLlAeLOpOzeGmJBN9lcHlYI8Z4OVVSA2Mr5OMOPQ83U="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.4_1643104475096_0.6077819634944897"},"_hasShrinkwrap":false},"1.5.4-beta.1":{"name":"hand-polard","version":"1.5.4-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c8ab2ef3ea724463a443c503a270b168da3fe14e","description":"## Getting Started","_id":"hand-polard@1.5.4-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-VAXSZNd8pCv4T25/dClg2DhgnOpxRx0YwVIbTIGO+kw6lH3eiWAEXW3NeiaPoDqONEPoT90a9mwQojXjRJVnlA==","shasum":"e7071643bd41a4463333adacacebb91ee5112371","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.4-beta.1.tgz","fileCount":84,"unpackedSize":3168848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh78rLCRA9TVsSAnZWagAAkRcP/iHMM8UTXrSUSwWTxRUf\nzWP4wOsneXO+goN142q2Ff6ONQ//onDtTj3SmxH6kez+v5srym41SYU4k7Ma\nIzWvNw3HX76pMJDS/nClml/5Wb5QelWB3uwTU+l+4wvG1T4BfWHDlIO1n46g\njOApgHhT37YaNPv61mfGi41Sh3vAdOPptmVhGMeKblmcMxxz3Sscoju9s1ME\nVP7KrLsFE+A8DxtiT12zi+pOmq9i4scWsMU0RMu+A48odfw/SgSMJd5oa3pP\nSRmhcUZHw+YxlLmehVF/ZyFhRxv7Cx5TN5S48uXsyEKyq6aEb8aJzNeww4uB\n8FNWH2kbznFOCIgDg3bPnxJo9FtxOmO/a4tAlzTnngL5Txm5jStOE512mn9I\nqwxiX45aAWRJ0n67OCKs2gyMUiPm1jGurbz08HVzul6Wf4i6p2/V6EKiFa7o\nwNOjwr59YUiwdJm+oYboSOvRrgLfzuq9i/Qj+YQDwGT87Kt8heyaVdQPh9Hd\n97FnT8Gc3PJ3Wj4QOb38AffGVAHC5XHxuGCMTwY6MAPV0V8K7UUjjNo08lGy\nHqB1FtCdMl2qUGAe0679t5M4Wrhmm6YHLUGp40qX+ianRHw+KUWaJCzwRwed\nc5frjBmNKaHSQmPcBpohavNGdQUeizkkO+DOe95VJ1RXsYw6lvzQedia0IGq\naVah\r\n=arkQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBQt60A8yUq50OwCnUTHoFEnXk8IuguRCW4YL+5fl5/AIgVAcEaNe0KXF2lxhnHB5zXk0tW+vmYDGukKloTQ9/dqg="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.4-beta.1_1643104971252_0.7946426671156375"},"_hasShrinkwrap":false},"1.5.5-alpha.5":{"name":"hand-polard","version":"1.5.5-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4b3b917b73b08590fc3caa6e146b1072b7a3e68d","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-vAh4EPzE1vY5VVoUtvPN7+bCWUDM1q/iaSu5Txs4rk/bhvNY0YdYgpSMoLecel1pwVi1K8A9HnL+5rT+nxRMQw==","shasum":"2e93f740f89595b16c7a7ab617e2c91000c4a0e1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.5.tgz","fileCount":84,"unpackedSize":3195558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8LKgCRA9TVsSAnZWagAAw6oP/3fNyns+S7bMVXbMYCwf\nhYZTDAY6W0eOUqpasQvJzE61Md7mbl7XAqATsnO2C0uRiZrTtpkTcsV18VLc\nYeO59KOx157GIY4Tpuk+QCp3cnvZOvqtqzY+1086wS+NTZyNbOYuuWVu5U8j\nA/VLJiP72dF3Idl2y8cHDZ311tiLmfrNFZ5S0ErGIYceegWyM8NljUvl+xK7\nJ1WwsSHpf6rTNxd0hPsY7giT5eoBbfG3mh0gR5bGCwdtYCfE8h4Y43byzazq\ntS1Zk2cRDnRLRyDU+EMRGByGRvuP5XEyT31NPKuS0rDHAwCAmnoielYMYpXi\nPZIG9+MGhMtv9lK/VqaN7PFc94F9hq0Ycvp0edYP5d0dwMBvljJkhsA3Uckl\nGRBQVVS/9QDrDio7qWKEZ+37/SHQPK7y+WwIDoxE0/bxULGxeRZHxEN483Yt\nw2vpk7RI+alyat2d93PH4j1Z6/+6h9YRmeOiS94VjA6xe8+CMyDU+dNEp5yy\nkSdbQ9xXjtBHUaG5hAHXA1pAbCkUDwrr1YuDurMwHGr1tUeDDVSsLq52mQXf\n9yEiXareLQnWrf6ununBxLQx+l+D/aelUhEIrEWff9vtasWGw12/PsQO1ary\n3DEBzsgyUspyrR26pmvYLuoQ3VRRh124t1TO/2j1IGUsUC4QClT75PtcniTe\nlgq3\r\n=w1Ko\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYvp8skdNNcWiHLZiSDFKdriSniGPzYkrdkJEUuCjhWwIgX+B4X84VtFzDbMd9IJQlAfzMywYNbtuhy+cBCF8Fv8Q="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.5_1643164319787_0.11522285187960546"},"_hasShrinkwrap":false},"1.5.5-alpha.6":{"name":"hand-polard","version":"1.5.5-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"b7c1d4c641f65f541e27b204726f74292c149032","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-pKdqPkvIBpF3M9YguhZhY08V27DaxHIXK0jVM6Xp+J+GphRaxnBi4+B60egydUaAuhgIzLl4n23t3aOIxbg2cQ==","shasum":"25c7b3a699cadf68cb312324ed00ee4e585ad25f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.6.tgz","fileCount":84,"unpackedSize":3196470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8PeyCRA9TVsSAnZWagAA0mMP/jxv5NoGvv8h4pNAG5yj\n1k2PA0+BlDPEJ72b7P8G53laJM2WCaUcrsAiG9nCBNDfCEHsSY8TsVdjaTWf\nNoIvAUG7oAoBWGewrFJrtyCxSRpsw6D4A/k/tIWFLGJsOMy1ARE1Y6kD4HJ7\nPCgnIifXOVlSSdx2neryjPGon5E8rJKHHEDpDP557+u8E8qSV0osfgC597aP\nhSDqOZaln8VXqS0wdxEwZATuDKvMQN7vkFPwtqfavddDEoDQ+bP4RLbPFHoB\n6gnnBPWNvTQyFqcYlevpwIHIVD6LwjOe5OqvynEZsv76DEBSdRdR/8wX88OB\nu3N/MVP3yjt13qNvehqblc00TZmAZRjNRP27fYTlckebgefu3sgK4PdOv6aY\nruIH+vBKUvrQpIc1TadRWAEHmenHNbN8h4VOuZa3F7mNSkZ9qfjIuNdb2Xab\nekb52noN0tsEaIuYfvlftBD85Ue3U6Ehter5/QphNvyzgU+XcZPiRreiBiLZ\nCGjrz7xriHbW5ddxB+Lg5ayP68X7ue3pQ8JFEh5Wx877v0YzoyQYmf/LOSWJ\nFc0WGkpcQGGkepDZzxqCkT/QlHnPGjB6y2CqX629N4LVRvSAdeLlpH5AqPhb\nxc0yAgLAR2zi0D/uzmskCK3Za25wzzRl0bjKvrSrsYOpZor6p0g65kfp5/Hz\nw8eQ\r\n=ZLE1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwyKKRp9RDa4LnxC8XG07ZycfsOUVoEDFtwcWOKZW+7AIgUa65kXmjkcVC7d9TmuMRWljrHCd2vL0LtMy3HGIJvxU="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.6_1643182002282_0.3571131685864215"},"_hasShrinkwrap":false},"1.5.6":{"name":"hand-polard","version":"1.5.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"d0942b85ba179b9be9c96d6bb808042a629704bd","description":"## Getting Started","_id":"hand-polard@1.5.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-v/EiOQXRjQvYVQowWUtYhMl1ZkTvZNZH3x6AVvgWYc8dKQg3wXMD3I1Q8Dx4z5DIdcGbYHGahY08KSYc5BowiQ==","shasum":"70859da958bb337dbfc555f30c67ed2beb7dbc74","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.6.tgz","fileCount":84,"unpackedSize":3181990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8RQ2CRA9TVsSAnZWagAAEpkP/Awvm2B+0g0uoneGoYd6\ngynqBsGdNCM3QVhn3BLnyt0ElgXg4fiv9C3Iz0N15AvW2hxSbWbYlZbF07Dq\nl/2sO6Z7xRsMSX1cHN6dmSdCMvAZ458xw4rTzFHX2wNtX1A+E9rcGOFE88OJ\nzhp6kCo3fX9t/VbD9aF0Xc1CJizAR3gFlqK5H5fIayY3exR3jNYGNQlzlap4\nkkKoGDg87A2h7NKJ36lOowO2yOOvvINqesBPgzXZU+UEfHcPFaYlP/I7krFl\ngZw/ZajZXlqobRxfdlJEXs5aB8FZc1TDEqvrKnteKwsqoWYHNC4WetijHQWA\nBSFO8MWE8KKdm8PnqKZH6UcKKt4SAz9elIBj+cXTax5NKul+6niUSwYyB9pd\nMGAI4o5ZiALJXn2jd03tI9q1pAtRsLwVPTAr/xjmK4tNgDPKnGLpAHQfaWqm\nt9TzgbQgYEXqFk/zjpTywpEyhD1d7Fx2uQSYR0W15yrjK8l8x2sTeJahdXVz\ns709bnJMrQO1Zy1eEEhUecXmb5/NpU6IZtsqMpLWNIqYTq9Da86DlXHIDH7j\nk5n8pUi6MEdbmVGDyojqq1ICU/rj9Mgdup6iGbmMM7+mDHk4PLNsOY5Gs4gL\nKIzveLR9hnZH+2dFsXPjgjTkl88JeBTUDn5rUQitempIaiOy2dTi7KoPuOGx\nNQIf\r\n=/AGy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUstc8IR93L5BVBUDWO1CGDUSlxZPM7s3ewGfzBwfzdQIgGXLfdrZNMhJO8YrYqkAgVTwtx+C/zI1TZ3DnU4KjvkE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.6_1643189301834_0.41663715175579674"},"_hasShrinkwrap":false},"1.5.5-alpha.7":{"name":"hand-polard","version":"1.5.5-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2597bc63872e5ba939deceaa767b5575599a7dfc","description":"## Getting Started","_id":"hand-polard@1.5.5-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-LwFXGB/NZ6WBwHwdvUdQB3rhyedUGI6B15KGOFGY3R8BwbXLPyqhHFL75zRn0w2AdhSAZRVf6hM9Ni9wNyiOlg==","shasum":"3ecfeb4415a0ef8d7e59cf41b25f77bfc28908c8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.5-alpha.7.tgz","fileCount":84,"unpackedSize":3200949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh82e/CRA9TVsSAnZWagAA4xEP/2YQ3e0ScG6xbvD94aG9\nl88vN6E+JXRgS7k4PyMXRw9PeD3EppIUPCXTor3FI17sMf84K5fCoCWwdSRc\n4j3qOWXi2eXb09M0058WaNvrd2RSqKwAMEOdB299xegN8y6YW/qyvFxYJT1i\nUlMcnAgKewsmaMGgPvie+qE2i/PjPLD9ktrC/j+F01evv5GWpTuBDqXIxgTJ\nTJXdJNk5ZmmeFocrpX35BxLRN+1qS3N80hwsAsOQGjbKfQhckBLYAhO1DtbG\nn4qrKNSyq0gcUIWkRxoCDvcVS7c5VkxxHFjaTqbbG2zk5pSsmgyBs41vmIEd\n4QLiYrFQHcCWJ9T+4xC6heGwY9VYhHoAHkhPt8NInVitGKMCjWCvldd9F4rh\nm9FDrCIyJT8T4MUo/1Fvlfu2GoIjdVrZm+1fTfh0aITd3LaeqbDR7gZn3Q+4\n1sHseRWqRBZB3vEBtNzAycewoKKc6dZK1HurPyGFEm4CaWQN4atwCgNTiV31\nQDMMQDktxp3oUnlaIfc0ZhpccS3IFS1AwydYI1LYcIfeq8EYMZhrBhaiEmoP\nI+KYe1RjS8r8oaQFdcO6QERUwH11HrtJkjW5qfpvM4GDaRdk6UvVjFGkVVxe\nPkpzymEenfgDJbhM6darRrnd1KNJxsp//35Tnhr1iK4rgAklynqBTizgFHuB\nhWkO\r\n=PCr0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvG8yTYsU3ATlo52ir6Lvw2xWlO6nt0Q1VtxC0/Dva8AiAhgqcMcK6gxCAcCWifXq/MtJ1cxfHPOqgUOEeaAS7NMw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.5-alpha.7_1643341759050_0.24011484224938284"},"_hasShrinkwrap":false},"1.5.7-alpha.0":{"name":"hand-polard","version":"1.5.7-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2477c07666d0705c7a0fcf0eeb21396b061507f5","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-BTRTVLZPfjhZY6jK+Ev+cVa94eqJUp5rDlOD2F5xqWi7XhT2fqQMEUSBTtes33DSMATvn17QJwsw037rt05wYg==","shasum":"941f294a3a499269916d1eb083de84ba1f7763ad","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.0.tgz","fileCount":84,"unpackedSize":3201164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCiglCRA9TVsSAnZWagAA/BoP/jPFEXSl3rwtrKu3x2vI\nwJBG1j892esWa3i4/JGNbT8lvvcwG2b+JIQRVe1xsqzuusa2tSLYSop4/GS9\nxvBod87cM3YNMJPiL6eQKMLORoY0b5arlO6A7uUWu5bCt46fqyV+OyNzZtC0\nKSEa8Qt1OjbihXF7tVdtMwU964hcZfGuXfgJSsjAB23RdqyvzKvxMZLndd7W\n1zHqp1SmF+QinzowbnAYGsLrkhc2bJwf/DJNbj4bH6mej2mYHMfaHwdVrodY\n4fyMYXmN2W9YVvirWp0NuWt2KGckQcXebzHx03ZzsslfroJsmbLj92lCrks3\ndMRPVP2LDCARYnXHh1ZatnwI7XZHcRLYm4divB+YMObm7SEWv7PQmvue8rM3\nQD2M++aoL6+EUAmCPEDSd92bPRHQCciyh5NK68q4vKlxj6f7cHAUl/KG/jcy\ntiknGltE4hviSjfuRfPLvT6Yvc1eVmRn+EAqa5vJv5C3GUUsE0oxO51aUVco\n/+KobOADDje72zBouqCxlBMyhFWrUYtlpW0DECu+DOCAUaUjddU84lVdKfrK\nMoN1keWfIA+nLwgOCQ024Di44c+MFdHA7oiv9uOFDjb9JOAhMMZqFTtWAwRT\nxwER+zsvORDrvI/USVV2dLeXihTCGmjhQmJ+CmLN2asQO3UvA9m9xR1d9/t7\nMiIX\r\n=XtBk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFZRZ/m0dPeeV2hmt1bslvn9ryyWkn+WneughUbfsbT3AiEAk29oKjV4IpnJ+2eOW12qVfEx73dFAu9/8kZLTjeust4="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.0_1644832805321_0.3474744018936895"},"_hasShrinkwrap":false},"1.5.7-alpha.1":{"name":"hand-polard","version":"1.5.7-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"21cb2cb0a17568067a0c0e62deee3551b983f020","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-l7mtbmNM/KxFECyLqkoEY2cmmnjbzXPkfZQprCCkFXZIXrWF3B4y7uxBqLOogs4yqNFJJUupXzZr9SVY0mj6xQ==","shasum":"757e38e31d9b252a0683fde729bfa2457358ce4f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.1.tgz","fileCount":84,"unpackedSize":3201788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC0buCRA9TVsSAnZWagAA2d8P/jvjF34X3nJdObhsAcyd\nYM/PR3lndTcanF+u+WG+rQ1J5OQcYz5apYl9FzMzWYzWXwDxxBkRbHRJbhdL\nO6ZzIXdcK9GoXjOuP2oQTwLjz7Nh9ybpuXn6BCcpAkFUJvAO+T0psmUI07x7\nMSbuYSWPPk1xNbcV9lKSbjNAuL/2b3VZBc7n2L5WZBb/OpH4hOeDf90ArgAm\n5JEfpBuvUfDQ/r57/ZWyl/dNfJ+JXEq63FDJbEzwNjUqcnmkE0SIu3nseHpe\n7kQJ/cYF1IxC/tydUxgQbWVSuv7cxlR64LCyuzUzwSc01xCepDMfiY7nNIjO\nsnZsbQ8yvr1R2IqlEFRhdmiLt6Lega34QKPeVuJpuCfzB+CNDiUdMdDzce7V\n1QteDvfHyvq8tIGRYz+7BhyaYlDaB/3l8Ec3y3uKEYGxnIm6Liej0rSW6KWI\n9RJPhBqpq/UfE+to97BmNUhvmn+MuOMS6hkoAZUkFm9e8JRL5YTfMI6SO7lF\nhks0fDguZ/GLJaZuc0vkXH3KVWshFEyO1Moa6eA3ANLnLZYCUpQZ2d5jaAcC\nPfVNTV94m3hQ108o/3iH373fF8AT4Jb5rEiltktgh5ThpLLRrckjbi4ZjoVw\nyd29PlOgtXXO9NIZ+17qapjhsYE3wGEHJB5E82TjS5DLmU/xDmnn7gtafpdS\nppBm\r\n=d50f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDG4CsJAKo7QlM1BNf05UQpFCuP8NLJsDZWIZgawaxj2QIhANerWh9fTO0sSE47aJrA4PY9d6CLZo9Ffg+XHiIOfb3g"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.1_1644906222089_0.3426375072404675"},"_hasShrinkwrap":false},"1.5.7-alpha.2":{"name":"hand-polard","version":"1.5.7-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4b0e1b20ecc71cf88717f92b8ce1fbf2c32d3f71","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-cN6U9kRf1qvOIcDYWLmm9tl9ETFLmrw8W3vR0ew5trgUp1ZWiX50aZUeUjnJjx0Xa0jp8g/G8zMgptjKU+B1yQ==","shasum":"e7a6f058970364bf8753467cee12bc832623604f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.2.tgz","fileCount":84,"unpackedSize":3202262,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC1LGCRA9TVsSAnZWagAAQdgP/0U0IOJDAifJoqrnBmEN\ntk7oeQFmDAkaPeVUMZAfjSNzTVhd5VuIkVTjNQgamAUnh+hEaXcf+69dvpqu\n79QKIgL5sFimNmD3gFXaXr0G3Fxogaa8XXxqNaw3JzrKCm0zHWXJ7bQNE/1m\nwBQq7ybOCveafA96eaIPSDnLEMDDhae55wfQV+YPL+e557F+nz/v4iF0tKu0\nTrTwBlNRv1UeOJ74O6boHTzAi1fIWTYtZF/IcULQ+N5OEbMurQH9hxfFKOnI\n5e0twdGqXUj/K/1BUl9vEZkbuQBMFLlCsl6KEyFN/yreEC/2YYqBh+KnGu56\nSMh/eDjT/lm7qGNh/cZLH7wtvkLm7jHHP0lTlmJXDpSnshC0FOm4Cu82/nwg\nHFKyPu1DJJr0bgiVQjD2w5ML+XRfcbGKDitOYxBIC2/quC/KP0Oko4oTfneE\nIybzr9QeHmEeJmA8d+EdivTlkN+BBcaQYmScXVPMsQ/zBZjD7k659WzRBZ4y\nUwu/U33QPPnP/sz6J/pWoWyu75Asit/id5oj+pw8JuaiO7sihOXd34UVwlss\na+PhJlWu5h+0wKvpW7QIX2865/IR2AZudIh25PrWIx7uZ9K++G+YgmbLAL7g\n1QTl4GIDvVAQyFjeTDyOFaqWbV422joryxyre97PH3SLoxvpoJVzJmLESHUF\n4yZP\r\n=Ix0O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCd91U4EE1YKfaKobaoM68wn88ucviFp/2MQm+hNGhH4AIgNK7+mDwMHDmuzqOQM4OpIRtc8cMULkdgasgBgivWFy4="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.2_1644909254574_0.7593441641314125"},"_hasShrinkwrap":false},"1.5.7-alpha.3":{"name":"hand-polard","version":"1.5.7-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ca9dde9d5dce41228b7d573efe485f76a7e2ad11","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-b25YNXcP4J5+5F4g5a/0ehH/9JTh6jMNwcdCjl5gqb0RtNddyu5YFipFqG6obcG+ZpL2kF9+YexI4ueMpaO49w==","shasum":"7ebfb617242dec2dee89aeebdd01937b68ed905e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.3.tgz","fileCount":84,"unpackedSize":3202588,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC15aCRA9TVsSAnZWagAAhhcP/RA36CF8teDTPmWYpNx4\ndId/zPdUL7pBCqMiFnyyYmF9oWD2QJ+oWLyJkGDVm/rYasF8naxmQjI+jazb\nhM3a0wtVVFdVkaWX8y3GAIurYLZGgjgbKUT5Z3p2NBy7PvkGiTM/VlDppyue\nicwoaNywi7529wzHrOMPdBzTiYKiP79hA08sa2wRvioG6t5d7SYFvM+pvG9W\nSmbva9UrrophS7pNsk5v4X9quaeXbzzHZg7bpDNg9gg6ZprlXbh0Up2+7vTL\ngraAW0TciA5jpqSxxZgToeTi1GwD6YTAY7PhABfo9sqe061QS8z+s2aFJwjU\nLUKU+X9+OBMJjBuzgtkc/8i+s2NlnFgS/M6Bzxyv5aDdWI3LwjWJ8zzfHvds\nR+a+b56ItPBkdPtpysJ8FIR6F7Bem15ZgP0TVN5dEmooTAUOQ4lpvbs4Ef7d\nGYvbgze/eDUpRUYhBBZrefG2csuxynjNnDwGvzHSizXXA21VuczcNGbc/VQL\nv9fldyAvoe7T9YTLEoQ0glvoFLV2pm6ZHjKLEDMv+Zhz1HGY4vLUBSzatWjI\nfM+dRoUiWNtM4wRizS/3nRBNTGRUU2fHOzv0o436/rDI15/z6tgk9uRdQ4Cg\nr9AEacQPXUnUWf4L44LkckFu3NhmDLDCNwDRBV7WVLJKvv+ju7Gas9eGZ+Hj\n9X8e\r\n=6x0k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEh9HE1e2fqEnxktNyvsG1UF39Fr4GoXr7PrBbJk6qQvAiEAg3gkts0lc8SaU0RKCnNRn9hKaldbwWIAQLziWcIV2N0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.3_1644912218401_0.894589495567016"},"_hasShrinkwrap":false},"1.5.7-alpha.4":{"name":"hand-polard","version":"1.5.7-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c9555026b6b50fa97e0e60c3110547f207e8010a","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+ATu0DcH1GvzVEbBz1IvzTBhAgh2YSUerijSd/hQVJ2h1PR0Hmo1uKpWtSPtJsTsEYslUZHO1uOc8UxC0Oq0TA==","shasum":"5f274811175842b306c8db3f55aaf6dfa6937cbf","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.4.tgz","fileCount":84,"unpackedSize":3205311,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC2f9CRA9TVsSAnZWagAAhOsP/iKunhIc6fXR4iAeBQfC\nbzAP4lB0REFm6U1Zm1j8OSqjbPHwDbAqlVoGXzyEa0pBxI3ZlDDaOs98SppK\nCgKxl8ge25EV362VetgLFaw0GnuEymkMJ8jYuVXU1roIPlUtTCYju9E2sC24\nSXp0tI7y9YwYceOXHme6DjYqN6IR2vrb69/hH8Em7HLjcCqVVN9esCZq+I9H\nlNeOTyZko7rLKWXEyOxDp3fuGGiUPOJlU3O87wsQ9M5b7OBVK70mEeCAqgUo\nygzVyy1657S0wRZMIJdBuyVaaFRQ5+WXi4W8ZhViKJ/F7OQTgLKZmPpQ9Ymf\nIapdG7K0aREc1fmJYUcTiY1sBmufAlbRjIdg4bxqPvAuxQd+EqqjGZ+M6tOL\n+yWLDVxKGmtfLumCgudSX2CJWSH2KMmNyXZbfcMFtyRVAiXNrikw7hxa7AUh\n+ZD9APbDItHxn5k8qks/DHxMXcLl8vnddKcK8hfXbkBxWLc7mPON8GR6jNmF\n2VyjZlh5/p4nxtoXIqcqS8esfdHtd9KQFarlAc2fOFx7Heb+PVAFRvlLgX9k\nrG3M7lLgjepD9G4sX3BQJ6DHQKVX0aarns5ZaYUug+HDNPo/4k8ULaU67KA6\nCfW/+MpVTeFwdU8J93bitGWWDnF89Rfwh0zG8AbjUHOkQeQ0q7xKOD2eqk77\nsWEK\r\n=A0i4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLcZuXm++aSsIJ4T/OIwpp3uoiRDotXEy72oLzP+JBbQIhAILia5yQ+NkEMkjYHAuflKgPyNA4c3FWJW0lGMsNjMS6"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.4_1644914685401_0.8872150808767425"},"_hasShrinkwrap":false},"1.5.7-alpha.5":{"name":"hand-polard","version":"1.5.7-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"049dd94ebc9398a9572db8a57a6e836dbdc47eb9","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-EI0NppRGDGgh9k6zLhJLnIMQ4EiI5Kud27F+WbD6BZ6gl56qD0uXCV/W1oygN4g28Bp+1jN0AEcY1n5/kEbnqA==","shasum":"3ef1a10420c8a4cf3bebc28e1e296c7b2a654f76","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.5.tgz","fileCount":84,"unpackedSize":3205812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC2/dCRA9TVsSAnZWagAAVscQAIEf70feKDhA10ClznxO\nxrIIzmAGVLvPqMX80ITeKOgb0JhW9kjbD3IrOpbv1ThZvMlabVg7DEvn8YHe\ndtvlvrkbtrJPTmLoMx9441q1xG1LZvPJcumOobXwKxaY0StK0zSbQ55mTAdi\n9UtOGF7mx95X21qbw1/VY8t8KQvTsyxd/ulb5BJwNZEIyUImVN3K2iaJ2sbd\nhpkkpphWqvGvrd4jHmfp3DeeLVqDk7NrecQrMhCKuGYpJ5VAk8RrNx3SGAaA\n6K4FQlRNuQA+o8r1MdpYaPTtYKOBxiR4nrEb6ns9fHyQ8BnIK19XD5bR357P\nNVEjKzfBe3trYYSzlxg65gwqWzF8XfZb+CzN2DEzEZf13Nm6iTp8NkGWud9M\nARWkCSMonsdcLvcWDqySB0TLOAcWl/BA2ZroBkFvvv/jeT1QpdSF7MZDlU4c\nDMdJ4zkQT6saLIllO5/K4XYDKqLP9ib88tS5RVrfIpZU3rKTGecsJLwQQfQ9\ncp6zIj3FvE2YSOs18l7qxr0a0OU4eVH0UBd6GE+MqvAFvs3EKjIQXcznnIKk\nUwNbDhHaxlVn3hIGSVILgK0gWYOFUraCqCZvO5fX1SWhMkg8DFThyGbu9KC+\n2DOulaQvBMjLg1MP0trJGuDIKUokQmyPOKM24zp0X83vOVQbVDljxVXapK6g\nmtht\r\n=nwjM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQrOwyfiuiajL2qUBkpXBtksnJy29MowF+zFMkfwJLZgIhAO8n76uYC7chvVl+NVGpSYF608ki/EcPhLR/4Isrgpne"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.5_1644916701644_0.7522563792168246"},"_hasShrinkwrap":false},"1.5.7-alpha.6":{"name":"hand-polard","version":"1.5.7-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ebdcf19559a876df0ace881387c5ea781cfb2df9","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-IvTxIdKTHOrsAjolIPB01UCi6TD71HyjE7GZAHan/Oy2y7QiQdn0lujfvUTqNi97cwh6Rlro1p/TqWuP9fZytw==","shasum":"b25cf3a1be5512b40b73f12b5a6ff157e838c5fe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.6.tgz","fileCount":84,"unpackedSize":3206579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiDMCXCRA9TVsSAnZWagAA/H4P/3RhoP46G52aGyfDwYN0\nNsAjZjMLMk3PE0U9ko0mXeM90o2FZfO62crYYDC6NDMMQGYt9H9gCgqIbUwT\nPKGKC8nlCIJGYonE8KMKRd3WEEm9uewMew7Y0FooV6I4vrIjPRbI9e6ZPwYM\naxposPbsRj0lgZxynPc2DerMJirYQAAxM48P9EwoRRmHza+I0kBhd/ML+Ftg\nvRstvmJnFSQj5EBErTX9JArnApdi0cuvea6sck6DKS11ZHZgiUlT5ntZ3iHQ\nDZZgOQ5UUXu1wDSUumHyWc1t1mT/3tpnjsivwMosLh9u39F9ypfB96RP/7hO\nSvWvTkakpesUNJDW15/6IbdT8+qb8C9zsfY5hv8lxowJRlas2/LAJPdGjcpd\ntuVq3fs3icy1SqWzmX/Wpq8++Lhtf5RgvOVjacs81FG5iDwnNenoCA840pMx\ndVs1VJQKob3L9t77/iqEBcD4nzizGL9rZaD8218zHFvobcr/2jN+AInLRrEd\nIz/974bYtv4WLOVMPc5S5wf281p18yrdArLSTvBRWBYOwvpqk4lbOgTrsFgZ\n0+dgBzDdFGDI83zi+m/aDfEZIbrI4gnDQtp8xV9end7jvaUXJ9BlFc8N6+b8\nNtfLRdB8LM8ZJdg5+LNScbPkLOA7dE/gXlrd0bQYnFo+E3RuizIndA0hRJqe\nm9Vc\r\n=wZwL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0uUcvXFuz+P01yx0AHzhlYBrEl4Y78X/sdP5POmi3FwIgR3i+/IWSndD8lK7n2RKq7mlLmigI/HpGo00aNNOGMZc="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.6_1645002903072_0.0683932602296724"},"_hasShrinkwrap":false},"1.5.7-alpha.7":{"name":"hand-polard","version":"1.5.7-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"83643e8d301bd1000c29349adc491c1092859884","description":"## Getting Started","_id":"hand-polard@1.5.7-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-vGr7m9ADw73vxjUOPkxGGA/wq8FjHNIi5Xah/XNUEMv2UVvLWMbdiRvgJh3q3KkexW9iDYc5RSqsmoZGRtmNOg==","shasum":"b47ac5486cf9e1257394a04796d420134338bab3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-alpha.7.tgz","fileCount":84,"unpackedSize":3207001,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDefcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp1uw//e+9FGvI+Il+V1BJrWU8rKZn47LnsFwDsB5zLARKM21/Pv0Mq\r\nLkoT+sttGW0XcgW4O9QjH5mQrlmWwy6n+gaHpOAo0rstKTepaKhqNHfneVG3\r\nQozTeRoYAg7gqQezExyk7KasyjojS9xnTRfHji656KU/Ch/zmrLsBAs4Lspq\r\ntlszW1kKj7TYLmXxWIzSbdbiDXo+CAXU/Jbl5llia4CKuDAgjMDMqlu8rz64\r\ngG8Yc0yTnY2MShTuxMTNZQNQFycXqBcr1WEtR+qiBbaVY0oxpHlEYWleld+n\r\n8rG3dQL+tGXiiLVsJGQ36QVJ1eh7zswuRm0atO2+HIir+ZitMvXN4oTn4/fi\r\nGyY+fgR0GHcjM6CZHC1dKknzoNietTPIOZecJ9MnQ2FIWsRLtp3uy/Ko5ePY\r\ncDv4kZPFwh4lXMUVO0OH6fYtKbVUNrNb4Lv+Yuu6tz3iv7a0bRhNQYxvLl2H\r\nP37Gap2oLKyFrKJVy+6nkGxIcZ6Kqn6/Sbo7sUV5WmoGZjtOAwiNc2yWv0Yx\r\nQngI3ecMdwMwOxrxax8ksMeFdD9Qa1TCrb1PtSV35KP6hmH2f9+EN7KkBYa9\r\n9iS+bqrpHGeNccPuJgK5ylShnVYMPaw9EYtJYDL2ZMv4vCtuMA3A1/Py0dNJ\r\noNBlouXgBj+W1qAgROfDJ0zU8ccemgqNkjM=\r\n=GGLl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHkVA6SOj+/cldxJu8cLzy3P27NHNrxe+XfrHKmRTPYsAiEAvrol/ldfwzFNO9PhGMmM712ar3BpSdwUr4PzuLmFb1w="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-alpha.7_1645078492671_0.011224803589623855"},"_hasShrinkwrap":false},"1.5.7-beta.0":{"name":"hand-polard","version":"1.5.7-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e70d3bd1e2cd6767097e2d4df7cec49f144e4a02","description":"## Getting Started","_id":"hand-polard@1.5.7-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+s7uei6eFnynV2LUwJSh19nEVgXy8pIu8zjeLOyu6GNj53uo2oUmAWW3lMKuFkM6d2ErrOCY3kF3I88ku6P9aQ==","shasum":"4d6d2c4149a5352b11911fcc62c99fb339e71b6b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-beta.0.tgz","fileCount":84,"unpackedSize":3184346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDfo7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoP/Q//fkp2phvQttkqs0xw4Z+gh2rUpt6fhlawQnDqZ5VgtJ7MMXpY\r\nUYXPXvrUcAGSBQaVuy9Q4Gc4/wBFl4sA/1ESA3Q/pB7cxd9VOvJLyljWozsW\r\ntDj6Ita3zs9npY1sHs6U+eCkCpkaA06zOICLIQjDQg/Jor4qmfWBhVbEtWtp\r\nIzd+mFoJy87GWS8vY+n3DJSzh8tWWDRj/+nAo4hIet8EEcAXuffNhY0Sm1Il\r\n8onzt/s55jVdqgQfK6BlPZRaWGqUSXBDYyDDTU9KQ2ljBrWmakiNqDERgci6\r\ntE4xdieBzpUWxq3wH4OR5ePg/2zKkl2JWQH4RUS6sPX/psFQmTeOrzmLG5kO\r\n0wnfk8QyJLXCRgo54f9N2x04TyGVQ6jlvKTYyf9xIhoxUkalRjjZ268NYNOh\r\nGh12ivD5qszYKFkI84QibVVYj1RYVR9vwnFCo6xOEyU6D2pFK54wluok9sU9\r\noF7DKGskm14DwXW8jEFdD6XzG6cjsnT04dR2U+bfiS0vQiW6he8vO3Icyq6f\r\nZAEx6NA3TtsKRqD9LjS+SMIi5YG8g/pM9ZGNyBjwZPYYlQ/F+17wm6K+eb5q\r\nCEbknSE5N/EB9h8KtxfzIePmEklaJ4IXpoyFliJ8G9vRJu0NxJzyUfUwm4HH\r\ntvgNJi9ndntEgQXY6btHH2lkTHwgH9Hljk8=\r\n=z881\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVDUpK/HGynHvcQAZkPf/GXbfFeKo5L8lCI4FAqlf0bQIhAP+1fOoEKCLWXr4qgZjHtz6zE/NRfKLH3VMIYDcUVqfI"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-beta.0_1645083195288_0.6598334047036893"},"_hasShrinkwrap":false},"1.5.7":{"name":"hand-polard","version":"1.5.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"63735b4073e1bf6378aafd53cfca1c1e831dc21e","description":"## Getting Started","_id":"hand-polard@1.5.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-9/DlcWi2REY+r8yKaY0P9+DZEL9hSGWGyLOfqMIB3k2yNXThTs4psYcue4O0mdW5ggKl+2DSC3ajlFkEytarBg==","shasum":"54a3a76d9843dcdb7ad8795f8b1256681803986a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7.tgz","fileCount":84,"unpackedSize":3184325,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDfq5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIABAAm0l8TiA/8eA9gdaEKDD3QIVOCaAG4JYocTKkwFNuKmP0g2Ai\r\nJAG7SSAkbnzIAWsi50cv6n2Yyq5R3748EaiRcCR6oItMEmnQQ89GR95PiTgB\r\nW6ZkKsfWdb+tS+8zv4l8soa7Po+1SGoNHqnZX9HoJyjjjxuIm7C4z17JePhP\r\na8lJlzbyzQEpjlL7uCqsFj/Vl2xyhFu1RqFBt5vg0/HoKxYq7fW6kuuqY/0E\r\nlXPrJyP4zF/qflK38278xsngIioXJKwQiso8dlLMUO/IQMjyc67vXTkmgJ88\r\ngOHUcbgDiqxjC0SP3z66rqPjzpDrHAgjlnVoi27wD4za7IY0R75eQ0PHf9Iy\r\nuyfd4Hs70HxbY3Sa1yDwWHKHY5b4IYH20ihcb+b5AWDnVeMAhY5rw6tM5v6x\r\nYPTTuoIvSs7rJJcB+5mN8YNooDKilEvVkvj2uDTgl0zmIG7/esYlkDUvjvRJ\r\noVwYY6hHVckcWA5loloN77zB8dPCyFP0zbD2xC9apoeFn3O7EkenO1gvPWZq\r\ngt5XmNTSHg6CfG+aUnO8VmweNA6HHUsWfOg+fEW+CHp0xkR877sg9BOvU1cZ\r\nPI7dbCvt7MGnQ07ZMrqEkj+Jif6EBhclNZFs636QPmb8x6QGvkVzm7W0n1pT\r\n/jc/l6o7/Cn1HjcKsKUjwhLjl4WaS4WSwHI=\r\n=gp2j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAPVzfntqcTd0R05NQsaKzYlkaBYh5dWRarwuiOABcKGAiBaudZp56e3mpu2spdBdam+dkrrAje8F1o8deo60/6+Hw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7_1645083320811_0.6961462467956598"},"_hasShrinkwrap":false},"1.5.8-alpha.0":{"name":"hand-polard","version":"1.5.8-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"06716102e66345df19ab1f9c5e6cbf3453e98469","description":"## Getting Started","_id":"hand-polard@1.5.8-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-4aOBQzE76nffaKRvRmmNsGY59dXSfsapdPQ+XOq9U/wcs2eeNHHFUoDuBqynkAsad7SrtFdLGTzwbTrI5u9xvw==","shasum":"b9ffb510f676358e2cfbfae552a4bd3dc5561293","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8-alpha.0.tgz","fileCount":84,"unpackedSize":3213383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDhdpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpd4g//eTASaDL15V9bJfxotWIOTzchusFdJOicQ70t7bcmNg4HNpOA\r\ne2Lu0oZXwT8iWiIdnAeqIGVH+2GoxJoakyAulPWcmKluHJuN5cs1IyXQ6K9u\r\nQmzUQldzxhW2GbSqYtLqLRmM33A/q6/U7/SHIDFEL+CSLSaj43wPVShAkvgB\r\ng1tKST06pyGNv7fzONdiQ2J0OxkY+6GNexhKjk3imatC2FfquGndY51sdb3o\r\nPpuH8TX75A+asWf5+hMgtyYlVlHZbdrIfyTlKifJ9yxH4NOYGJcFoECAwPNi\r\nNEsQq7nzUOtQ4RERhs4sNi9ICJWQJL8ShlFy0dEjbI5AndN1f3sddLl5gRHr\r\nAfXIwHk7lUy7HzMYpdeL6eXsNMRaBpLeQ7uLW6/WCugmQKBwCuXGLWGFY1Le\r\n2htjbVAvAlfn6zJWE/80Sm33OU6CHnAJB3Kja3arnr4f//K4EMcVlvyDIUhO\r\nrARQ8iF/0JBZcwM79RfdPPYaE8W1ghzjPrjr31uz77Yj6SeJbtE7u+YlD7Mg\r\nIKeweFSWzR3kv82JoSMRLD3ZXCnkv/Uveh7W+8E2AWA7loQ6WEEyUjXRERUv\r\nBWNkRmV8DdHoObazFl3Su25D0ogDbepx5WNU3JjlgFPvs5tJUnnZD0/hrz7l\r\nD+6zA5CTvlgURCKowuFhVm80pe4ZZ7ahCYg=\r\n=rh8r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGzr0/qxafaO/LrPyQqBSO9Hr9ZXoyZ0V+pkuwt7HcOWAiB+jfKAO1qxZkfVZcpEjPs3nUWgT2yREBwhjRC4sYH6Zw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8-alpha.0_1645090664851_0.1122895250793281"},"_hasShrinkwrap":false},"1.5.8-beta.0":{"name":"hand-polard","version":"1.5.8-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"47bf1f901fd19ea11457e77eec2c1d42dccee4f3","description":"## Getting Started","_id":"hand-polard@1.5.8-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-IvYabna/NB2zzUCm8l+mOi1ive++v4uFKKlXAmfNBgQ5wA7j26JyIKdcXcnYqfYPrsIl4V3FpKNtOJzPFfrDnQ==","shasum":"88c199f22ebba0721b145e7dc8aabc973afeb312","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8-beta.0.tgz","fileCount":84,"unpackedSize":3184950,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDv5cACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFiQ//ZwuwXYcvh0EzuY/u/UI9n4lkGRqB/W56NSajdrkqeD2BFT20\r\nRq4EyUTDkvLCXoDl6Pz+8RdFvTewjfvhSvLiO8QgU+WegeOsanD5pLTqjLMk\r\nY/kQg+vFFssQqZrVDPIC977CTxDmdUDNXCx6joK3rvPlJ3EOm/u1jLhPsZp1\r\nDKkvNVpF8E9MsAhjAFvg9+NdRb3b05PwwRxMQmnr+01WYxcGcxhLYJlEfTY2\r\nFwH0wMbKvKL/BGmjEWNNDv1GZDtPAwYv3LOV0RtciljvQLv49ots6X75A8Ob\r\ncOX+2BqIlcWI2NXtenuQHgFN2yOjFwxY4L66NcpzfkKC7bWYN81w8wtL/DHv\r\n7/+8XMz/ihraeLTfHdIkq9ocGUxD6y402nGDDxPL0kfdj6qmXEOwMoBYN1aj\r\nMnT6UZysBP0FmxlLdN0KCZ/jXoyTHfei6asXWqOZo86xXJrM8iL19oXkVKZC\r\n1lNLy1xfbqicYyAURfHMuJn6NWS4fFseRqfgrj6h1BeEIDULctDFwZRNH5Ql\r\noBHvdITyfqNBcrMjWgCrocqleMZF/4AzfXLQsgaI9DhqtDzb7nQU7e/BzW3V\r\nY0x+q9kF+s9fz978L5jCnHm2kRKrAb64uItTwypzHCwvEb+ZVK+2mxLBeEWd\r\n3rVQzB0Y4lFL2xzGx26Ch/zw/v03KrPpIgA=\r\n=OezN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/SF126yk4Kuv02TvKgv1jkJ3YRG4+a2mznsh25ACsmAIgZ1jCYOEix48PNf81vN0iYTSkThzfAL/eEhdxNxnJ7fk="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8-beta.0_1645149788575_0.035716708020633536"},"_hasShrinkwrap":false},"1.5.8-beta.1":{"name":"hand-polard","version":"1.5.8-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"1ccd14b59c19b834a0330b1ef9021ad0943d9062","description":"## Getting Started","_id":"hand-polard@1.5.8-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-B87VOEeDtuHKX/sqHzZrjYzQOLD5uR4uzd1SUhBjq2HKGZLa82tnjqCGnVJtbiYp+yvKQTZzoZY+PMNfWsTb3A==","shasum":"74f4e46b23a855b48627c2974b52d493ba237272","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8-beta.1.tgz","fileCount":84,"unpackedSize":3185254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiD1PSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmrA/9G5gPj6hW/YkxK2MGXb1nNiia5vToYT4fEg6pecGq7yxCDQrW\r\nECvINMsgmk0P711wUjJNLYCWNjAQwm02fEO0yR2WAZMEGTZCVoYhSwghFdbQ\r\n3i/aL3MSFlqT0Ta/caa9H5U63oUHCM+K+vikteZcLKUYEHyUS8BRD2sB3tXd\r\nPmheGTC/Oork+rINNntmWpz0Q3ghh56vzPS0h1/b7M+NPv4zSBAv+sbYzDMd\r\n7Egf37+zuPy/BPzPZfXEMNJ+S+/t0lNFbmMCJRlMLorw0X73/KhQpRjtftuw\r\nmNAiMko5aLBGRwuamLZAQl5YNri9sgZcMAKZkZQ16V4LBRCMgYpyKLsKZTbs\r\nDcUgRd/5LWAVPjZaQ7QYqUZLX3YQRyTqSwFmOJu2elEn50NopjrXa+19qXeD\r\nEJsDjTgmPzVdAy2I14jBZzurVgzC9YGWo7wSH0/CYeHgpY1PmVz5aQD1dBYm\r\n7SyiT6VRh0eL+dKOeu5nNofwx25yEulDp2HerYu4YPvaNUTbgftDGVkW29Pj\r\nMZwgbDxCLqmo9wJOEtWjQH1UZs01BIXX+02i913zrWax0PUd5i7NqZkMwC6v\r\nYJiUyGNYlGQjRJ2LQ3P1Vta7Ae8YN3cGj4LJnxYfe/DBScpyN6a8LLpTzXeB\r\nNSxeng3UtO04QhmWRRKyptKqVv8EoRdlwa4=\r\n=m4Gc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEwcAW2f22LI247HY9+oaQ9GOqUJZRnRiHy+xzUcJlsFAiBmusu5vuhMryuh/L1cRy71JQcT5gXAmMsqSm/aCmEsKQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8-beta.1_1645171666726_0.4654782119386107"},"_hasShrinkwrap":false},"1.5.8-alpha.1":{"name":"hand-polard","version":"1.5.8-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"416a60251d53c3043bdccd21f44d73e6ebe1a172","description":"## Getting Started","_id":"hand-polard@1.5.8-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-D7imId+3b7rzo/3R1bh3qDFNCdvK0LEQzE3aE855jbUeNp5sDkI3EuTF8JiwbTAQoUjvYai6fH5m6rCoexobQg==","shasum":"3cad6715158cdd30e00903a49f5f34d53aec530b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8-alpha.1.tgz","fileCount":84,"unpackedSize":3213526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiD2TLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNrA/+MaCBao+tel6UOiLLsVFQ2+icazUGnegZXlOz2mWP++MQz+Qw\r\nK3p4GujBdCerZKTMdNVYwV2UDUVwt+gdmaWu563J2QSNvWQhKbhxovcYk86q\r\nAz6wvKGcN5kqAli5w9sK7YERTE+AWX5hWhBIuiruTzNUkSy+Ho8lhpdYS19V\r\nSNRNRyffEJ0woIk5/riHQ18WlVJTURoec4T8U26v9LKOlHo9QfLNfLGZCwBV\r\n1LN1rFzPKHyskGOEw/7yQd7pCmx3R7QpkA8xmKepn7qj4Z6tgHu9g1ExrYpa\r\neIY1uKUKsoZ0T3mV6jQOhZI2gYqnsRZ1dIBM2xuZsDNyjHmxO/9ZrUvj/4YJ\r\none3Y28s/vDBDjef9AGQp9ce6hVV8aBlLO6jJyw4zXF/420l00CEzcTBmRHZ\r\nOjsWaqv5f5E1vlY/OH9dJrgRb8RP6Tk4gOAPC1E7ZWa/UNINt7BFPMx2ZMCo\r\nyYmxNZ6O/HsK0XH80xyuA0cGGKm/WajANZQ8M1m5x7tsub0Lr7hHv0xfyUdD\r\n+VKAEgrE1v3GOMz3tx0Rtsblm3QEiYQVJBBsQEX0u65CUwv0jwUU9C8ODEXo\r\nKZpT7uWWeGLrVsMbAQdSEMxD6idvUsQlLXndGFADNkm4NKqjaCZ/7CdKlTiW\r\nmf/6hHHeBuF+8ubwOu5O1588UtUA7xSqb+Y=\r\n=vKeF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHMXhY2WFIyYZHdqFE53cOjiumv+r6EFl0dQlrI0fggAIgQOg/pcs/f9Pz982JHWs7j9j17ki+79V+C2JqOOWsadE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8-alpha.1_1645176011050_0.8225583644791841"},"_hasShrinkwrap":false},"1.5.8":{"name":"hand-polard","version":"1.5.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"c4395ca2f6ca694f0b719217e2e257f4f10200ee","description":"## Getting Started","_id":"hand-polard@1.5.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-R/BA0MSzScVwibPFxhI7kTxE+QcKwAZaBvFNVYIli4Coh3SqfPOPYHfzeCGcMMfFXmbHwKh6e6JIZYN/nVNVRw==","shasum":"499ec55b7a01945c781f4a4cc828ad32decd0257","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8.tgz","fileCount":84,"unpackedSize":3184830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFaCaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIQw//RB0z4BiU25XFd9WljFllG3ZRNi//iIL7QeuBZDvFV9vwo/cr\r\n9rCq9zTm9zzHgL5dqzPVbI7cbT8SVXVnGw70YVFw6rNYpitClbo/9mTbAnsI\r\nh9lbyBin3DzIa2YXroQieDVfejr7e7IVm4cMqnUbMMxbxQQLqxNxMvV0X1lN\r\nADzw+1fT8PfJ8yP2pTJ08WlWIMTC1DMNCZJeb4++9ROT2nGTBLubRBE9g50X\r\nlrFaDwB5wib9dLpnf+9ZhZIuQFm7gmmBEZKEqvSOJUr0r6KFmV1bWBW9g8/X\r\nBPvOSStiI4Dc6BdzSWndzVUe0+rfB3hR3ltQ6oqErrSG45wTlb8sTOvph5gn\r\nq/EjJfvAUHzIEc2PkgZtcbfY7l1RJBapVusk7d5yD0Ed6smFsFz5ldoG6ch5\r\ndd7WqsTMDyI7TQ72Q7EaBXhqOkz7CjZrh+GzfBHu6q1SFytEoieEqNbFOKNs\r\ncx/jVAJLiBuuiQueQaS6LSoVT/olJQvObtwDEe38aQ0fLVp9yuDlENXcydli\r\n2tjcuRYoZdOHCd1MdCCAcLdT0rU5BpoW1I9WsnpofYwKlZocTAYTC4m2m+fz\r\ng38i8LPdfDFNcXlqCV1H0lNwp9TdNut5ZN+W8lPZdRsL7ascGWuX/4zrgaNM\r\nG/dvLvmR7U67xBcYW6lTz09Zpo9Qokdi+hE=\r\n=iD3F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCa697+fJ2qPPhT68OYOjv9dhtulGmWdt99Dn24TJw5pAIgQ7m0G2xe5v65HgfNxzroSTRqPh76srUpUbt53I2/0ZI="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8_1645584538735_0.043606751083958395"},"_hasShrinkwrap":false},"1.5.9-alpha.0":{"name":"hand-polard","version":"1.5.9-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"888312600eabd1cb86d9f0275f3f324621fdbb87","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-0Aq5JTzn211p5dNHpYGL6m5LL5aWZpNrRMrvzpskx/T+4veKEGfe8rFspQFFfk8FczG2vLiGA7isjJGKuKkdsQ==","shasum":"ed8572772f0eadf371ddc5d71a977ec98c5c1e07","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.0.tgz","fileCount":84,"unpackedSize":3221709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFfqTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrxNw//auVRRAV/nKek7/yGr//r7BHs1FZ6CCO40OTHZnEz82GvC4k4\r\nezfCmSi8LNQc6YRqht/fm4UsQA94oZ98NXcq/NQev4WfkBgO8wwvjGbEJaCi\r\ntfVPtNNhcqGuvTLmITXW+K27yQ4Y9cA4xVnVOaFuxrVNnLfulG04gVOVXz01\r\npBkp1B+SPiqbO/VJWfMgwOpg2wVMEhLzobb5vhDeZpetN7knAtWEBaldpq9D\r\niQWtEBy8s6LnrHEeRAmetu4WPWIJo1NTZPvrGTUGgis7N5U8OHLNJ3mWTrsb\r\nWZ2VtiFX74eBUlD8wJsWENDrSAM8jmyBZhxXsJXAyI8Fc1eifFLGq+YJ7n5Q\r\nxUmmJGEMJ81ahcS7NhZN69+RPkJ9VsgE5AZfOa1jo8jCwb9LMnNbRkxF8F+8\r\nAcl4KOpaHjD6SZcPc47742K/ay4Spmyx3z1sIYn4llJDjE8zJO27PO3PCQBJ\r\nH8iT1+Z10z0GSGDbCjgg6AfqqZps0Mu/RDakNA5fODsOBTkzSR5mrJpI8Mg3\r\n96kKJ7PcT9dJpbhphKfYQ6djAeel21kVa2tPMTY4udvPptReR9cnTz71rpK2\r\ndeCsU968j5qvK6rIGraWOFpGC2HFn1Y1Yb3iQ2lZ+9EqvjPOtezheodUTZ8D\r\nkSWiMu+mYpaVNb2Qq/gAhvE6SM8uYe5Gc+4=\r\n=bTND\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGxYMTG/vqkpwzMesAC0jOxx5J0kwaK73CCnaUdrQmCxAiA5xcJo1BJY9cmFUQgZhxn9c524epMNVXMLGOX71CBeAw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.0_1645607570931_0.0007846926198089577"},"_hasShrinkwrap":false},"1.5.9-alpha.1":{"name":"hand-polard","version":"1.5.9-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"fe013c9fc738c5f38b5a5badf30df1d892a7f93c","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-utTiJ9qmohAV3nGSVBrw5LJIvNeCZcdKzkQWnEWsztDDyTC2A9kPOcV6YUZROsxO0/EaA4GshfC2D7sPJ8gaGA==","shasum":"49768f1994332ad42e62140ebce9ca72e0be2fa8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.1.tgz","fileCount":84,"unpackedSize":3221940,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFuRgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/iA//QNnnPFPpzavGHy11geRxTPHcD2X0Jkouz0hjtaijI04gMvQy\r\n0/WGYPi2XrPTGn5nn17yJI1thSkqVdKBNh6P6ANTddXykTU6XU8l3wAwebM4\r\nACZQewOnMVjXutjofKxaDtxvl9ypQ6AHP9czskS/exDf0EIlQR5S5cdrfTKN\r\n0+ugUSMbl6YWdbX1WEy7jb2WvTzzAxVxG2D1eyaRDTM5jMVrCBBrdEWXcrYs\r\nKBaTFVkkxFOBAm3D0Dwd2awb/r217dQokINATB0lGmihpIy89sZFiqCiu6yx\r\n489SrN4jGRJx5K2SCyOKriq7oAnxeI03KEHQmuWy71HWDmWShEn5RgLgaNDR\r\ny27F/iIKzal8Btl3wd/XXdbnIuFakZwNJ7+XILNLFugv4jjyKjOvphqmD9ct\r\n00kskPjYpeNOwPl2SkniXCNR9kJUs54cI0LKNnX7BWwUpu/e2yQMnZwcD3tc\r\nWs8ZJ73KXM7wW/s89fQjcDtjEWhOJlnksEy7CIItaHGtlQu5eRraDSsG/S0R\r\nVyoUhKqobz5yAWKsvD+QbjKndESEeBrMehI1yal4xJgFMK5LT36v+vNNTEiq\r\nlVmueyuGKwx8xN5UTVeGEMYhm4ct2z8Bf3jD8cYq6ru3bahAffI11wFGu7UR\r\n0NDeUV7fQBVtGsdaAcAx2J7A+qTCZA8Ap4I=\r\n=if0Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTjbXCUegTB+AttXpGuN0fpFf0lbHlGwGywiH9QDfNhAIgd4pORab+T41GwhN+9SdREpOWrZPKSGHXP6x8MjvuTS4="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.1_1645667424031_0.3032829393264953"},"_hasShrinkwrap":false},"1.5.9-alpha.2":{"name":"hand-polard","version":"1.5.9-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"af50de1a097382f2b0133698c715efded7ae5574","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-mmM/WY3Np0fWssKW9JwkA05UA2CWtA7L4oeJ49Dpz6BP7BuDa9riDDi4oB9rtIYClUFMaHQH9Y6ohtm7TZeoGA==","shasum":"6122ffaefd756fb7b8a4de81c802ff67f382805f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.2.tgz","fileCount":84,"unpackedSize":3224495,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiGDuaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTvw//UMmfedX1XGcI9X3kw1NedMZpOcVPp/NFeAfki77ptIpDY263\r\nKJh7tch1nBWsyv5jE9ZjXJb12e7ak2TiqIzGnNzNGPKHikxAKGRlCGOcNmyN\r\nGr9l/kklt2oHyD3AtL/Jy/6irzUzzhPdAtIlvJViL8mHZee8noLv59kfQQtx\r\nK+zWYaOQNPXqdFyAPfTlT6YKlpH5CHIkwUZN6DBA/wrT7hrug53GlP0rXl17\r\nVdzAqtfnj3gSINfWz7BkW6S0qJf/1hXqZEDefmEnUbeAJ2+KQkEuUupGwK8l\r\n/r+kWHsKjdqHQol+UPoN/nZRpZEBPEdO/0ytBbEbftwtwk6MRmF6aP+RC24i\r\nRV6skJXGEg/wtGiFLfw63miXJ12DH7qYp/6dgAejLzpetXVt5klgToz73qTD\r\nH8bJr6xHAgEQiaSHnKLadp71GoErzaS0Amt5C3DG/6/OVU1Q2c+RFWLh1n6r\r\n7P7lMTgidCxkQ9dlEpA92h2HAdj3uROVHRH8vauiWS6hwezpgYSOxX07OWe1\r\n6KkOD19FgkXSTjiQXU6g1DvFct7/ikGHIOqBj7H/DRmlEmo+rxBAQH8idkvP\r\n6OsP7f5STREtuYB4BHm0rFIoh7+IIl19zubiGln9x3vWt1XHR+gNkItOh8yW\r\nki0ygoJEJmbJmE9aquN6LS0GbUqejjiXTTg=\r\n=Eepb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmy1E31zGhM3edsyJ1hUIUii/tNktlsePd4QakttSYXwIgS+n2q5eImbznlfFpyIba45L5QwLaf12jVhRKbZ0j/z8="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.2_1645755290429_0.9917789075512666"},"_hasShrinkwrap":false},"1.5.9-alpha.3":{"name":"hand-polard","version":"1.5.9-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"64d9c491d9f9722002b35d9c0533003bf96dcbcd","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-VkgaIW//HTLYpK7ABC877WiM04gWwOTUHwN0RXmo1e26sQRIWeZOMxKBn3Y/92BAF7cTCyEPbyHOefbHzySEoA==","shasum":"7e22cb53ac89bb33156bf800a9f547ea205d8d7c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.3.tgz","fileCount":84,"unpackedSize":3227132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiGKrAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpFtBAAj1HrYpnz/tOh9qRQyF0tXOpY/v8f61IHFGOCoVCrxe4cMKU9\r\nniYsswolQfsb7TiGGJF5zfUw91MY3rXtN5x263ewYnL3Y7E4xKmng4+VhgQ9\r\nTe1Rss9DAYRH17aXEmYh7zctPxgHNwUV2Ltj4OjIQCKEyarbDXiApaxjKwuX\r\nBro3+OxZnZbQRe++exMqqmGT3Mq6dnQ2zitrE6Z2lAZrzXP+qtB+Akgky2+y\r\no1QYQ+jGgP97mtzxqTjgyFt5UnE9M9OvHE3Zsxgf6D8zuc2RQghE3E/zP+5a\r\n8RyL64SMt7ITee7BgMPf036+4Qp4o9M07cj48WJSPkp1XRhNMkyrMcVaULNp\r\npkXQKqQbGJ/MHTk6LCYapyAhdX28zkVagZcqXPKuCJNiAT0d8r1S8ZkUFQJM\r\n6imYEgDmY8w/catxJnVaU005SM+SjFlaGyoaC0OERtxRF0O/w3Jqbsb1DCLj\r\nOXuVPfM5dOnKH+PBgzOEfOmX0FvENXVXmpLjhbOGU2r3KDLyUvCCANkao1pw\r\nZ2BqXFk/JiX1zRhEFVKwoQw35PDzAQX4I70a+Lnp8Fu+6LM4H+1od/KrJCUQ\r\nNWWETWNbu3Na23+/dFJ0IwgBwVPeO9sx1/Hn/0Kxj5gt6WCMIbEIQs1OPkuJ\r\n62a1AZ6wnYJrqJCno16parnwYkC346V5P84=\r\n=P6hy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtKtVjgftpSVCiS/01/vleJYTBvB9SzmbDjPZN9b4NnwIhAN1sc9V1RUoBoEik9++dQGB0YBatEGGe1sm9LB86/TPG"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.3_1645783744637_0.04872574167930854"},"_hasShrinkwrap":false},"1.5.9-alpha.4":{"name":"hand-polard","version":"1.5.9-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"99df04e87a8fd3d0212a0a95bc97cb1683fdea01","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-K0RLOrmTg743isHCZuCbp+Uqq2P8S9y1JUhI14EC2nFQwYjh23gBTL4Jvgp7/gHPkFmWnaS8DI+Jc/uY5I1GBw==","shasum":"5267507de037637e9db0f7627f1f8e47049f43be","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.4.tgz","fileCount":84,"unpackedSize":3227737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHIcfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYPA/5AQA7meOq/xH9LIcXyUEH/fjaaB3i6dnqNLGmUsFOzVRXj2lz\r\nIHt0IIfZQxBdBsbKGg7Dw1x7ZjiuGGYfgDm1fn1v6jaU5wKLkrRQifwa+P4n\r\nk/6I8S+fqMiGaOLwcghTFyxCS8mSrr0gVu2caXFJOYo+CfQdl+2NuDnWaL1Q\r\nLJueDoP/oiaaNC1b4m2rraJMthwabzHbidyUF1DSfBncXzWDyIq5iSSWfaAc\r\naduQv36Akpqab5NdigH0kIslL0NiAXCeTGynlJS+YADwQQIvg0T70RX6N5jk\r\n0TqC3CrO7jkVW9OczPi+IDoSnFcW4W0IEzSAeu2LtQ47HwGr/Yp0lTIgg0Vw\r\ngEeqaUYMNgVeodG9UscDt/c3gw2iVrMkOzuT4VE3zkR59he9Z0jDnr4ISSJu\r\nbIBmO2wQpSMzmZpjytsmDLsAU1kBHM0CQmI1PPyAK9dVTS2smUsSlOVX7WFR\r\n3lpD0kLPKvmtFMTijVI9rG+4BEYGbuuyogkQHhqnT4yjdgRQvxzhR7RzuKvg\r\nMs4kE+J+toU348s42BE0OFKCsz3zQi5kL0jalOhb0wIOt4t+Ah7SzYHfBNcq\r\nDUjq/8YKrRheq+8WV4N71cMrQhidi61zSr/dwCV/lWHz+QaWTBfdOYeU+MAp\r\nzM8wNgzKGrFeZ8U85aSK9aU/KFyMaRcZTnI=\r\n=zry3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH1nLf4h0nJMaY9kNxWwjSczmg4X/nMZCkM3DbDLCstXAiEA5gC/DH7EQbDJSfpqJmxROvbn6sBpai6kNbTYeqTM0EE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.4_1646036767156_0.6091587849089168"},"_hasShrinkwrap":false},"1.5.9-alpha.5":{"name":"hand-polard","version":"1.5.9-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"af6f19bd6a2e190ecc0341a93673ba63561df5b4","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-M51A6pCa2j2QNVxyoF3y7kuksV0SzKwYE7TTxaLCVsO77Iwur1drGrpx8sl+I6xxfAHQcraVUXZGiTGTU3CBsw==","shasum":"73fd7b20c70c00701b4d578ae5703beb29d342e9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.5.tgz","fileCount":84,"unpackedSize":3227221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHJUXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqiLg//cEW5qwMKDBxHYlfzVEnwF3nH/Jz2fLygNKQmkHaj1zjCJ9Xt\r\no80H/D7u4xNKN9wCaR1yQV0UKsuDl4N9h1wFGRmUx7fm26cee3wLx6FeICW1\r\nMjKyXXTOxgk9tV9zpB20Wm9WmaWLyl3ViVgXQKtSZ/EtHjVUtN9VjxAgif9v\r\nHEGfCL+0twXMkny6tb63s/eEB/8ZqXVdJ1qGImf/wBboul2H1+Jkh1DPAKui\r\n01l2GTAUEiUmuBhP4JFHUA+j0nTYKBY1UoJ2W812TeSTKFrhaoszDSisnstJ\r\nWILZACv2b4BsagI2jIafuuX5dIUpOXfS2GHijekdcOJFejue82dsr/OpPJqu\r\nCpvNeV1aJoOgIT4YEb9LdqbEfqCZ//OwWIqzvwQ4lrTus6p01AjgdgPsmH47\r\nlfFmclAQIEEth34coBi0o4n5BViVEqDhqsPNzIAkRVbyc+wnUnnBIc1TrezG\r\nzmD3t1ChxvgxyhC3MkFTo++mV6iNu7Rx6de/JZzHHdkUaA/z0qBuVAKASGjG\r\n13o7nugfNDBgwMO9+AKSDKjPq6xMv7hANuBO1aVlTqWLvvdSHkqDWyjYaDUg\r\nMEOPRalgS9GJQHCzmIwIskJn6bArXGyvK0R3b2Khr/H397IqoH8EjZI39eAP\r\nCBe0pLxrp3WUNLh8eyzmZBkwaPZPu60Pu14=\r\n=5KBV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuQWAlus100hz5eoY+OhT8PnUturl8ONx+ftRXWqsBBAIhAI87Mu4PP7ExSxLvTBy73eF15IPvtZi5DhLpgf/Q+6ba"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.5_1646040343633_0.42639724412075597"},"_hasShrinkwrap":false},"1.5.9-alpha.6":{"name":"hand-polard","version":"1.5.9-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"b8e320a7cad5fd8c3a9c7215b86b945f6fb52306","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Nm4D0gsaehMIf5v5CD5i3hW9WwNC3PF30oDe3hrk/yo/etNYHcJFfu2NGTHrJ0wARGcfgwRGEIa62iDpXu5T8Q==","shasum":"5bb1204e761ab7510865d555e8a268c36eaf0b32","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.6.tgz","fileCount":84,"unpackedSize":3227668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHJ14ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpLkA//QVaHN2WR6gkGNRQMgyBiBk1FH/7sT7pYnpmLbcTuSgSOmjhe\r\nmqmF8H9AZBLmSfCQw5sO1eYXQAHJDIIPV/c2Y4jUfRQ3Tbt+/Gi7A6ZJ05rD\r\nmfZm/7L/eYiu1kCx7D5EA+PiLKn+sYM/2XmR1UTs4G//dDuzQPatF/uy9/Dh\r\nkFga/Aqp8fgqk12d+sqc9USb/1hAApb8laLIqGiwHi1cgsK9zhFi8Oudn+Q2\r\nDdIqWzkkCBFuvFjK4KI2pjp2WIcbG1Dl1oLyB/TfNgjdyA7gpn6uSYaeREjU\r\n8oA/Tqicq5Z4a4wUgVH11hY2Z0HWUtBigEiOObfgs3atHYJ3/H0HUJ9//yh2\r\ntdRmsALGTXMJ4gAdMP+B7EAAej+JmdYb4Z8tH7rPVjXI6p/6iGlx8Ay7l54R\r\nh9N0bpXp8ps8kRdUx38425XbNVUhsa434E++UrcS/Sdh3awCGZP8a8I5Uq0w\r\n6ajBsUWgA8qegAwcZmxVYVdSWQDxtQMc906l8Opc+M8x9ZWrzuGQbf7esfma\r\nDJRfZnoXjaeb++GpDiuapn9+DgUn08XpAAKnlclSJh0pHOXeiIypoPT8te/R\r\nE3ML1+fcvU8pieScj1dhG/4PJuYrRYyg1k0/nuemyPyKEgxSyneRi80j+Jub\r\ni2mHh+rv8N+68z4XGK9La0qONgb1VB2GbK0=\r\n=Nt4a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBxFVw3fWUUQxAjpY+V4JtggF5nnohAmeQE0cquR+PoVAiBbhj+LJhVhH6D8bkUFhli5/+dVBq0Nd3E2nlKKgB37tw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.6_1646042487909_0.6225224873783273"},"_hasShrinkwrap":false},"1.5.8-beta.2":{"name":"hand-polard","version":"1.5.8-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"fa77ba47562873296987cdd026973821d24399ea","description":"## Getting Started","_id":"hand-polard@1.5.8-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6uZIra9YFRJ0Up68TG2Y/cevWHCG1LjzGL58wmZGgdqYruIxQj8ipQA1eGmgso5ekAGs7N6PEGNHIdkUyruRWw==","shasum":"332c267df1cc293de2a7c1952497c0232eb96927","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.8-beta.2.tgz","fileCount":84,"unpackedSize":3196104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHJ3yACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr95w/+NEBsKUG6Au6o+MhKXrQaQ8B0x5Zpdipjm4oExFGIoW/5R1qa\r\nTk5eBFgJ+5G7sEaWo0BEeXYJ7FzLRCClcdy1kOY2svOjEsY71x8VYe9qf5V1\r\ntSywZherYJlXLAi9tx8sU0zwXdAOxZXuGe9Orm6Cq/vray0fWlBomzcDReUU\r\ncA9Cj+DfJBiH2bASl7sVNt09FnnFKCgh+of7WszErbG2Mn2X35cVTrfqSUL7\r\ncfUOouDxlGM4qHGoxttmJpuewdqLO99yx4hNiP9vFzKmfY2RvzZVCwfBwam/\r\nICCfL3n9QODTyPxjki9KfNcClpSTS8GBbEG6FAEZEvDPp3Zu1fTq6qRxLetS\r\nTicIM6u4ADQ7GQxcyEEowwpNFh5HBw/H4kC5i3FGMZtZDZAVk20dKBVWpKbQ\r\nvWslQMr+Ri9OhBJfu6AbhgeSVGnXwvY7SOzpYrLR07fBBS9at4nrIpugPdaf\r\nIWA3+xer6hJ7WvQYuh1oIj9SVgNGUwazjpk/bekgXgtLyaA2f5nRn6d48Uhh\r\ntKI16Vrk3oD2Sx1SNKvMwxH98cnYoo14hTIFXyobxfG4JbXmD8x/MMk6IXwC\r\ncQyw+ptnFdLNeYY2iL/cxfErA/nZQ4ae0gNmsS0dtJmbKOM2ERcT+J9Vpjcu\r\nBvM6k7fyeojJskCbN1jbYi4JavM+V3POUQI=\r\n=mvQm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDh7XVC1/zglW91QcNH5HK74M4rZWCJOwiCO8x9XCW+vAIhAMW7NY2h267VtnBhOnCMkI1TSRZmyQrAG8B+B+t+5qDQ"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.8-beta.2_1646042610217_0.19098376575344211"},"_hasShrinkwrap":false},"1.5.9-alpha.7":{"name":"hand-polard","version":"1.5.9-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"bf42cc7d7668b60ec58f3982366ec0fd96f894a4","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-MnlhN6NdsC5IxNiGGTyIw70FNaHNpV9L1lF9wLZfdA7ECxOqvd0fbAXmD27tdsY14d291vgmPmvYcb0EvYDKJw==","shasum":"df3b0a970cb6c13519f14e4ed2c5a6279066f73f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.7.tgz","fileCount":84,"unpackedSize":3227753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHJ9qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmroJBAAhAqAZTSswog0nGck9S/IEU1QD+A/U6W/E47Tbj8jObmkUmTi\r\nKuHRSMfyFUEmCtg08B6QxPw4k0K15cXK5qdrBBhM3tE9aVLK+PH/o0ysX7Gn\r\nvUsaLZUnni5BKjAs+UZ/6rtj6hrg7bDTiiBYsCvauB51uQpD/Hlp0TUi4fyg\r\nsdgjQT4hqdwbPk3UHIz7rS00hjnMKg9HfEOaicIWr6KRfLkzxvYBgHEJ0L08\r\nH6bx2rZ8/PZSvoOQ5SijXcBy5QewYu/DqdTBOfOJnzBtbtDHgcoG04H9FJRZ\r\nRQh+VURVb271JrqV3FWSTbugOT01koBGPFRwCoeFaEkpeDd/qYFlal0W2vRv\r\nSRdgNDadxVdJ/mhhokdGlinuOKOT/lBTQ4tVj9QpFgYpGRPKWATP9Z4MwVU1\r\npZQSqyQIwavWpP6L89gKcjcz3zEeOLGyEgLOI+X5AVcBoIVtcjThOIAzzjGC\r\n35AMc82opR6k1FD442gyIPRUWeA77KB8+jXunDhh5Ct7AdSMOH/AvRvHHMCu\r\nIDbtToVOBTkpl9bE7sgJagfobNsNS3MzeVtYmCrUuwDUW5RrFekf2UJ6eAML\r\npB61L4oSmtPxYq2DpjxqrowdVeFyz7VnHZoNBk8QoDjdF7FSZGK5gyDNVxWJ\r\nV9XYHnOSvuRPjEW00NOa7hOj8sVOsszpi4c=\r\n=4Dry\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIACta0xs/q1LTqBZ0waIoRiFz5RoUiLJrFayUxTVC6+BAiEAkLWugekAkC4coUgSzfLYAJM/aq133iGbRz3weZ/P4Y0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.7_1646042985826_0.2775054445748315"},"_hasShrinkwrap":false},"1.5.9-alpha.8":{"name":"hand-polard","version":"1.5.9-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"bb80bdb03824ecf469f458679c34fa82c1498da3","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Znrka8UfpaKn/ZRoHHkRKJ9tuWoZOaJbgUkEU/ltXiXfv11waMREhxiGhHGo6diI/sPW5vmyGLO0CKw9/4f93g==","shasum":"8cc417b11d11e60d61b5997973fe386e14696b95","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.8.tgz","fileCount":84,"unpackedSize":3228190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHXXYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo1ag/8CDUgNsVCipLwOrb8oyGbbEKwJKMQSPWT0VJ3+DBZ5vu7l1Ro\r\n8+1hOi51oL8Xjq4UI5uqKOL/5bHAbRdo+xwClmUz0x71O+ZFpe8xSTt3/7hq\r\n+h74Pwb4IM4LVIPRhks5YNGes/Q5k6dilVBCCJSxK3R7/xSMm6bQe4JqGKX+\r\n3YZLtZe+sGIVzRPLgj72jiSkF0DA0oINx1FyZhjb9NAw2dNDU7B9Iyu7fH5f\r\nT5ATDp0Eh7zMeo2N9aJWZewZyUd+R6y6QdWghbpvao9u5XbLXYCjTzHerp5S\r\njXdLYPVSLEvAh7NFGyG1NcBIR5OXJn7JYSwZyC5t1gchEIcPxM45ETxVkYFQ\r\nsqsqUYASPygctdcEZg91lAydu0QtDg/BTTQMCLgVuR34ytqDyPeuZbRgriMC\r\nULDk/8xFrgGK05v9zo3AYmyik1hffb5lWz6FLhFIFVGV25g5PYZ+Kkx3Z08C\r\nA1qigvX3ZaGrenedMmbMroh6uM4WmNivxeLhoLZSz107ERRVwcAZPmk5ZOc2\r\n2RQCbt7fhDnA00lYYc8g+t6XkT/yHT4Qmr0oEU49mnD2O5sSI9rQ+bejr5Q2\r\nB44eqZFhEMik2mHUi3T76HzL2GCKR/7d6wZtcvvaX7jY9chMUMhLhIkri7Uq\r\nNCiSqZYUSjQlsJ3sxHSwSD6X6Yo/2s79AB0=\r\n=A+9Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBarBnrvAUgRjZNcIDJhNhWDPyX1sRDThFzqI8iwA7WpAiBbMpa/8bUSbqMbDrqJFwfSn9bcHxBMJog659Q2q9M9kg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.8_1646097880716_0.9736449198282997"},"_hasShrinkwrap":false},"1.5.9-alpha.9":{"name":"hand-polard","version":"1.5.9-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"bc4ec8ae46337f6f9bbd4885771cda7da441ab5b","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-E22Ou4xYxJsg49A7mZBpc9/S1QFf+NTKhysEd8rD5tD5Nyavrc+dzo4gO+KdsXHlJWEVkokUZvwRxMoo7VCEAw==","shasum":"acfc309282b197b139b3dc29e3cb114aa46edadd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.9.tgz","fileCount":84,"unpackedSize":3228925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHbsGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoKEA//RjQ0JEweNzTuyVDJN4hX88Pz74s4gI724IyKdkDMOMyJm4Uq\r\n3KVTpLOBnEzf9E3UFjEOKozYGCzZUDamdVYVyjhpprKuk82ogMjXDQTIJQ+k\r\noA2fN8+PCuunrjgsiNNHfASjP77W9u98MwL8PAWIrHm4DfORog5yKNoS4g4h\r\nph5FDcTrmHYkmcR5/eT/Q9zNVIXwqDJH5p4W/zRqSi/kM+GDeQXJu9w+eSRX\r\njMo6UQvFShf7KbnkzHMwFWiB1IR+0FmRZJkMvMgVbi/mOfDHbG7TG1pcNpOr\r\ngWX+JxZsYShtCCMkBnbWGRlLzT+jSeCUwK0I9mtRfG1MT/dEi2SwgjGCMhGJ\r\nuiQ+fi2C4FDgfVM5FuwTyeym2wfJKzxpL6NtdWpOA8F/N7mwbYKMG073ieLO\r\nxYz7tdw5kprWeMJ9kC7SOvVD/YQrm+kRvQ9V1v3vDi8QbpxdyD/YqC2ObCfh\r\ntyE1Ek6Q5noBIAPZ/Hydy9IDznII3H/bzCw7AKQZP+049avMlkR9zmzqvxMp\r\nJiRMcuGkSN+FMc6C/BTnP/VrEmSv8FYwjzEG+PRZIPeLNE91NrWiCcTBSt2n\r\nnqtWtVQsWBcwMTU3QHMFz6O65tmgznycK8QNOYm3X6WGbDAg4CripxocO1Dl\r\nLL+cpnE4y57UpUFue2EQP/sE7/XYMJaTHKA=\r\n=/FBL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC94FNG/Jz0zbdKOhE8iN4i6z+Unr72sJOKHaaX43tAmgIgAUprX0861U6ypi+eqvfhLRvFfJsYOn1RQ26JWwFVjvU="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.9_1646115590760_0.6904070949655456"},"_hasShrinkwrap":false},"1.5.9-alpha.10":{"name":"hand-polard","version":"1.5.9-alpha.10","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"af6b32ebee22b0fa8a43b25af680d0abeadfdb2e","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.10","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+AEHAZ29SZn6rQO54op+W5Atq9uUZc6uxVxbB6Zsq27N5MxBikaBGLOCrLxRtR0XsUM7sjhlk9dAGNYs6DPKcQ==","shasum":"9d341c7f3934bb1b81331f98d6f5f7401fd6643b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.10.tgz","fileCount":84,"unpackedSize":3229446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHc+kACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrmxQ/+PU1SgsnNCOc2DpiQyB/VIW919Cbuquaa/zBNfbGgKTTD/IJ0\r\nVdpH6g2eaZZRgvaXzEF+DUD8Iiia6ZhNFurGEyS63ugzonEXAw/gn3735cop\r\n54GbgY6AMNQDzy93coGdlDFj8dFUV4jDmTkYsrVlvSxwC66g0J8B9a85Eh0I\r\nOrLl0mQwS0f8cMPBK92n4TWEl5tKqL+OyFVNwrKnefNzFFtrsns2m+7nvyjQ\r\n3XtLBdVukhiLjQtwt1jozwCI9Cf8csd8PqvaGLBnoL2URlE96+uZoTi2M4Yo\r\nCK6WTObNbglvBo495aH/Mp2nil7D2D5Uo37qAhHPFH44WrsysVovstO4zQww\r\nVn7vDKW94kG8TZt4w7hef9961DGIdr0nNXC88UmcXwoiELDAZePrTxUzGRn9\r\nIiuUAVGV8QAFHK8HY42Oo00TugqMx0HxMyHeCAlAbHDcgteGVexfaY99EgkU\r\n8o3DOZh5Og3RjVuJjGK2oUk9taGwvY5iAT3XIeaBpLPVb+gv37BSvZ7YNRV6\r\nTdd/dQdxSZZihG+GDoeeqNkVnG3rJEH/Fkfz9m2jeCsEcavFOKMXhbK9B8tm\r\ndi8rtlO6lx2DiNjeVEPwhlGcevwVrwetm+CguuqgMq/z6MZiaq8tNqJeaUZF\r\n6gfEs4t0Yqf5O6v/pjf/UWl9tsDZ9t6NLc4=\r\n=LAI/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGBYXpPLadRMR6GY6ra1nAcO7HRt+YftIwU7X8V71p5RAiEA52ssr6y6tLGUiHwQG0/rqrHregsIl0ls1wRsPVhkVd4="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.10_1646120868747_0.41328080143291945"},"_hasShrinkwrap":false},"1.5.9-alpha.11":{"name":"hand-polard","version":"1.5.9-alpha.11","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"752573bf9e6cef2c493f5c6c2c2aab317d16db6d","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.11","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-80IC5D3Z9lVPeckD99fr2At7xzPgouzFbMRVtvqGkbj5hA+MXNL5zTDKMfQx3krnnvAMUAlxeaBAKWU1Xd3mPQ==","shasum":"73fdb1b93ef9b1385dc1002d80a4b23f055b25dd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.11.tgz","fileCount":84,"unpackedSize":3230338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHdESACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpFqg/9FB6VCoioTKChwSya7ZXOE7mrwkT4JsVoag4oyLTG62cwq9/C\r\ndEGINeapczm5rJrKf2Vuz5gBMIiXUi7KF6V2cz6YmehFZreiEUiT7rf0dBWk\r\n6Ot45mFo606DcDFPlljKC7ePHAPn2jvAqzISyg77cztZdW7pZkruqLHD0mAM\r\nCZKIbqkj9KTKPZjXS7q/rjSk8F41nQ7IQTbIdVNKdjVe5WBkau32WlqiUymg\r\n1AC7UP+VDrbsyS/ZV9RWy5dEu6i/RzXbJgupNn423yhSJiIwSBWq5J/bMv4f\r\n9zTnIUty1J9BjxtCraKnCO3ZbKU22Ac2N+MVWhQkCgPzhzlBpWAfc3TualPZ\r\nplLXGjbG+Fpk6T/rgnOg09bBacEqgueMakbnfFZ+faJUtXdb9Yxt49W68Q8e\r\nLQ683Z1H4VzHTcj6mnpw1UJhUHR90MkDU0+E6luXbNvE54KHUdfDRpeCAvo7\r\nAPyDpdFQJRLbnhe60m0wINtNutblybQtiGe1sGQb8YErG4cVVxB2d2dfu5qk\r\n2oFEdc4idt9uGKnpIZz6PBRgnzOAIuUQxccKxCgYIICSinV3CAnkdZyyHR7h\r\nfd64puRY76Q5cnlv31gGLAuW0tUyfGCpe/jrX+Eg//1gMTSsypnTkQDh/+y8\r\n2cEl3xZiPIk6O3kcyFMkRKTxt8gvarZwFnk=\r\n=hahy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH5R6WYnf8tKJL/OWzC26kcjCqEGyL0xb0EcoOrCJYgOAiAIuWzhgIcmBOni9nilBVT854kwAlMnbBI3wE3wru5PYw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.11_1646121233909_0.5158670242772114"},"_hasShrinkwrap":false},"1.5.9-alpha.12":{"name":"hand-polard","version":"1.5.9-alpha.12","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c5e359f0cb341f5bfff73b6a4ade652d8a6ea7e7","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.12","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ZxozPe1jfAW/+MUPjiIwNy3SWNVcUMMJtM1B/7KElqQOemEnrzdL7ePDNjhhN6Asl96ZSpDMM2hC4D0bSVI8xA==","shasum":"6927f09652601f2e097a58d1dfe5f15b510886d0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.12.tgz","fileCount":84,"unpackedSize":3230980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHfIxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4jQ//a8eOLera9LXBiOqKAREn1fxJsbI/khOKFc69wpwjNmUbZrui\r\nXsTFjsP6aP445Y/uTeiV5WDHroB/RivN+5gETmIRLIQaw+RVzJp5SR0QHTfE\r\nzUvr0slXk44c0qRIEqlZx2KMZ5KZSbLSu9SP83+jeDXdeGy7fhjMoBh9Lolt\r\nVsksQ9yoSpRK6wO4aAbrhERs47n96KYHeVm+kt6YibXGQA8eMvd0VyBNw5pB\r\n+9qOi2qTr5iBbPuC+ww9rxYx/Q9Mo4++qsJb9SgHdZQ8tbqZtp90/z95x/lr\r\n6KbA5/2OTz+bwkiGYLbBLS3Nx69ND1o1PO3wuf6wgMlQILkUeH9Y3aZ7P9tS\r\n80QCloZH/zhsKd4ww8DgMHLvyDzxq6GNvTSSpZpSoF96PhJngUwk5o3YphEy\r\nimWUx7jDBahZ4k+uqVe4w9pYjXrU8RGygoFFXeKxCmPBTy5TvAqB1H8tC14W\r\ndeX0w62FBUeLGXusWqFqzlofP5VW7U1M3b666Tj3fYNzX4z8zJEiBcsVVnZ0\r\nVQEZ55fAoF8lk0PVc7m+VwC55PPB7a2yUSvX/OB3l9G8jEQd/o8N8cmYzQZp\r\nYBkowJekSkzdDSNdf7Qa1q6ZD1uKhPztD8Rq7MtTguQq6Zzp+omjYeiqgagx\r\nSN5khggWBfs+OdE5L9BgZDGf4JwAWwV00YU=\r\n=MUkB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwdgh55ndZBMGHLfI7DEyg1iizYQcj+gXaaVMJDTsUwAIgI535FjdQhgxAiKBFOir/6TEW+zTl8/laM+n13SCUPk0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.12_1646129712963_0.8495022879560425"},"_hasShrinkwrap":false},"1.5.9-alpha.13":{"name":"hand-polard","version":"1.5.9-alpha.13","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"da036ac31d1c07636ac00330ba828e02d4c23118","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.13","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6Qg3PvZek7RIAQXdYFW2QSQ1k/mB/mhRhAKiKy1qLJ9yw3WvoLrZ/K70LaYdowXonsLRlWB60oc6EGCBMWbUmQ==","shasum":"614e6e197a18964e4bd3833b29587157245616ee","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.13.tgz","fileCount":84,"unpackedSize":3243551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHsWHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIkRAAkJVgF9zrzVKAVC7UbD8R5ek/qDUlt+RCFAKezL6Wj5qXhKAM\r\nTR3IaX6zpqnVSYscy5KhArJlQYeeZtXDvJ4OGS3feV6Zzoalz3ztOMyFlTo3\r\nnUwELp0yhGA31Klfn4KtHsLRAV1GIe71Ha1H5KEHw49lndcvLDOJu0JWRCCu\r\nhn3wLsTbu/S/ojwYHxRO2lWIXjulV0jd82XNCVAYYwH69cmSqognmafcrGuq\r\noMdoKl/a1vkXQo97YHpwb9hX0xnya0ulM0wC3pa9YNDzwjgw6jYcE+VS0Om8\r\nZKnGkaoDrLkwnzPQwUVBOfh+2lGvBaNfxxvsMi2RhizMoYOcllvCquZoD3LE\r\nRMzMwLQnBTKPErPdEEqsp5qgF8ay5P3a0AP+YzpOqEgBqlQFAgOH3dvLn59H\r\ndMP575UroF1hgCSXpATmUtfGb7qm3kmu5Mfu122BDL/C9ocKxKLWzV4MR8Gc\r\nrOh2B14m0TWyZvtQOr0upv3fnGiyT3BUtzJ5d/7wVt+xQLmbfXDccV2FkBJt\r\niVu6dDPgZ5j5LM3wL8e9ZJ7a3fQckulE9TiETJvQdnD7aZsU2cVlTTtOL/Nc\r\naDe5PNkGPAcu0+bdMnlyo/UgK4cf2NdnY/ld7ZjfxDB6kJ7fLwCWluA35ExG\r\nh1CGmmXvIPhl6VLUX+EaIV8kzDQkzS8cYrU=\r\n=duor\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXEgH0ku8/MlleY2xSak8TVt7NXVPdzdO6sk5j/3y7VwIhAP0V/bNbc0hMHBeWpdgttoREUHRZELtZAQWPWGF1GBZi"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.13_1646183815142_0.4720613950460639"},"_hasShrinkwrap":false},"1.5.9-alpha.14":{"name":"hand-polard","version":"1.5.9-alpha.14","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7e77f391d0f0a856984cc83649073e68646859d9","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.14","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-dr4XPmrOKFxQHPb3chv8mI3c0EIf/nWm3/8lf/7Ofv8jf6oXaLz+hvvULs1j5Xk4O9eU5a9E5eaR7gvMaAmVzA==","shasum":"0df0651d24e265cccb2e0173832f8b67f31efa17","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.14.tgz","fileCount":84,"unpackedSize":3243954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHthvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqtEA//U9m/j+p4WORf+Ppuch/cbZOScgA+KACcewSQLoneUQNaEYis\r\nd7/kjT/ms0q6eSta6liYRb10OseL7B7yjTY3bD/V8NCXWIbMUb0fUUcq86/m\r\nwYlGICAYEoqNvssy4fSnwj15CaUCGfcTbPhFX5V4eTAu9zukcWx/SxtBSgJ3\r\nkxEeE524tEG39RNe3MmQhhFROWKLjfC/2q/JT8sswBVdHv4LPWbsak4STFds\r\nfJ+4fBu3ao2rzBjkAVzM80lypblvubku084P3wXyIRCEImm82mmpYHJIdpAA\r\n+U2rsYYgjZnVBpL1a1uV1SR96fbkD2Myh3csxmLVTHy8gjOLOJVq2WyNdcFI\r\n80haVcHVqaHoXXVJ70Mas5DHEn1P/P/IKsBZ1aHah2v9qA/MVZlhX9g1n+1s\r\n089PEijSErhBKhhxE0d+4zlzQRpQHvrQK61B42ji1/VxWlhYIXejobgu2tiC\r\nWb9r1T0QDzAlOQ2Hk1KuFfqIU/DHwU3AmGUFWCMVzBF+2vMlUtEWNqz/gPBk\r\nx8/b6FkmV+7hkeVJj0QKLuy95DdAJckZYUQGA9K633AY09ZcebfhAaU/EnKO\r\nu3yUpqFU9+XLYR6Bmtsxb85AFIU+OStGDdKTo0xBywEeqvlonlFc/QQzR9HX\r\nHuXuVtT0rX0r8w8DDYyeSA+5tg+ctYIy2x4=\r\n=DqV0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICZ3lAQBm3HiV4l4Amwg5hBDqq/eCMpmWmwiq/KRi3udAiBq/R95JIyDmCNerlUzY12V9z0mHjJE7enVcGEwwYYo7w=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.14_1646188655289_0.8633270053983808"},"_hasShrinkwrap":false},"1.5.9-alpha.15":{"name":"hand-polard","version":"1.5.9-alpha.15","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"fdc25a84b6c67b384795061feeb1b0b98a500cf3","description":"## Getting Started","_id":"hand-polard@1.5.9-alpha.15","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-vP89WLH/WRzZklX6jPpH/rnGxrOCMFrnETZNwlD2DaxVVnbWtR4vuy1DMGpUc2JT+HSeuSfmfe4wH7ur+BssNQ==","shasum":"a832805a9a9e9aadaef6400a276ef822ff9951e0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-alpha.15.tgz","fileCount":84,"unpackedSize":3245692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHxtUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/ag//a97AE8sGfKG47/a7wj6w0QX0yeBLfEqU9rm3VRbdHrqw+Fw2\r\nIUfsVHXg5W47GoloEpfNc/s9HjqXNk5lD477jjN7odIjCXxGVhQTgdQmI7UE\r\nSLVg02oJc+SVwiCR9VCrXqqO+XS2jGleV+M495dSazrxPClU7YkR7k3zul9I\r\n6JNYkvRloa/1h6xu9xdDvMZh7Y0PLF3iyeyyMvlfoZt5e/VbIqQBVIXqdIVs\r\njgJ4qn2xeiAgYYbbdn6gHx2ouznWTmrT6Pl1XBOooWhZ/w25ixhXVxGhdNs8\r\nQK7nNUUyLNcWq5M+zLvmJajrX7OGRjbTt3KMq10Bv3ot0HfUhMqgW1w1q2jh\r\nvDckNAIBNc+sq5zspvP9QH78+GIDp2x+0LbQv5O5aO9oh3QffRDrrKoX0tlG\r\nYrGEY/HfBnjvRm09VFR2akWjbeLSGwHXN3neBdhdnyazu8V+oj0+DmpLb3Vg\r\nQjNHiwVzRzKtl0e0Kls6+mVBIJKlwBXrf/tAzxwqJDCugQYpIU1UhqjTQ7WD\r\nphM0j1pJ/un+8KDRSeD1EsUaVAQc4OScdl9w2Sd1xxFg2hMTodQ3K2R/hCgB\r\nORKTjqFEYVuCuizyOgOYc1akGzm+7x9A1k9UPalXPWhEIATE403Ni3xtSQDE\r\nPRND1fkB5oc8rU8Wzi23OACo4cj7fNLQHNc=\r\n=OIDJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGITI6OVKqqFdYDd+wQMdG6zQ33G3cEYL3ztJxDcgdVVAiAMjFb/36A3WaS5pkVXMjS1ZzZC/mTWve2Ed2ez+1KnqQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-alpha.15_1646205780114_0.03024829807069862"},"_hasShrinkwrap":false},"1.5.9-beta.0":{"name":"hand-polard","version":"1.5.9-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"eb964a3cfd19ff8a84915a51f4b46f9f4b2d0dcd","description":"## Getting Started","_id":"hand-polard@1.5.9-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+lQaxxxkmVAhRnVh22t6BwAYnuq/LKNLF04jjZHvdqI/lp7k+cRZnKdF9wKQ9i9VKiyDlNVV5qJQLkrDuPB+ow==","shasum":"1dc7f0f0c18f77467ef2a75a52fa292a53972068","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.9-beta.0.tgz","fileCount":84,"unpackedSize":3197191,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHzu2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpAZA/6A+qTLZR6oHUxV0ry+JOdaGy3QfVvZYE9yCQEr+h9aQcrRMFR\r\ngw0bUtglixvU9mmkr8PrEgNDSbfdy5NyC2xCvV5iDYudSqrxGNxFpB0tMxW1\r\nwngm2xxboeawBTgxIPKLGGimWzJuJo/zkyoEX8dmIMw4npxbX7Cpm8qVBewX\r\nz18qDO2Qw5uiV/zlVHhu4hUr5pI3Vhnlm8uU6v1ouU1EsUqWAa0MfMnbbXFy\r\nAiUWrkCU9TzApl8c3FwZ8blhdSSabkDbilwDtHriSMvaZNY9eYljjOG80w+o\r\nS0fIEVF2Cws6jLmxRHCAJTy3oX1MrEmstqaCFjBntTQNDTykTSf+5zUvzTHu\r\nKA0Emif3K2r97/+wCGOMMTZ9EZpiV4bI1IEEM+uk223/yriBNB7ogRDwhKyu\r\ngEj815dgiXKUmMyewpUv9/MiZWJzgN0/0AExiY8OwREAZijawgqqHLsgOeUD\r\nKW0KPi6rFylu7jnh0XHVMEK9Yqnuzt9JCVWI7FGrtOaNZmeSQhnNxr5y1YKr\r\nfqBvFctFnMmLCnnc7ps1aanfU0iNsyTlNWkgaQrlTBra04bFjK2JvEbKegu+\r\nl7R2FIJ+Zlxs0lAdbqLATWQTEZRw9fQuAWDbz+tUbZus+FoLVTlndxcM+xIc\r\nJhbZxcZdPy5a0Pls034EzPFMa/khJc9ewVs=\r\n=mhtx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBBrw4dTCFdrkudHcXqi6riWzptgFlOsDNlbM/v6gdkRAiA0dK6TN6VgK9jOb/GVnzPrqHTA58CFQ4+ozONbKlb77g=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.9-beta.0_1646214070521_0.4829319519505353"},"_hasShrinkwrap":false},"1.6.0-alpha.0":{"name":"hand-polard","version":"1.6.0-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2bbc40d872528cdbd154542fc9d114aeaa914365","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.0","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-wwIeEJ45E2TcmMnnYakR6fgZxFcTWrea+CklGFTuz0/LXpXf8LuEJdODtESaEZwAr00Ko993cUB/4b1E1MW4hQ==","shasum":"b4d973adaa46cfb13f84586527c3240ac59dd8ee","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.0.tgz","fileCount":84,"unpackedSize":3262545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiICBrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmowTg/9Fdc5JCfpsawXdhfZ2u8DXY6/DT7U/2jdMpk541GmAlfc2e27\r\nbGsGZOTPl32Y3+4HdiAe/jmSYaKSibMgO5eqKlQc2hqDEQGxMWo/3yqYhojO\r\nVqEysXavp1qicRwLRPOnburZ2P652p+bYLlkhihQN8irw/ltUIKvMC0hSbF2\r\na/0UmQE5SF2UsrlJy9kt8hTdWOt2esFjg9Tv/vWLQUCqzIMl0B+sy9Uez834\r\nhlVVPccYblaaNHXC+ANlnuv4AL3/NhgCnLLig0tZAXYG99bkkb4JlHOkndwt\r\nsU3TfxLNWpBVkCXF34fo/7e8z0mgIO57Y5nD/LDjDk7rIzaByzZCdcZh6oBP\r\n3ZdXB3ZS5DD5gr/q106RRb/uT5/6oPAlFKEEU1ynkMBnOSDmXjgymjRiJcIv\r\nQefVsydeN0kVAvD3E4vNcpIqNZC+IcW0PfkyG2h+awOfmoUOLf+CVL66AxCm\r\nT+nhu/W/x+D53EqOTu7ja17MQ9xOEYMHcrA2Q1WCFTs7NrY898PF+3u1sOHz\r\nOdC7iVCCJd/SqLtevlF3L/XrgqkUlGsjbsSY2pImx4G7P37AR3lYG0O+szAW\r\nAdlOR/U1x+FFpYDw2VyGToCPyhLhLu/v3Si/dmXz11d3n+JhUDpBvj9fxqaQ\r\nfnFGlRml2r8WBWWkg07/7UrbrMxsASpwq3g=\r\n=NsNx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfO04hfh4R3K0ObQmMuRZsezvD3pVTNQ+pHvp8QwNcBAIgadDVVEdaCJSDD417kkl9CXob19inhtADaOz6oVdw02M="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.0_1646272619376_0.48139294173150793"},"_hasShrinkwrap":false},"1.6.0-alpha.1":{"name":"hand-polard","version":"1.6.0-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7e396da48cfa00f08146cbf7d329706c50cb3af8","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-vdG0esRIa6YCaaEYvDpOl4OHBkc6D4RuXfiV1G2gYZyBD29gjMSeDImGFS5lM1YV9N7BDgZDiutvxrh0BN60Qw==","shasum":"61f8dfcf553a8b88c2acce0b7f532d49beeff30a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.1.tgz","fileCount":84,"unpackedSize":3269589,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIIWZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpwAw//X6Epw/3Fd/GZeUG9ITUevq9VPpwukxoPxZFP7yElTucSnOVU\r\n/pH/bdIJjNqZH4TsMhuccP004hb8IChUdXW595k2Eq2z+e4tgUzVU9CGxjdc\r\ny6GOHNVlv8J4TcRAHQCB4TAvZXKEdhHAp87Nctn5/13FrDxLWZJgBnCPm4up\r\ncAYpblOFtkXZzzZVpA4ci9q85f4wBfU7omGVg06Pis2XUB+dqqWlQ6O/agce\r\nwYtG//yUXhVuPcUooEICZeKedxxRQw+trCJg67Dh/3mG1fgpP3tbr+LcPq5S\r\nWGkbfKsyl78OyD2oqnEJkSFRfJXXF++unKXW8QfPkXf9hrUjFG9IDlFtDDpO\r\n6rw74Aea9X4q+ytMa5qwBo7N9h7192BNHTT2Bq5WOa6xJ3stdtLbNOxXFFFV\r\nCNRXKOY4Hakc6rjjJ5prTWUC1AGY62vZU/btSCutQR1pC7hWQvxG6DuNivCS\r\n7NLi0xutfdv/PsvQ1cs8dP/Pi+v7neV1pQFBDYkDuqJn2rDmt/jHyG8agIQS\r\nmsC9kzPK9ztFPPbcGUhvN+5LUKdsC+GtSmVfH++gjCzOLwyUvJDErvcM6t/7\r\nLiXTLTWVWcVdg33d0agDcZJaW+JJG76oQc6GJMl82pARuoaCQKkSfSTQHn8M\r\nFxzOZUUK2J5VXkpGjEPje1AzlLL4O8qfK/c=\r\n=89E6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfqK8ZlG5w6rE1hHoSbRSLGCJyG2ZAOpDFRP4MWGn+4wIhAN/X4ugc89nSiGlWbeok1xsCm4yMMqt7/Dp+NuwHFWr6"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.1_1646298520916_0.1610764179403854"},"_hasShrinkwrap":false},"1.6.0-beta.0":{"name":"hand-polard","version":"1.6.0-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ac2104e2a863fdfdfab3699513e8795e21e5523d","description":"## Getting Started","_id":"hand-polard@1.6.0-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-k7rjTbaQBCPz8C8MEHtp/mEheKaE7X3xkBaWRxb1RSgJyATq1HMh6R8UZV5Nk1VwR7sBZ1Cw5d9pMavb1U7CdQ==","shasum":"4b16b59ae403d9b21bdaadbcde6940fae594c735","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-beta.0.tgz","fileCount":84,"unpackedSize":3202384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIdyxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoltg//dNdjIWZ5L7SFYoR5obHIqnrXZhO0ZKj6BG/npE55fcojJcxY\r\nBP5VIfmBrwdW6+YoWw3ApYxmDF0aNxnPeIpn1+eImIeGl4ZToCdALtG8GFSg\r\nk3Q09P0lPI4vUB6lT+ahwgW0UB9R7PGDV0o9qatC+3Ua/1141xU2R6Fm92wn\r\nWtg3H1wqnURSXIBzg4DxUKZeCLq/MuoZF6U8KIO6qiVTWsQIFfMgId22dmza\r\n51thVsBaoHIPaLtpu561sguFa+1fcdEqlgeScczFa6NW8yx3Gs/9vKFe1rGx\r\nV3MNLPFXtPeByqUGlLuLArhV2uu5GS5AoT6z/MGo09M0S9eIOQZ0oCYzAt8f\r\nGEpLOf4Q1PaknjbtlqalpR6SgxHE5oq964z64rE0Tg9I6+4d9tby+VruSc5w\r\nptWNHUs5ke8+r7k0XKgdkpCetkeYhP0rfDWeKkWoOryj5MccfkVIR7YQwWIj\r\nUVR7IDuo5TQeezp/KzST0DcAoDtrYIgptVAiRsg7kgl6haZAO/eWyf9MueW8\r\nsd+vGKR+9bEC2QafQcyEC64n+jHo84x4qMm1AuJYj536CJZQIbRp6addTsPy\r\naVke4lxTUpI/Fz3FsWvC767zrADUo5YHQjKueYnI8n4e2VSL5xJeByIze8BN\r\ngaMU67+JlX1VQ3omxNG2Akn6MyZLjy1HB1Q=\r\n=y8Ad\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClq5vVczrfef24fA1byvci3L2oSquJ7JyOjFmtSvOVTgIgdqy+M/KchqPtrj2q7FLSLRlXeSwx0+XQH8fCCwSa+BQ="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-beta.0_1646386352993_0.4089252871426938"},"_hasShrinkwrap":false},"1.6.0-alpha.2":{"name":"hand-polard","version":"1.6.0-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7eed0cbda397bdba9b24757d91959f3efd3085bc","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-RGl/vviPqEwvAL9mAKH0CH6eQMHwXZW4OUHmzLJQb00fCbKSNmfYqXiaa/ASCti3dl4TMT8gwtVtiBpSFYGSng==","shasum":"e9ff86a834a4099a512fc0650e878f00cadd9d33","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.2.tgz","fileCount":84,"unpackedSize":3269850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiId44ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYSBAAmeMt4FQuZb37nEj1QTbQBUVbtrjCMfU8q+JkNGFO94eZ2yV/\r\nIIZetUllEA4LWNkW3d+LKDBsMLWPQtWOEjs+oOkdC7OtIAjc85E9RZZEQ0jw\r\nofTJX+u8HccLB3VMh3H5Jc/OE8qNT/nxiw09CsYmj9UCztUqhqAtuTT0QrUY\r\n0hckGfCYrcK5taVY2JMyYsAzP8KyztdxJkonysZiQW6wWFCTwbhC9oSfjOUs\r\nt6sYhXzk+zj432gFdKKf9aoHt98n0HtgDoGq87q+blBC89ZuznCuOqB0Y/j/\r\nSTO8ejzYoB7U/eBWzuSVY8sD6leiDo5QUc6QedYZdqwaIldjVQxnN6zSK7jv\r\ndmMtncDMCKEtL15TmCuxUfOzCUNmrXXQd36M53HGnLjm12t2TEWgpg4wqH6R\r\n4MaLbQlEFC27yOsT8sMsFVeGTyErCF6gNLTT675BlQ4z18jQ1wMk+ue8BhZv\r\nqIWCu/5BaZxny6v6p0fjaVfcq9znM8e58ahlu0BflruAdZvakoqW+Pcjqe+P\r\nOH3NK3A7QyD7Z7aMpj0LOaoYcg+oS4qfGC7L3is56a0a+caXjGd6qM4O1AYQ\r\n8iTBpmDiqQzSweZzpYSs49eH8gQU1cRmWfzmMSqEvGus2jzH+uUEK8Lr65l4\r\np57XOIvyNTAYe7A50vLXkIwsyvAucyIY8GM=\r\n=/XXV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfMlDGUaRHr9o/23RHTQZughAl8NfVfEFZ59puTcZivAIhAK7iJI44F0Ls5uPid3PZ6uC3Yp05ZYhE4VsYxYDs+VGH"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.2_1646386744663_0.78664081793103"},"_hasShrinkwrap":false},"1.6.0-alpha.3":{"name":"hand-polard","version":"1.6.0-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"b63d30eb32a3c4e5d5b0a7aa1a145f157da9cf1a","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ipDF/py6WHy1dXz98mL0EQ1jZZocV2uehr/ibyME3biwKoaCtknep01KjQCQtRoR8RHvQ7ilFOHYjsPYAXF6/g==","shasum":"9ef22b788bf1477d71c9e8580da22c1d18138a58","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.3.tgz","fileCount":84,"unpackedSize":3277692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJXuaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpLEQ/+Ob55Erim3pbZ+2HYCb4+WMhLM/rOzDpQuTgd07Ma35vA/9v/\r\nB/V7JrEu4WB7jpgj95Wiy3jaGtgF2Zvxsr4QDJ+qpYvd0lKRZo+uJ/AgYX9e\r\nxzrPaC/4sZWeU26GfpQePscRxF3GOAh/lJlpH07nb1iB18BmsCHBnKSYkC2s\r\nK4LvxKBYtDG1gBB1vPHbTqaq7JvCbFIvPtk0Z/U1VdxV5A6EEAO3m1wNi1HN\r\n37LLqFUVBYzX+HDfytFSstpiKG30nUhO87uMwnx6Toe77f6nhh5DTK6JnGqU\r\nbDo514yufXlMh0ZcaDLvsznuH4x85v518mVZLuVTV2d1RwiB5UOtfVVdkg3O\r\nrAtyOL56S/TYxYn+O22S6QTBAzDrLiXLc1rJvQE0Q2DpPxDaTYStosPhvjYH\r\nQunbMwqtyTys5SO01hS3+W8uGFItrU6u92IIIWWtGNXYK/93btpUmlkKSF+C\r\n2BO0oQwYu3YGHt44dUCxb3YiFpWfvCi3CpRCbkFowwv/NzywsVTA0d+0g9QP\r\nFhvx3iAcuXm9i6GlVP1vrARVuSHo42/Et8OUf+KVXJahJgxG7M8m4zf6PuUx\r\nr4Y2ei/xYIvCadEtK+l7Vng8sA4uLP4sKCIflVj8qJcoRTWZZb7SXP301DiF\r\nkV7YFfO+vqv+fIOri6rTJ2FHcDZ6dvMmkyg=\r\n=R8FZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJn9PhKfhGYCK33qMEfnm32it3GnwOpwlzRxJGpVLETgIgNyYaxsvhsvhjbzQ2So9JOYCUCsk2hRqVnis9xyDaxt0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.3_1646623642369_0.23056688592278585"},"_hasShrinkwrap":false},"1.6.0-alpha.4":{"name":"hand-polard","version":"1.6.0-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"aa3903c9287c30af1947dd7d8cd1694969759b72","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-A+30rlN/1zHs6zlbs3KMmNmZX29ahQZ5YPV6crIbHoqV7TX5yR5R7uDbgBFD4n4pC4Z5vZOZ3B1Lg3yjIIPniA==","shasum":"cc49d74d4a495c2e37fc4a2936d1ee058f8fa7b5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.4.tgz","fileCount":84,"unpackedSize":3278086,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJYARACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHWRAAjWFiIU9pK0Wivwc86dG2K50G6b1JA7jyaQSI8yu5YdCeph3j\r\n10UyD5O1v7+tMNQ0ck0oXemO6r5JaBHPnA5MFc12EovO/ooSYfYhPnabfTgW\r\nDGpyVQ6eH6/76CW05q89FIjbnSnF34QnyQ1xtXiU4AhbNapHJVRgfQp27g1H\r\na4DrHpYZtaKX3XRPrBX0RtQYRb/WeZjRakk4AX+v7IrmsRY1OsbZxVvKbNwp\r\nbB/PKG4k5LtWYp+6eiQBQeaXd53DAMxysl36lF22oQwiCB4jiV2Ifa+jpt3s\r\n2bmuRwk+PVNnfC+jSbIDx1azxp7eRe8gYg8UTK3V3sOoNyIEeTn+wJn26CFm\r\nIbkiYSgJz0x2qDvBXqiYZwr9s03opf1rBogzS6p249ngGMNaxbXIXG/frjPH\r\ncAVlwZ7Q8e5PXnHSa0ZCgUhB2umk3DFkxbTpxsB2djJlih4/c6uzP8gnhTVe\r\nSysEVJ/pF+Fgn/rlrnAY5p8co20rZHVoVWWELMsDgOs/bjwqVyuTkmWJaEfN\r\nRgs/DYTCGm77o2v/pjnQLN+zyMgXJb6xounVN7smiEhuzgE1iNdo8lyviPKj\r\nbtmCqFmj9az4IsrZA8e+AMQlMgsKrMxV2xdeExzhE+fUNVU63yvIg72eh/in\r\nN71mEvKks4DDjrlbQdkh8i5Rx/s7SCgFqyg=\r\n=CTwo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF2Qh3a7W0IIckSL7Bu7kr8ZMtEkHhvFKNXQ9SaJ+9XDAiAewK8LjbgQT2sVpk/ExNGHBS5RldUxEHlLrdxN9dtMwA=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.4_1646624785725_0.03164099586642766"},"_hasShrinkwrap":false},"1.6.0-alpha.5":{"name":"hand-polard","version":"1.6.0-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8f58d2cb79933d4a82f82a102c8cc43e0db04199","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ZkoZPV7uqMpOKhhAshHLCuU6ba9jdVZNVrk5slSgwHZZnOUdeHDFD7ePQoBiu9YFE74VMseCUU8b91y78hbIeg==","shasum":"0e5e9417522a5fa44480861fe038431f1bbce03d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.5.tgz","fileCount":84,"unpackedSize":3280809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJa+EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/Lw/+I6URECvAI3IPVKavXAlmIFnc8A29nL438UUEtRBRiD/P+wy0\r\nfUQjQY1T39RwozzyEHgjADwZ6MkLJzUDaRWViuAbFN71k9QC/O9zTYdm9Rv0\r\nqjk+oaJuv+qL66+Weu5YD2Z1SA3cdGfPjfZDzzACEmz5pRoA/BCIngC+wyQo\r\nZLsd14ugDlktvAjY1q9UITt4LONuxTnTsaUqaK8312N4OjQjGRrVWkpGM76S\r\nu+wFqL6/UUkpEh3H5gbX+sOcV5Zyk2xYTMJdmfyEoV4Lm5t/t30KnrIRNUhj\r\nyo4Q6LmSEEYEzXgZqfomeTwQViMVkFO2d2l+7ALYkJH1v07S++S2PerJrfjp\r\nVApi6vP605HF7noy+0ARy7+wkiNajVruudGtr0eGx8xfULtkglArI14O/RM8\r\ng+k2nPEHI8OvkIwpVvSNWwkHxYOkYcDaBm1tpmfNqcmAaSLUYksvSwdsM/Uc\r\nObQ1AksebwH5FmvhrLoECiLJd6qGXEQlkV0c8NdRTWi2D/4WVoEZER95fJbV\r\nYSSXVT9YrEcKOPknOJamg2GR3yzsTqXZ0JqsOIjBfJYZ/9t5k1blMT6F/lA/\r\n+CH1DhpWYo283dXgDZosxOFhStv92s2fl17jAGubxGn1acg9PCtN4wVkbciS\r\nbdOY/Y6ZkE37lqm2ZPW/HofYx7ag5SaAQio=\r\n=UQRX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCOl9s3g3JgyIooEKSNTIzuFHThh2zwNORZtNblpeRgGQIgNvb8Ot+TEMYlClvD17vHyieO55LntTZCZRNKc6GOaOQ="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.5_1646636931873_0.16574876643003122"},"_hasShrinkwrap":false},"1.6.0-alpha.7":{"name":"hand-polard","version":"1.6.0-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"0f3e33496031c69fc26387deacc3ee7c9fd996ca","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.7","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-y6OtEw6LzI160sSglKjKK20Yb7oGUvLnJFnpSnH6PILUBTm72gWaWn+4vHvdfxCNJnDr4UXwCEhJPjwEuGTPCg==","shasum":"455199d15a4e98d249468f390464db2531cf7b24","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.7.tgz","fileCount":84,"unpackedSize":3289944,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJcg0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJag//X7NKvuzXTdIOjS4rp9haeuHqVJDoI9hwNjkWDelUI1xXK33c\r\n1zlNJF13lVOfnH2xFzfxu/SM66a0ftmEIYyt9cpa0WUlMxKcwDYFU0WVjXgv\r\ntRRpu3dUqZqn6GGTyWXtZydaA5EDmWolXQjC31PjT0WzCZLTNYlQJkcy1Ofh\r\nsrfJ2P3nYHJB+S/vfuGlEIlIL5qWj2tqi02UFqT3zafNaviQxIZrEcK1ox6q\r\nHy03rbnTDEGWUMIafnqczYhw4EotUESoQHwwc4CFC4aB7wgzvoB8OS5u7nKd\r\n3+3lqvR5+m3bOKBoQTIOOoPCgAklyoja8v2rlEzj8cuVyR1pcPxfQuFIQ2FX\r\nevRtRRJYpkXyORvW1GHrURrmpnzlWIq8BQ94/cWRCn+SajUj38BOm3UErV3X\r\n95EmLCPZqJt76fBhn5hNKwZEtUjQDEbwtNwle8Eivc9ocYhvdVH5Z4O6FLUZ\r\nY35qWEmIZHJt5rN/IkHM0uKF8jXIbnVgzwo3rITOCaze67UC5xBHDF3ECry7\r\n4cm2HxayoEHIhaMku7ZXBc4qM4tH7+nBEmM2l5n+Awtfz4l3Aciegrci1tLB\r\nPE4RPcEeX2BaoZK1qB2dlcmJ941AKJv7mI8G6f5tr1EK/EhS7pmdqghiYUtQ\r\nqmMcWgy/ShElWyBveau580OxiZ9w3DO85TM=\r\n=n3xV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC33kirVKHqeENzQCPsdKFMNUN3ybX1DBz0WC6U37Hp+AIgDbqhMnAmjISoxxu96x9vZzNUaydnBENNvNjjeo786RY="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.7_1646643251842_0.36406586770610616"},"_hasShrinkwrap":false},"1.6.0-beta.1":{"name":"hand-polard","version":"1.6.0-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5d71d0527bc1c1511c1ddd8b0f85566133ecb702","description":"## Getting Started","_id":"hand-polard@1.6.0-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-f9um2J/KGL9GnPQdXE7Ho5aQKQZ5ml6qFLhuPL2L3xjpsmvwg38dj8lLMaUGHcdTsMFBs6hgmUS5gQ7zAVxwKg==","shasum":"c7c5e1122e3a9c5bfcd712f80abe1104067e40b4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-beta.1.tgz","fileCount":84,"unpackedSize":3225155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJdoYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYbg//V8q+XKBBTkm3Y21e2Sj4CaBv5knsuvOXmR5fjvftJQC8ZiHA\r\n3Um48309JD+LQDb5u3At3oXLpknUz3rQgYMI+lTU9o2qi3W0cbjb3UZnSQjC\r\n5z4MHc7LqeOCrDD3YSS6w9B6uWnOxyKa+IqQhalyqfyF3mWxCgX45/boeDu3\r\ntpXUrHRqKmT0yve/S/swgXVVUDyG+d9KtfCEu83QrwzupyndEROmbOirNY3c\r\nZau4xU/WYiVss6D7PeeLBZ+XekU7Mq17GuWaw1iuRz4KfFlTpcgPrUFo9pj7\r\nbT7+BXNN33s3FVCsLTcE6pKiyO8WVDI+nve14v3F9C0ALxEZEMQ0pPwi8V+u\r\ntv1MGS3rj77hwiyCHHEC3AgJD+mPpBOc7KIu0Aipc+V15D3Izp6y2YIN0dex\r\npZaOw4WZ6cbSsHdU+aYH9vbWxTF54hug9tmfXgDncNuFVRdtV5bjOuQ3O/UH\r\ntDU0keXa8HPoXVWBaGn6SxoHvYeRXAuWPTNOqL372di3hUJJW37LDsRMKMrx\r\nljxiIUcl5Yx8wqo4H9itZj0eQmAxrhKFUBDi4I2rbQyr4bi6lMmg8hBjF6NO\r\n3BXLV19dILOmrL+GrQ0Q7Xz2N+GAq7vxyqy0Haaw0CyMb30cEAocnPuj5zHI\r\nBpOx2G/q/OKd08VXj87jyF7MTiitB8yFcKE=\r\n=UK8g\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICmFNuXVQe7p/b78g6PRSZVCdSOIjF+H/9CoKwLM71WkAiEA7bHCyPuIQDoGz3FJ97GrOh4FqOMqTidlH3dwNn8SKTQ="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-beta.1_1646647831882_0.061899742894678145"},"_hasShrinkwrap":false},"1.6.0-alpha.6":{"name":"hand-polard","version":"1.6.0-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"14c6b58baf4c406a7e05afb62be72b448a97681a","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-x+uq3agd147W67oJ9WFlm8NjImkgmfpfjy/DnlmctZC9gaU2hLzCwDs2MNUUSFUL3pIJLdvYfN5kaIt4Nhup9g==","shasum":"91e63fb7ae4706399c91f0077e2426254398729a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.6.tgz","fileCount":84,"unpackedSize":3293901,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJwJ4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOJg//TSDre2+kcV2LslP1knZ/r0zU8J2/QEOmKkzyzez/6WaGi40G\r\nMzip+yyyRu1jtG5GZydezyBkokHnbOl6meMqki6i7luYBotzXJlSKbHijLAB\r\nq9RxfG0DtWZl3paqsRcuWbFKzQe4Hf6FsYuNHdRm5vDZIIP1uzq0zPRCumih\r\neFmpKw4dqLlLTsJfC4LvbF7b13MqQNN9B45vFedf43dGyRAF712RxwkmH8ir\r\nUaMhffgd8hhNIGOrThp5/XEWK3JjYFy9FZV8StbFo2TVPM/q1+v645ARwKfJ\r\n7EEZ9uqJ3nYmVG7UHlYmPC7hapJJ1ZZckC5ZZxzU5jSu3nODvZfBBZebXzGq\r\nht8zGESU6bXnAM2Wv9pwJWliWa+eiV5rkfPOrA4uyGyr6G7dl2qoq/9AZ1vQ\r\n/u/Ggl5JsG5xgCLH7mpad0B2BkjMyjXCY2liGLtVfk9y7r/PQTztf38FgpAL\r\nomFwt+luEY3kIRis6tKvk04sqF+bB+NturqNwiZ9Rk+zR+eQlTVK2i9JFl0E\r\nLQ1Jwb+9cFxxlrlQZkBk1ZpuN6zCZLy7tK3jBcRmzQgp8iE6+xQr1XRidKcL\r\nG2vJt3B0qqhlMU2gDvdIKgcWdMlihVtUnoszRqPATBGFZhBGNtC7N6lt8iN/\r\np/H90sSFeelWdHpN/jcxk2kjG/4WE7rJqpI=\r\n=JUSc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtx8NZTZUNUe8xuxRI4q/MIiQoC6na0npLZKaD6/2GSQIhANrBo9O3dkxqiNwYKfokXN+uYshKDFeMhbWGCj6MqPsS"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.6_1646723704589_0.7396767776614894"},"_hasShrinkwrap":false},"1.6.0-alpha.8":{"name":"hand-polard","version":"1.6.0-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5960ef7da3174209c7eafd44892ae178193aa983","description":"## Getting Started","_id":"hand-polard@1.6.0-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-qjEJrW+HLZbp2zkZRdkrz4Y+8pm/Xg/uC5I88vyuCRrlnl4HKlgbZQn9kkGOdTW5nGdh5U8xy8G/N1ZhbwdVyQ==","shasum":"67351051351986bd0161a93b6859d61ef58391b8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-alpha.8.tgz","fileCount":84,"unpackedSize":3294289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJwX6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpSwA//aMevXucGExjpRqrCDXwu0yl+9O/2PODNdeIsSWojoysOZAwo\r\nh7l/VI6nvOoesO77SN1JHUKYLVLCZEXLLya3NAV790IYR6HaJ4h4fFJ7H8Km\r\nKlF007xf++d/RbuE+0VTm1fTLi+rXJGp51/cLcflpDm9uXFuiIo0WbiezyuS\r\n/FgpyMh5zBBQG0DFy2Z/C7nM7x9rC7UtxrGzujgGIN6M3XWzXf8SSkz6BaIR\r\nP4z+to+5Xc+BIZpmkB31Ab4zjrIWe9EUAz/NhW2BRuBJFPWvQqQDUh5WCv+d\r\n2pzJvqRN9NL+CxFdCziADNn/BssSgj6fgfXSsP2D4fu7lptMjimOphmR2toE\r\nT+1YZAHRJd7PXnHcRtQvnGyMvm4QSsM1FHc7kBSXYZkxiYuJcM8vQg/rTYwK\r\nfpFDiurXkEYkt22p8xWll/ccFS5AYObhJapNSiKERI0qNHlZePusQKMtfs6H\r\nli0kruSVXX0L8stZPPtkpJT1XEc9PpBHtmHg/xjmnK31T4V3VOtSLPoqF8e/\r\nyv3y/0BIWztQOLAf75vltJy53cMJkk5g8LtKGCVB3GburwwyZ3dv41BgCxO3\r\nIXymardc5YMpiX63dViyaM6HFw8DS04byHLMBv4yPAqeVo2byobjdih3ZUzx\r\nlKlT3K0O2BUEicunX45qArqEAAjzufy3hCs=\r\n=VSUE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkmQKw7k2w7MghTKNjUv6elS8hzZaP6Z77oJ7HxyVZAwIgY2U8aPiGzdhZUHLVf9JRr5uAUxtrKglbrqVtXKdQ4qI="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-alpha.8_1646724602520_0.5227767658021631"},"_hasShrinkwrap":false},"1.6.0-beta.2":{"name":"hand-polard","version":"1.6.0-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"bb8e5414375ab081eec2fa4af1ca3300213361e9","description":"## Getting Started","_id":"hand-polard@1.6.0-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-GWU4YKwR6kFpleHjImfwCWpMUkwfFampI66iIryR2tvcEIVI/F83I6nWv7bGxoYs4faJqFAgNCbiRa1/UH2k3w==","shasum":"1f603db4c2b1044c5d2c404fc5fbe83a2a83990e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-beta.2.tgz","fileCount":84,"unpackedSize":3225422,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJyqHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8AxAAhXvcFwJHtacO5/QhCIpryFAjYoF9dSZHKshjuk5tkFxrg76F\r\nksD+I1Mlz4XBT/kdvbEy8EkJcbYzk44/PQnsFpdJbUSkDjs4ukKVRBVEF4z2\r\nB83ymod/U2M7tLExJdql7T3CAgOeGB4CznrOmY7CGV0C1aYIzMyJL734YO7i\r\nFG2lzZPY2TFW9CWjUMwHwG/r7OAQPWMrSg3ybrgigGk1eKmsGEOR9vfl136Q\r\nsS7nb+tg4eB6JLY4eD5VywMuuaBhciRAIsYo65FNNmnKzVwJ85QBOWJNlRFn\r\nFv48FS3Z2jSJDDJ913A94yxi/QbUNjedBf0ZQ99khi40N3sG//UQnTqV4d7C\r\n/13dUiVhcdWTfzpAcJVHcwSVLjP/GQGEm0LMPhn4q8t+I8O46CUe0JgZhZ+t\r\nfbEeGa34HAmHBxWwILUBNSPZz5VOnJT2d4qJH753W67Octbmb/8sttaF4vCU\r\nJcrSz0kxcIL9+rzKTqI+Rr9iOjRCZhbkBsVNgwXryjCB4wQt+HuCqCMyRzSf\r\njBHDAcvu5zWWhaGFpP5zqaLCUAaI/w+z5aFCxcVoKMSzXigjGKrPdy4lIReb\r\ne9Zxc71mF6DMiH58qxnqEvFnBcEXpSw8qv2/xuctbjGR4gjoyomtfAB666o5\r\nQSwbBtCleF5U2vnlgG8k9dzlXl1P5TsMVRk=\r\n=BR2E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAtz8+AGqLq5Y7AUc9fdSYkl4gy72qj4rWNeawSFgIZwIhAKQYY0StU/tRdFH0E/cyCHvs4j1lUTCo13GHyr5qBKSN"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-beta.2_1646733958885_0.4060611706827888"},"_hasShrinkwrap":false},"1.6.0-beta.3":{"name":"hand-polard","version":"1.6.0-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e8ee58d650f8569b2621a2e758204d709543d500","description":"## Getting Started","_id":"hand-polard@1.6.0-beta.3","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-bda+hM5THPWbX4xUCcPtBBgGJcypJz6TZ3Mz2KJRv0XPQUSOzMhGCCMDYJsvJ2eqjW1TSyqX5YVF/KooMv0c4g==","shasum":"7703496ef628d0b7b3b8e56a07616af810c75d8b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0-beta.3.tgz","fileCount":216,"unpackedSize":8290913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKIFkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrMaw/9Eolhc/WR+8UBSphqt5IJ8plXXXaNb0AazI5QFZ854pqW2dT+\r\nHoZYKsnhnGNSs/nZDSO27D64BMvgJQ0tdD6lGoij1n1O1QePP+kRyRqd7YED\r\nMqAez+4JmHnZRXALr9Psg4HXnep+jCeR2ehwVLblbwiVkK2OkhjnvWbeBzKM\r\nqNnybPRSc/n7hQZ/tbx8xZZ6qTI4dc2f4UTgC71Xyo/n3LXjDfYHCuU68Ybc\r\nkugYsfDI6dB7QQwDybm+p+QCHsoBJGkHnlMqapTmgcv0VSTtApYIlXeMOI0O\r\nZvnZQ5yRvAHaZVpbRiMFJItDBZjg9jqdrPQL0ruejrmsSrZEosW/gRv3B5xZ\r\n9oaaXCVE01yBU6eVKyPf1bAEm2qYom3BNOS/m2nMeu2L4vmVPU4hatcchVhV\r\nNMvUlNkg6WLWuVhw4daPBtMDer8dzerrmyJJ8EFIvko3ftDP9+skCyfqabyM\r\n/ebQ+5to4NKumfV41QqkrZ2OJoyoURQTS82bEtML0sT7LcfXp9i+O+wUWLCU\r\nJ/n2GHowigQai7Lj1PzfqM56UIIq82iWMIBCW9mYo7dEssmROo67xE8zcLVT\r\nI5JtOnsBwlOnV7qK6GqCluDNQ4MjPg+P5h/eimXnx3Ksniq3UrmyC3ca68Qj\r\nh0/zWPHvRFMYvpE3lPSHUR77/US4B0HoeOM=\r\n=LD/J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB9MjAp7Yk6Xm5GgogU4aR2l15sfY0Ml4qn4DpJZpHzGAiBczhrLyVN9DG2Ahu9JBGf7R9Xd5ptPKvSol7ouIu+1/Q=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0-beta.3_1646821731755_0.8559273180498101"},"_hasShrinkwrap":false},"1.6.0":{"name":"hand-polard","version":"1.6.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"2a9c2459ac5224c56bd0936a813d34ef8e6e5fe4","description":"## Getting Started","_id":"hand-polard@1.6.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+wHZZY1a08ufqnEW+UFgguLs1bkPTuNm7OLQ8lRSChDvpM+2H7QLI523tYIvCqwNBHw2C8vjPX9GXmUrMNqWpQ==","shasum":"aa76da98a42364d35376e0398a552833c16a72b7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.0.tgz","fileCount":84,"unpackedSize":3264743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKZZpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrVdQ/6AvLI0afm8jpHwHM9yesV7e9s++awtxjtjXuWHNwjeT/kvkrH\r\nV2EUqWaEZuEb+CeTIqiXm1EwA9eb5xOSlNwPetjDXgS8q+OE+3+XDproK3b4\r\nwW8blZgihdaVIh4hWCTGLjhYP2KZOFXshKoBkUzU1IgvXfpzccQLKT3o+0s+\r\nyyF7mfz7NkOUvRMO5u8eY+QkWKZ5PZlho/m6eXEwhEPnOgw2WyqibQV/72zu\r\nMkUR3RcRRVntxpZniVqEDl1K+mzlhNYulG5LnZu1O2jRoeizU4b17ofOdxxS\r\nVaXmrUjd1gGW71OMy1tQAFjU5p0QOOVj738OSt4wclsvff/dp9Bbv7IQLg4x\r\nwCtxX2kjlI2ltyXaRaAdAa4Kq1ClrjsGxrd/whGTR7EiBlehRrSg/dLZ6coD\r\ncWUos6T5syuR10LXjNCfnpYA9U0zQTqmqKBqqh99QQnebfw8cLm1hvGm6Exk\r\ntYLgzH/dmv1majdwSX7KtN5XDJKqC6Ym1q7MfPUzdnn1mU6SyJ9m0YCLTf47\r\nlj3OflLYdyj8bZMjjRrfJrEx+qJYYqeWGPsg9WIUc5D2yIzAEsRM0mZhEnW4\r\nBCXglwCUNbVuGpJ9NShzY7x8I7JyvKU6G8CXgzGV30gvY792/+Kj4RoM6zpt\r\n6pZ8L8qCFUDewqXt3AlDGUH2LcOZoq6LMfc=\r\n=yt4F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1lCZxTJsO5ncv4HXyXaOo7dHV1k7B0aRdnB1Jh+weCgIgUcyiI7jqGPHZdd1Zd4vK+zXN/eVunE1r/sXp6Fkj6jE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.0_1646892649392_0.9535858179007133"},"_hasShrinkwrap":false},"1.6.1-alpha.0":{"name":"hand-polard","version":"1.6.1-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"cd999307155eefc5245a62d7d0f232d7843f07e2","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-eFzrqbYNF37gYpef5PI5lVF3tOnL0b+4WIWCfE+LWrfV4BRuTx7D9q43o8Qrs93EW9rAbPjxSxC+4dI5J6xyWw==","shasum":"c0a6acd1b306562ed88f8f4016319789b992c9a4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.0.tgz","fileCount":84,"unpackedSize":3294997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKcqPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmra1A/9FAVBrtcwNi+C3MBPVrdODtQOxukkkknfqACmvmMU2qte4S6j\r\nb2ozbfmt4VgXbkA3sOSeMeHm8QSTu422aMz4ycKI04IN7Jh0PCOJyBy3LOqH\r\nN+FyULJINEyy9QM1GvZIXbu0KOoxatnY4gm1Bg28PYG4zXScGfZ9GmNroUM9\r\nniPNNvfWud5lzUFDPCM50SQKrZfBb3Burb4aCgLzaV+zg/Lc9K1BG4zeULxy\r\ng93YdKZ4BD/YULiWdX5rDJfIyD3l8UFiyH2VDFDJdr2W3UJf6XC53FMOEhIU\r\n1DC4dgN0odAGk4Tx238UXiTyRpXkMbr05oUkZznLpYeoFVBmNDX7Srbs/A8e\r\nAe7veHtEvNde/IKDegIFxmQjUIHzZeQNiFposjevrjp+LGbbRLKFT/3Y4Cyr\r\nN7dULQQGrObv2P2MMkxH/8xKqYDnCrAaITDftLS5vsCc7xc34yxNDufq3Et+\r\n8360HVvwMC5eTuQNZqzxgGwR0nbZHnpUuvn7eoTV2jra063+z1tGPjVIyBKM\r\n10p9+8sL4Jmq/6/3+osJOx0Vxwl0TwFdca6QbrewEPcRpLnsphAYAx00p88F\r\nj+lYJwm+Z4PJt1Opg/QkAvlo4n9HbG19X4bqdapSf6LEREag/HzPIl6Qio9r\r\nhdPNyzpEUKkQGF0RjpknbN3xWIHA6D6Aado=\r\n=SMb+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzrra/Yy/vw23ZeOkUwxhbYtWjSApL3Fv0v2a7cNyyGQIgd2P8O3tMQLgbMTPTgY+F1KvgeJPBz1SGQGr4GVQyroc="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.0_1646905999771_0.25179808765486866"},"_hasShrinkwrap":false},"1.6.1-alpha.1":{"name":"hand-polard","version":"1.6.1-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6458d10023c53125b0500cf4b8c86d0e6aa5fbea","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.1","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-3+s2YiFXNtHVJqP/fmFx74g4yRmqs5ZToXgb3gqNi69ExcZhRgquUTN0sULnQFSbFJMT06queOlVlVym0mZOCQ==","shasum":"a18dc5ba69a349895977f35733d0870dd0bd4c29","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.1.tgz","fileCount":227,"unpackedSize":9364866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiLu7JACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVXRAAha7WS+ljhVbhk9prlsA4cXJ5XxjOQ90Mr7S6B3lB1QDPPtRR\r\n7Vd8jf3aarj5Aj78D3d1BD4/0Lj69ru8IZEXo+Ld7vinBDOlVs1yHcqQPWtN\r\n+R3RY+iLKCbUdOtwO2EYI4aHrGyx1Dz6TTW2dSz0xt5LS0xm/06r4D/Ijito\r\nZXtWJe4yWtl6Kpy+09UjNBQS6v7vXKs7Mty1Hfunoubpv+js/OmhGQ19TLQE\r\nLIOU+VA4nmrnnV/84KCyPZPaKgVoq4CG9ns/cgNWVHaDwkYo0v47sIp/kg6F\r\n9HQl6nD9a3pKyBkkbS3iZQvc+X58adnLwfdNU1mJXUFETUW6rZ8N/rx7BfzD\r\nu90jp6EHR+unjLbtS/xYgclHERZRmt9rw8xjY9Hg/LegHGjVUdNslHVwfy3c\r\nnXw0UKysz/xmzWB0x6Ba9rgMOSAE5IWAvqS45XPv23LABmCgUpdTBGuCzaJh\r\nzvNLQxNYzHKsngnQXbwHK/GpKFfmjvT5j0NwQGMazPn+TaicaThKxV/mVcsB\r\nv+WeBNiAyEZab1NDFJUfEgCpB6AO0wkFKY7D0wJ3I64GJRVmn8d0apWx5ZQf\r\nbET9v1ZESu2XriOIHW+XEaij+2q8nSQDi+XOlYbqW6LnR+8/jN8z67tkh5kY\r\nWG2j186yX0rfAxeMO1yt13/QcCLlYMzn2iE=\r\n=vSSb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDik7LBmHYoE+9E//e4RJFrByQZOFy2lpRWA5esSSBJvAiEAkgGR3V2uMtR7HXJavw7Sbbbx5BDqY80If+GRdA9TtlE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.1_1647242952912_0.4832581633770261"},"_hasShrinkwrap":false},"1.6.1-beta.0":{"name":"hand-polard","version":"1.6.1-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"68b4a195f85fc06dfebd82dbd1ec8a1c3e09aab5","description":"## Getting Started","_id":"hand-polard@1.6.1-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-BwHraXZMzPUPMhFCC7TQX6KWzVMH4wMDj+hARlInqaTgLRebJ3n9YJaTow60wMrdk5jCXFcKwIzY+hygDCxtgA==","shasum":"f205ebb7d725ffecbbd0cf6f391a5ea7ef3b7ad5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-beta.0.tgz","fileCount":84,"unpackedSize":3264911,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMDuwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrumw//Wkw8+3OGIJE0ZN/xZp3/6il2GOwKQaNaZx15SZgQb/Ug4KvB\r\nHm2a/ipZ1hmQkY9e0l/ERJFiPoe0vrvjBVdcsDU+fMMEWQRmYUqZOkrxbFi5\r\nnrXl5OjJu6Cn8Zxali1nE4/gKz3l3h0Ua6gM4oAKLj655WEm85L8VY7n225m\r\noNnOYYF/6KMvgOBYaRnU+AkiFBPxlmz6VBGKRnSwyGvnIn/kVT2Il01heN7/\r\nnBgkkfdAuokC3t47sVgsazEY+D8Z6uXce4/hyAdxdG1j+a8fevPCrhAlWbdg\r\nvO26jJuvE8r8F13S18qdKP84pd7hcXIG/XZYn5k6f3Rq4C2b752sM3VgMA5j\r\nKpnJ1moDKcaE7igEdgjitMOqndm/yebyyLY5UlkBBM0/3qtYwtB9l98BofQq\r\niuqZDT+/JBfrVmIpxFFZQY+/2vKheTGnB9WhMzS+CkXy/hm5j6JPqFmZ2g5Q\r\n7xoOOApiyzhhnxm5QCIKTVsOjjsNxxxNRCGI2tq0xbX7DdeI9qSwuFXERjaq\r\nmNPF8NFhPbfSgXaJsuoK+ygklgkkkO8hDN7wn5NCpLyOswFAxtDr+OFyjeP9\r\nEYYyGfjY8SDzHTB7sboBFv8T3qxNBS9781hcwGRgF+bNYOkOm35SlOIHku4H\r\n2lNygMshNLcgZqHm3KS78ZQYnxeHyrdARqY=\r\n=RkqS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCe2/i4+SmkmLAEgwBk5HojxckGFPmF6gq/sbY0GEUgcwIhAMw4FDLDqC5edPeUW5+ErmEu5GBGgfG8vcOHcuqzAtHC"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-beta.0_1647328176602_0.6721060999870714"},"_hasShrinkwrap":false},"1.6.1-alpha.3":{"name":"hand-polard","version":"1.6.1-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"05e9bc06edb175fcae874e59fbd0cd72f21deaa0","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-3uFpNXttFgYOhrCJFEhUt5aqBu+44TCQppH/a89LisK5pil3ZVRg6+15TrDW8r2FHfZ+xmCNEmIogZChkVeSOA==","shasum":"d331327b95d4c98783a651ca9da0d0d81aa94b6b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.3.tgz","fileCount":84,"unpackedSize":3301883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMVJZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDug/+P7pvx6ioMoRmUtJIUMPRH7Y8Sec9LZ2kK1gYHpHpIR5aIZqn\r\nZSrduObG7Pzl5pSeh4SBW1OA+1qIigAwVaaC638KMe/2avxdMXTl2TKtnglm\r\nYWqhezqSBGn0y1Gtqn7DiDWQkPD0HGb9DU2hZv+oWWozB5EfV0UwnYMfr4gE\r\nK+zBjK27Ac5Nc8H0EBi48GUIgPNSxNkCk3aZi6bMVofYzbEuYDHywip5JSeX\r\nFqO37WIJPDNRoFuPXXv8vWW8q57Jwx8gnCwVNgLnHjuP6w80vBio/OQDnagA\r\noUUzm2adq6JU0GqJ131E7n8mM5YyieOUehaQqfi4yh08rhdIPMChMKknAPsR\r\nAW4NsXtOd2lEHWgI5c+/reALKP0tgV0HHAjxTqoYiqZVEWG0VTtMYDEhfYvb\r\nQDjmiVy4PMecOoqXWUK03JkYaJhfDR8RP/ZIXXjc6w0hCenbZxGzUVpI3qJd\r\nhoS3501aAlwviOmRbZbl6hrrBJ/jRWQxPJwVulNOELd0DDBdMD+MOySlYccu\r\nzSn9ANuagHvGI8UyUJ1o7Btg1QPTHnPRDOZkntYg122kULvyT2ZFmN03uucD\r\nqyITPYGy7bRTsUZPmgklC97jPMdk+K76U6/7aSSaB2PFmdALBbp1cHg/Ejoi\r\nuJYZPMiiuPxCrVQYQWl8A6Pt+E/JiZNy+Zc=\r\n=w3y0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEpqD3Qz4NxVYuDqkz+IFE/MVZ2YaGP8LgaIbNsqNjDKAiBa+jz3OVQI296Ft6h3jTyNMr0jTFNPrN0vdTecVab1Kg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.3_1647399513447_0.23763776453874308"},"_hasShrinkwrap":false},"1.6.1-alpha.5":{"name":"hand-polard","version":"1.6.1-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"d0b79b8eadd8c9de662ce69a8eeec5f1e84d30b9","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.5","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-N8Uuyr/l23pcEqTcErGsJsVqHCPGEjgYoDjmvCRbbDhxEJElxtUl9vA5i3vBtgcbwNhyxh4fH52udoEeXmtfYw==","shasum":"7524ca9667c050dc43b062cd08dba64bff5f11d3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.5.tgz","fileCount":254,"unpackedSize":9595175,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMaSqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmop2Q//QwFsBZMX2pmZ7YwvQ6d+vbU9uJrJRPb36jegO2nkD/F1V0wz\r\nni+re0Z7LjyAWfzUlejbC2GlUIAXDF3nm4+oNDH3VspeJiT0Y0cWyAHy+hii\r\nEeR5y5nfdMwmC7fovHseTd/VmPLB1f4CwDQROcrs0Y6Td1lSmh5yMlRzO8Ha\r\nCrFzsknCUbLmOxN61Kn2BK3cFn8x2Yo1wrBRpWfjTUEz4eTwNsX24lR8FUWa\r\naVTMEuFaC2XeU1jg80wNaQ3luOxBi5vLaRiJ06mMrVED3ZhYjptP+GRkmVjH\r\n3AzyMMEAR0LhSNE0s1GXlSczPaNH07BRKJD3xPlwMvBHlFK11kOR6TYrJ63u\r\nv8AcMtQQ3t5/D1uUa1zanyWYjsZgDf4gVGWfSI5WwZeT6pdp6JT/K3MFbrrp\r\nGsYSx314vOJgEp466PgdeCC0SXx4vyZd1xehgXL5t9QlID0vHpzfxVrtilQn\r\n0B98HtSSp6ugxvqVr06MWWBvTqjUIe1NhNUWI/108tIZ6WlYSGUHz5t7JLJK\r\nVjgSOLPItLtcUnP6+lou9wA+t7qvIQsI0n4q8e/R8ESgQ5r9lYWQs1PC91fJ\r\nAf+CLd9HlcSm675rDmdPj7qn6+eDo3kolGp3FO/YbKiVB9P8XPYHEA6nJc6O\r\nqrOyU27ZTQpTCdl1BwEaVpdpi9EWY3gtDRg=\r\n=8xrw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHw8R5jArSTeWfAUP6clpzmyG2h4UOXut8V/JjG1wu/dAiEA0M1QwEyH6176nHfYqkshv8j2Xz+g89YU+3RsYc32v4I="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.5_1647420585916_0.6339716501846042"},"_hasShrinkwrap":false},"1.6.1-alpha.6":{"name":"hand-polard","version":"1.6.1-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"919f23f99ba39f5f523a94897b8f5128bc1cc152","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.6","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-h7+xecfN04bBItCTbWkwe07Yo0U0vPmz65s0bgoA7NVfoTQHzWf78B/xPrwaYZprpQSSSu8D3E6Mr2PqNIKIxg==","shasum":"2357d21a58345fb7002b6d2dc25efe48431a6de1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.6.tgz","fileCount":84,"unpackedSize":3311913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMbACACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhIA//YDsOnmzGGZOuuzIeNfyFKWUly4Gqd33wvCBTY6zWVMEjv3rB\r\nWdl76SWmcO+kLh2p5kTuA4HghFZ27WpD8XiDed1AfzTINp0I9Q8yJ+oAnhxW\r\nO3l77KZmHNYhLUYj3QSaPyf8+bOV+Ya8sGR+LStU8UKWcuc8dWO0LT6OcpvX\r\nrnFO1qRtf0rOpzWIt0PPx6jS3b4tQPeMLmZVsbpAbpHXEETeJ/LO86fWuZgB\r\njgjny+z+iveqFQj6er4s0k4arW7+8QvvnrXjz/f9Yrkp9IibzFGortAUlknq\r\n4A10QmnilIaZUDkaktFfHccxtvvCWB0XwHTnj/SpmglM88x/AY6+ATTX56OS\r\nuSrF6Kh9SllLF0+/HJ2kC/Yazi7ON7gnEtjJhboeK+PZBBPR/hB4AVCi5tOo\r\nZsJUvLkU2VYO+V7RS0XxOXRY1X6M6TlA1UwhoMZCFRyjNnTQzroXLjKdV9U/\r\niuGAr2V5UjOL7QPNdNnthOf0TwWquei6GQ7kEr8xqAaPwDiJrkjw9UjisWxt\r\nQVnezQB17lAy6F0KO5S/lrof2+lFW58JbCaI5M6P7qLCwvNts8Fs0EDohwmm\r\ndJtGPcAlIrN/KAr2Zq39sXmLb2a3Q5fFJvPKLOEOj3Byyanrch9wy+Zi3C0O\r\nykO9KtjjDP5Vga9NATPvuvSH5y3GLs6SSHU=\r\n=ijtH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYGBhSmGF6AOKHWiK6Q3Um34Pl1Npbz0mN2cqSV5SEmwIgaMcmsKmDiuyGCDtKvqWDCC8R8iSEpdvxCP5yWFk5kxU="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.6_1647423490143_0.3672754141048695"},"_hasShrinkwrap":false},"1.6.1-alpha.7":{"name":"hand-polard","version":"1.6.1-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"74f5b6ffe17982a16d6325c7f899b9848fe92958","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.7","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-965z4PeQv9w6loEjJ8t0VCKOHWobTbM7js4ULFua68bpnqAQZx/TtvIPuraF7+nUZJKYhXxaH1fdX+C4AdTTWA==","shasum":"77ae5833ce5be610cf1c164bd638e899bb52b9bd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.7.tgz","fileCount":259,"unpackedSize":10477593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMdalACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmreeg/+PqPmSMp34E+9vFy72RKqFDIyVVvK0aut0uwit70aCtOy7RN8\r\nN0xiSGnUUht9RkN6Htv03yxHpHIvB/RtCuEBjRjKAnZHpX8SylnVgqcTUyOR\r\n2L9ugqRkAndpkY6ZX1BN7GQFbLPb8THrY7hkDnP7GZBDTSjs7poGRuZN7WSo\r\nf0VoyxMVz7NhtCx8yYz+EJOsjxxbzaEnlQG/zncEJqKKSkHTKCuIKsQQIPf5\r\n7rXMDVzdofzyVLtn6vVIzFcIjiMHfbdxjS7JiBPHECgYwmvxNQRCNfD30tdT\r\nUpuKn+8j9OWG9xLQgRguxaqIYlmwUW2//5C3L191s7yio/rIDTBxZVTLjmzD\r\nekLTWIo+z0XeuHoOZffRsxWdWyl/J32VB1Hcg6N2/u7Wjl5WkKA+qLLgNs04\r\nlBuVFGXUeNqemMMMb4mnZy+x5DrONSw/QkrXLt83kDAKPS1Rs3zgXDywVq06\r\neKU3wPLPYPCL3Nj0s6Sy98hRwPHLrarbxotxen08eFL5DUbpzx+Dhq1KG6MK\r\n9XfcMNz7F9+2qjpzxRSu8L0pSd8SvVqo0uTZlsNWqNjk0melAunQpqPuVTUe\r\nBnWGm6JzQm0bTSru2YexZnRHFWjVEz1FgGD/UmVMCot5646fU6H2EMfyZuIN\r\nTPpngW4D1wmWqvB1HmnEw77jDCfYWh4VMWk=\r\n=uLHl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG3g5Om3rK2WMuhwyupC6c63wDZj0No2d9ofYLghCYNBAiEA5BiBTigec2uBCi5Ii1fUuBcil3LpKinl6uZq5tiV+gE="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.7_1647433380931_0.5755972043143935"},"_hasShrinkwrap":false},"1.6.1-alpha.8":{"name":"hand-polard","version":"1.6.1-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8112e9b4e1dff70b7c8ee5d121fd19c5ba3a6f47","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.8","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-U9hSqwEBD8x0kqfIoaoan3+ETVz+epTB3qXZaTs9gieLCID21npCWoLJQwVw4GHLNysA4Q8SpM/0miVttsZ7gQ==","shasum":"8a0cbff67d390f6c5afba758fa77ddf404fe9369","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.8.tgz","fileCount":262,"unpackedSize":11317514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMpAsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTlg/9FZxCvG+qBSNqzr3Uzyo0tymDW9j4WTuE6vfL7ZnmeCGVwcd8\r\nKZcyoS32VU01gjf3RSvntGg3u7ITBkDyqAKCrm+b4bW2tYha4KO6l7llGK6n\r\nOsruNpErUjA6I1he5ecLWUc8wbdj9QcXAN5FM0bShprnRijg+kqA1kXIQk8W\r\nIzUBYYLe1NZ9AW7yB3W0a97A9CCR2jkP7hKUpGMUUF02R+8skJLXj+sVJYfn\r\nf51ybYJzsJXgC7/3bjqNCJMOb4bh8kqpPWWSVXwc5F6RXv/g6m6pnzLzCL6V\r\nQPVrm6Pp/udxDT/ki3soAMctNpHJ3LZK/xjnVBrHivbsdrXBLuNVG+pOyWkD\r\nhU8XaT5LtgTw8Xf1NHTCGzG790Mue9gmowFNUd20/PmCcD3Ru3uCCV0Z02tm\r\n/677jbvOvyEIMW1eeY9vCIeS9XKYB+tyWlXPJtYqIohtl0KoHNPMX+oXcT/X\r\nHb1rVVPSYfWusRegdNex4w/8txMSxuKFOMWX/NFeMelg8UQcXmrI5hM8c9lL\r\n2JW4KJ17DNS09hHYlqaautAln6VdOhCzv56H8Q7++CSdQbMvYlTGQrXRpl4/\r\nC/hiipT+JexMn7XWDGb5+Pald++ptKItBrEd+ogxoEirYCj+K7ayKvvG0sBo\r\na8N1fQWttYjLr2N7YS+vVQplBNS8qB6nv2A=\r\n=rAOT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGf+PMoLUjee0jbGThGgRPADsIgPYfu2wH93DrpYT+sxAiEA5oltUjVn6bQint0xhRTtE/yo/q3B2ZSv4BDohSzSZa4="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.8_1647480875924_0.9457400561663953"},"_hasShrinkwrap":false},"1.6.1-alpha.9":{"name":"hand-polard","version":"1.6.1-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"dfdce364fa8ba9ade0beb382cb523e2ad27091b7","description":"## Getting Started","_id":"hand-polard@1.6.1-alpha.9","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-Pkgy1LsgQfkpfYMKutlShVeuxEfvJsNvbimYdBUPn2ne2tow+oHZvxiGFnUYGtSEboVn7y7gXDn6kG2v2IJXPw==","shasum":"6c8069391db1b3cdbd6d286303ac5ad214d23bd8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1-alpha.9.tgz","fileCount":84,"unpackedSize":3312310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMq4HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo9bg//f3FCH3z15VyywbWbYuf2FCV0y1PNtjTpblR+D2Bm+fYE7Mhs\r\n1CRE3jHTCgVbeUUCG/xw1YBnuO6F/be8HB0O1U6hh9K+r9S0z8rrj8lnT95F\r\nxiu95gErhNCy5tABvXdjyR/Pd6njPii1JWP0PEqFmSME7VpDo4KMqSLxhz7s\r\nlv4ei5pG3K/WI3exLds5l2WpJ/uzjCR2SBMRMc57ypOpG+xcaeUxUHnX1l46\r\nW6U8p1U3GluvPGUdCubWtZUO6bdIxWyJfLorBMywM7G8Xln5TPMRSMUNnJJN\r\nAWv4+K8XKem0PFUr05DFbsniY4nXfAkL62C1WVaRa0snVJIKYt/y2YBsZqNb\r\nOdzjzvVoIJaQu9uSkozVLz2SQafTZl9C/lo1Nqtw1pw1J/2ClZIwk9DyesYy\r\nDiRvh6ce+8ShtM8M6USuA4gudKlDtQ1qrFF+csDIsEfffk/OmYfX40AbXnbf\r\nhLnRKlv0XY8a4rpF8IZmtgRszKkiacN2nNuRPLlrFwCelIXeS9pBO1P+yOxL\r\n3/JIsFgfswHaf4MP/xptLpaJyhUW89SQOz5xZLrMeo+tCxuXsLvrmdMaBXk3\r\n/CYApGc/WMIcWe1jXGtGrXZpGX7VN7Hnr7pFu48Ua2Nlz8Os2ic4JLhBtO92\r\n84n9lREREZ27+Z1ZGKHXWp474Vax3Drxmiw=\r\n=VSrV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkMyCMnVuWBZdGH4aZBKDT8JQpsidxpjXENFwNMupGPwIgCJBpJ6+hHe3AdDtLPKyC84NXOBH6Y6hfeoWMO9KASlc="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1-alpha.9_1647488519618_0.9938106271927427"},"_hasShrinkwrap":false},"1.6.1":{"name":"hand-polard","version":"1.6.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"b2505f34e4aada4cf648f8fba9c79dd6f72ae6a9","description":"## Getting Started","_id":"hand-polard@1.6.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-SQiHju9aPMCNsP8FdLFkFXs9rJBEI2ZD9vgVcyp4DnqYK0SSXlTbMPhqUmEZYNWTATmTkCBV0nAAkEuKlZzKeg==","shasum":"bbb73a2de46a735d7219ca4f1d8a1a1434c0f4c0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.1.tgz","fileCount":84,"unpackedSize":3265074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMtKlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJXhAAob/vXfiBZaHTGdURBJ4r1o+2XKK9MlM7pDgtTr4iSi9PoIcA\r\nEarwBcatbjrMef+ok1MYDWcUJZRBlJnvhZwhL8UmiJ+FTMJh7sQLvJ3ICSJn\r\ny2VJbrvxFm+sOV6zHVYbhG7ehoh9jbqL+sFh7Zq7Uc+n3H4reJfRlI3c1VB6\r\nXFzQ43RVSnHp2GSUD3fivEBeOOChV+bWHCl3Zux0tBZaIEPpunh9P5IFVkGY\r\nmGQMixEZt2fKQViQrsdTJeJfxoMBPuIuSmiuYNuW7s+zpZYdVT0euiuquxlj\r\n7GghwQ00oHsK3F8i3o1t/ITXLWS/4y0vSYa5OyO4Z6szgundvieD9VyOc7a/\r\nxQQ3HbZrgRYDymdIyzaaqtg7ZGD7QYiyFgo6jYVwLY0bt7OhRRPjv3EGPJK4\r\npoWX4mQJLDNN78didYw3a8zqoptfqdTpohUqHA8Fze4LjyLVlbjBmeEChULt\r\nipB2oMEnUnbFKJsb6uPgnSUGCh5V013AzJ4HHtT0F8rkLxYH5Sw3f6wlSa5T\r\nM1s6H/AlsEhCb+29mpBLZkx67yoWIh75g3DARWqGckUBaid2nqAFILp4MRSq\r\n9Nls1ACq2jV2u4xf3uPe8CxTq3KU67no06iNA+6cOQ8agm98I4E56f7pccqT\r\nilz3+1chWPmep11Ma+E6fA1NfzNIbGN7S1Y=\r\n=15V7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCy/6ImISUxXhwQi1ztpEXOuQa955tPxy1LiX+9fh6yDgIhAN8PQUiLzJoYsGqJAgQxoGst+W5krnZzn63yIddgVoDP"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.1_1647497893248_0.8452156008421192"},"_hasShrinkwrap":false},"1.7.0-beta.0":{"name":"hand-polard","version":"1.7.0-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"febddf851534024bbf1ad3dcc2a54cec24e8ef30","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.0","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-e9lTfExTIDnFIe86zHE+AYv4aRxQd08DkMgez/L6mmiChN33H0vQ5pUt6RTBIJjEFiyE2i9zNFYp9IAH8VTaMA==","shasum":"121ba2416ef600ff702bee0a3138f67e1bf6b2a0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.0.tgz","fileCount":84,"unpackedSize":3283699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiNFDWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQBw//bJhayQxMYN+O3IRGGTIFRunx+SoxSb9FtABuKpWbihq81b6t\r\n29V40tRev7MNraESPpiDmgZu3jpLqYIXTGmZel8EJ/Jpx6mAmrscmv5WayX4\r\nmbprq7xpWxjLbXL5Xrsv9vTl4ay96zxS4SYVus15cheW1qYLuT4tfiTz5Iwy\r\nOa90rYUYQANv9Wn+B3xsztF3SPU5SHx17Bw/0dgRxR1sfJ3IiQwj26ib8J+i\r\nylbKHF5jhzHa8We9fmepu2GWAP8iqAYbNn9s7OQ8OC9L7M5N/+nB0zFoMEJS\r\nGD4/KZD/CzkrVzswWQa26SDsStkGViUZnYFQDRhmHHd34zkgN+g27rZ+LCpG\r\nT8AqgQxPuO13gqeKqMFQu7Y4lahq4sAZvt3jPff00lCqQnqSmxgjLHaW+ju0\r\n6trKHNBUsHoPveZTZizlga8RzKbSnKPEYDELjiRYa6h69WP9AN7PAi5rcMWe\r\nvIm9aKuhxjhs/+hnbI/ZclZ1m7c8eQWOAYav7pgW2ynPJv/XjPcVKAYuHqAR\r\nm65rIN78PGAVevSQL1WadHr+bSdLQUulbTdvDJutWtggtvb5nNfJzU7PQT2U\r\nOco1aNGHufjRDZVDAYFfKvrnrOZW/bFlYZW8imc6u82op5oYDrpCo5FXD5UC\r\nfB0JXJxIuLArhQFhC0A8pZ4nj3J76eJcRgc=\r\n=57Bk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVfWBIPxrlnUbWtyyXr3PfhaKCv4ZXwJRbOvRJfP/cLQIhALwyDj3g/a3HvKD6xxlHMGu08mErcD/dBcr4kN5iVGoU"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.0_1647595734164_0.6873429469926535"},"_hasShrinkwrap":false},"1.6.10-alpha.0":{"name":"hand-polard","version":"1.6.10-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e1aa75a76f9df19b6b5eee8e3d59f9d5d0b2c729","description":"## Getting Started","_id":"hand-polard@1.6.10-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-FRNt3MoRTVA544O4zw9mSWbiDwupUDT+BZO6Zs56je33Id0wfZUGvtVDGyHfnYOaVXWBnQtmlnnx8hKf9wkTsA==","shasum":"bf159913b0c728e76dd868020430cba0f3c89a6c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.10-alpha.0.tgz","fileCount":84,"unpackedSize":3308018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOYGkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrYqg/9EebHts/Ob5RN3K/XDn9BUHXBu+aJoPWHRp1tHT5p+/WMRHyM\r\nrdK6KzzDH7EuG0x/MGVik+mC1aG22FvM82ZH8fr+NtqHfgkoMW36rPetyDaG\r\ncZqSI3maVUBzOZR+7ptcf3LwMbZCOuQ+DqKV//+yu/lZrEsIyliimqBEjGFx\r\nIWjzEe2HObvZWKgARuu81bugib9IR4aLL2uSRg5gcoj01fP33Nt3rHsBTtOm\r\nHeIZ7mQvy6KKpVG6MVlSMTkWN4Agf72eWTrQTcZb+r5BrMJ474Dn+PG6ku6H\r\nJtdHH7JnhiHdaih0PLiRNHrWcR/Qvq9Og1UomdUcTj0MKCEPgCJ+dqlWmldp\r\nMZfcLV19oIEJInf6rpjTZ43IvtQD7Bo3PWKafR9SD9C/pCYmcSZEfrqfdQLY\r\nYXRoC1lmYkmPOK/7Z2f9nIL8XHuBhVcnoB8nMPN9Trm6YyFeNrnZtnFe08xm\r\n6Dv53GGOdaC119PHHe6+4iyJzVj3eCQMXSxi8duvTgH9DlEgi2FC/khs+hW4\r\n8gzsuLBayw4HVHU4rj2J1ZsXorIA2Hu+rHr/hctn3f5UcnBxP1qXbXiHX7To\r\nwgjKbYklJPPDhvetFGtCsXUcNbywVH6ioaiIPUvYsjwyXzMmkzshu/MF2O8m\r\nvGPY85YWXE/FEbIFPPXpspKkQI4A4dsa1Hk=\r\n=Tq5l\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEYm/ZKZeJjlHdnTMk1oFnA6nFmVDr41P2yXCBHr8ZwHAiEAji7zv5ZbVPeu/XQEDOGPaRLE54NT/JW2Xq1feNC9tPc="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.10-alpha.0_1647935907939_0.47079232705321306"},"_hasShrinkwrap":false},"1.6.2":{"name":"hand-polard","version":"1.6.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"09966f385fad043544611647f3072f217e6ddf9c","description":"## Getting Started","_id":"hand-polard@1.6.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ABW4ijRd7efKVsQ/h58mHV/vVh72vLStSj/892st/BcjmZ+Henen98iK/wlAuFpGGgUH8ikDRAZKCoyXJLNNyQ==","shasum":"d19a73b2af8597e6185544237f036e3bb3556e49","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.2.tgz","fileCount":84,"unpackedSize":3266017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOrlJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmomZRAAixw9qL0zNAkrAzX4qA2L97CRtvOM3I83c0JCiLTOeQkzfYRq\r\nDjHrhvuFWS0BWFKzIF85T141PM1fAKB85qS4GuQ2AtHp0o+pcl56xZ/SCdRD\r\nkl+l53MsIzxUjyabrra86R6vOmZoEPNzzfpG9kjovAqgL84YvsURZgaxNGtR\r\nxjfFnHhe8HTRPkbaQZrthNECHgo6vqdzIetnFOxeR1+YFSNRYYdmViEuU+bl\r\nzIPKf4a/YqQ4VaNdIF6+7yN+/B0ORZKf3KE9Oc8UbFAkT6Q7ItUdAgr257/t\r\n+W2ChHTIv4pkOrqqhzZwqdIRY4QrKPqqj33Vr26LOlVYBcBdL/pMsGjo0AiE\r\nnxTAoP99OSaJUTTzErOxaopdBf7SRAUBQ5JSbC3u3V75VdHAgg1FNFdEAho1\r\nCXZCrAn5AAOSmRuHmV7qOwI1gTH0ym8+fofW16ilV3vAC8vqs2HlXDrAFn8X\r\nuqplUbePTIzIs8KetNxA2Vz2lubAx9xVBPNXYT5l8JyKzVANKvF4mwf2T8NI\r\nCYLh28nUhKWduW9AS3jmJbsdBQlh6kD7SfXHkd3Mqr0AxvndmoR4lYgSeXi6\r\nOIIF0dNLtbtosMGF6HIgAayPbOajuKn8AYWqCMqMO/GMkJe1WP3Wi14g3GXM\r\ndWslrefSQSXVDlSJLmpVT+8bhLRdpkPr03A=\r\n=bChU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGaklKpPQAFkdSbj+0Lhl73Y1n+jTFAA1KAIga9PlZa3AiEAg7v0Ouj0/DYSMyiStXbJjiOCQDYyUQGz9UZHpV3+dC0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.2_1648015688878_0.05216659821685288"},"_hasShrinkwrap":false},"1.6.3-beta.0":{"name":"hand-polard","version":"1.6.3-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6a0e1892b4eeedb1edc6d5e71c6e3fe0296f6fc8","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-HegGaShycpkPChX/nujVeMN03s1XGU2dlg9uVGwnc5SheXVBqP+VyTOWltFoCw7kfOs9FB2wXvccBdVwNOwOlg==","shasum":"4a1f837fe08b6663d59a74eb7b931985c70bb010","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.0.tgz","fileCount":84,"unpackedSize":3278796,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOspkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqEaRAAjBiCRYyV7F8iWbYGZGWg+CSKBk/OmzCyNOIb/Nx5+D8nYC7l\r\nuDvL9SNBS0M51LoIkt8KVzxB5bg4asJu11lg6JKSPL/dYbjkWs3jy5GgdnWQ\r\nR/WofBuflpoEFYycC7v7RT66WCwYID2RCMKcHRtAsy2vaSMFRTPeZ0xG+9L4\r\n9C/c8UJfA513cgQ9ej/udXJjQEtPF7yONsqnvu0oGAIbmBhayHhZNUfeHSmY\r\netciOAiaB8PAR6AOVcG2unZZCZzgv1d3sEJC9i3thIiIqQu2iEarICTpMbCk\r\nyQv0B9z3acKpT65qNKgC3MUMT4inmtQE+wDkc88Q3EF+vRyBE0R9d7aRclY7\r\nvRm+MrtjRCeNjtvQbntVTQPv+2bZsCebznxDHnFlDcQV8tDp9mRoegsXG1JU\r\nWW50T8wMJRge4GovKddIumvdijQypI2GpDDCYY7dkN1va7G2xGQvKq69F9fR\r\nvWxbJjiicX8VsSPaZixwdv0nIzCUAh9hKMZ+/L/vHtCxoFYOdh75FOFc7rB+\r\nfcqa1uewTAkkOdnFXv8AdDU5yZ1NxTvevBq7oTROaqoxBz1CDdpkuo8Peu7S\r\np2ufr886Q/VjwZaXxctQSOkdj2hUqxY4Ten38H12hPZYDeZQdf9IoSI46Ta+\r\ne02gZja6vS8CkNbbgGg8dw66yRhioBvplqI=\r\n=t994\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3uZDLX6w6PuY48uSg/++4Mzw8h+pHC4LwJcKYGlXp3gIgSI+N/b/K9Z0ipgG2ALEjpQFwHTs7e9BF9kzTrl+7wyM="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.0_1648020068321_0.8344117770261097"},"_hasShrinkwrap":false},"1.6.3-alpha.0":{"name":"hand-polard","version":"1.6.3-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f9d8e59aaaf5847b1f7aaef76f0fec03aa8b1209","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-laaiaM7QqOPPek9JUm8d1xwZYRAGZvVEMTqdwzk8/fqgpsbtcKdNshlctu+wRDoooAdW1EvtV92EqWf06rtcSA==","shasum":"de27a2e3f4038d86e3803625ced87c34da0845ba","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.0.tgz","fileCount":84,"unpackedSize":3308526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOtzWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7/g//ZUM02G9Zma6SceSv/no2WNHjR9eQjqN1+BECgKvrWSCk/r/J\r\n+ItbMgkDwqJmK+KMEq5TlLeawpYOUuoBbVIJLa5X7U1EHl05OzQpnsCi5GRU\r\n2Xs9/6++r+OVEvKD/Z0XyWeSWPTJSkhwZR9cWyeET2OrFd1JEIf/hadNsmb6\r\n69A7S8cdw6ou+nHk3XMtIKTyDNiAy9rOHQ/DGauFxqnXNU6mn7VhrN7BeCwT\r\nsFecIVlfAd29J+9IfJkbfWgf5LMMLrQgWL2DOJNFxZ9XAIcGr+v5I7ndUtHn\r\nqzEKGU/XK0DL3boeFkZBh11K9bb74uiR+UkHWbgcNFEEpV0uXL8dSCwM+Hyw\r\nncMlJrcRLJwC5VLqZdkm353J/HbIkFw4afk8/kcPNfAKDHZdJIt+/VX9eSRC\r\nrUDNpF8PThuF+OD7nfjx7H2mp56hX7yeTE8bPV9S/xoaNUY8Enm0RPn4ZD4d\r\nYFrUYYE9NKf4fyobD8ewmWspYAxURPe58+CxUxafJyCn79e6h+FJrP9mzxJ5\r\n27wYJXVk0ymvvOSJSBNTLA6QJbpea/zlp6o6UUa75zGognTFgSHavw7Rf5UP\r\ntcIPcZnikdsSUF5TMFH3jTHtF+ykDMZw1QrvwGSGHDSLzhghVMyaRvIZT6Vg\r\nXYSF7ZQirg0nNqfJAV63H3yrietfViTgJpY=\r\n=iZNg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICQjJkGuN058GtSFbpJMW/ON4iXl8VYCfBNMf0WY6CfDAiA5oWgoEl2+EJu2JWqRfNHB8r1RhAPnnNLWgPIo5soGwQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.0_1648024790185_0.4662792723632838"},"_hasShrinkwrap":false},"1.6.3-alpha.1":{"name":"hand-polard","version":"1.6.3-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e3384c8487c20ba0650d3b9d4ccb832386415eb5","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.1","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-wI2/PalYzzPunUTEV3323rp3c7IWujv0NLUxxZpvxk71zglW+/oGtiV/fD/+qjfsfvqKg5+gLwfrcluqQmRRFA==","shasum":"99acd4964ce716352aef4934e8fee3d2f4a07ee9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.1.tgz","fileCount":279,"unpackedSize":12585890,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPBSzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoshw//eNTYNRT120XQCXODvOPAgMAflsDHCXQuJJlyG0WURwRS4Xib\r\neI0DRopcF6bXzoOS8x0ZuAuzlBdnEzMOl4DFNVtkYW0koqkgG3CQ/qWxQ3LJ\r\ndfSC5bb2EuKZGccx8x+hVzdZerS43z9WAj4k7uBmaB8K0e/Oa46Ko2Gt8MZa\r\nnE9sjfrNCxBh470DepzKG7mnkcArJCxJpdWtpnp6TwyAKDklK2LU4J8IqO2L\r\n4tlXsKLSXgaMeMTgJr/Xcr/7E/yWzRu8+uY6Q6HJ1nBACDb1ffFgaK5heVNF\r\nG4mVII96ctZXylg9cbioaOfJC5keM6K1hgzY6xDjurQ3TGo7Wt1kO2gr+p6x\r\nScloLFc9MLnxFDSh086D/CW7LlEkWRSFKEVPkt4AAbHmTxX9XecFv+MbIl+O\r\nDL6ieiNGzQoUjY83/fOl+OzGIpwNna8KyBjTXZHKMm1U/8tdvSZtyWCuqJvR\r\nMm9ETR4YkSIsV2gDh5dLgQqG+gf/NNZX6ZYtcBa8l5fGg8wNm1xN5WH6V5Rn\r\n+LlJ7XNPg6KoMkBlNouU1KSS1xda/twL1dKb+34nMt1mvYaBnAv9DRBOjiZr\r\n5JTmo+hMrRwIJmOtSASOzzIj1ljkWDKf3/VFK2sw3rQTIBegk1vmuYQuxk0P\r\nM6/CNVS0hDeEXfIZ92zM+v8JYrJX8iHJ2dY=\r\n=n96M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzGRjeZIxVOF+oylir+2BFeNI9h8RruUY4+8cCkxu6SAIhAOfYRSuYyA3Gale1EelsQlGD88xa49kO/11ACa75zoSQ"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.1_1648104626697_0.4624738379677378"},"_hasShrinkwrap":false},"1.6.3-alpha.2":{"name":"hand-polard","version":"1.6.3-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7db7ee60cc039b77a52dd1be7fe995347a13b269","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.2","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-pwql0qkPNHrZbBGaxR34yaeTEOZabjuYtZbLC+m/kQ5vRJhnY9kWbUta2k0eOswQ0/YS7h4i85CDiboulRAksQ==","shasum":"52add1c826d72370a653903f7ffcbad7131dd674","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.2.tgz","fileCount":280,"unpackedSize":12608681,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPC99ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrazQ//fmOqbUeUHw6yN4lMRSaRSnmLjQvtpDWy3o1JBq/D3AwPSDot\r\nwAF2bXZrF14pSzWO24xe3weXc7Npj1mYEm/nBTuoUmwLhc/Ess4KIX6CE25s\r\nowmlf9SkRTJj0EbY8Ow8CE7Xg/WWmKjAy+w4NaVYkQI4vMCfnWRavKQw4RLX\r\nDDJeqDdptJrfvDci7D+DmjMyvc3QRmVW2yRsI430mDWB1Nw+SA15ItGMCCmG\r\nEQVScI/rFtwNrIWwCFur7plrOJ9cy+jSvaXD4iW88vN+E6l3Uh0hGdFb5mcw\r\nZnHgoC3/mqe2TrjrzrRxJ8yu2udPqnQRV+Xjt5QCfvaivxBuzz2AZ85lCCup\r\nHmODuT0oDQ76QQSkI6gtr2EuSlgCZj0fWV3yOE98yEMZ1A25KWzE4UxYiJqO\r\ndbMppm2vhYHDcOS+1J4hGaVj5dY32BXeh/dpHfn2hfuDw8UQBnCrqnGZhfqK\r\nWTRbMWUfiB4CmQebRpxAH8eoTT5tKqvn0PboKibtv0Jgz+ufzGnD5BAChjLv\r\nJyCSsPPLrwaSJEIikhyUCzT8XJ/gfOrwF2qWO6KX2wUJUA0QT/E6+oPnCgTP\r\nQTgPu/2+NhX0+NAaQL3u9gy0PcosdKul8hQFvKfb6t297Act6plBwYUPUR4d\r\nZ8tvnjq3G8NAcrQwVg8WdC6WEMEy6RmxD8g=\r\n=WVG6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBIaZIyQnNrRy6tmMKNPHNI+h3mQV7AZQRSBNnoghbwAAiBIMdowhZ8PypWoDZc2qFzx1Zh/iOb/MoMAK2M++GhEzQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.2_1648111485293_0.5751691868515665"},"_hasShrinkwrap":false},"1.6.3-alpha.3":{"name":"hand-polard","version":"1.6.3-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"34831259f96990024ef65f8603f05aeb959f2d7e","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ODSWFa1E6DXdqFn6KpHHSF98uA5VgXjOyHDll6yVkPify+1L2JGd3k5PmOclZv2iMgPXaJxM+zhhlAwkkGL46Q==","shasum":"4c8f9e4dcba97eb661c549ec4651e5918ebd0f87","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.3.tgz","fileCount":84,"unpackedSize":3328861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPDvfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKxg//d/4SEX9XOtaNMFn8g3ErhZvetAadSn8sOGSnRookNMyFE7mq\r\nQNDdKnw6psGI8FvYaoChkKlKfhicQLjBXHFdmUYPhJ+sYDkuWszNGXO56RPz\r\nn9ONW//sjCz6lCnMnjPPtBE/AsmLDuynE+XwI7ZnWjjghpJIqFz9wrMJgDPK\r\nRMbopjoaeh8lU1gIqOVEm66PW+G95EEehwyb6gBOalBhHYgIbBqafEG/cG3W\r\n7q5GiLyYpHp2zt9Rxs9NuTJzj49gHyVZ67+YNpXn3bqQhKvGA2+LKFGz3IoO\r\ngvaOlZEYYpPX9UYa1HDiRE5jsjn0i4KjM3MTss7Ev/RLCXmZlmh+mBGuCIbz\r\nGx6oHd8V2uLRZx1wah+DC/KaCHu467G+KxC847RSPEiWJQ3e1HfXpN124edn\r\nNLbzo1s00qGf9fRMcaCGWN5yK7D9fIRvzhUrcuTnxuR9p1msy0jmkOU0D27l\r\no5f8Gt72z3pyFA7UV+SmOlLTqus89shC0DBukOyBBxpb7oncsyhp6GRHdxug\r\ncbUcCfIdws3gcciHYs2bL6wor3RF1VKJsHE6FDx926dly15Y4UYizjwAD6GJ\r\nFBxEGM3mzd1n1Qmd3G9QfqtiCoqpGvIkmhw3HBZ5v11oO46oUxcjHgOnCDKI\r\nEeSYqsyqHuf50DgyhkFxK/GvTGMxfTnP/XE=\r\n=hLBy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqJvbxyK9ruq+0la+ojFtODvZm6XJW2NG96IVgusnxLQIhAKiAaw7O9MrpD9qSvXLLnQ52zfGG3HI7MMWoxZg7dcOk"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.3_1648114654597_0.03575393124058368"},"_hasShrinkwrap":false},"1.6.3-alpha.4":{"name":"hand-polard","version":"1.6.3-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f6ed483ef36d427d5e673c6a789666519fd2a1cb","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-9U4bZQJemjQmPQT4QTshCkU7yUm4Nvxk6aI89CRwEefAFR9faSf4khgB9EvLvub/EEWrfeC0WzyMxBe15biF8Q==","shasum":"ea4f3f6407740ff00e53dd65a3a8616f9a548f7d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.4.tgz","fileCount":84,"unpackedSize":3329301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPEEIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDZg//RHpeqUuf7wav+RbfnUMX6SazceIJRB8GeUKQA29wGbcReox3\r\nBLeIQMnP/KtIEIin4Ht4eyEXk5ZQt2os9nx5dIQP101okth9qpC8/NEndQ9W\r\ndTPEP72jonuKTn2jExIAMpdcrKlLSTzMOZdZi1tL/XqkjZ1Zmk84hYAAhuFE\r\nIbRhSARpURo2JOAXZhrbJKA3+SBCK0u198epDTYULEZXxZurSO02upjrzZrA\r\n4wauV6JWKSCPAmY22N4H7TIufqmUfbsQBz5LYmgJ2PiOCwMsNSylVFSWSDw5\r\nOpR0d5aZdQeWS5EVFium6qF3gFrQdoY1xRJryzoHBNCQmCd8pfpYShecAxS0\r\n6/QQTZn8rbeimY+QMzJbRlDHwibt05a8O2llRy17EVsxBRZChlFLX8z2I9NV\r\nOsdzEwmrU/Lyky5bk2gVxsdxW6xXwz9AWtQ61mbGDh06tEXRvo7HGZ+q2PTz\r\n+Qb1HOPSSjR/I65bm9voWkg4JF6AYlJq0rpEOrLTuw7dWgA/W/Bbee8cv9BK\r\nYNCZZKS2P9IcTF+3+6/tXRexJ7FsJkSLpEjx7AVvxUFYG1uYUxUryy9kELKJ\r\nWLhOQciWSY+v7gHh1J7XCr2qWHmQgN+qf+vlpg5MgiQhRBGJTa0/Pggr0LYt\r\nnsxbJFFO6LJ4nnjAov1ebuRFk+rDlhkDh48=\r\n=OsuP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHyEgqp7IIkpKqIL0HzMsbJm4Pdijrc1s1WFo3EisWmRAiA8/6KqZ9UrZKHqLNVVnB5/dTXXXLZrX9ozwHYwwu+gNQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.4_1648115975973_0.4734690771812611"},"_hasShrinkwrap":false},"1.6.3-alpha.5":{"name":"hand-polard","version":"1.6.3-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7d028bea1078e627712c5501fc64e2a1db9b81d0","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Xk2AJfiTHjy8uYPLAkLbAC5pDhjvcZmDIF0LaCB083qP38uz4wKeyDf8lWUZ1y7e+nsKVHSTEmJf1bYFodk6FQ==","shasum":"34f0fca830981c2edc041e312dcfe6e88be2df33","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.5.tgz","fileCount":84,"unpackedSize":3329628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPEeEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpncA/8DDye+O1HqblT3h2PXwOYi1ulR/35CyRluu1vbKfdnPYLsGwQ\r\n4fdfOlBi3QxY4/sh9m047ltnFGtodgWPE19QQmxZzOfAFqpc9Ebeg6y7G4H1\r\nAXrfnB4I/BlRIbAS8U+xyYeaLmVVuOEehAhibuo1ExMKlxfxrqIXca5SkGfN\r\nCi1YETXu1SP0frqvYUVoFEJPxlgsOsKkMgR0C1q341lUyaRjatn+0UgtYxzx\r\nh9xH8eBDoeyTQ0DYAw+AoDuoVlHYr1PmpN3AK+EW79k1b69kCA2ynUJbVkt3\r\n9JG/3byPbFodyWsIL2FxSIChh22sTSnuldn8turzUMxJTu63QeMCJycVnt2F\r\nL/+vE7rTF+IyyDY49RaEvDIeKlR11xHlrfl8pHJgZW4aw9Pr6077/FH6oMuH\r\n+B1ZfMiU5WVZ8GPOBTDJ3nBfh6gPrz8jMRBVzApmSCzd/S9cvTKT+szJDyyX\r\nV4agrDHjOAl7sD8t9dHkx/OxxnKoLjA4NtOgeYv6+K1aIFxokjJbJuVCII4/\r\npbSQ6BanFP0siXk1hhs+LKzjLRSN1m6VWRlSyxz0eOmwYrhTy0ZxrUTBsgjs\r\n+sIU47+0+xJ0Zsncq1WbvpJrkSY1DDKjlZhJLGXzgzg5ox3jLvSQ2kGRcW0w\r\nqiHIbgJD7K9yT/MiZuTTCjTsJwICEqUzVAw=\r\n=2lRQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGvlF17Wh4bqx5/uxsIheokMnF6pceW68LJhlYanPV8wAiBrBLxY/MUkow05tp9c3oNBf9ickJpNyKcxO9XGP291nw=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.5_1648117636592_0.7966284207828929"},"_hasShrinkwrap":false},"1.6.3-alpha.6":{"name":"hand-polard","version":"1.6.3-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2270b5baa1be488e3e6d88d342294582ae81128f","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-AFcUtsguAnUnGMJn4yHtBIxNaYHqtIkx8VLEZzW8oJbJi+fXPbThMItF91n0OnkHqeD2iMMBX24m1cu7m+6dSQ==","shasum":"26411bd1b50af73f2346536c04100e04b3f843df","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.6.tgz","fileCount":84,"unpackedSize":3329945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPR8QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5zA/9HgztxO5kWoK8pO7q1TrZ2SJqtqJIvK2iwkhju4qSNgCAq3Zk\r\nT0y1wPdPrlZWS84nwt0ujpluyQMC7s4VkvoM5zoRUzdVllWTZsSEzNDcTRLx\r\nwJg59Z0/01hxMYaQQl1PlerUsOFtfm/vRJWYOtED3rQi4FkUr6FJcFmGs8jM\r\nZgozBIxq22CvpN+4Rd8vGhVvS/RibZ1MQsq44Mj3DG2saZgmHuWdTL/AmCvR\r\nWX4Q7TRtMOBko4QDYCgf6/DRaeZRH8MjcBGvdZFYbyql73uazLes63IjOyPE\r\nfkNdVOwwSCHf6i6YkbEEGSPUOJUki1lcGW2Na9K44UZ2ETumrSySkmQT+krv\r\nJcjNyKFGnV5KS/WjxcY9ikRVrBrN43OrQGmBrLRsNgv+lAsEukq2wa7EWvWi\r\nZqEcUN1w0zWRaws6D3X9AvesjYeezydv9nR50JZN+TWNJeTXYulBRHcOfZYU\r\nItm15tEp+0x45wMOdJQKxemSAwVnIRaGS4gRQJD3b0OFZWt7zro8+NOYXB+M\r\n6Nmf7ygj0p+iaU6JHzHEU5dfo6cMCYmLiDyc+9Z+2tiyDYi+muASeotCb/AG\r\n5fYmIYS6vAG5XPaRmxSk6J8REgzPQ84OrpXHFuxxB5WR1IHwWqUEVOCkbdCy\r\n+ob5kvJb7T/lh/WVu2z0mdcl1oa3dPT5nkA=\r\n=A0Sw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHYTBDkqzjS1bUT8NnaDZ3YqTo0bi8fQsbWtacQT5X4QAiA24JVt71jZeijNWZEI3acJa6FvQqduFnoS/8vI/NXisA=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.6_1648172816125_0.4988653494598423"},"_hasShrinkwrap":false},"1.6.3-alpha.7":{"name":"hand-polard","version":"1.6.3-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2769419b92ea1eabd99bfce7e5da085010f8f8c8","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-CYBVsyt/E9UydiNAGacS+V8cu364QZYLAmBNgQzD4DVBIxuny0KMBEXsxLhFSplGE3x62YcY3AzQMOTPWn+cXg==","shasum":"87911c8ca597cc75483d18542668ea7d3ac70809","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.7.tgz","fileCount":84,"unpackedSize":3329926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPSj2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5rw//Z2YyCuZfvDDdYzPo8DpKxERIusNgfaoBiUmqtJkLfAPxfLy1\r\nh40ehNMaVUNPPpj3/EfhG8iXFH0dHWyXcvbB1iPUoMrzPsXOak2qI3tT7vgh\r\nN3s9bnQ9KiU7OO9OmJWO/6Kt1CtzOMW/jIbyVtHXzSmz+yfWt9BHfxPi9CMS\r\n+gbKsY/Eg5Z4ziuU1kfwdOEBiMJR/6km0EN5slaV9A5XrJWFW5PNJ7MQXNmU\r\nSchEpRMyIluSbr3zh8BGNpFrDaOLzUXwW7U/VBGFOUcg6Zz2TT/7mCWmowrz\r\nhYUTXqThSJchMRJ0vRQEdwssxaFkecAELTtOjGghLTUY27TkTwMbEozmlPKm\r\nZAZRL1OaHxB5gZLHJTDGH8coB5Z/auZ0qe/c6Ug8NzAOQyaIVhspfJAAigYu\r\neHTrR5jzCxut/TvhXccYhwCJ/CMkXDdls6d/2KMR9hrrB9SbQEmOAw0dZ5SJ\r\n6jVNTkwK+wcigxBSxb0oEyyotSvdc5MpnoYVV/gisxphzOlsi1tG+A2CNBaL\r\nq6r130bg+wXT+lBYIcQlsrYXFgi1pPhmD4qMRhswLbo9Wf64rCiyMWbNLMkW\r\nrraebAcT0NZcgjghxj0TiSL0K1BfleQiDFsvitPZKU7UQNWs06DYul7A5/PJ\r\n17rCOujDaaPs2uKCJ5RUBbIbb+xy2zGbaqY=\r\n=5Fxu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDl+MtR0vjLMOh/2UpwLIaNHeaHv53U8iyIgA0LUbpFoAiATxaqLE7fm0Uepij6CjahvFNdSkH4C1mBCodSBkEbjaQ=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.7_1648175350218_0.405967658861061"},"_hasShrinkwrap":false},"1.6.3-alpha.8":{"name":"hand-polard","version":"1.6.3-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ab5c78903560de7184efc72820636133592ef092","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-zqhEPbuh+LJnto+rRpckgdLkLpq40lIuFy34gpTxpATh9DwSMLrO6LTAS9tgWct2kEty2JY8c4v7dfT42SJvEA==","shasum":"b3cb292fc050fdcdfebe4d4118df9bffee6de3c6","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.8.tgz","fileCount":84,"unpackedSize":3330619,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPV8eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmodxA/9G/Mim5/afSW/77MefBpni6pl5m+Tfd6/u2XrAfJStAXLoo8G\r\nhvsGaoEk9HNvUN5AYMEE3IDhk9QaeWNmJydWqBDTsc6L34h88bGRjlAncdPn\r\n0II2qU+5XcHw8p/5kvnVPsGzxTJInG76tDtN5EgH1c1tLTQWih3hq/qO/E2H\r\niOPpAclepuFOXLyJopM+JvqLkdOnemk8Gk+1SM0whyDOneF9CuygOOn2bFV7\r\nQrHVO/V6VbLhiJfuv7FG/9gfFlXLcmQqyVZLNE+4tF24mhMzV/diKXHX6Hrx\r\n0oDnxxvyfwHYapQVUYVn9cUefL/1Bx1Bo/FriTvMRV6VCSazQWRM+Vh9Gf+H\r\nlDA7ITaKsfiYKlZe8jTIY3VHvglNMkyZKkW25U6eUsHJcujGdnwMU2WdXx00\r\nq7mwTap0q1itybimq8CpevJ+uKVNVUcBL6TumKX4cQCXkx2KCvz08xN8mMU0\r\n3ksGP3E69knWr+rNjMBhfuAq+aiR6yhYubNgQoa75Yq94z3oXaJN5Uae3lO7\r\nA5uXEWhQ6KEkxABuVq8aR/WGoKewyp6WEA2cYmY4wsiQy08lXfA7fX/mH60K\r\nfb/KRjMNOM677xCbTC86yGUDkU9qzy5TrsJLqmrqcL8B8ckwCqpJ3QYCeEsW\r\nyOtLp/tStuKjmEVAjxxkRamHrYiE+F6L8+Y=\r\n=JlAq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEP00KrbSRWUQvy/vlolbgtSrfbMYGxcFN6ZRdGhaoLeAiEAsWVRK9GIQL99ie5ll0tec0UNubSl9EXEgy2mwc0OTp0="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.8_1648189214266_0.08863652832866964"},"_hasShrinkwrap":false},"1.6.3-alpha.9":{"name":"hand-polard","version":"1.6.3-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5ce8900a39dae5b24d7f4467ad82c17a7c5b1162","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-rvb7Pkkl8uxUIa9zKcNN5KLRhsfjhBI6+pbQ6ciAsN7YT5ywVJKxXBUjZHbaDqGRr4pGkRh5lGDcn/MMCLrdZw==","shasum":"baa0b613c9fd4bc4c6683b617272af2b5d815bf5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.9.tgz","fileCount":84,"unpackedSize":3330921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPWxKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLCQ//S0M58h1/hAzJIvebllNYY8+3vraWZKUS39Ro2XB8t4eYM8oN\r\nO8oKoO0MYMxnHw0iKBaq/h5yOuTQWh30mUdZ1Xsbf5mWvCsl9W7X9jpyP5HL\r\n4i9j0tbFPI53Z3vTPz3IgrJQRf1kS92GJix8BL265X9rE1QhV2Fuu2MSJHtd\r\nkqBjS+tP6oW+Pn1XYAhwScBD+Vm4PDxiAH1XOGnste/bp1lpTUzzGQetIg1l\r\nPGvvL2InjtNeoQrCM8vY7MUPl9VnSBK4SF36ExLuwXWkl63aTLYXVeoA3qwp\r\n31c7ICUCeAG1CVgyUjT0FzoGyhqupqQ2yCaepXtgn7ADS/4Ph8zzYWIHnOAh\r\nfHtX52HdsecZtwJE7CO/xpqtrgD37xbdTTHM266YxmflhfA3Lm61cQX9gxUF\r\n2YYqGSA5IgcWB+v6oFhUnrv87apF7BeJgbxY3ApVET2Az/ZIbnExGZPq+rIN\r\nk8oTBAu9q8XROJdoG+Ly8qQ3zq18B0FsnZP7UZZL6wqo6ftmu7Wk4wEaGcNq\r\n5Ee/0jE+uDvUR+JEEhdSazl0rxypMNxoGGNhQtDi5j8FjAz0WPqAZrnbgrEE\r\nQVnhZOGtWh2MKM5Q1oI6ymMNuHv+LIuUO2GTIvUKN50r6zgYwBJOaLFIM/G3\r\nDORd+0TEbkgwJNCcId8OySFxbt23ruPbpqQ=\r\n=oQQr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVjlonalwPcdepUltxulbPtDbxmq7Smudun5/Y5GjFjgIgUljm+VrkQZtMQ3JZeKG6efbPVVlVHUHDE9K4DPTSVV8="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.9_1648192586015_0.4418097655568445"},"_hasShrinkwrap":false},"1.6.3-beta.1":{"name":"hand-polard","version":"1.6.3-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2a5cddc73154088a0e34839b882202edaf9f10e2","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-8gl9vhPHlnGEI6RmkAdc468s5Gs17ddhax705IOVCvvF3B1YH1NhrZs0B8kn4z9Qj457ju3JnDwq8hg6SNN5TQ==","shasum":"333795031f066828f512e4d6d45a7c70c9fd5cc4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.1.tgz","fileCount":84,"unpackedSize":3287284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPW7mACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr20w//fqYOg35REHW2AWiF8yZGfrXapotWjOwcTDzyOUyTDCGhzWKo\r\n6k/DDDwiTyazucivWjSAF55DCEPyl2VDABoqX3n5bcVYGfLQtghBgrY1rhZX\r\nI8VjSGqaBP8tqodCrvLnWw83yYv5of/6N/ZgCVqWhEg0CFy3rEsVLU9p7r65\r\nZkljORZtgPC5MnY8Bl+sCwX6e0T+nDWuzPD//fdZzplrLUHyiImJVf+FgAGq\r\njMpICUgrbk8onSvnIAL1LhagLNAcYxUmlHL035cxhHptgk4Z0x6CU8Ysku69\r\nzToQKL5bEtUpmgprkHj9bcMr4GrQlPq9GYt+bhnbJRBSilXqpZTrpiPz7R3I\r\nV3FR+5oW4333Etrugff+KNhBysOgOND2biL5SoTu/payIYOlPi7AJ63fAQvT\r\nbhNCHK/Sv7rZLTWDfkpsfRLFnVy0LqquepOZlEA+Q6CjETD38E4fIGl/Om8p\r\nYb8Gb0naWeUBfkFFzFtybZa+SawhznkgJ3O3P4qOHElb18YgW9GeS0++c5Ei\r\nRjpnVhGt78tKxhTAbxHTCYqZjES6Lxk+7JLHSkYtMPL8EaXCzptt3kBMmLRg\r\nnXyhzR8YTKbqddFZgx2nXTTj3ikN4nfbpUfYxcLCo23fUZrJvTJ55v8pmymk\r\nOfLKLMwIpYYfmBpww4kqwEhTS6qNLvZvkno=\r\n=GOVc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGLgocLRTYV3P51vt9yp5XVRZbI9kyD0onYJAe8OeyBJAiB2zvm9fvwGIQuSsRrzGaK1K1W+RJPA6H/eoNeVXsochA=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.1_1648193254455_0.4337619814988749"},"_hasShrinkwrap":false},"1.6.3-alpha.10":{"name":"hand-polard","version":"1.6.3-alpha.10","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"23e3ff6d570d9c9d2b7f7f90d2e7fbd43dc10f5f","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.10","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-1lvOv2D4UlqXUN+WdG4JUoBYdHlDV1PFOf5RcOvU0ven+rqMngCngH7SEyf+BmEk3p/kStYY6N5YfpDb7m52OQ==","shasum":"58283c3595a71c90f45f0812b2bbeb31f5e5efea","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.10.tgz","fileCount":84,"unpackedSize":3331608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPYl2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFbA//TF3qEu1NcRV5JYDjgdCb0kh5iugtKuuuMgRsHYZlg9NXUfDk\r\nCOB2afNgk7zlrW/gcNUqqkCqsWaWXjvAO+4HM/aunGbXKJXc/lP8FzesR+xi\r\nohC/kJ15yebxbUfzbcaFpWmnJ1aWEgTGovyrk0I68rI1HgwdeVtrXrFFUV3y\r\n4ClrhF/more4fZMk3kCZie4xm/jpf8ZG4CfOuGPC5imZsPA3p2KUeNUDP9Kj\r\ngz7EHtiy2XraGSb1kxxb7FZwX8rg8QXQmg2IO9gF6K0/xQ9ZnhZObxfp6heq\r\nCe6mahqPEheO7l9kdjV6A7u9g8NBss5kptsFzCNKdgXcQL1/VZvtjpTR3y1Q\r\n9srEuhIaAFHLiFRzktc2vv8LOlubSL1ywWUVn/X57ni15kA1Xbix7Gd1YoNY\r\nMVjwMXr5PWPkotCDSK0j36zRLknjOfqtTSnLqx7TYaW8Y7dSa3XGh85o5n0q\r\n3VcmGHOs9mJyddK7n3Sy6bowyDYuD2Vr09exAn6iM7gBklQzbtxXiv90vECv\r\n7/XGFBJKBHkltILKyldXEt2ooTiIe0xHlunXIO15foaViO4fqZTcAk0dM7Ja\r\nnc+h5H5EwiqZI/5v3RhbY7wvmfmjnHawdodV2PQ5sZwQgMo4vSvbGG0O7/hp\r\n/OPWICJ5UdWpJuXwCP6DZcBB3j97pHjfOVA=\r\n=mSDK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAabga42J6TO2bGPK8uJ0SD/AwYh/3bPsMT/6jSg6MDfAiBzRBgDl7WJt9V8nt+uxcPBRPLlz//Fj6yw5iMcXRwWtg=="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.10_1648200053755_0.9310141949024537"},"_hasShrinkwrap":false},"1.6.3-alpha.11":{"name":"hand-polard","version":"1.6.3-alpha.11","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4893c8c3f6c219384352bed610275e76a4b0ad24","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.11","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-dTHNunTbiKPuE9grBDPV20vPA6MDhth3K5g7NpkqZI3HuD2Tg53ZYp1okUKiN4UtNCrYNxHa4+3smex8F0XYig==","shasum":"383a3ea38f08263b7b21889360e1addb5de5abc5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.11.tgz","fileCount":281,"unpackedSize":12649708,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQT8XACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpY6w//QjkpkX9+tIy+9qJyiQaCVrSTCkWbxj2wg4FhfT9r7kT5X2wG\r\n5SZq0jrhxYY7L2dyXNnekl6TsdR1MBGFMzzltC+3fV+3BhxkBdu2A96vlrYD\r\n/qb4f/Rvos7YNeuf86W+vlv3wGLsycsZFPmKT5661YrpORWYR2xnSiX04iTx\r\nuiqaRW/NeHs59wnNPFhCobA10oENc5Kswq0+P9fuRWFrobCL2n0mGUpLrZTG\r\nVhAx/tLP5fHbVf3WIUsVdqynZL28S/mSlQ9Mh8rHllPWnVSnTv1Ht+wYbHXg\r\nEU9t1oOziM62IAaHLcslo9lx222w7QryIDK+5u7potmktfP+VgssfyHILVqE\r\nBWHjxVwsUGPu7eN7rkPgfn/iGZaaS9KkdCpUENWFazfW1/pviB3hKgiQ9UE0\r\nVezasetxtSHpyyxVJmxtzSejjXUIk02yXzcgD+H47BarqmWZSGgXrU/YDDO0\r\nfCFBG6ncuyF+J7yA2awvcPAXZJs8ZDVaJhUq/Cqe3Et2/Akn+7y+rPm9rbRV\r\ntM/wCxpIwlqykiQN9hX34LgMzKrqqehDzL7TS6lRW+WWZhoaiI3ycYLC/z+9\r\n+XJ1HpAdszhHPFTIJrpmCYIuyn6rTHFRMP6Xk2K8IR1IBQFCGqoBVPnw1a5k\r\n72BG0ScjBaMFkco/a+4Jy7K93e7RZdjunnA=\r\n=ZQHS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICAS3bpI5g74SPdPrdKfKMvx+P6XBGZ2Ve2a50NmXQmTAiEAnprbvxDeO+Fm5ejOMjRYCnd/jU4tJDyu0wzGIeetYII="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.11_1648443159395_0.18606080266022484"},"_hasShrinkwrap":false},"1.6.3-beta.2":{"name":"hand-polard","version":"1.6.3-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"86ef3d735819298b6b2e76fe524090608d1cf70b","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-z0w2dOiQ6Zv3K57DJ8o6AqIdPToLeFxHS9a14whAbB6kfpV+YnWLTdnQJiSZUia4fskbNDEyxS0Ft+ABnXhv1w==","shasum":"09b1b610e2906c8508006619c98d04f93d7fb1bf","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.2.tgz","fileCount":84,"unpackedSize":3291190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQYg9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDtRAAgQu4H6YTQF1vVieJOxemcd0NJkW83NnKjbtcjC52dGXxdJ8s\r\nkJrnVmpKM8orNPtRSbc0bcjSRVYIdB/V31gsn3pjajDQUjg0sX9CRIyQCtkc\r\ngvyifC7xIitv1YAAkPYI4WOx7pRm0I8OaqjW1jGRbfZ1sxQXU2lyqAWRoupA\r\nGIYwEzHc16/ZTP0gmKZyl6bd6zsYBIO0d4iTgc6lKkdXg+muRrybnVUrzdWX\r\n++U5mvV6oJyeZMIfQ8H23PlafsQU/kIyFlfLSPXfJ5t3JU0jC39zVmPkLwqX\r\nT4/iTyErIv8jgICUAKNuQBcnnh0ywhF/CIrHYHPGwJKSsTNoMPwqVP+0XHQ8\r\nV9WvyH1fPv2kwyA3n60zpaCpYKpB8D9xAramr1He+0bg7IuZzvhYCa/ttHvg\r\nQpQ9rCGuuQi/mI34PZljZUV1kAxN7j/rmcCXHJ0b8PVfUGo4DbGRtGRHqfjS\r\nt4bm+6Q1GJ6Sf1tHZwerQ7vsBFKNV5lO/S3j2eBXFByTzWZecsiITB4zIOyv\r\nxVgKbVNyzhtRQPFoAekgOncgzMIs7exsjkt76iiWd2glb8YqV3d2ha25WphZ\r\nUoddYjhyzHh72DpRQ5Ie5YbxHiJZ6GFrgH1WswnNbJ082K+LSIeWrisK5lA2\r\nFx6YsAPxu2G7+kpnM42s+thQCvYmGfxRpvc=\r\n=KnRm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYC7cQwfWzI7U//i5aem/RIB2LrLhDPFcHX/vGSkTAfAIgSIQMkg7mpSdEgYhzE1KlSq/IWcvVwFjqFGGUbCj58x8="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.2_1648461885044_0.21836865714336384"},"_hasShrinkwrap":false},"1.6.3-alpha.12":{"name":"hand-polard","version":"1.6.3-alpha.12","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4013b8cacf53b196413f6aab013274feecccabc1","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.12","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-uZ7DLKyDQYd0XuS+JjqqGFoLprGdX75FtJTLyuSb+/vaJRqX4jIdScWwOTzSGTHi8Tm+z8p931IqOUl7TR/1lw==","shasum":"5280ae15a7959dc3b3b113dbe1303cf97f9ab465","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.12.tgz","fileCount":84,"unpackedSize":3333242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQq0xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpiTg/+OhDa1+dWfRdA5s2nYQq7L3M0Rr5t0qyP3Sa6kfew2/BRosyS\r\ni9JiYheVZLUgGq40j+oYsRCZoebqQGW5yX//jAtKsdale3/nMOVkREUWgf0e\r\ned9bHrYKufig2HyNzXB56ecwjb9wKvAq3yJ+3V6pLTV2fjFOgdoknf6jgOEe\r\nCHn2gHpoulkQrpb69HzGH6Ihmqh7OVj7OA+k8R5C+ytLP7PHBxpk4QOkKSxs\r\noVzWf722Jg2Ws3lFBAj1uu13ARfUznnIG562OINni+AmbLzlzn2KSvi3Q3+t\r\nuhLATLlJ6lTBmrnYpXbtUVV519TqefYOgjopOLkTl+t+Y5IkJRX5NiUPaxGj\r\nC+XAOnZjJ4CPHhAEq62I6OZlinNJNxHJVjhGp4FGa/FntdhC1ridrWngwENJ\r\nB/7XLAnQG4yx9CEXsGIgxAu6Bksy2fVw7ggP5c1DcPuyCiSTMivEkaF2ZZ0f\r\nz/3pfkML65frXv+7r6Bi00nakDaO2OrZFleks3/xd2+iHLOu+oU7Su3BIgfI\r\nnss5wHCoXcOWH+Yy36RjkBmrqFpignLCQU+XYM2S5aFisD0ES/EKi7hpdtUe\r\n/kq/E4EgEbgDs7tD5et/d9eFj8sRjKmWol24357jabUZssMmZDBOXdFM+k+K\r\nMVQPTIhvJDVq30FI5jKMXT0U50wD4NpT/Ao=\r\n=hQ5p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7q87nKEBB2jqvukmfIT0MJPgH4YA2d5xEWL68GjXzdwIgMaIT73wPI50mZNQ+1ygC8F+e4dX/uoDWblkd1iAAK9I="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.12_1648536881458_0.3989459345132087"},"_hasShrinkwrap":false},"1.6.3-alpha.13":{"name":"hand-polard","version":"1.6.3-alpha.13","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"bc24fe9c495e43901b9089f3cc1bbf40eb6c931e","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.13","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-1zBNXhK/CCjZfLi5fZGAptJDtUpk6xtOnQFejX4k7ajMC8Q0lviCrR/HKJe4YHRAd10P8Emzacal41XmvEJeSw==","shasum":"ab6e15e717eef6c4058f20648c117c456d660614","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.13.tgz","fileCount":265,"unpackedSize":12288151,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ9IYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqDKg//ULItx+Y7zIoYCHYD2U5wO65/KnjE5wkElVUGBNJ/5IUVjQqQ\r\nxDYvRX6ZyPgNa0rh1OP8rrQ1KvZJknmGQzc1O1+n2PB805G6/+LsFaKeYcql\r\nEu/i/Rh/c+9flkfqJhdyjQ2FPsXz9M+9yRY5VgFY4k3zMn2CNiEAx9wP55Lq\r\n6AGeKe/M7BBIXzElkfvoRTaCrw5l9sL0dWXqjSA7xwVLMdcPKYHQvDDhEYjt\r\neOhClkaj6ScAs3LxnUW88XeT6Lk2WPSt+uB3KQO6rFsmt2vhz04CRnDKNT05\r\n/FuoiPmsF+oAAd8quLAuNsiZIPEbkEAnRARtOBXFhZIIb+3Sf4ngiIJESzn8\r\nWDr7J6obOPrYPTeefMpaEePQJN2PkMBjtFVWWoXqD1L4UnX3thmDClr7ZHPQ\r\n3WGN2iDMj0bvUIwuVLNqeTTOw8FH473/c1LWyHy0Y+yVrDi0LnykHT5Qx2rj\r\nXiaqtqNge9Ju8qrhsfSy2HC1j4efXTwlpJlW/CLDFEqOmj+ESOUmiK6kptku\r\nCfVFonTDTAu7P8ODlW4YIc8J/A5ZmW37WyMy0lLpAFXg6PgfgikDE/1J/QC1\r\nSRbR9SyK+LGmYRUpsP+wgn6OXpIjLowD5mr2TefstQKAvBmQ0hD4nK5p2qBd\r\nyYjYbmaku8rowaiaXoaJs3gxjO1OVdjei84=\r\n=fKrp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfyBcAP57uFGMs9zHNWf/mcFdt/Y9cyicIjWq0NsbzmAIhAIg9ZIfQwP1y9lWtve9jtsqalYdsiRl1cybfNs2Z5gKY"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.13_1648611864423_0.14376228989276085"},"_hasShrinkwrap":false},"1.6.3":{"name":"hand-polard","version":"1.6.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"ea1848fd0d3b70b148137bd41ba294dcf4c12e4c","description":"## Getting Started","_id":"hand-polard@1.6.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Nizg64yh7rk7LxXHiy6X/tpafVevGo24xbo0LjzValYOPGTuLWTsa5TKtt3rj6pzarm+JfKgOixCoo7hXqcNjw==","shasum":"3fb726e0892688966e4ff3f0ac60b3691b023e40","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3.tgz","fileCount":84,"unpackedSize":3266385,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ/NhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQfg//fkVUwBjn2yr3qWpbjE1J/cDfZxxzPECB6kyyIbBWZuZF59vh\r\nj+bk1duldJaLD5/im/x6bi0PzqHNdC4sWYr+xA0fnlxQe+KzXkbVhw3SCgkp\r\nDiXOqUsTORuE0pvnjlpEO8tEeqcUtkYVkEofRaYWazvw+5UR8p2Zqiu1PDKP\r\n5xFKS6bR53ER2pfZyRyqLWPs/c7pqFX2qHzA9Z+x/LgMpRh9Uiguf2Wpr4k7\r\n09WPj0w10Qsb6eBJQj0HLNZR3A/7QKXab14AwNomfKsPW3fyrzy6a9FnNW+P\r\n0Ynx0t977RNoVf0d69SYB/JT6bdu/kBxPxcBw8umrfAl9wGTm4JCrDnuOqiZ\r\nTUK9vn45UX9YKqYIw8YVuh40/6L0XSfdrVDOuMwaFR7NBTagFjKdTbx+HyGv\r\nZm7crm1j7zPgyenHiRu+DvrVb4cy7i4JFCiBStJmaXOpEX4aszIucbFJR0et\r\nvavgx8imTnsmCI98NQ67ixZ4Dc4APmx33hikF5Bc9qRztopmUbd20NWQRK5U\r\neS9OSr//Nm8L2CvVIVwaR3/dZe/JH8KEb4KDt7d8d1uKtIeuiafTuDnT8vER\r\n3+R81ffmnn3f/TTUAmtgMCZ+AZSeq5gwVklXiTFFlh78EZh7+xjfWP/RQyQo\r\nkXtwnk1+1RdDvzmNDprH+htj9NksS2j7qEg=\r\n=VUUT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC82KmbDRuJgVsiJYmoDDGf0o4iaCBHlia+dEjxtt0B3AiEAgLQX2E2HTn6/a62STG0W1q4A1HUCnqw+mVbdschF8Ro="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3_1648620384810_0.8899179340279773"},"_hasShrinkwrap":false},"1.6.3-alpha.14":{"name":"hand-polard","version":"1.6.3-alpha.14","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2e2163ce806577b5ae6072dc61ad18ad89ac17db","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.14","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-T24Q5W8vrASFvCdEpMLvS+ZQbBcjv5xWTESiLN/6d4RUvsQMZcYd65pI0vPoKn8aJvWujZOABpmzcjf2v8MJCw==","shasum":"449c3aa0497ade4882b72cbe95e52f38c77ee350","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.14.tgz","fileCount":265,"unpackedSize":12287955,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ/N4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDBQ//bOwCrKey/q5bnmswI9zInskA4N5IU3gzOl2pnBzsDpsKD815\r\n/7lngWuX7Mlj3vi6UQAlgNLnOLczNg7kSIfJI1rmp6bCiZkCMFIKBeAfFumo\r\nTnqmLqaUztroFMVVP+HF8q9vcCCS/OqF8PQIjTtmiIx2mtaaFaiQwaWae7ZL\r\nq/7mav4fcg0SUGNB9tIxkqXeeBvKp4lAjXSAxlVPJ74Yzi2FtjPTO837vmiD\r\nnN6NZjJd5fOooEXSZF5IzHWV6iK1TdWnOvTK1bVVDpfHS59M2iRtJf4xyELr\r\ndYDnYC2pokR5pWd8ANx1hSZWYT7JckL+RIwKs9ci6Vmq8paZWDNmQacdCowV\r\nEcHpXeKVMHZG4nN2Uiht45fhirFcCKu2xdgtONNFXlZA9i/dIn4PgIluV6TS\r\njgmGiQ7MCRmRAfdOk0nxSe8ga9MgXtB7heCiCsdFz5r0qsUZGmXg1dje0UE8\r\nzrHZaB7VtSLdRkD+/ZoUjyU4KfxuV1I4C6rKnEmUGyNBG0e54QmER5LJNNkr\r\n/7oKjajVMJLVZhYk5tkXmMTScBsvWUSROuFJNjvyyG+BAAH06R/nZ0PgBf//\r\nG9kD70vKte0P6s4qWpDoRu62hRa7msR69aFnyD5JihEha2ji3m3ivPqK9rEo\r\nb65Jc+rukg1njWDDK5a0Hbv4rBiQorVmLAg=\r\n=ePFS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJ8tzlsB2HLLyqgpT/03gcA1vN/pBGPz++pjjPvXPUAgIhALQsQOcQC4Avlad1wXkF5QFmfv+MXbULOlwgy+p7QOEZ"}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.14_1648620408075_0.8314328420524246"},"_hasShrinkwrap":false},"1.6.3-alpha.15":{"name":"hand-polard","version":"1.6.3-alpha.15","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4850120d796f97f3dec50356d8b2a2ac94575a20","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.15","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-whAZwnMBAhOvw7aa7DzIQI+2SZ5Ws30Ga6dZpITblexs2u1ktdr/k8BXuy5aePhY+NI65qO05mHTZhXarqw37A==","shasum":"f19df1ff8b0e80adc15dc15f0c01a4f5a6f34356","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.15.tgz","fileCount":268,"unpackedSize":12443854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRBR6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoygQ//QGYMP7rmVPc5mMb+82rccSNSUnyCa5NMwAtF9ZAL7mbklo9y\r\nGD+LSYMwCq4Qe+h1XA0tUrt9qJSYTjvKja7eMXVy8elX/fDJMeFe6+RrMql9\r\nohsI/4ETY8ccAi/6adK8ZPJcnXFl6HXpE/H8W+wNY0T/sp9v/FNKPJi8VJPd\r\n28FZbZ4MrmFk/5/+hD1zgXZYbzfNozL+aU32bA3xEcJ5B7XVZZKu3X4BMGmQ\r\nbkgaMTNc7b6pL4v5wFbTfyndmICY4wubncw0E+n+XbWS6gO1MTsGPFQ/oauN\r\nTSyhDgCN23mCsBwF6Zc/aWVpeP6PvKqM0xc5ZbG2yJaCBl93KNp9qu4XfmIY\r\n+6eTyBFZxNyZ4Ph0LsQ7NfYElRKLlBiwDcIcTEIxL7762PVxz50M42ESD35C\r\nnHFYtzN6U8gmJD2dgrAK+xMXYNal9VXA/tTX3C/Yk12x9e6F6iEj++O2QJRU\r\nfReYpEO8h7KEXDDtAtAXj2K0Wp+Q61t9dwwP9T0ZN6gz9FHUHi9ddE8JC0t9\r\nUQO0U7s//rCFd5nbGmQxrjIsXgdupdIPuZGTuECO/g2/9Q1V/6dVHMUi4NzZ\r\nglLNZgT7yIUjxb31Y/cyB25c/L4v2m9iZl0OaErwzs37m7AL3Xp88UHslcvo\r\ni8s6bSHuFKLcpDV5w9EdexFN9lzCNJm3vQk=\r\n=RqTg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbZJTpPXV/hS4sHI0cEoCwHlsf0ldc9mshKIWOQm/2AAIgE6xwD/+ZTNU3HFdQ5mQr0rIzpy/kEOXvGpA4I/LM+PU="}]},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.15_1648628857920_0.3928573326153193"},"_hasShrinkwrap":false},"1.6.3-alpha.16":{"name":"hand-polard","version":"1.6.3-alpha.16","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"3b95a62d928824ea9734ca160eaebc9f146f950d","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.16","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-RrKM1cVlhkx8XWPgvtSC56CkY475SOo/fmr6bSJTl6PN/B8NyT9T47KlIl99uw7fLMyAcJfwtAsZEcENNkiOXA==","shasum":"a2f680a23060e44eecba80f8b2cd075764051fd1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.16.tgz","fileCount":84,"unpackedSize":3765377,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGIiAw1wdCdY60FH6TyTvTQK/Dsn2X5hkAVAFJewSvBJAiAKU1mCG1DjegCe6UPVZdiXHvnTciYJn2zePV/h/feFKQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRSHeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2Ig//XolO4tFqhXzn0po87HB2rTxgAyT/GryCRY5iFJOZp1pCsz4w\r\nFwSNSQhhaYPL6FRVBGVtUUQBSXt3ti83v5PoI7yxyRPOmzT5x4rbmiWGUunR\r\n4k5ttnQcibtUeRF7K8djFAXnAmyB/15qLXGamHZo/G8wz7jeux5YgcvLCFpH\r\nHZ/pyTDAePR6fGW1wRlO+5O2251os/gYkOMRZRz+Qlackp8IjlEwf6i8/Jwo\r\np+lIvpiPRwbIOOH/8Hhrr0hmBBuZhPkoRov0Zwb8XAyiHR1TaMCPc+AXM5dz\r\nVtssHv6CV2LGWcK6GOzwivfb9QmQ0n6nqhwP1IGxOC1l0wgOY393YeXnoX9g\r\nh8mH6DASbPsCoXSAlFVM/PMrQGLFTGOgtD8gQQoN97HBvNng3qFR6rW5lWgE\r\nQLp4Lfu1bNNhk4hw1h8R6FvNcRg+AYWjNjjHU5gaVxSR4uPX9rvOx6vAdhGV\r\n7bizv25TwqDkMSVJnSLHHgVe+vuMlglItQDPN3V6nlgir/c0f6Ib69UxDAJm\r\n3AGFawEMAdFJ1u4kGCQSEsv4c3lFTRP7fXg4dEjUPey3aJ3e+MxGCVlBOS5Q\r\nQr2RrOdPcAqP6bEo9+pW74x2wSL5Of1PIu0oK7a9IAv0t1KqGoXKRPxJ8AQ6\r\nC8NQQMGdC9BC2mstjclBzFqCPWHSblL7IOE=\r\n=bBrI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.16_1648697821842_0.6339720698488274"},"_hasShrinkwrap":false},"1.6.3-alpha.17":{"name":"hand-polard","version":"1.6.3-alpha.17","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"33d00dff853041910538357e5d9de8d9eabc8079","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.17","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-4i7cmzlaOADWnUNSvE7GzrY1AvqK53S7S3LR25O6F+DKDdA5mQRMhmheBusXXY+VvdaM7t0Vd56/uqzwR93a1A==","shasum":"a1a0e26825a029c1940d9cd09c35a1b3b69e124d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.17.tgz","fileCount":84,"unpackedSize":3765575,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtrKryUyv5OydGtwGegj99oU10ubEDSsOd3oYRjkusaQIgDvdvwrxyQdENLrunVnIYPqbeSst1hfQhp7SM03uEN3k="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRSa6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqpdA//b1KGhRMVjjrWgWnWk4D4nnqA2PI92HBvxg79TxCLksn32JVE\r\nZ0EGhiKKb4LGRDQk+7y/9yG02HSYBffOug5UPjMJkgSn4Dvu1KadIYfWfSL6\r\n8Fn5DChqj2jSk2DvBM+/bQYNzMT6Nw6m4KNMKdHn+DQX7GsxVIiktpAATa/7\r\nSM2rrQbweehx4elwRw9Qjyr9G3/hjvjEIOFasnYmt4T1DQmb7FGPYedkukoy\r\n5nyqOYJYYsLoos7yC6J3lOuNH264n3n28vrtpZIN4vnAN2fIdS8vhH23c3cE\r\n9uFMlLkInD5BIAKexjlBD+tDuRXhR4mnNylune/RSyTTLd1qd3LXF1wBnBBu\r\nbB5KbarEDCw7Ui71AOStoJJc9dzj++oquBard4uxd9VaU6JwV7JIEG8ka/Ie\r\nZPlbbciYKvfObr3oB3MnGzoZLD6q5owvhG3NomvFUvUXmbAnEEP36L3+nnOh\r\nJzHbdMEDBTTUgPELmf80HorSZwdSRYeoXp+CeLtU0wNsUoqaIKVpYsx833sh\r\nDTQ49xxa3IVcxR0TydIrv9X8DYq88sKFoAyoUb+kz66KAKJOANMpqrp9BuKU\r\nb/l3XVAudZqNVY2dVilQMeB8QnuKSltYb1cjnDjdW2r2JVb+GsBfNGW/r5H+\r\nQ6aw46pVLIoJ1Ioxv8ltk5HlkCoj9SCFGTM=\r\n=WF1R\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.17_1648699066010_0.6953399951969523"},"_hasShrinkwrap":false},"1.6.3-alpha.18":{"name":"hand-polard","version":"1.6.3-alpha.18","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"666e3664ddbe641e8c196ecb8158acd44c628d34","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.18","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6WbXi3m79OxLccWGIk3e+GCsikp63f/tFL32h/EeMb1kemnYqKJjKe9VwRtvWsU+qKugUpQ3aZ9qkxWCnJZnbA==","shasum":"f1ab5805eaeee8711ae860b1954a5a7e61ac84c6","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.18.tgz","fileCount":84,"unpackedSize":3765879,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID3KkytOytcrGPnLm8nADV9M/lk7ZZfCM/wYibmjYAlzAiBtId18pk/qQJG4CKp/5L/g1RdDWPuKUITsinauhHkWaA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRUU3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+KxAAjh4Ot749t+N3bdjZTkS1sGhaKd0HwmCjPHjnnVepRW7ONx6V\r\nPFT4Z6ZRDjdjrmyycC8yuQfYaV/cU65ZZcnJhYhFSNeYeAHZpy3UUqM/N0aE\r\nCZjKCAyqu1dEtMBsJ/P9x64KzEAcn1birRnkElyvNg3OTqlDhCJ1BRwSRoSK\r\nFt+iU2o9hZfs8nccjCjzAlsdNQQfFPd+ZR+8ImZq+eyicT99d/VJN5I88Lsc\r\nlEndmFpb9S+bKd8sg0g4amqtQwCslUF4cDApM8SQ1g1pS9X9rtx0XuQnhNen\r\n4toPmUGksPo0RUoIUJv8xfP6POSoPwZk8SXn98otYnyJ4PptAP4F2xA0AcDV\r\nIccC0+VQO35UyiIXginWG4++ufuSsfk7kFcMkltgRaLXZv46G0cu7vww5Rb1\r\nnQXNBiTzqj2t1aqOW/ypOYaEZJG6Mf6ln+Bh5sREfKoXIOHy5I+uIgwYXyF4\r\nfBs9C3yHVuslLVCysE8g7dhRyzm8nQ3jBM/T/N3x6KaklyaPf+IeM6KrzhwJ\r\ncF6yGtla2a7HlkJq1H7Cx3AD15dxO65GZVOaIdxrlQIHxw/8CoQqhnH7VTCh\r\nDZ99noDCBLU/b1YUColarGTDQDxbXTx1XD+pn4Sgfi92bnBQQEzxMZjowJiH\r\n7B2Ir7enXVV+Fehmxho5ayQwNq5BfxMVzv8=\r\n=2a2h\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.18_1648706870879_0.19492265085956695"},"_hasShrinkwrap":false},"1.6.3-alpha.19":{"name":"hand-polard","version":"1.6.3-alpha.19","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6336efa170a9ff503743264305f9db72dce2c65c","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.19","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-D6K4CIQznLT7SWtda7F5HIu8WBYDNp3VgVBgB6UCINjHsck0SGWzM8ilEtadgwGwTSS87DIkFkX9ed2tacwhQQ==","shasum":"a499c74fadbaaf0b5eaa882fe1399144d0a1b877","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.19.tgz","fileCount":85,"unpackedSize":3761397,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICBVY2ozJ+XxmTpXrESNZR/pIiq++Bakz9bkqPKr3rzEAiEAp4nOUsq3xbsyW55k1rM42i4Z/8jdlB6+sv8jnzL+tbs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRVdeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqGmA//QZucofUWrjJqULz0rC8MjORe2niZ74JatnuYxBQ1h1mHspVd\r\nCI/3BXDmXBsCI+v4HuzPgGESt6uD6BuIaZ4Snz5rdtvYu7ywB+bncMsWN+uJ\r\n5RR0tZBOKVMzWYmPFn7e6W7q7cRW/QTT9/rbxjHUY1p7v0n0TCxTcVLc3pNq\r\nXBkNBFbV8DabGn65n7TKh2/3eDX1YVxps6VaQqUExpkA6M42n7Q1mCjzt5+7\r\nqsRoLz4zE1ZOPZvbQcGQcQYCX3QtWhCLRpsc9IOBsTvSO2ZEQdWeLAhR4nP+\r\nndOBbs3i6U4vvTTlSkAtCPmMCh2+VJVhKxYTH3XsaL5GJ7nYhAz+geC1LlX0\r\nShChoLd8lPntBQhEQ0iyS99GWaY66yVNN8hgK4YwfWecLQF33ptrikA+uWSE\r\nozsec518qrmPnv94HLHR97O0tiKC9JdEfNrHSW37FnFkWF+8yDfsTGn8ZBgD\r\nn4qDVvyZnl5NgyRX4Lfa84dA4MFeRwQbzizd9uMv4tnl0k/UZu+V+oogjqox\r\n6rvB1THfLxRLcT69GXMTAIvIO1gEWwaHrHxik4iYnLtS+f5PE7+PBnu3jPJF\r\nf6KXSuoA5kLOmF2+ZTvQXFt+HJWE3xVS+oLSHK4LrEWZJh8UDavWZ5UTEL87\r\nOJcxOqhRsgqBjuMXR19xV1aRE4VUeq8Qwn8=\r\n=28MX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.19_1648711518439_0.9892605357155877"},"_hasShrinkwrap":false},"1.6.3-alpha.20":{"name":"hand-polard","version":"1.6.3-alpha.20","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"244380f1af7a959d03fdbcbc90e130b930e2f8b4","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.20","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-4kTijRNLQttWjX6crmqfzCwJj4aKFbtRqg2HM8tIYELAeFhTSOGxyG0al3seSLQiDZqGDEgF3q0wfRorN5ekrw==","shasum":"56dbae2f6bca3a90d6c2558d139d0417c07bb6cc","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.20.tgz","fileCount":85,"unpackedSize":3768060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCujKHICaJpV2ZlC0UuK+ZOVyLRS5i/1LCk/nJDYkjcuwIgGLrOTJBmnGqILwU2gPt0j410CPV+Dakz/40DAyUaQ6U="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRVsgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrWvQ/9EfbnT1WF64MYhBj103THCCf9DAMVx4FcKepSG2e9vPerEQYK\r\nCmekbuutW9lYhU33+jr4pc5pEs2VCZMYvxY9t1Tgb46P9aWzhe3Nsu8ukPNp\r\nld0EVsDl0U/3KsdXV4IedCiceFlxEkmA/f5VMJ906itX7BYCc0xiTp0VadxD\r\nDfD14zLievhkF7rYRGZn4O/B9m8J/Ew2EnGjpflcFhWHWJiUtoU+NVhCid7h\r\noIhQ9UQzXWGwEzR1SGFkc+Qoqli5jkMhC8P9GFT69u4Z5IQe7d3F0gsRJqeX\r\n51c4oZnSef6xDLb0rQcdWKlNfkYF8ZnTAe3eqWqS1TZpXtPr9yiFx+YbVWrU\r\ntV0udzHj1dFpnWJrOI6lEr1lPtY8U+Ss4oohmzghr0PdkNWeRScTK9BUpJpI\r\nH1q0gxatubG0jWSCHcOcdxZG97VMXjVlxA5YpuwJV+2Q6OZ89QMOfHpamcE2\r\nGjFOXggbx1CZ46p+4v4YCWVrfqojtGpwfVmLvsEknTk0Y+NAxhO1uDZVPYfw\r\nPbrQpasZjTJzSSGgLiBdH0ZuhIzxwezysTeZcrc5j7g+jdrjqfL6Bxt3jvXM\r\nswkCvqFl5VH4oR33W0EfeJl8max+UyMIzbksLQGes7Hh9JTv+eZvKQ6DFzkK\r\nCRWTYSwqqgObANP/CDMYHH6cWYhaYy7v0Rw=\r\n=USyJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.20_1648712480467_0.27480521874718344"},"_hasShrinkwrap":false},"1.6.3-alpha.21":{"name":"hand-polard","version":"1.6.3-alpha.21","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f2f0f0f67a8257a95aec35cc7eca7c435cdfa07a","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.21","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-2QYLXx/tD/oo+SKb0UCAOHdR4qcIHQGwLgddWougEvgXwDlgndTiP+ulIs5pHPr8NpX59cpNYxycJGnD8cUlkg==","shasum":"f04c2588744ada80eb6d0033a7d9c1a85c310aa0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.21.tgz","fileCount":85,"unpackedSize":3768028,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBKLQcqYAiBvE8axE+c+v+adcVt2WoKSInC1enDh8nTwIgNz3piFlAbDVQ35VSJlalK5De/3MBvFOn2x4O4u1yPyw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRVxZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpMLA//SSH1SyEiWCUH1aV2F1eLM0Exxmef/VpsZw1W3XHSnapckWEX\r\nStGFJrw7wfN4NONSwwHKzok2RxuVnob6vllrowmauCZ9mk+mVjA43FFnymi2\r\nNdvlDOVe1OTYnd/I1p1FwHXdiVipHCPXZmymZLSKFSpCqcImCobiBCBFJySY\r\njZ2OCUYGtn9SPORDYet7Vep2J4vhAw/p10RparRdY1fIPVXWqWVqRalC8W8d\r\njXWhh9zZ86rn70/Oj6A1+yB0l2JPLvVFK25vzhbaIGyHiNDRlceBwsbOK1C9\r\nsXMz7n9ZMD7IvlUKWv5noNhEztlKdFJvDmF6hG7v6K9+CHtbOas9utCH6mYa\r\n8FVy6bAdYhjVdWls5mXrsyfmzWXCmLk/u+4yOEZ15EbfnLpfwYkGzjdRlc8U\r\n3+QsGqmgSRvT8SjgUQUWEgWJpoBXlp1tKo/zxMr+92GcdA4fp3tS1kV3inIg\r\nrMM9KSsFvH71mut0oy3IbwAS2x231ou7dgVwCKSbGd0p2tmuvq4Xo+cHxiyb\r\n0vLuTmqD20nN9MX49cWqmpMq6mlXTthBFJPaJLoBDBUgALWjLg3dgm/5iELI\r\nCcye6kzHILV55Zx+ADnFSktcHajfZudSLoQNVOXgnhm9iW47sTyQDEdrWNcL\r\nhOA5HZzXKmjxv0SoO5I3ih7pcNOY12OxxJI=\r\n=LLZi\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.21_1648712792976_0.20540089951052876"},"_hasShrinkwrap":false},"1.6.3-alpha.22":{"name":"hand-polard","version":"1.6.3-alpha.22","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"994a532c06d863936d3c16750967b0229be0d5cf","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.22","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-mavaErNTmFFZlOEpwUe5IyRR6p82ylousNt09Jrwf4Bd0mgEWcJyKEzH7mZ665wPQ9phooJIted4OYe7GviQJg==","shasum":"f38f997a98ffff359327079cd94e65009bdfc47b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.22.tgz","fileCount":85,"unpackedSize":3767912,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7UgPXI6XIoDHFiG0/p8G1vu1p2PcqqqLqG+8waIT2+QIhAMf1F5Zp1bZ1jA5NX6DONK1bh6FJktpRQrjh834Niv/k"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRV/vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrjlw//R+2rA2Iu+zlt3038+XBfms48c0NYcEYv4/hODw+90DDEl8EU\r\nS7AeqmBGSLPJXIKVRvlajraxzfUEy+nZ0dKhLQhOCAB+E7OqwASFxGpRMgb/\r\n0JG0KXNB9ejpwubWLNFvaPsPPrEUNa8sRq8MsMgLU6iBdh6utkMpqgcKCi9l\r\nigy9dnZIQ91Y5gKrRt+YFe0L4Lvc8fEWONQAamWmJV0dMwa+Y2BHjC4m3m+x\r\nFZwrpBaZg8Q27GX5P1Py/ogCrIOca7xRwa35299m38DtIcBhYyNIG2DeG4Av\r\nsiGRPWsijzhlqcen4ZotW3EsuMj27e7H4gCXNIpv5MWMGB16SDVRhmo4Em0h\r\n/AlyIilCd+puNwHh/YQUffAQa9xwK8yZTA7/Xna0prlBIXxyu7bOnD9li6d7\r\nYdPhTg4ZWecJvIHtHymJJXhhrGpTOjYZzzHquluYkmbXZXp2X8we9brdzXZM\r\nM54A0WiQhOfaNyJFf2Umwmz3HFLHz6jFthooI4rhpbmpRNT/PsM2biS4sxCJ\r\nVdW/oXXs8Sf5TA6JgTc9zdH7ZPa4p/CHT0AaEj/lQW+ndlgfFatDAwdrz+qj\r\nIZVdgnVh9fOCP9nXreWJCoqrhnZW5eNpaENGK9xJvnCfcNwaqLIg4IWQJLS/\r\nPULUdYQW1goJmWb+j/UxQ2yxYhdPGd0eU/8=\r\n=fEiU\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.22_1648713711444_0.12452477308898002"},"_hasShrinkwrap":false},"1.6.3-alpha.23":{"name":"hand-polard","version":"1.6.3-alpha.23","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2e039aa6c594d97ccb69616aa2699b071c2d80e7","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.23","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-knMeiUAeUeCtqInvtMCi6ULkZpuIWUZvZvWnAXEekPUy+WWPi6ZZXvI9s8VsGWRyyYsVAmZYBqTDg1xlmRs7RA==","shasum":"c7f2a0f550bec7afc9f6d9d9ad7f2ca8a9454e41","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.23.tgz","fileCount":84,"unpackedSize":3767923,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDMQhU8d2EtvOAgiOzYYU4CYCo94SNztySix7UboLdJaAiBNMv9197uV1SiIIKYjQPFvlVDz1GC6ElkB4BV5q0fk8w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRWJQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoGoBAAmeZaJnWbD6usVuYgbr7boBprUPMJ3e0HVBs7y47fXN+xh0xG\r\nlIRLVLSkDde07SABZS+kR3bRxwyvD8RzmVoPXkJRDZzAVVwPEFiMoVUhqdPN\r\nSGkmnqxS25ZphInUt/pElT/SV1GGI47WMK73l7gtDadWd7v+7WphXdoTSHdL\r\nObXOKBrXkPFigYWRhW1npdtfAysrD6RQ6lJa/M8xF42SAWvUY3rdg9A9Re2Y\r\ndr8IMe9wRT/czFSCangeKiIsFXpztcojn8F75gj7hOwzsFl0u/HETyZrQIXV\r\nlPRX66f9l1zph5c3BFkk1lFtRFnOX0lp37lZ1VjCkraPWHjmBn0VP9JrMG07\r\nKrLzXqaKOpSlTzUNGx3FYGB7XUouVKtDTjXaJE9LgmZESm1Mtrify5kytl0W\r\npIi3W1lEtdYH03tm3ontBckb61pwzGh/24C0S7XFj22J3kcWmXuykYgwg5TH\r\ns9UMPNzAWnsvmY9Zm9HBxkMbnC+GrmGHwLVK/5do7A6rPsk6XQumbk3f2crV\r\nVmwX+brEVydkPaHches4HyIv+uxrB+dZIouUAf3LgeQ5xj1GBlGoAJVJpTRX\r\nsz95Evwsuv1YSisOIDLRnp7mxjUnbcja1ugsU9KPES1ZSIqJx3uhk595hKxs\r\nMALsnpyj8y9xIkh+sTMhakCnjJgxt6kzWaI=\r\n=fP1g\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.23_1648714320641_0.029324614804404625"},"_hasShrinkwrap":false},"1.6.3-alpha.24":{"name":"hand-polard","version":"1.6.3-alpha.24","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"1ad7c77f4dffa8efd4991704561135efecfb8d0e","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.24","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-qUCmOk8myPjsBn2iOSJ50SUfngBdwxi3RIf4w97CFedDdY95VvlKWddGhpaZUhh35JiT4oI1XsR1YNy3NjUgfA==","shasum":"85b64a53452bf8d41e0731dddc60fb5249204c38","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.24.tgz","fileCount":84,"unpackedSize":3768408,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmCSCJ+LBDqNHUE3awtdIKqtqxCfBWuuMzwctrns1M3AIhAPfaWzF6lztI/ykDiTQsohUxK5zrfBYQZzYw+8v5eg7/"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRWbDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaKw/9EzScfKtOwlmWxaOpx10i70VVxWWTLrPYU6Z2Nv7TcTKfcqe/\r\nSocX4v/Fn40YPfRDl5RNRPGiXhdRSXHTEjCq99mYZBvGUiW3xYsbhOzPE/6U\r\nTC7eWoyLbY3HA2uNf/77HTHMZZRDXKvl2yJfcnpCg1EyT9MPuqPaT5JYgz9H\r\nuW9OFEWgqkISTHibYrMDcYt2RZkUU8zIquWrXrZvgsrsRifO1uTs0LmIaLLj\r\n44WnNiJIS2PYHLJaFDNqLqnlRfz4QhY9kmEw0CajNUpSifH+f70yyYt82ORG\r\n6oTrit74fjC6k6I0q87vYNHmGRzyyuh+Gjfr6cSEQ9IwSecPG1OxN6FnI6RZ\r\nh72sAihfxuKt7y8ugUFIXDdnrpE/k6glz/KGbcSRn2YkQ+QAdkjiFnv9Od3D\r\n5RSFmvyTsrqUJ8hjhxj959W3NET6ysHz58lpBDxgflFL/rsPstL0F3330Z6Z\r\np0+mvjvL/h8WWxBaiONGzwaCzlfyuP3DUlJPwFwU1Gw9lblIkow5lMQOA8FU\r\nOiv4ouyYoHr7V8n4nmHKlPDDt5cdCCG+jN6/o+8aD7SsjuiP352+smszOcKm\r\n8YLpxCY9G4zPLdkYsL71jdHhSJgr3MNgmalavqhwd8pTk1FGD4cQD3EedEog\r\nPte2wege3H2Bpm6S2Eloqj5KF/aiIcS7zbg=\r\n=wv/9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.24_1648715459176_0.13819495825957606"},"_hasShrinkwrap":false},"1.6.3-beta.3":{"name":"hand-polard","version":"1.6.3-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8149dc6932fb49f25fa2a670421bf64b1ef08794","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-AsPei9vaeFsiDYbE4TlSoZBtcpU+rtEjsbqWdCyg02Ebw2YU/35AR0QcqDD0l1sdNLWwE2F2E7BJiZX5B8Snrg==","shasum":"eb5430e7af5e3dcb5685a0b7e00d872a3148a7b7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.3.tgz","fileCount":84,"unpackedSize":3307457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCl2Ia02dYHanzin3OPxLIBI3yT3AJvmrh+jdMDUmnFSQIhALFm8PuprYlboNialO8eeBe/Tb7nIib3nzB9tF7Z5Yb8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRXS+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpfWA//VwOyj8gCeTqKKatfjMmJ4xA2zTtBHWet8GWeBlYiVNwf84bI\r\ntTMFbPf9gByVmLaR/g0uM9bheCRTDVcVi789xjj5yUU6kQUx4PLMBuiTJL1e\r\ns4OA/T661qEkRPyGuTneokH5tYQnwxKqosyz8BlJ4f7t7+7mQ+D8dtocaeTJ\r\nDOlW6EahnzO+09kHzMDE9aW/BWYg+8zM3MQ9oLUPJE4WmwSD37DBXTd/yYCK\r\nYcrCMtVHAIC17P4l3XWru2eonMAKeju4cYZnA4fSCjljYR30TXVg6ipBM7DG\r\n5yRUDYHAuG8s3Ij8K8Hp/2R6xpTivpVJwEPDNd6FvJsQX7Vab7r4bmkJZNPZ\r\nn5ZGSSCs2g6VSWTvuU2kAb1m/GiREFeKat8A+BDCULifHdhrALNP2gycnfJa\r\neRdildrc/IWfzUKPEz4yEGIh50RfKL521uZK3tje1rDSfadrmkuKMUUVebj1\r\nzFtnNplOshnHfYnOJi0bZVdh9OjMYkh1AXjcGfX5MQlEntkcwy9gxfXRLy3Y\r\nw7g9MekpOB5jwB9RbQxR1/8t+2/8aHw/egVMmm2Pd7TuldjxhgyGubQAN9i5\r\nOhyEhG9BNTBQiON4vRFAoIQ3hxl875UKE6lajJ1YpcL7xoeAaBiWyXI2vWAi\r\n2d7xKXoHajVxqqGSqOGE3PpIyjiF9/t/dyE=\r\n=DXx1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.3_1648719038659_0.1280277519371047"},"_hasShrinkwrap":false},"1.6.3-alpha.25":{"name":"hand-polard","version":"1.6.3-alpha.25","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^4.6.4","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"30dfd44e4f768b443f6e62ab0e2e0ee8a5650290","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.25","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-77F7nYXuMXZ3kwarxvz2u8bAwutGRxY1zPRaGbxX6fsj0NY3PvU+jRiR87W2qxCYx2bf+pjakDn5vhd58i0iOg==","shasum":"9b022bf7633d268fd5c27efb0e6f8000a2d1606c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.25.tgz","fileCount":84,"unpackedSize":3775013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+M2rlzC6rISZY8AXdgdeUcpJanXSUMOt3YV7f1nUPXQIhAIJONUX2G77yXkVoedVEoAF3xo3dHw/PjPyMbGBQi47V"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRmPaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVNA/6A/4wxr6z3aqnTZhxFV2bmy5FrMGqw0GWzRhWg1iS2cluhXdE\r\nY7J0O5V8FMNI0wcY5PIRiLf6NTMWfG3cqL/nq1nrCGY48JCvMmUx5gGYHjui\r\nv7c19eic3uMrB4htRRnG0dUTHbrIhLiJ8cx7wWWBAW6pvGaZPWM2zRvHL9O+\r\ngqKXiOLhrEC71cPOlZAG6L9Nr4Sf02ggyZjzHLgAE1JPOqzxIdhzRg+Iu/IP\r\niwlvjfJe2jL7LH3mMXki/RQ+rOQUlJqLMH/Hd/bERzZlU+o54Uuas/djrP4k\r\noMpbyfnh8Gkic7ZpgmnTlsoZ47ssc99QD+5pJ7374VjInkOGIgvj74pmoj1u\r\nFg48PBFl5BH1TFBh/At9UDUgsutkCvh3AJGsn9DNOdKtEF9uLglNhrNmjQhQ\r\nD3rywEsEZIGXc9neW3xrYyZe0RbakQEEUk1RKv6GzaWynf19zVRYnUdvodbQ\r\nw6wIdiaTYl2gWnB1KCVTfzDPax29Tso19rHuxphH0UxtcLtZlXTq1brgMxyN\r\nAFxXTrPUeVUiLzQ5HCABHBOXrm6ZKj8rvZneREvLZ6PnM639x7z97Vpa+f+I\r\nL2rxMY0UX+sv1J9/7aAudm+x/eE77goNbg9eo3+WdMPT3FVsdIrsYR0ptjuY\r\nJZNOvWhwlldTxTPC+1N46zOrn0oJ7eN6H68=\r\n=0VIu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.25_1648780250229_0.5161279610440985"},"_hasShrinkwrap":false},"1.6.3-alpha.26":{"name":"hand-polard","version":"1.6.3-alpha.26","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^4.6.4","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"91a307e5d13aecef4e3edf2ae94b655d2465fee8","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.26","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-bf0FNGs0kG2FfTYf1zdJLZAe4j+BkZAZPwo+2hHZHORzxtifGoGOc7wU2m0rsGmoAfAPimyNP0KxOhky+Ap73A==","shasum":"f322598be7ecd69e119c1228f2df87e200ec446a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.26.tgz","fileCount":84,"unpackedSize":3775786,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB/GcASXEPsk2adTdfN2fAf+FSZh95fN5rK7H4AyfOyAAiEAxTDM//yLeaSdcxrCY+Xl6sLpV5VqCC2mQZjVk5snAuQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRml/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7LA/+MTojYccoWdN9ignYSZwlL3hZtEgyc0NT6eTUQD8ObzzZSIQg\r\nme4EU4cdStyiafkI7XhMA4QIE220n5JHcAM+O6PilR0RKBuEDKCfnfYyxZtK\r\nxUTVGrkClZRr6H1amxiAXVRq3YvYsX+PM7ySb01LYIjiuD6+qAIKah6pEHg4\r\n6ouG5PrKXaEMB4vPpjg0idAWlCE1x7HydM5BECioRkvVbI4O91001CM/D/mf\r\n4IpUyQXzwmfZYd8BMlFzoB7fk5VmXydxva0BXscY1ntKlLijaSxC+O508WEE\r\nsgMvUUpN/u1Iz2goVZO3Ry+2ryzrKUP4zn/PH5FxcAWRbPkDvA/+qWYIkR1N\r\nabH04FS5JFp6za8TOoH7g0h9BictjPd1AMhuNdJyinbiwbw7s2kXsS5Bxw1Y\r\n/rki8Wj//JL7zya9hY4dc4rB+XbAKwzOsnJYmmjjUi002+uQcI/r52rwVmrk\r\nNoZoaSjHu3yPtzp64hqmkQ+vuf0HxI3HcXzah+SnoPpmf0ykVOb0rfWcr/0R\r\nKntGu+WCqfxsj9+LCKvAQyHuVC9h0itD7P7Tr2NGFnqxxWwm4WvssIU6n6iZ\r\n1UCfQINGrwpn/SBTQIvm08LQjmvOWGPLIN+MEhpA69zbXMZlFYLmRcUmI3DH\r\nKCBzupfTmLFf55ZvzPlCV96ez7lF6ODorVU=\r\n=R1VF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.26_1648781695432_0.7116284435856415"},"_hasShrinkwrap":false},"1.6.3-alpha.27":{"name":"hand-polard","version":"1.6.3-alpha.27","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^4.6.4","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"0f6364e4cb0ad64976e69646bef172cd9636d878","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.27","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-rmjkij8QAc1b4tf7WCLf9diXNOTlWFO0zJaIXa2iz6wsnYeUd3NJy0k7R+erY4BwOrTTOVe9EZ+qBnrRCkm4WA==","shasum":"8a666d0023c4469a6783f1462c47ea1901a81190","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.27.tgz","fileCount":84,"unpackedSize":3777164,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0GwxKCZcf2xui9ytM6s7gRlpsFNWxZQ5GjTu6nyjH8AiAIRpZR3Qfk2/T+0vucy948k6/gf1CW2hS6kYxT9o2RKg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRnESACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoacA//VlCOJZRtS6lcbLouG5A2eQLhRPvuX1ZLS2byOMgv2iRwy5fu\r\nQwEOUXOoA/gle+u7xvX30h/eUeHJPfYplyUe5Y8IeDVUBJl1aQGmSattGbf8\r\nmH7Qv/tC44RVGqPBjUx0OIrH9OqgNuRoY49VqwLzBNkPod8OqX/jX4DV8Uua\r\nnCHT1HIkLMF7141Jlk0Z77v/7tzprKA8ri6x2SpNsWRZygB+PiGZHHIKws+R\r\nRgtDpfLnLaGgP7dy1cD2LgtYogyesYHylaNSwVN36F7j/KEY6VZ5SZ8UsgA3\r\n2EX4GuSPu/uAvZ916cUqJMlOA1F8oGQmfL82HwQeYhTOX0Kzg8kEQ+qUf0DH\r\nLeI6feKJdnlW4GTmFHJ6wwLY8LRejyJJhK4dj+om+hcR7TvI/jyICBCaEPHQ\r\nlhcMOQ9rFE0LI/y2+9v+c5Jcqhbel03t1G5HN+r7zjecm9EaJpa+5Gp9GJdE\r\n6Cb2j5pmSzWcydOi6ABGLQ6EjdLqFFeOit0J7fta3j2Gu2B3urxr13VNfOCO\r\nlkF0L9fnf5/fPcmCh/ct2P1hZJ0/QAKbS4/erEj7y0RmwqnAeTtxRF7A7Yod\r\nUs67nosu9Dbu7Xw+mbg2gBVulk2lto7TWJAVxrJU5uVDfFYyMSmZ2+IzwGry\r\nP+ssWFHMkctnBRVtfCDJ1nst6L3wm4uwHLM=\r\n=1z6Z\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.27_1648783634110_0.6218596112615895"},"_hasShrinkwrap":false},"1.6.3-alpha.28":{"name":"hand-polard","version":"1.6.3-alpha.28","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6e253460f3452af1bcf4425ae7293c3a84d01e8a","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.28","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-mNArc+Art7v1O2OiZr6hrZ5cpuiy+5bOKzOTvAP3a5ZCjCMRvxEcT/K5MAVhcRKF/TKzay3PadCcSFk3PbsGlw==","shasum":"9ea08fa3aeef9d1627522d184ff6afe34b435a8c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.28.tgz","fileCount":84,"unpackedSize":3777300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCG6ejfPxtLu1l+UQ8kK5GY/5yYof87BEWVN52f70EX6QIgObshUGKCKUr8Kvwe/Af8wyMdgEibAduuVRU3lyhetZ8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRnRdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmothhAAkKEFrNS8TKE47nFHSMI5XEodr8cp3+FQMAi3C5Kzo1zWxMKY\r\naHOHtgsKoa5E8gdjn24U9w5XJT/HkWcSX17BdDPpNlHJMeiArxQW4RllstEe\r\nzQNiO73Ewn5dsluKyJ+oPDtmKCngawlAnfkBnYO/NAGIIpJ9JqJKfW9PbO3u\r\nswZUFh58shHdYPzCPLFIswtPuuDeDpddp8/htOH++NlHsRWp/UaGFxhajNFB\r\n5NmqapiaAe4351xt1+awuZyDjUHMp4AyEm1bDHkiCVjgkwywB+sMl0Bq9i+T\r\nXmQ+kIbj9DsUZNq5BvP1k+YbhNe0BoPGHuaq+bZ/L+L5CNPyXsHpkyVg7wul\r\nwWnhAyUeykwNTNZLJjW3dzWz/xpUquShh9UoBEttJX8IXXVbAPt+u/iEYEUS\r\nrzkBl6CGVVloC1+T86cojHEnyYvbLrWKbl+qtfH4cmRPxwpIpJXJgvStmtGS\r\n/0P8QNtSrRw+78Dme0EAZCB8aFm++1WKO9HivvDjorh56FB+svdtrWVBbCwt\r\nCDn5ogM29VzSmU6dg9P03oI1JHxAldOkpWiEfJOmpnfnRxAcaVVwv5Q8+pIv\r\nKi75FYLnUGktLEucxFpL1f5EJrP3RVAd6acFWCzj1zclu0ob2Bujzx9sh3sE\r\nl58hDp/MvJA1IA0N7OW0wV39hporZDahp5U=\r\n=xCqt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.28_1648784476984_0.38572514307640215"},"_hasShrinkwrap":false},"1.6.3-alpha.29":{"name":"hand-polard","version":"1.6.3-alpha.29","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"6cda7787eb148610aa114c72271485330f53a0fc","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.29","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Wxb69OatleLapHXblPr8Uui741eY+5k3Ph+YbAtjb2P09QffnA6uz/eEBWoQK49Njr5zOXi2I16BBpGlWGPd7w==","shasum":"c6a06e4b047df7292ec7429abdd186dfce0cb6de","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.29.tgz","fileCount":84,"unpackedSize":3777760,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMwB5+Ovj0A7N/1EIG0Vm7afb1KZYsIipC7dOXXkB6GQIhALq/ZUrMYXMifjc/M9RT4jFcQ4TPw7PZj3XXUZePT6ES"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRne5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/uw/9FK8ZxhTj/yT064lMab8r+CFAlJX3Nt9LsPXFYf67le/+ENDX\r\nqbExVruV4kzSAE91Ik7+rjXgICITyvdI5GRAmhrdFPaixnpVT09FZ7iEVxBe\r\nGoiASx52EI9eW+8nCIKCRPYRZaAmPeNFefSIm8LM6JW65zvwUciCiq+oVEqI\r\nifRKfWXDygOU2m1euLYYuPYoBd8E+tFb7kDfiKAHkBC24aKmCz7XmrAwwCSL\r\neN6FVmkiSDre8hL9e5Tm1RvxkO6QSdqSY8m3NFu8s91rkGCUVi3296tlohDy\r\n+T/XmsdV/FVz2loLpwmKMGndF8p0BGiZa8ogWUMxq9elyTJn+0ZB8cf3WHdH\r\nQJdCtw+5TplD8qlWv2D0/Np+jDHhgD99cMK6C+JEUXOIn0XtKe834kLhjKw/\r\no/PaydVTvLONM45JC6bbyaGtaZsy3EJ7UvNw7UFS/OZQQDFcYHIFzgqzrdtt\r\nRM8OOZq4zctRnSmlqVzkAIlF6z576qSDLD71UvI1BCiehFrUVPJ7mIw4jRFm\r\nFlG9jknzLhx8xhA0/epH9C728EQ2aJdgBrTKFDINSs9Oor/6NxX5+7kTp011\r\nLFmidcW+pjjRL6MTMKKC1GXSi6uikimxj6ppCBVh/mYDJ4KLhdJACBlX7s82\r\ntzlT8N0rTFXlaPhBePZGRr4tQH7JQ5b92Lw=\r\n=4D3x\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.29_1648785337581_0.7643063421430785"},"_hasShrinkwrap":false},"1.6.3-alpha.30":{"name":"hand-polard","version":"1.6.3-alpha.30","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"90b16484dcac5e0a52d3d8d78bec468f22d88d27","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.30","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-XMXMsLgArNLnlinzInziGIxEfY2P5g5Z3/gfIvxnP6bJuVDXIxoKSM+TuNttDCFjwk6xM0uXg2XYs7iy4trtpw==","shasum":"7d4b5a3b44c1c5fd180f22229529999228248972","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.30.tgz","fileCount":84,"unpackedSize":3780064,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG02wchWAPKOASlF+pdCP91LJEVX775MEUTuJhme/1zTAiBKUvMf3EEjVtFFMrbvTZR1MFK/tHyFJLtdnVcJkPLpFA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRqxaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmozTA//UQVkbwo4UtBo8vybTMn0BeaxEltz3by9L8kTTScQRmZuR2nO\r\nPQfx5tdafzcko0oNrcXfBEKxlNxBANXJlwZJhD/2IKHF6TBRC8r+Jaespend\r\nMEhWTDVyZBn5iQIWzPHIFGluye4zj0O1KpvvKJ7wSmKa5tJvF/K3v4tocSFJ\r\nPRTdBsXtSEpZs46wo45hyYsxVrnkQm39mAcQgF3AH2hKrWCTDEaQ/VNMJTyL\r\n8In/q+HZtSIsVTanqGRKPHiOo2f7zxDEyF2s9CW8/aKQsDjdry+dIIE5a9QR\r\ngEUR/9k5A0+1qFZQsf1XJ9wW7S3pU6tEppDTeD9X3sJmbp+7v/QK8JvyCQgW\r\n/rteLtPIgYQat7ovW3zijTVSfhQRtFJ02XDupY084tj99pxQc4R4bLWqiLYQ\r\nHUUnoE3BI5lV7h4W+VSl1qiIZ23HPYCjAokAlW959SwTLm76lK7mj+xILJ2J\r\nYqohg3imQtIBfEvJ8X30PDm9IwTCUTUkIByq/tD8fTZY0Fj0AVv9Qdr6PDo9\r\nZjsqKx8Qi3E5wGtkTLLahTJj/6Edf+V6ijdHixaCcu5wldFMcDNQvY8TaD1S\r\ns8IMjuNIohX11JUlPhaH7cD8HKxNF8brpVPqAkjAJekxwV44AjuQMEELhhvQ\r\nRSdXIjfW/4tssjstH2gicUl6S2iMCAJ+bTk=\r\n=DPIW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.30_1648798809876_0.1374250629747531"},"_hasShrinkwrap":false},"1.6.3-alpha.31":{"name":"hand-polard","version":"1.6.3-alpha.31","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5c97aee858ba81e99afc6c112842c991f12a860e","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.31","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-uwGdHoKfOZYEaxxjxo25wYrQbvKzw18Jq4MEjO0wuaCIE/8tdfKaIBXsTaFOaZAZ8sU2cNFsXEr4438OiXEyug==","shasum":"a57a528810c45177704669a819fd59c187945a1b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.31.tgz","fileCount":266,"unpackedSize":13131783,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCl8DKa+MkLFJELRabkyjEMvsbvy0TXbCoId2RdwR5ytwIhAK6UiqH6vB1SdVE8KFP1J1gwa6YWoG9VYTGlEBnMND8n"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRrf8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNTA/9H561gv5h5VT3/1M3/e3xBjBjmU/74lfgnlQ/FcHudVUNAnLq\r\nkjkXY9c7GPiNacl7ziGb/gA6rueUfAPG3oleeQQdXYacHy5M7MPMkJHrhTzI\r\nUHX8EWJumByWJj3OaULchVQmqZO0PkCnRaHVzRGyf0sDw/qN+rPnA4ohAfQJ\r\nt7ETofFO/W6LsDLp5EGjsW5uSOf3jcW7VXi/PosbBw/i2QBY1mdkh/nUW0ep\r\n1p5t8HQiquxNBTDbEo1gjM9Wtlia2o4SGdJKwgMfcRXSQuv55J+B7yttYcMH\r\nzh/LOEBx+CYQCIn0/QcqaJ+3TQ4edmSzJQyxW4ncvNkV9xCppZyms3JBD8nK\r\nY32gTyLaM6CSwpfdfRbqrDvcp2gXqxaNaAYHC6rRfcWEb34G/BmOf0Q6Sm7o\r\nKc50BOZ35l8MBRLUPN93H3aYZgD6iJmHWbRKbrBre4FE9Yk8hlHAx39jvATT\r\nAj08rsEuzjXuXE/iHml+Br8G9dVeFnc68dbLQHym4nIrNm9OhEBd8179F4vY\r\nYv1v3qJ885+l2ra3nZw9RSbQvSVct5CcV6vFs1Y3IABORzq+ba3+zMBzlDCm\r\n+f2ClqlRaLK9xOvlEizG0FXB0+sdLAKrpgVpX0AW+kxw82x6TmEJWM4EuYbZ\r\nrSWr1z2d6UmQnqnFUjh+u6sk07g8C3qN01c=\r\n=JsiQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.31_1648801788591_0.07113444495675392"},"_hasShrinkwrap":false},"1.6.3-alpha.32":{"name":"hand-polard","version":"1.6.3-alpha.32","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c5f6e387df4b96887d40167f515d70b4ee6a545a","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.32","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-I+2qsTGbvM7s7S3LMe8uI93X7iX4VrExAsxlx1oeZlIaUfGD8dSCZC8v1EPrTiG+2LGuvlm7nENrG90efZyVHQ==","shasum":"4b17e71f617c9bd2f5227f150dfa95d888fba94f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.32.tgz","fileCount":84,"unpackedSize":3788077,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfxOHlBCpxfWEOvMI21tJRXdydcxdd/TWHM4ZLUWLe/AIgeHL94vJ6jm/tXjSDhYVJiyZ6SptaWn5eKxdbPTt4qEw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRsKRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqC3Q//YjHpigamztxkdCS4BZhSnwUtRQ7117Jr0XG3Hn6Zt2Heq0ZL\r\nIqcm75bF46Vj80RGUq2DNBqaMsnm68lw+cEo6kgtPkCRLB+P+XR66wKT9Sax\r\n2aWg3fSsyBM2YQONFAtf1fEVZS5/xd0srCQwjZiEAasj9lCrf1w0h//3bWP0\r\nnlpMYZUymJ4wHV3kXIp2AKEJuOLNlBzwenPiCyZzNYLcCEoYA0xrqzCyZD7j\r\nEp+E+OZxdr1VRFI1MmxXof5LR7DS+Bd1sk8dFYDVkxQbcPlAJVUJpEs3ZD+b\r\nZfDa7KBChGLa8RQW4dni0XnRREY7gXfp897CJyjSjV6Ho3pjV3OepIUJZ+a+\r\n6g6JFON++VFeIwMcCSMeSHBnxB00PTpCTMTJTfhVU37xiqhcRD/ZXBkbEMvC\r\njFotrFpbCC3Cfi1DeC4ur4lipNtxFNZOFeU7AY8NMtWC/iA13ZCya6Jd6Biw\r\nNV3FBQFclPJ2PmeXLHvDQg59DlPr0CGXHLflpkQltgq0QZfjNCXEcUZbPBsv\r\n7qh2aKH+x+9CitJqkimYqe8EkSQdprDqulnj2aClxancwe6cDofPeOb1QGBZ\r\nbM2j8GPMmn2vcgShwjacGvkHC650KxWpNo5sWm+H+/c48rRqb/shWwg+53EL\r\nG4u1hbSrl0ZWLT9LN4VTEThqJ/2fijy+D58=\r\n=IBSk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.32_1648804497376_0.4942944071171751"},"_hasShrinkwrap":false},"1.6.3-alpha.33":{"name":"hand-polard","version":"1.6.3-alpha.33","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"36736040d34ebdb6869ecfbc113cd4484e961c4e","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.33","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-xGvE+QFr9nAUSzhVHCzO7XWaSKVd6WREWMgZO3gOrwCW1OqIZoXIPpUjmHyuNuEhB1y+hl6zf/tp42u0p2hMZw==","shasum":"0b4c1e0216bf566fd0c96e45398947094bcb8618","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.33.tgz","fileCount":285,"unpackedSize":13410240,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGA2iN4TiwFYcpUUuqRTDJzG2zUkQdtRGjBrvooG22SjAiARyIqXt2zp6v689xUZl0uJfn3kZclKnPfGIKxWkgAWgQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRsjcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOpg/+MqzDrsM/ITv7ROC40xWTMM8UR8jp17TOnAFUY1lZVDowxCMU\r\nXjAtemDesOSKK2lbEN3FrC3R6LUInUowmXhi+8Bc9O7C3moHQHOwZPn/jxfN\r\nfIWKpB4eJUkVf9PDgajOUaMcMnyA1na3Vcs+ugDGcvMcCExXYYwtq3lScOGa\r\nOERHQwuZNeZZfRec3F6HQNA+ByqhVvZg/32MgyWJIePqrsZkf9Z7y9ZsRqz/\r\neQ6LK4u1K4cu9JRB7veqPXpJvlbinvSZR0f0mKjBfJ1n7EItmFoUCV6brcpU\r\nc8n51bUhP+ylyIQhJQLCxTfv4Qz0Z4I9VllY28XqisI5P5B6gc9F0hCKTUmo\r\nTL3yuxeopc116PnLoiS4bqTa3Ef9Rfg45WZoBj3iT3JdvEPe3rhXCs2NmAt3\r\nJRGu52UUc+muVQyKi0SDnKTDcVd2A2jDaFZTZktUrpeJqFEXIShu8WZ2/BLC\r\nqtkwEAuSig70AaQgPSnLHdK5MrbRFTdwNjQzygWKiw805KzTuO7vrJxjAh5S\r\n0+xLIObUp2iVywuXy18mlfG8tETmUa1LaLhDrmr2xGngjz6ithSLtDQUawxz\r\njI4+CzLr8jpeD063HzebnLnTvW8Gg9qV44JHajwbPBnzNKOcRyQU/7Q9L2Q5\r\nEv9qGMoLzW032qjRiwTNSt0SAJIXnxdOWWc=\r\n=UnWk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.33_1648806107869_0.967394269392073"},"_hasShrinkwrap":false},"1.6.3-alpha.34":{"name":"hand-polard","version":"1.6.3-alpha.34","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9e44772aac6acfaeac4b7bce43523434bfe03256","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.34","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-IKn+Nzz9uX2Wv2JpzYHBG1f2eMH0HjQnRlZqsCT5a8RbEpHL0UipCaOY7M9ZCn7X4bGcFDr6rqVpsZtTZnBagQ==","shasum":"b1a817c08cdd520d9c7bc5cf26504eb79fd45391","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.34.tgz","fileCount":285,"unpackedSize":13410376,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDdAMSpUhuncNx6pT1wLzmvDrt1PNLq8p+jHkRrsfloEAiAw/dk7rIqwv4Acc45crKv9e+aLjT/9pERdKCZeMK6XEw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRsy4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/nQ//ZPn1R0erWIFCpWWz9HRtrODaYPF/U8skgLqHmV/2GtgJ3+Sy\r\nhhRymgKmclQI1+nYPNLOaAGBRJOltmQ7PcKXIOoin6PKw/355SR2YHJu9Rg6\r\ntGDaLrrqeY5vDqfO100BnbDN/RamxOte9Ynhio681c9GTD2xv0PMIX1Wz5cU\r\n+1cHr8qespDBCOpHIlGXUc5Ce/wCEZvpY5r0JXkVEApLEhQ3om14VmpVViCZ\r\nlZnbHqT/E72j8dHZ8PuvSwhR7/ktELlz9GKVAfyuVMUAEo4Dv/ArS9lNZ7z+\r\nt34IWk3S2uKCzmlfjJHz2ywYfqCacP2NfbFSfxtaNUcjhEHzR1lb91uzNMv/\r\nuzhf5Ev2KQs1gIk/Qw7bpJrNEPVRgoZl3jWZTIPbMTvxGvzmF2Tm1YUvj4s3\r\nG2pnUO2wJyLN52QIHfUj2x1qXu052z4LnftNDFx/Y4Wm7IuCt7ObV5EDHz77\r\nKXZ6KhmenSv3x0KQRLr2zrEmDh0DragYEaKTzAWE6WjsblhIVwAIOSZYP1Pw\r\n47Uh3PASsLxGwdmIwkAHEuxH/tJRYYF4c5pvh7OURQjqmA6nCkJc4PxLcORE\r\n51bAyJdM9Te8LIC+mX/xEdegBqmrnGwmN4fQVNL+/eqnQ57pJtI9JObA+gbi\r\nGqk2byu6i2VtV2M4Nj1JuSmJP01uKkLYHF0=\r\n=9/69\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.34_1648807096410_0.2360619784110316"},"_hasShrinkwrap":false},"1.6.3-beta.4":{"name":"hand-polard","version":"1.6.3-beta.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"264bc8005258181325cfba664c637bc2eea980cf","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Wh/UUgP+BRzPL5nh9VncZuGxK8P6W2WHr1dF639TZ9YinXnRTz3WszXQq1h//IvLfv2uXUlVNRLbEQUvm5lQ3Q==","shasum":"d832eacb00fdaa09ac5832054eccf5b1751c26e0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.4.tgz","fileCount":84,"unpackedSize":3750522,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICINLqIRjYEa2LET1BDDW2+gbZW+kEUIQ3k2luHDSdAlAiBvoeKYfdIICwN9EUVWoTtntN74cBNXeZNGrLdVl+uyWA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiR/fkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnNw//USaxjSbGCWrSjn4tiBwrcimXiom+2cBFRVQDpW/+rm/vdcDV\r\nE2cMy2UHRzikKmpHQiV1A7rHwJMBBUUGng4CyIPJRXCtSwttUeqa4frMEtL8\r\nJ5y0ncvCF12rK18ZfSFj3FYK7Wy1FdiKogJ1yYmtFioHHFlFH8nX5alc+FPD\r\nWkggwgtcwMHmSMqXs0f8OgGu8riZ5mBG2MfWEy/0s9g8Jl2ihy1JqcZBPxKo\r\nVThYRSLgFFK9mJB9+/7UIj72IcwyG7yqWIFFbbu4nOhFJtCU6fDfpL9oyvTt\r\nGZkwVZFNW8zERSsJYGOolhKc7pP2lhcKOECvosKQ/N15lVpdr/WFFjUFzBTw\r\nP7lzGLD4/D2tslMg5QuAL2kRURef0pKiAa2APzUNj2pMmTnkEDBS2AQdhGyy\r\nL4GzzkwB9XixfAJlxyjP+cwEs0SQyG2UJq84I1Orj1CDlDxNqkDS4jfCNXtE\r\nnbFvRWKwpHYYhmllhNjJWWgmqwTOjLEiiOAgNjz+TJUkigWg5ikksUohF1s2\r\nayH3TFC5cclpKqAldNGjy2YKG11ZF/ScaPSUIf6jPstJM5mkJh6bDQ4aHNm0\r\nWjoGUg5Nf1eiQOFbgjJPXTbYNUjGsAtnL3EomphnYbo9li4tXyNj82+b64zh\r\nWqosMcZE8+1JOTGwfeWWfqBP1akLiV9kOS8=\r\n=6f8z\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.4_1648883684580_0.49060930041870465"},"_hasShrinkwrap":false},"1.6.3-alpha.35":{"name":"hand-polard","version":"1.6.3-alpha.35","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"01276a37af91c8207965a799a160057362d1d8ae","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.35","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-OvxACyckHbrCW6cNkF/iPkFJE2G1oGiTiP7F9pKCIzpWg/2+wOkvRaIFpeojqc/3GvjGrPiW5Vw8CSQL855SgA==","shasum":"578bf42632ecaf7189aafa38f71dc301a1ea34d2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.35.tgz","fileCount":287,"unpackedSize":12749640,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICIzZTPwI6Xpw7cIjogZGWg1iWOHWBGqP0fARl2Dr+pWAiARzGgEJMDn95Pbf1lipW7u2wGTY1IOIgkIqm4qTeAOww=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTRusACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmocSg//Zp4xPn2OEgxo8tlhtcyMOoeCTkJfYrTlDRxHuPCp0ePBdHLJ\r\nqrsyXb6mjkfYi0dVn2MeebPA8Mta5z+t0tc24JL0U4fFZw6D5+04m5JF3yOy\r\n6pUyBjs2gJ5IqdNkMgy4PIbQn3bDC4OonLQFXszCY6TTWGwvwLISP210eBw6\r\n1gpiaZokew8KygFcM/A9EEmscpHg+ygl2DMqXkiu2IlKU9K1CfsktGRfFdNN\r\nFKGajBB3pgbk7/YrBjOxy1BGzIeS9q0tWBoGjFMbUVq6BDj0ftj4Bra72kXn\r\nBhspKvSPSgVNcg2z9Z9XW8jv13UMnj7v3U9RmZPIdxIZHmw3Npx+ExtkoV8s\r\nv6qqWm5ZwQuZbG1trxj/14IwL4RnXJinva6TFJZN69abT0NmGHR/ui3L0sWd\r\nfN7bjsc3gIiOaCxp+QGy6mE/Sx9qp0mcVIa/gVNyDf03wToEi6jGeLoguRqE\r\np1mrmKSUmHfHUpfTqLncK31Bw8tD3UrrYW3+omgiMPW9nv0qhLQKaKm8HFjn\r\njPFbfOQJIqMp5wZ9BoXx49fyfKixTOsJeuQI0SCeke6UzU0xaXDSiaEsVTcZ\r\n6wG++rnweIKtW2hQhfXUXQu7Bfab/g0AMo9Rym6x7sADCi7uxLifZgXfNZXU\r\nF866fhS5SM/eAMrsbrmoJSH8kf7ELK/U9iU=\r\n=cO5T\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.35_1649220524647_0.7047307605992483"},"_hasShrinkwrap":false},"1.6.3-alpha.36":{"name":"hand-polard","version":"1.6.3-alpha.36","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9be659f795da82520614686ba70764f417c45930","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.36","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-rz2JZCnkzrKx4j4+48ZZs60VAtmP8SWWz7IU6JeBDA1HGUx+uJh0oaWFW50qXgUJLPytZfHMOMp/Wk7+NMKjdQ==","shasum":"e68c64de3c4bd48233d942050e8d2e5249835438","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.36.tgz","fileCount":84,"unpackedSize":3799153,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDs2APd/L0UVsKWrEWMIPXgXPYJhQn62K4fohHoU8nMYAiAaj1xg8nnQGzUVaVE0/9badZT4g/ylTAiyoHlRQSbxgw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTTTmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoE0xAAj3mOLeQBVZP8ZRwGS4GgzhjWukDT9Qu2MS7kG0d2tFWk7Crc\r\nAmmNQiA2kV6RuwoFl5CppVxkGnKQeiez/oDkZnPn8OPtxUI0xemuHt/NY/qS\r\nMPmm1bSSWXe3NheDWPX6+k0yJF7yimmmkg3XtLq0Y4qEMGOd4n7y3fACtILB\r\n0TBp2HCDgbNiXI6IJK0nBvjIFlaARdBLzgNeGyiZXdZsEoY03m0ZDeIcD9rW\r\nnHVcj+5W966MELsNMICqDuwGi7vDzJ+0g2w7QMqxBNX9PRdx+tVAYcz4iLtJ\r\n0lygBcOx+GMQWyKfarPfU+1s2GZTGd5k1HMTTMiPYIyFB3HJbANgPhqEotcQ\r\nmyBUJOYn3EPmL/HjzCuMdH04VMQyyex9arOF/vy+LisQiXhsq6JiAub1dWT7\r\n2WLROCV0Nz1Qi55pWUjUrl2RWlNRGemocteMWDxcgShMtS//vLCfZ683Zq6T\r\nCOIhZvsA7CRXJFeutmzR/PPjHmnpHzvdeLmGQZEpcI3AcQjCt4X0BbIdgA9j\r\nb2RqXfEZ4Bpiv8u+njQmkvuby2D79sza6oxShg1iBvRi+D0F9oYSbICBPIYH\r\nB38h1wy6X326R9VFA6RFPWYrWG7DEyed9Gnn6zGBiBhN+fObaaY7E/W6K1yx\r\nGkVU3k1RqbMz9HyXiNmmGKsOjpBt4wMcwr8=\r\n=vNlo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.36_1649226982275_0.9230862273903557"},"_hasShrinkwrap":false},"1.6.3-beta.5":{"name":"hand-polard","version":"1.6.3-beta.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8eb3d515d23c6880487bbd3c28918c5e9b107e27","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Nw+ceW2PyO1oo7XxufXo7NSytss1Dj7ANAxWv9vfdCAQERs+fmWTJOCGoznEhopDaDh4Pvaes8R4J2FFyf687w==","shasum":"66a97b583b052c7982623ad1113c858dd7577841","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.5.tgz","fileCount":84,"unpackedSize":3750843,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDnVvEUuFpyeenwlvy3hABotm9i15odBPb04OdHkz4sEAiEAkuJaxHmw8VCoJ1vjTHuCALIxxg0QoKJYERRIlBGC6tE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTTV6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqizRAAl1k7PpE+dt0r5dN1iQX90fdYI48bkLFcaItuqts5mPr7eIKF\r\n1VRqgDnDmWjAlDlsXHWTHmmx3RGyV9vWfg+YYqBG9Kwfkvrb3cFrfhSSRyiC\r\nTp5VOTiRP4Z/ezSZXqiMQBT9fqdeYvmaGMwDVnAYV8pV3Y9qHWoxgzHtQG2T\r\nX7JexSonB4EokptZMPHxF6evxs0uCiDNVAWmiZq5h9ju2NuJV/s053xONjVb\r\naKqSMcP8wzB7H/Dbqn4H/Sz1z4z5CkOtBpzsl5ShKuDnWlXnzsG4aSncymb/\r\nMnmL30Xl6OnJQu+paaXES0tBWZD7fWJzB3dLWwsiHJX/U2Hiit8U8G5EW6/g\r\npR3Jrr4IlYrYf+qqtOGeq9fFWMXoK9h2jNXq4d58RHlRLK4OPdbsCbPMxZ7R\r\nTAcsZjIkPHatwHsy4+0FcbUEmdPoxGijjYp2Q5GrRZaVeTiai7svXpqYLca8\r\nHFOHyJovrVAWTn66z0iTzTIzjEQ7SIj9dKUTuaVX0VioJ2Qfc5EFdS/m2BXp\r\nUCyHBHlESTc6Ag+D6hFsVMYtQQCTTfVkcjgcsvMwa77REVvXLxz3kopRrYfl\r\nR31sOJlQHziwVROGX0A9DuzqmD5bZ5haTGufrWP+2yi3mZo2JgPhxLvSuy6N\r\nbtFOQ9TRuesoyEcEK0Xxpl6fIothn3zEyMw=\r\n=VZhj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.5_1649227130517_0.3395648181463746"},"_hasShrinkwrap":false},"1.6.3-alpha.37":{"name":"hand-polard","version":"1.6.3-alpha.37","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"84d586e3261b138ddecf6a50c4a3720893d2e9c4","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.37","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-UQOIrCTOkqVLOsolW/jwmfBKnSpuxa1MauaRqkcbCaOeXeBVGdXIwWppfLIdQzsgChSdswRDSL+HEaO2er2LVg==","shasum":"83f03fdea9a5d0a4bfa57e4ce03a9815a04e6f17","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.37.tgz","fileCount":84,"unpackedSize":3800220,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGSDQKzo6njBoewW5XpCpRwXD9Yi2B+kYpv21bw4gAfQAiB41RvPQbTKx5IFwOo9+/XRZppWMtNqv9nYMtqXiznkSA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTVlNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLHA//U8bpQLTbY0hMqk7q/9Qj0Je0gLVzqWjb7g3cFuoJsZQB9AOB\r\nx4ZoJPjuoGbWgYbKwoPSJll6fFbpaiXhC/X7v9wnkCfoRXCVsaAoTyLa+R+t\r\nA9kxlTPXh5hl36tuTXo5ccW7IuS1OkpnwBoKkFK/cWRDCXTr+AWcQg0nivvC\r\nLjW9nMnHqm5ux7Wvish/OJIRIDe+jNMskhYkQE1UgCk3rSrEaUws81LJGEJn\r\ndRBd1RpPd7ZodrSOdyAfIp2E1RtlNsyRke8iKE5TsLveY9OsWYqiAtXmu76O\r\nEHMLzr3ORnk0DDh585UZj3R/q+T4ruiUWzzaPSULO3+459eII2kvDn7SNAWA\r\nh8M24mhsYoUsfvxFu4sUkCNQmaN+Gk4sM+Z29p1XlNsHen3hDmsvHh2ejRC8\r\nyJWdY7Le4klmKCYZcYnefiRct1cpTHB0n5qRVFaC7yA8XfpxKfdkAFdpzRiq\r\nMFdwwsQOetUU65tfrtEJ2NiUDxcs/Ns/jL883M21d/nxsVTQKuIVZBaegvu6\r\nd8FJoyj1wzXd1LUjVPEqvtqwFc+XLrvjU/itMwFcUOExQ4BfcR6QxCVl6HAg\r\nkU2MXQig6ewjwtJ0tINDlmE0haOjA3AP2wiPtUWNlpqo1TYHRsQnM/ZLpjZt\r\nxIXhLZNJGvQaKsRXeFuaYWJZ4TFKItfUGbk=\r\n=5cnn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.37_1649236300862_0.48439983064609526"},"_hasShrinkwrap":false},"1.6.3-beta.6":{"name":"hand-polard","version":"1.6.3-beta.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"60eeb9b05e835953b5909b4bfaa35ae6c799f70e","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-lJ4/UFzaxC9xaVgEuqfZDusCtpdq2xZFn6+9u9WerdWbV8KC1P49JcAuVASbfNIx/rbY+DfY1KPxUC9KetBArA==","shasum":"bdd516202789fc808e61c96f76cb51ee4e573337","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.6.tgz","fileCount":84,"unpackedSize":3751904,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbAJF4NKnOP3nsneK7aDiZqViMVTCq05EXLjbzcmCaLwIgAXlUN4BUG0JlrUzFgmPVYAmdajTCrPN4msbL6BAQfv8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTV2bACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoutBAAmgiN0PEalYTSYLVqmKnpPF+rbfrjJp3wBMpLQPHcvgD4XbLC\r\nji09knCcZGCs+wDLoOYBXH1m+ZTdMFocDxp+VpHj2b52EdWnMfiKVgKNSxqE\r\nW57nP6Kq0liArAhX0iRGC7fru5bFEbGfNui3kuXGiicbMR3Cj2R7GJQhzoeH\r\nExC0a1pFRknE/egXnS0dBWHUvhx41+86Vi69GvIIOISs/wFNg5fQDrngik0U\r\nGuKJG8+hXjro29zTCRdHPTi17CfWWNABg1zbK3nRu9vGhJnsSEr3ymxwBa7p\r\nsMVS1JTuG0Q77Rty/8mZmdabGLIiKmY70fJLFj1iPj7ZbPBCJ0U8QKzG2Vfx\r\nsUpYPpV9qnIZ2gltQrRzyG6mjYn+lXt+G/IwnnfqKknJQk5IGELw2ALGGbw5\r\nmOtqwJ7DNFTxcWw3wvBhAu9aFLUWKjOcDFeeqwS+kEJy3t1yO0eP5LOaBYdO\r\nRi9dlqXIhdbs0CsYAyBytP0iMeskyIJPLG/xxOu6Y9/NVvU6h+emnr6sFrCb\r\nVMqVN5o1o0bEotBXp+DX03wlxocNG5fdQQ1yUM6W0In5aWGQ/RcRvmrOHM6z\r\naXqfMPTEkwenWexuKcb7EOS8X1iM5AqQ5DxrfOOl7QtvvDe90jPwBuR1YsYo\r\nvNF92dTL6B82EoOZPGEJa+M5tLeGR33tjHA=\r\n=WcwJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.6_1649237402970_0.5529674963745135"},"_hasShrinkwrap":false},"1.6.3-beta.7":{"name":"hand-polard","version":"1.6.3-beta.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"98b7df906c91e7f945d51e03cfeab1ddd9a9ee24","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-TrPWWm+ogFOxehc5oMG3oXfaVjgJCjEnHQfACc80vF81d15u33hbOLt/I1v9gHoAB99flXofsy3/xNVS/heEOg==","shasum":"d48bcf96ff72a55b26d1d49e9a57f52792cf96d2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.7.tgz","fileCount":84,"unpackedSize":3752090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAvV6RgOmLb3WLZLs8n70dRMaSwkN3fN1hpRPXHAfFwhAiEAvmopEZgtWdiwHN7EWUI+q1MCzj1gEn3GgYA5BM+kyUY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTWlDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrXrg/7Bk7z5EKCdZcg0tNnXcmIqzhhhFmby7PG3smJzOJ7wNYA9qrW\r\nTUtuWp3tQJiH1feDzvY5ushhLL2ObBxwJF6PdYkorsGlxQdH1+WtjLKxo48Y\r\nUbYOtIhGH7BDpCcKQTNhp/diSf1i0mLga3uCYAjZzQEfIPzpAfQIxyASgbil\r\nCPD1ZZCIyA1BXNjlMaEqUmIXNg01d52wSP5GuFHcPJ96Xu/rRKwn55TaaqSR\r\nTvMwUGhwZyJ2TpBSQiE1AvhVB5pbDrqXwzIeHPM2OpTck+Hj0NHMAd732j6f\r\n8m7QCv6aMyhzWFicY6vkGJAu6DD836A4tsR7d2UNyEIi5O20Cf+fWjfIR1lg\r\nOCyfn4Wf6tRarw+pIZYCo/ucHkE5mhgylSo7MWiueedB/MoV/BH3kaPe0CVD\r\nAcm6QjcJLQRryu40rnnxw3UPFVeI6JjpQgHhA0cRa7pCz4JVOZGNJEThbQqQ\r\nxnP1W28z34k1J0uVP2E4JuFLEf6tQxghEAhkVFD4k+AkT+vMjWaDMhLkrdbe\r\ncxPEOZIN2eRtciC2U4Mt+ExKLh0dozieBUpPfGpOT0EcMG0zXhTCfX+DTZ2a\r\nb6tvzET2Pg2p/uiSCDxcufeh/qkzZWhbTPDmDrizd7ZZ5/I+nD0meJbdpBRK\r\nx05PHoo9uIXYXHhIh6YxCeS/GKA5+ekcYRA=\r\n=sEkq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.7_1649240387021_0.20701468848000104"},"_hasShrinkwrap":false},"1.6.3-beta.8":{"name":"hand-polard","version":"1.6.3-beta.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"fe4ec52876d398f54bd4c9e0bcfa27638f90e894","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.8","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-gSZHvagHV7MXRjvaZN0KSOyNhlKEOTORsNynkxHIrY+1gzWPIw9erPbpjSM4UILcFNj+lQWSCuTkc2tcXpHbkA==","shasum":"0881b0170b2283749b08016aa7b4c1055309e3cd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.8.tgz","fileCount":287,"unpackedSize":12716935,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGHoRrTuKA/+rCSzl4Rv3axVs+5BSY2Opmf2UBHiUA6LAiAOmhJyVOfI6EvUmtzIBqMtcYqHc7+2VQNe/GGWVtRjKA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTjl+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpmdg//SbhjNvfplGSA1/7y0GHG6g0JBHze6yYqBNPPE2vEocCmOqkl\r\ni8tqOC+punDVa/IkYkvOW6Vo2cb7hUT0vgexOtXXQyFrHHYp+2E4jCFMJIOw\r\nykL3JQyrWtiaG6/zjGfg9A7v14SrIOMgJpSVO1ppwAN48a9b3ql2vbHcozTW\r\nEx1i7ouu8IXrQTIswVdzYyVKug38AWbWKG1aTvId7nbSVdQjWl13nBM9NM1E\r\nxkKc7wPwrN0PSC93n7Z4PyyHUYexHvEGVfJGX1t+6OS0dmlgMhy70RjqZMPD\r\nnue3Rc87UIK29/tU6etOBEMlCwX3OytvgojWRriQkMBvLW4sBCQHeqp8NtWe\r\nY978GH9EByzSjxYyqoWl+lwmFsdkKcM1RviG3raT2bA99G7bX+Y1NIX+5vuS\r\nxG7k+6JjnK0F65gfoacNA3ieIODg8HlsV3bPZKeJeBtgMmQccxNUFENmPePm\r\nSpSHjgwcZFpbII98BK38o9eAMImVrYTj1O7OSdwWVZMAIk6B3HCwrtMyLVMW\r\nuKXBQZkRBcT7To+c5zueWGjGOKnltwH6cpms2UPTmSsjUDiWBds7Ml+Dzi8E\r\nGcw54SPEJ/q8RlLbfGZAJA0aorZT6a8BuDkSE1yIqW/35lFTU5Dk0KwWvuYj\r\nSdrNKKozr2pn2jqjQzRkcf5kiiFkgUuy5j4=\r\n=WFRA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.8_1649293693866_0.917623435628099"},"_hasShrinkwrap":false},"1.6.3-beta.9":{"name":"hand-polard","version":"1.6.3-beta.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"76e1554645463170663915f257cd301b2927efbb","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.9","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-uhp5D3m7L8IEVLooSYSCc7PpAACcoHoEiPNsTBVXruIUtEFN49q+dCdX0ouLKlyPBJ3t4UE1NskOvV2vHBkreA==","shasum":"4f8cb67c828b6ab11554536ff892773df979ba78","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.9.tgz","fileCount":289,"unpackedSize":12747055,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDcY+nQ/poFFvvP3+IP78Ye2yruqHAOUoMoJmfO7WJ48AiEAxiePKnGJeiiT3CI/n0K6i4lduxt724XpB81+oPPbKgM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTkAGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqs/Q//Ybh4op6baH/eXiX+45g9SOMzOVI2DN+LMPJ/jsJXK3ClxcII\r\nCIdg8VHH2u5Q5Txcpma6/WSL6RrlFJyde8uywQolKqDn90P25ZAUOn/lq+Qc\r\naT9qzpR5FV9IqcVo/g6187+lDb29faZvBmMkwDRGv4MU33jtPMG/gM9TOK3Q\r\nlOHgoEFdH9bckJ5jMLTudZUIGXJtu6pwfDxyB0eTiLsxHEJqcvFnddDjI09K\r\nbzbvQITKGooK3U31noI+qjnX9jL42NTmDnyi7atc9vhFfwhliEwpM7woAP89\r\n2mjs1hnQLFA3LH659Xj2fNI+CUPE/uVMCqb/y/FFS69zLrh8hZR/8ogj0v2+\r\nvm8CbaW2EZM6iaYOyA7KaL437Mde6LOd6R20tnGLlJhQ8IY+2U7nB5VRoI98\r\n0mQsu+jviFgcZttTivQZCNaVAXgjdpAs4U3LYxmDdoMN/QsnTu2fLTPt20nl\r\nEkOGhZtq6oolMz/AaBMawtx5mh9+ZRbHpM4ARNLLsA6+ZTdSXl5ky19q1K7y\r\nc0x+CFi3dz9Fh5JXFsFLI8ZCv1VqNAUvhkb54MU+o09PSnjQiR17ytgvSobs\r\nj0DzYSaUqOX52Y/TwCNuvh0Ny4BMl7tUUDlItO9Vu52BlaF/nhAQvoPTwU/Y\r\nWL8nbGtOq4orDdXPyyL5TAipO2OxLSCkHE8=\r\n=TzGg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.9_1649295366547_0.3483335659907165"},"_hasShrinkwrap":false},"1.6.3-alpha.38":{"name":"hand-polard","version":"1.6.3-alpha.38","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"3dc5b73b7a09d28303fbdad4c95f5142b3e41241","description":"## Getting Started","_id":"hand-polard@1.6.3-alpha.38","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-OgUlgP3UX1K5DIHjQLA1Vn1zKYDr+4f66eCS+K4wpCm1huqNY+gibUrFuB40UvoAC4duWIuCfb8CNNh9LlmbsA==","shasum":"423ea3b6fdb65ac28e769a8866cb4b3454f3f62c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-alpha.38.tgz","fileCount":294,"unpackedSize":13794919,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDarU1LsflQbAruPaVrSCoQdpfOKubYUvol8nMYtTNdGgIgNOKoV4K0+hZz7aSlh2GzqXp9yS2sibDNxpWdF4woxpM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTm3XACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqlqg//aHfWcUV6PDPwr8S87Nz5vHKA0wW+aOyJzMQ5Cdbpi5t77uEZ\r\nSXm2+u9IA89Ond7epavGww0xpVYpk/9uvxJtHpZvROEsoOspXmow/398Ft2n\r\nxO/Epq4R/HmRd87GJPM+PpbIZQsmHiFRoIa00ahaLw6GJ1W7BmlWi6Yc81E5\r\n17g2wCcDWWbLWc0G8tuo4VHr2cZYKjlgtjveq8sGP68RISPpKXf250toD/vE\r\nacQsw2lxLaVP29isqAhxZeAe+xoJxZHxabw9Lr0XciPj4/T/psp6RTF0EiTt\r\nnYSpi+eN3VTQynp6Pc2t2AUBsd3uVd5JHbXIYtm2zGKaq82B5G/v+dre1el2\r\nMkKR/winhzUaParUnNiUQiYMXRAW4igK0kJLK5Gwkr9vxcumaH8X6eeZOKs+\r\nbgg1RQV+F9I18auJU+8PCry3q86YFPwUmiQUg91Nw4lwiWTipsNyf+xqzj5A\r\n8GdpgqdDD3vSUhNOPLd8iv6CTfhtE81TbFQ2SUV3YkaJUwGEhACSEqHQvG3d\r\niavQ/RN7AVhQyboBuYMObbxyvNu++A/663W+tGoDCUs9a4hE0QX3OhR9T6ut\r\n2SPBtDCzeF193ytx6mGWMoZM51Jq9244c3TgKjailsYuU2cCpq8TJJZTPvyu\r\n//3qoOiF1qHHKh4KwYPB/ptpIQ+/xFz0j2A=\r\n=Y7DA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-alpha.38_1649307095096_0.7662584753811736"},"_hasShrinkwrap":false},"1.6.3-beta.10":{"name":"hand-polard","version":"1.6.3-beta.10","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"456184e39b77aece945067c1b1557aa5cc0023eb","description":"## Getting Started","_id":"hand-polard@1.6.3-beta.10","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-92S4hQ8I23ksD4BecvXEPG8aGzx781kVFCpx8WXytFnSPbhi5SRxrcCfvqrKf3jZVisNvgkU3cSxOJ5DcaqrSw==","shasum":"70e31c1188b9360f7668054de5023c3dad4cb484","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.3-beta.10.tgz","fileCount":84,"unpackedSize":3762670,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeE5PxCt6CDZCjtR0Qfo+RR3nLrV38SuzraLarYlzR+gIhAOhrjIjGneChN7vS7b8Wmw9oemud9USCfYmYm+MTconQ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiToQFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7JRAAmV+O1dzg1DrLqljqlVhhPfPDiRAkrx/P51fuFUWmm3D/+iVA\r\n03+fcnIbzukZSDciDs2jwBGmKcaUcJLfuSJF7djesbwT5DD459UAhnG4ubpm\r\n9sSzMrQNdOoC24pTBDrB0ir3RXHcQNSCzjJa80LL+xp4CGDmHegbmHumfAVD\r\nwCQKj0eg4I/iOvngEQt1fqZdCRj8Q3iZyaRjHhh2yE6mY/bAG6B7sTvJGU1g\r\nmRNpaZ7xKZZ0+EMQBxGQhWFO4F5vQGPQgIbe5ehDkI9xbLh1MXKj0eU1wdWl\r\nTxdkxU+36qGzPbOhHaszxgTv5RFTPLu2Nmy7Kuo0+eDuQWeinI2VLpD7kpzI\r\nF9/f6WZP229wSYpOZcc0jrr4MQQix80R5w8FSe0pyh6snQu1VlljsNsEh0nK\r\n5uqnTHC0LzttMt3DtWH5vM8da3Y0cL7fkgFicPZLhYUSiFo4vhzGOtXYgaJY\r\nZdb2buDNKXbaOrJS8o2+L/c4EwucAqVqhpjZpZFLiNOQdUf2brCCZLSf385k\r\nNLwGIra+vMDPw02acFFnrcpK24zr7M8Bub2pRPzmAUOK6/wv0t9kbMlRiR/T\r\n7G0TJh43B+Sim1ep8EDW3MnRanRmtd7emED0S2zpH/xcpvEc8PweqIexYY7I\r\nS61PcB1ds+bHZDA7xH3G/fKEEipK9KOs6sU=\r\n=WGa1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.3-beta.10_1649312773108_0.5650771232741063"},"_hasShrinkwrap":false},"1.6.4":{"name":"hand-polard","version":"1.6.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"902703479c4d1dc5bcc21f89c21b491d272612df","description":"## Getting Started","_id":"hand-polard@1.6.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-HeWdfgdHu15Bb22QA9fRWQZtwA5sZ1xQy/KeSlHCWoKsf/GleK/B/sXPG/EbUv7orAEbeCJQ1OZw5p6FIE1OYg==","shasum":"ea5c827c580c57ac15639524f6afd603e352afb2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.4.tgz","fileCount":84,"unpackedSize":3762896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDKEx10nYDPc/TYPGr/um7nRX9/07WLErAfBctPBdQY+QIhAMSNNQEC2CWAGRw4+jJv1mRLcVj4oTdYRUaBaAWWkQc+"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiToU7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4wg//Qvx4OpV8O0RDmst6SLpYWc2gnTxsr6NGCtsvUVD6E9lxtJ/r\r\n/SiyU/ttzNHrH/Z/u76AcpC/pgitAvwPisr7C1hCb5uBDIwE7MOHDAhZxaUP\r\nkYV97PBkNCrq3QacPsBN5fXqvJ2ESTVL0joz/esdMe1ScfBZRTqIYiJKg8/4\r\n/66Iw9Xkf2qPa2Xs6UqAPnqJxkeBeK+3MGogoYy8A36h3X96I2YyZ3HYp+2S\r\n35Uy6haWcMZRNUgYXkneXisXqTH4Iq00/F3MpK6I++Bq4NMozdJIz+wILYhM\r\nvAYBDn1jnq86HoO9ZuoXQLQdUtQOknl5agFhJJj2ADs7rDYmX/ORFV73dz1J\r\n5dELpwDWi1oZ9Y2pEG6qfk908kXjd9oGyO7JXrjJkrdcdmUZgLnmgDDbNxtX\r\nG62e2TztkQleQne2UC5jw6RTcDr2zN1vciO7ZmdAMPuFIGPfSaTpf1MFYU+3\r\nOkSW8DMe11Xfy1+aZqJd3T1HG7lG6EbacCQIltGCVNKUIz07jIbdd7EGQll9\r\nusYiBAIbwAkNgvOyIayZ73o81sD2gRJAnrttB9RfYYvlVa5YNZbuCdrDoS0f\r\nrimwj76wqiosmZqH1YDWOqvyWiFd30fa8+5IU0402XgTlzILRYCKHIGJ4p7H\r\nef9vtOAfDm9ZBm+ue8afzgdbC1/7k4uHl5Y=\r\n=3z8e\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.4_1649313083008_0.2534040303619973"},"_hasShrinkwrap":false},"1.6.5-alpha.0":{"name":"hand-polard","version":"1.6.5-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"de86571935486bcc54f7334dd939824465213ac1","description":"## Getting Started","_id":"hand-polard@1.6.5-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-wIydircpwkRqVDkefGjWuQvAcL+wFgQpRLZgBwXjoigyShvbePrn6825PDdyQ35J6zDy9zV/EHBuUvYbdOG68g==","shasum":"c8c45012f901ec232d412e0872c3634b6b7b204a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-alpha.0.tgz","fileCount":84,"unpackedSize":3807108,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYZqJuZhCjn2ds0oe8bL67lci0LXMDBpO0Kj1NRmF0HwIgHaEW8lvSesP6fe5jYJoPElsTx9qUmpAXgt5lekFVcUc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiT6CeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp40g//dk1Ctt895NXbXsfZDWBfooUM4ZCiA7hCu/M9WQyeUr448jE0\r\nrCM1sZjw9HWLMffkdFDW8UmlmlBYlUtbJU+lPhSUjZn8AeRVqe/ugHBLTav8\r\nw8dcQiHDCpzBWTW4gMoxALUfyDswSfV0svGgWsWI7LoC5vL33MGYNaQ9Umjj\r\nr1YcSdwArjHtUtWy0fJO2jFMhY366rpVPJLCoqNfwlprmKXz6HfWO7kadlWd\r\nfU+sPUp7t2p4pita6Wp29E7QZrhYgm5rlbR3gLtnyKL47vXUkDLTokGMV3TZ\r\ncbWOP67mfbtZOpDvpi2PaHNrf94KaqOegonFfPFZT+vWloy7w1P3AIRudNq0\r\nomoVmaeXsqEbyRk8tPHIiVej7zicyFkIrJu8vnbjpnVWReERKTYUgAtEh51/\r\nw8YzSipUS+sp5f1MYiXD87UyEADFgouDWODYBBvDP+QD9QERvHzwWDJ4LScD\r\nntHTWStSPf1jGqW39ebB55fiPP0F6VcnHKmuUGQfJ3ctgrvMh8BA32/RkRo4\r\n3x0GLB8Oj+yAE9nBt3iDNjIbgO1AA88N6edLwoXmNBZfCFR7C33056aKDSG5\r\nz76zBwJlEtqrh+kHBAIrZFlzKASEhfOpgMuxgiPC9y4g+mGKP+ISslM+/6tq\r\nh+YFkETVr+zt7H/Ah4qPEkr+TrLAVtJ4AxE=\r\n=zRB+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-alpha.0_1649385629785_0.8911499542041215"},"_hasShrinkwrap":false},"1.6.5-alpha.1":{"name":"hand-polard","version":"1.6.5-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"968c9fa490d28a7c43180a55dbd93cfa3561f056","description":"## Getting Started","_id":"hand-polard@1.6.5-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-bSr1lppQfgjaxrQtNVvd6IcNigHa+alFwkpLYYHVWc/WrA9aKankkyrv98f2aBcY9JCRaFVUFCYeISnFP+wV5A==","shasum":"69a0eb0096c0ce0726f3d48e806af3486824bac4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-alpha.1.tgz","fileCount":84,"unpackedSize":3807407,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICXVTyKPyjKV0DTyqZJnrVfkow1kIV4J66iz3BcJ2NGJAiAu2XQnW/cg2yAmMjskFr1RW7yeSzWmSf37/rB91OJZXw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiT/ZEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo7HQ//eOJeJOzcKpWZNbWOLOpMKePDcCa78uzi9GgwvsZsZarVgWaQ\r\nl4+vRWHEyZG+HK0nL9RsbDkBkkf8t8a6kQiBc1cye3G0JaktOEoOB2tzlq/t\r\n9ygOPGqRjr5hsTpy8V/4Y+d5OVBCOYo+oNc/MHDSKCB9omkeDZ2JP6Z4f6m0\r\nLm5sSZK9LCOx9TcwW9MMFqEIoujcsGescgEuabVrz9O9jauFx5hqh+rXJlAM\r\nIoiZ3HVz5Uc4kTOiqHq4W4JYx/TjIstFAiMnaD1TRLZQmrjCmS9f1YpKJqVN\r\nnTc7nVqs3FoghqQtwE7RoBcQlBp4j2ruBnGvYGEl31b1hrxMrWfnAcPzu/dg\r\nsi7c4JW11e3uPe2+i5zbVNO6xiT+6tpBASS3IWaJfHlZx/Cl8igLtoyBagRr\r\n/I6lLy+ek0ug3IbtWtct7FmxHT7bG+yylgiNQDWlE4DlGRJW+wg7CJhrAT+V\r\n4ge2xHYlH8RuF+bibNFjcFCstGL8uENjz5E6/v7ZpHMdIwt4uVcVY6vzqqYH\r\neXdfn/ISt9a4VvWLFFhF6g1NU1RDJDyQuwLxXXjYAOp7leujQu725DNjOcm1\r\n7ENKQ2pKfCbJUYWRPkuNU4OfV5bRTMbDGbXOLeIRfod6XGnjPjHULWh4iEXP\r\nv4+DUqMMBPkcOlM9DaQBEPFDSa3zhKB4Weo=\r\n=/lYQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-alpha.1_1649407555940_0.8662727808676645"},"_hasShrinkwrap":false},"1.6.5-beta.0":{"name":"hand-polard","version":"1.6.5-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"1ce09ba7e8611f60e0c736f92d03c0e28ad5dcfc","description":"## Getting Started","_id":"hand-polard@1.6.5-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-a0x5SuM+gjtRC72fAAPYmEi9HLc7151VTsf/++xDSvCjPSUL1X5pMa0LsH9jcx++Cu/PTcIeN6Ab+rEUDiDn3A==","shasum":"9ecec56c66f66d2fe264f05cc50fb8689e23fa59","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-beta.0.tgz","fileCount":84,"unpackedSize":3763613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFdvbEHsjgoDnj+NIHvyM2YW0KE7fWe9fAeEFwVXqzTgIhAOcw55BdWASn8MYHjrkUDAi54bkvERprBccBNqChsSm0"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUAXzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmowxA//WO7Eyte7PvE77zrnebhNRz93l/0xbehemH4kX5wzXx09S7YL\r\n3Bt2wN6Fkpyyop6mqjG1R6xFTUZW8nBby0rfsuRDsZoJ3RLJuEAhYWUU7LBr\r\nrplYgD5STqq0teit24i9LFlivMZgR3O6zE5M1W6b2+WzH2K8CejTVVz1d5C0\r\nXHeTHMbVlLo7JGvsFl/HAM8YT29Z/7fiq/FPhreBShYycRUs8Ooy+zhHogB6\r\n8h7Mx1MgVjXp/z52qKIzzHO4fW4yYOmyGwa0nLkmWS7nKe9G/G+uQuTcITzA\r\nL4FSD1TqHLr4/tHmO1zSDxMfJ3q1W/oH2c52bzJqQeyCeyNU05tAlwI6YDaw\r\ntPRLs+1QBIK7Cq7QUiQhQxWMuZ0iEERfaD62QNwEEEYBJJuopg9GarqLwWoz\r\nTZyDTBzU1JGlwB/UTy7C4ECLVc3LpaD/A/x6Ra3n4NE6VjFZL86/eyaQEwQ0\r\nMuw5QqqLJ074RV1KkrCCY3gt7HcjjeVNFBIjuqfHvbl+mmqJ5sRarATeuETJ\r\nUiGY4l5R0E7/So5Wy4lY22KT5vtL8L3yCH10mnT8UB7iyp826N8y10Lg0ORD\r\nIwnGp8key4QoCJN4ZcdkczZHQPxrQBPcqkJehgolTKccQhYiQ/qqlH4NQ/25\r\nP9Z/nCxHTFu/h/6wbWOXqe9+IbA8xy6tEjE=\r\n=Hxs+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-beta.0_1649411570892_0.802498927757366"},"_hasShrinkwrap":false},"1.6.5-alpha.2":{"name":"hand-polard","version":"1.6.5-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"eed72fa8f6a028f11a505a5ee3b7467b933e029a","description":"## Getting Started","_id":"hand-polard@1.6.5-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ImRW6R1KgZbhLnhAzMMGIxlkqMrOSVBV92POW1wu/nOSLZSM1ozZwNHZrP+j+py1eH7QLEZgPzZS4+SWO0Izzg==","shasum":"399c66e48d6124a936b5088a6d74d588dcb2c616","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-alpha.2.tgz","fileCount":84,"unpackedSize":3807705,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGi5uVH1w0ToENlgtijUm9/AGm/88xMx5hiJovXbimJqAiBz8yk54fo61ziVvM9d47vAvjtVIFLemhRYoTm1FsmWpg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU44vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMrxAAh8qiFMp/HvwNCwksEFjjekiVS5mG+OA8y5yignuuvDNi2XTA\r\nYFvyOGwuIEZZW8OWBSXHGWSOGWf0+H1Iv6KIjUJ5t5LII/rZtu3XUw8Lc2e/\r\nDw+yXO4936RNNJq0gTwsCWmCXT5XlnmpK+GXCmjWh5oPCYkBaSyjrO+hktYl\r\nDsCPryiNlfxz5xcVW5LaBOP+NV/zt+xNzSSGbfRjrLkAVaKy4UNQnhw5HVF5\r\nM9BKnFAdmTK1w5Mx8MHG6MhH342usUJv8tzxDQQI1GynRnZkvv8dMBbW5p0d\r\nUkys690+b84QwDfskaxFsDl/egxStySv6dazdgyiuf4erdMNA53U62W+2bHq\r\nVRCWEwm3Wc/Sbl5QriRN6YJ2E4xEM5KjBfb8pUU/OuferelM2XGXLKLZhg9V\r\np6F2fabssPXZrcwyZ8MdMpawSild22qp/kFKJen4ybv1dsdDjzYXFOBYKwy5\r\nzLbl0qRJP8Z/NoeYykoli24bpVH53cZ/NADrYrL8JgYlsPO294VKqixOECvi\r\n6iYk8ZTkBMN6eP7SC2z1SX3YL5URaH+LPnVtLs4j4IcgQMF+BZLIS2RjRaO0\r\nQg+tVLSGwB/OxYdYAwVCGRNAhN0+McHLluXH12dJHEvEHmgVHQaPkxHLIyFr\r\ng6ozafHGF9x618XFGfFuBbUuZFHTtxkwn1U=\r\n=1sdE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-alpha.2_1649643054811_0.448136775410346"},"_hasShrinkwrap":false},"1.6.5-beta.1":{"name":"hand-polard","version":"1.6.5-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"dae4deee37f0f264e38b0116e03326c3009f38ba","description":"## Getting Started","_id":"hand-polard@1.6.5-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-S7PK/ygWy2tb2tMiHxSpMkjw8NITrZxxPkaeXNlOx/0Ykv152lKvth96Uhv+oqpRS7jD5GkEDV9HpwZwjTxgJA==","shasum":"7059642da15f84da536a078e601afe5428359936","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-beta.1.tgz","fileCount":84,"unpackedSize":3763908,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1xgs6Ua17IQBVMGIaMadSvUiSR1hDTXqa0zES9H9UawIgRXEvWBYM3INyPI0eEsfsvrSjIfRGuf83gGdAj6f59V0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU9A5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRSxAAngEyNMCMktTrgkJGXqk2UnDZN7s18Pl0kWva9uUdUqiIjlbN\r\nn3tZwWaxzRuR7THEE9uYolYvz46r9Y7FvBN4HiiR2kI488v4uwAF/CYwpCeG\r\n7tsyMWWv0nLdn1Xn+s5fh7pas3DggfX8ILFb+Fi7mGlIAMnf8Ui0QKXgN40G\r\nE0I/LEZP2iSYGLThhw/vE0LkdcaRRwcSrqTxkOjHGRY3H+ecVcT1TjYrPTCK\r\nlAEAzjDKM2xvSZ5mw1mg5sd1PIxivbSn0REVoemcZETGJBSiGeEINR/1JFYf\r\nMHu7NBVT4QL3xFM0ygScYns6jCZWp1vJwzoElIdZkZ0lF2S9cDCDXYp4Vlzw\r\n3HsE4yLrin44d+W+4ZjBKWZ+AGo26zova9Ik5yjXj6s8Kqe+mZOCKKd7hMH/\r\nNiG8MgJfTOcNKhDNfyLNNBlcxkyBvw130FXFZBKvHm5Xj5kgLadKbcKkBCP3\r\n5iUHLb5HDSWu1Jiv6VKzwC+o2fn47+NS4jORjd1x7mhf3V0D2VHhCgVW6fWw\r\nzHyxtepbxhpvL61TD3dHVfpbGq4py+Mke/UOOb7nD5vVEIaiNkiL0NUQsWcL\r\nMNsdZVlcIVcNEI27uVOihR6bhewXrw15zhP9abJYHdoj1zQdH/OuZ88Q1HI2\r\nvO9PgX4Xa7FQc5aOZDD7I9iXp4q88dJrPOs=\r\n=TIZ2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-beta.1_1649659961003_0.8261494202329931"},"_hasShrinkwrap":false},"1.6.5":{"name":"hand-polard","version":"1.6.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"39d9618b2dc64e9b8b3dea0af1abcd8345106c2c","description":"## Getting Started","_id":"hand-polard@1.6.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-YjWLU8i1BgeCXU8WLTxMZevfslXuCTSIcQN/LE2wleebW+C1pwHhEs8Ty3FS78kqstAt0wpLYsbH/4aZxoSeDg==","shasum":"83bc9be0e95fb13a3ed5d69f5a2dce4cd86c97d5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5.tgz","fileCount":84,"unpackedSize":3763741,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFAV4Sb9/lYsX7ZtPThBlKKHs3sCKV+E1lRY2p4OupGpAiEAvKtZ91f64BVVo9exAB3Fj+0BPIz7eomh/jaK2W+xoE8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU9EFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3EhAAjd19Rv5BIRJ7dux4fmzjb501pk07cvJSNugXWcE8fpqGu2R6\r\naDvL9CUddVxxvPmQaMLwivIev1i8DssU93yi26cBoswkFzadWeQjKRrLEIKp\r\nRnhgP7/No4mlwpF2QsNgWawblMlXuB6ift3Ejej2QeMMYmUGjNgXwLMP090O\r\nnjYClnm3CAK3hpmtYs4ui6OqGfQXKZBEScG5F8rFyqM0WnqAk4239Wa1qBQO\r\nOeQ2FulomnjtYdL/3It6ywFVa11ouhvfPSKTEP78ikBpcwMiVB9l88KlZ8Xe\r\n5LDnz7OCfY+vWgmNVavJCgn+BFtfv4JLGLhRRgrCPy6MTpZP+i1UPBeaOQce\r\nQ0xFxZDauqZQzTKpcNGEwqQ7ti+W2ZjCeMvYc2n57g1PsiOTKVY7gFvAp3Jz\r\nMcT7YqEpe+Rxirb5BWegpHsOuedolTRGEiHG7sUOFR4kHBV3jt+WejhFGKub\r\ntjOOnhRnKrJ4a5CycqN2BeXNYqI7x8q0hBti0UqpjpO/KnR3cT3l23DQ+KX2\r\n1iho0TxGMMuoe4u/hjidUKugn2OqMX+R8mrpbygO3e7CaoOUZFUkUKG+PSme\r\n7NnIkNjebwLtnafZnl5FrjEGDp3BHBmA255I8BbigOUzKx9rIZLGwKr8riWF\r\nj89S8eT4ohhfNL4J0+dcuCzpxC+xroIawmQ=\r\n=g371\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5_1649660165462_0.12439868666450882"},"_hasShrinkwrap":false},"1.6.5-alpha.3":{"name":"hand-polard","version":"1.6.5-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"67cd0b5b3293368e25e7978a0c81b4ba7b33993e","description":"## Getting Started","_id":"hand-polard@1.6.5-alpha.3","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-XexX8w2iN8GMAkewuTuBYW/fi9uKLsQQ6Rotw9VYh2q0YYVPdd3te9ScVuItqIEXOMhF90QbDKd1cwKGUq4r1g==","shasum":"aebc519c07ece1a41359f0f6bc95da1abeb4297d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-alpha.3.tgz","fileCount":302,"unpackedSize":14035668,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdNVY3MLwQOe0BmakAfk9HrLdZ3CFMhditfgPPKiX2GAIhAMLpQmIVkNT65iz6IILhfY8iCH5ntffQTgwk0h8A7kvR"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU9aFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoy2Q/9HH+qCF51pTGBFCPKSUSt27j0PddegMZgf/bJDwB7EA9FImF+\r\nIpaTu/Y9BmA3l2tKVqmOS4lbLjRVJhmsS8xXX7L+Fyl6eM8JTejf9FXPzjE+\r\nJIWLYCK2jot6KZkrHMDGyEmsqSxy4jBjlrMfrfM0BpQctsfu3OjjRlQrsxz1\r\nQXC4MjRI2OxIxeACeV62AgCtSwyEWRkIyiEQtcN125pK7YwUiLYDVmNW077z\r\nKGi1ww4EfuFAa8SegKYGNu0GmAIUzT+9NH1PA+z4jYYJiQ1HAgiop5ATUZ1A\r\nMmcQg7/Tptyu9afuD4oYJ+9p+FDmgf9AIQaA6f4Hc7GsgzFcFmHHlQNPasEI\r\nImdGB1Kkuxqfh669ytW2IrfH5cQYKaMiryRMCiOZwOTMMsQNwkk23sz4H5Gk\r\njleJw5h/8CnpJzZo7O9eaKcPWOnVmO4Sg9bwgoZaksugW4Tfo3NBBw4meNHm\r\nwAtCyiSpbcWTBBZQT/J6PGvm48f0xyqVSeW486DQviAHy6o7L1h8TkVJxdHi\r\nZnOZL9PwtjvY3PCwsLaxuNQct8YchFW2vSMX2PMnqk3H/VIirlwtYNl5aDze\r\n5M3b8toklcP8oPAc+MOa2aPBEBCl4NjZTcB449KovNAFdNTfZ2sPqIOnKDav\r\ncqnBb08ugH2F8BJHuc4pDdCLHIwa+WV6f7o=\r\n=6Eqv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-alpha.3_1649661573259_0.6852137056300218"},"_hasShrinkwrap":false},"1.6.5-alpha.4":{"name":"hand-polard","version":"1.6.5-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e04b9f5647ed4a2716d023059f1b701050eb5c4d","description":"## Getting Started","_id":"hand-polard@1.6.5-alpha.4","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-AGBL1YOfswbDu2kUVNpSOKXcCCiRWoyN+P87jAGsGq6Io7c4UNbCMvv1uIF2TYvM6UPX1MICcqldDb7+2JJuog==","shasum":"a6b9d95bb62ec4ad436dd45d576b9d9239f9f322","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.5-alpha.4.tgz","fileCount":84,"unpackedSize":3812709,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCs2C4iTHGqFop5tqA11Xe/lconfTZeHol9AG641tU1awIhALHxy5NHYCtN4IJBrPsQ5EC+y43dQnKxJL/69WETXDtI"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU+H6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq0ig/8DEFfrqpbcO+Sdv4FWiSysAzex/eM4la2QrxDKhXhfwGZ96UD\r\nKicCUPm/Tt2ohkLA/VgngVgTL3+1oQ97KXS6r85o4ccetXK55HTGuTqe0c8E\r\nezsqYdwJxBruu4Eu2WjugWZrIudD/j53rg00CVOFCW7H9YcUK8ygvJDdz6/q\r\nv7/pcJTD/762VFWg62+fwaoURHHkyleH/AebwaBA3aGOh0cMIGNY/lwbPUYW\r\nfOI+EU2pGNVstGk4zEGG4IbBXemjLfp4kFDKOtVGTOc/Y4YxsemLoblZg253\r\nHf9VT0Pr5B5A9gQD0o52jdvvbLgvVddX4OJCD0kPEgnmTcGlY0TKmVl8nWUD\r\n/0l6gOmRpLk97ujZ/daIqlbphIlxLE16LKR54c6UnP90YZukTXjoJqVUR7Xu\r\nNHHgouAMToqTphsOIl/k37TS27u6y8zwLaYh19ZopTK1j6dcZne1RO+Yku08\r\njVHxiTnejDRNLqBy/YZDbbsyii8ZaysI2FpIRzABwGRuHMAUepS/b5wDy+z3\r\nUCX08ZlDb2/aa3GIIsAVHerhTTsK/CRdjbd6YzmQrsZALwiDskAD2NeafGJX\r\nfBwKRayCvbOFNDQFZPkNariSysD/OUu6VTt9azh3JNk/xeyedB1xu3BAgUoN\r\nkPRMgRLTaRJbZXVfoagW2rsPSJPiCKh5LOM=\r\n=hdd6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.5-alpha.4_1649664506241_0.45735746559018375"},"_hasShrinkwrap":false},"1.6.6-alpha.0":{"name":"hand-polard","version":"1.6.6-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c5a73d7ceab31dc4f727f26988339474676c1e8c","description":"## Getting Started","_id":"hand-polard@1.6.6-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-zTVyQ3bw8YEx0MzT84vVRGAjzzOmWXWdxC4PrNrt2Lr3MJh5zZT4ht4VYrhtsXwV6kNDJSYa1VDwy7TLBYejyQ==","shasum":"c10b3db0957967dfb5ed07a0f8224bd4d513513b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.6-alpha.0.tgz","fileCount":84,"unpackedSize":3812636,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBGq/w8pEtsWhG8wbHqYyb9NqKMiDd5b4uygC+5U8k2AIga+vCSf16+FqnrThukf+AZzrgo9XAs091c4+lXtFgoZc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU+J4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkFhAAnTquR+ZpUvkY1FBYeN6WyBo7yHy/dvixb1cfNPYaK/u6Ve6c\r\nrC2f7gpP7L6IcwrSQdCCMhUEFQLhTE47+8NyvpxGvjIRD/3suCS0XgQVCWT/\r\nfRtc1DW4ESmCCKmId0M4VHNex+E6uHMhhUBLwW0SbaSjLYm2FXjXwbybPDG1\r\nOr/g/576bgbosWqcbeaGA9zF4VhU5nZanCQty4AfxBsE3YKAc0vWSPQtmD0x\r\nug7lw3Tp07JkEeJjyRJ2JN9G9My7M9N6ZzeP1/z6/EG5m79ZYbyBaNz08Qzy\r\nnVDL0XzO3ncq1FJsMy7b5Wsb/V5GFVyvl8ge5xUNQAMQPi6K47gR8ya8h8gH\r\nHB6+N1OfzjvZnefwrN0q0CzNWI9lf0rRPGqpQvwOueVf1fYyDDItNaddnHLW\r\n8Kwf8KMuq36rpNbmVf1GsAupwORSaNzge7c4rqgq+fYW/zS7O2ikr7ATd1tQ\r\ndVGMNimcdBQzLBtH7NRVqAqi2AUX5Ytf+fFuAVZBUwiTc/4rRBpHn8telCDb\r\nGpEh9QSn8EdKqkVROqhq7ZwCLkeXX1AaqPdMWUEjPbaGYFqV46/6pcImB9Dn\r\nJeXd1nagr8lgigAI6G/QOwNo0lxJrXpdBCVJrKHiSrfRu+B56phS3Mqj51wJ\r\n0mMJWUQpvOyNzatI7Gx5/ky5fbBcfnAr/o4=\r\n=3+hn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.6-alpha.0_1649664632707_0.6701424901638384"},"_hasShrinkwrap":false},"1.6.6-alpha.1":{"name":"hand-polard","version":"1.6.6-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"eb0a21a487a666a06575496555dde499d489ea44","description":"## Getting Started","_id":"hand-polard@1.6.6-alpha.1","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-nzDmSdKsLAWBT8saxwuO7qSL+K2zu4j7Mgsdusf+T60LHTSkQ4a8N/nFXZeiAyJnNpES/paTACVtEmG6M9rZdQ==","shasum":"01528a527c6b49663ffef37cc8eadaaed39fa83a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.6-alpha.1.tgz","fileCount":84,"unpackedSize":3817131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmBMiJ9uIUaQTzcwUKQS9SLrtPeI5/sEyN6G/2FpGiKwIgH0FaSMe6n4FsgdyyoTukYI46rF0bkNK7WkYa/u2zBAk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU+fWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmropA//bauvBFJb4mag9WC9GBFl91/LFu5Ife5nlSuzNX59pv4F9xhd\r\nfegueA6nFnVw6zOh7K4QUCg6KHhU8wXB//R9SRlOw3qjyw6wYxhl/TQnvPXn\r\nOHxleTyJ939244lmn7xhL1frVGvYKgfOKCpj4x5KA6FgXIhSioOtTUhWaA7i\r\nZbwYI1FN5OzN25gOcByzSblZ5RiX6bwUmE7oB19m2fWCvCfzpN1+SQLs8n//\r\nqXyZZRxB3lJQO+N19IscRc5yLzHCSYqqHs26+o7W/jYRq1iXvx8pWg6tTswM\r\n8P3AogaCqDj19juL798lllwo6q6XbN63laGrYWCS3f3qMU3GoR5SqBV4Ub1v\r\nX2gyZVhBVHN9fT0SeNu0u9txADvTwuB2btCcIOjCbZ3WMOBSnGL9TWhfezlE\r\nmt6NuDa2RL+Pn95oy/hrdKxBHdcBJzyxRIoot67Pgh+vj/vKxhZzliK6TvV3\r\nctcM/VLbfPqkdHRTEpWss1lCreUErNGPQ52AO34kko31P38CRWgu/Br2J8Qy\r\nROX4l0EXZAdAjdqx0Yf/C1cylVehv/l3aiXuS132gF2Cb9r+o0MCrc98OYo3\r\nJ8M8GU9C46kfzmyJZKULVtGNNPx+mRFc1h9LpiRqJoimoLbAAprMn1hOTNEV\r\nuM2Xgw0cH1ZuteP1QVunsaJGfz6IAMegR80=\r\n=Vvka\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.6-alpha.1_1649666006468_0.35029770985047315"},"_hasShrinkwrap":false},"1.6.6-beta.0":{"name":"hand-polard","version":"1.6.6-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e6cb6a1685a7e3426900880a8b6e30233abba1a2","description":"## Getting Started","_id":"hand-polard@1.6.6-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-+Zh/F8rbD8zJ3n22McI7ZAQRNpnriMh1H38IEp6RqdaWrOGvLCoySEDDe6HByjkT9spFi3v8OPMrylfrlQiPAw==","shasum":"d8b3d50f956d6ae727a4e88416675e0d474e0d12","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.6-beta.0.tgz","fileCount":84,"unpackedSize":3761302,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH6lRuPLOfAXer9yuEfFPGw2fbTLPndiBX4AUvCqY8tfAiBb4/4nrGoM6VcHnF2wqtQAi3rqc8ukjP5x3nclavwteQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU/bhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmphJw//X//7wX+Pt5xZyPcLoh/w/FdxWk2MjpJ/N1Q8TAdW8w38fQdb\r\nX5SpTmo4gOlBSVqohb+rdCsUUtUxgI1MN6ih6priU1TjsR28RkQI/ewGxJhJ\r\njQi0CstoV7yxOEucYnLufKqD9r4rn2ltu1A+p5W8SOjxd3BNevkxvTvTzv5i\r\nOIBiZDdS01FsrcquHZban8SmS1W+4mpOfRnqw9+4obBURb0Q2A/dSag2H0+4\r\nrTcB4loiK/aK63c/Rscn/yHZy8UDppzSHLmBZlDVfff8X4fRim81Pv7FLnHj\r\nfpKQ7evdZx//NKf1i4xI2GkvAXpASoIA9cdbZKRgUC+3KE/24Y3OF6wjiS49\r\n8yWc92q14+tGCbP9HC6pC73uPRM3+MbP/qOAvlfg/FDrYReRhExHniUxu6YF\r\nRbf+VFPwSWqDEtv1doMnTVJx/DpsA7diOuWJXvCe13yYT+7YiMBu4VQJSPlG\r\n/9+we0dDYyc50medhBIeVYhLUeFzKAgsuTmdR0Yc73KOSFdaz7QpfmqjCb09\r\nj+RYpoRW3/HMH78oqLYAbI6NZFvxb1u6A+InepqyhfeIE96LKn6SbJQtxRbQ\r\nslNOh0tCHsGW58OKIZu03jzPsgsGle+dtbDJYkyKiwlp2xzwB9MeaA2lOKvV\r\nDCn0SieHevzf0hgA1b5MD7raSL5kIxUSCmc=\r\n=TrNZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.6-beta.0_1649669856811_0.26998019381588767"},"_hasShrinkwrap":false},"1.6.6-beta.1":{"name":"hand-polard","version":"1.6.6-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"eff4b2decc3e1b2d99f5bb3f25b9cf435115f1ac","description":"## Getting Started","_id":"hand-polard@1.6.6-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-oP6DTCnyKNFR7BZDhDRW70BpWFqFhs3Gzj5N9DZaBvGyIk654DEQr1K/soa/MeD3YVOUtI3Bnf3uMH2Ta4+9hw==","shasum":"96c9f2503a9405818fbad3adf3ca0224502c5ee8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.6-beta.1.tgz","fileCount":84,"unpackedSize":3757744,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDIcdxbJy75XCJUKtKcf0rYUkx0JNOjRHb9shzRkT2+uAiEA96JjArY10o1rfMG8ffThmvktGzyiz5qZgazxqqQwmoI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU/fnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpxVA/5ALGNmGdXTV+UTRvrtUpYHA4yxvI5Z04W084sZSf5qC1KgWMH\r\nllVWnQB7WsOR/tojqt8P9MkKMBjKDnQ+mawRczxFoDWH9Ny4qe3dP5OwNeX9\r\nVcKYLECs1fsVUC6K3WZu0GR5costkBgfbeBLQIs+pU0XFJcsvXMlXKDIUnqO\r\nOISpq8VatEVa/Tryh1WyuDFUVSeRZvfEOQJaP1V1Cs7iHkOyYe7DMtjVRxCt\r\n5eREwWAjWuYz7kUoo1yhT2pOXyw74/6gftCLdt/AHLBcqkxoZQfRQEA+d4tf\r\nWeitWK2+Y3hJHRPfsHtwTMikZYspO+aaowzE4lNvLGimekIdFXspRN4wZP0o\r\naCMlnJD6tDnymL8yxRifjysWa3UstM+iZAosi5Y8qgjF1VVh1dozDFWrJbQ1\r\nBmuCGaRWiJwn/zdI5Z3ZOFIj9pkod5ICYjnJFXJnD0fzX2wabeeQktv1Ow0Z\r\nTILy49LlGYDO6Shcvq8vlhlx2RcBkuWfEXfz8hV3INqNRhreVrVNg6o7tUNw\r\ncwvw1D4CIRVbBKTexO1PfvCa9P/EFzD6bOhGX7X253eP8PdiMLUUDDBmwKKe\r\nyOqyS1ksTy6CPhcD1U3zWXE0pdmIK7mUm723tt6OFh0uDqki3MuoWXf47yAs\r\nemfwHXob1Sw+Qqtg6rNxutPiEHmrcGlJYls=\r\n=KsT/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.6-beta.1_1649670119633_0.3958658351829889"},"_hasShrinkwrap":false},"1.6.6":{"name":"hand-polard","version":"1.6.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"6fbbb384e5ff0b63a4d9c247a1b7ecbcdb8eaab6","description":"## Getting Started","_id":"hand-polard@1.6.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-WyTpc8svvoRUqsTruKwRGaDrnfOIuiWPOBa0liTwOxihEL11pdY/tB86bEpoG56PndP6svBGypZggQV71LDXog==","shasum":"ea03eda26e83cba211ac1e5129fb196158a4e7a9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.6.tgz","fileCount":84,"unpackedSize":3757206,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUQRTELS/yGI+xJlRK8TyiNmZtCqU23e/n8O0rHONQXQIgTHluZVFD3fNqz8EYXewnF19o9iUD1IEEJARWAnP7M+8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVoIEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqa6A/5AAEbmLtYxEvyfn5Mhn3IXcnolxbzf+Tz6dv8/ZnbDOoevasf\r\nQQSfey3V/LanlMNob5nML/tIb3bDIEnpHedc2lcw1uvVUFUeprv5F5wywf5F\r\n2fGjQSJQeTArWO9FfLFT4SzNa+5jVunWAv9xmCG8dIF7w42HJXv/lscVcMuk\r\nvNSP8hcgxrAFRcng5qVUVuOnAdT3USxSBIoP4zv8gc229aLxjPVW5cZLp24C\r\n6thSs6c5WR7Vu534gspqvKaWP1G5LlHwjSgsRzPrCqVsoyOF02DybFX0tWF9\r\ndoJ+P1Mrkj7el5U/6Xe+qyYJE2cyaKMemSqYzHVAHCR8W5xYdvZ5Q10XW5R5\r\nTrlZNWIUqpsAWvS6khalTgzky/BU6eQF3+NmeFcedizlO7HlBf5qC7aPDZVR\r\nvk+AUTtEjuaE87E2kpM0cj8ehoB+kVLzN3HwyrHgwu8wr+t6CSPPrXXoX06f\r\nv6QxgcTnERA7tX8I9Wuv+UfT2duUg6y9aBs2zXzMZ3APwfkPDzDcR7bo5WMx\r\nSj8AqPkosO3Lml9CUHlLIZf0j1xKDDKEt630HnXA1mJSgAklXz9B0d6JUdUf\r\nKq8WFUmjUBKs2GPSYTcgRVmnP9oEYtLes2Ab4ba947/oi0anB2a28GOejwdE\r\nuJ9URYrUdIAJXsdWuj0F+Q2d20wah5HPU64=\r\n=CEqJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.6_1649836547853_0.7312386104612905"},"_hasShrinkwrap":false},"1.6.7-alpha.0":{"name":"hand-polard","version":"1.6.7-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"d689322202076d06a30e7823b9077991394e2bde","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.0","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-QI7h5eeusqrwX6E95R0F+kNNz/FRqjOnHB+XRRt/PzK8Ye3ZuSfEUAadZaK7IpcROvcs/03l5uPWmV/v0OrsSQ==","shasum":"632ae287271f4ec2abed7921e551f668e12bc5de","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.0.tgz","fileCount":84,"unpackedSize":3820966,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHBlI788NgaFkbz0eLH7wRLss6A9q7tPUaP2qS2l5mG5AiBO+xuUa/GxT/Eja/1WyV90bkaRe0Im3uEY/8UwqgQ8DQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiV9wZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmofPxAAleV1WcXA6ybvJDUFPEPSVdRe0w0SdwxN5rRNvpZBPvZO6qnh\r\nvrvVB6j82oDsieLlNDZQAfHMv0HxjteY47sQVDxRNjAbQ7mNLkr2UeCKQT1z\r\ns+h+jLh9c7X0acsGk9lFP/O00bxs5hN7QX+KDwNgAnDvRCZDyne5SGoUJNhw\r\ncqKzGgQnLBtpsdrVSeS63N6GNIMoa4BY86OytZlir1brlH0ldixLI/gCgJW6\r\npoudxoO+qs/39EyOKjVx5rodmy1rx0XCTBWmGqu2C1/j+nhZRJrF37MBZI/K\r\n+da0GwrzpEeBy8oIHy7xOH93q/visavVEkr8bsHNRY1FRIIjSS2iH1rvOP6j\r\nP0Bwwy4HEwM0UBkWtydM+74irfnHz7Oh/hjbIV1lEZXHKb0QnRqfLbY6eeZ/\r\nroYBTahKI0NDKYZq3aoV3bRmmTpCfN/s+eAr5Kpqmvi40ISPN0T0iD/J9z8+\r\nu7JoFJ7KQ6w0Ta6pfzBwBuX5H3jlvUIQmhKSzg9lSvtrV5qjDOHXwDsyvoHX\r\nY5SDCD1ysIGmAY+ZB0yhsv4A/qksZybKcQsLmZBAxqfHMKy91gE3gn+7SXlP\r\n2aKce5Cdj9uQpKgDjln1Vm1uvAd/qbZh2UpJoQ1w/9tPoWWweQPYJGoqCgX4\r\n2U0XXKQruL+Otk61ozjMp2H5IQr+TlaRouM=\r\n=5Gyx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.0_1649925145412_0.32233550454512994"},"_hasShrinkwrap":false},"1.6.7-alpha.1":{"name":"hand-polard","version":"1.6.7-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"5eab398003aad99730bf324c7c21072a38b03f8c","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-d8b84xy62G1RBKz3VxqNHKpitDR2LS96xgmGmFQW1wkTHZ1vZBeofjHGb/aspG2HHPBn2aoPqm5ncZyu7pH1CQ==","shasum":"91b36822af1e9d35c864260afe05c1ebd17f6f25","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.1.tgz","fileCount":84,"unpackedSize":3817630,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG3UjQL2DC99B3np2LPW8uRkmqly/lY5zRuaXG23ABTOAiEA0YPveN5IuyqUT5fxVYskIutktg0TF7smKGwta5oFfOY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWM7qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRBBAAjrV3AgVwS/ETn2hccUZoz+IMicQnWRWzxys50utfJkNpyLZA\r\nxXGbDasQGs5cTQOypOzz9B2YCARoJnD925LQ7D5hOYOYW42f5CsYOoKjtkjS\r\nWEY+1QaqoJF2AFFqwDSUpwcOPFmP/k2T33sP2/okU9fRe58QY4IG3Sbk0OzV\r\nrz8aywYkfwEk5CcvzFqgD0eVygPi8QRwG4yixiPDQ5py15nYNsoTn+zfWYk9\r\nLWgtJR8o6WKPoMxRC9toiYxbIZ5z2ITH9ArUZPdOfhATDDevTkH1lUZ4Aek0\r\nnWnURKmERUkVYrxxvfzVWdPSPADFVAveiuzUhwZ6G2y2Lt0w6RB2dd4v5cJw\r\nXf708EsILcFIqT6AXjdsxCL6ABomVGNjWRJdc/Mbv5Hpo+sSybgXZtFweUK9\r\nSSW7ckyax9ncg59VQ3vYx2USnWwoscdQ8hkfq4x5hq2wewdJOrBkIijzzm5P\r\nSw113FxdV6Ekn04EmqiV9mJqq+P6qcoMG6erbC3Ks4AH8h4YzEFarxkr/xkZ\r\ng3LlxWKg1xQb0qlpilLUka1xCFWB+G4/bBzMqUKD7+R5lZc50qmeUYUIzOWq\r\nAtWvo7cDzN4EUYDetiLyRmfcxxIFKLfN3mrUo79GR4a9zXisgTFZyDJ37ppz\r\nFn7cQX7bjgDy+GbnOtUEQmM2ZgzuI4NC6wo=\r\n=QxcC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.1_1649987306425_0.10526312724446552"},"_hasShrinkwrap":false},"1.6.7-alpha.2":{"name":"hand-polard","version":"1.6.7-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"92205ec396560bb14f5af0ac2d31a295fa5929c0","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.2","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-nxs8gorIqczIpNGN2/FC8yvTtOXpebg9HmMHxyLg8cOkGOBKerNOabE72npnNRXVJQGeHlwXwyvGsVrTevH4Xg==","shasum":"67800efc761fe48861e6303b8ad5374f47cede69","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.2.tgz","fileCount":304,"unpackedSize":14184918,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDxqATe58CCaIuCKOnMf0DGh7caoXbk3hzf54QrVB1SMAiAW6njGskeKR1pSAUn244/3/FQ0V/4ahNlZ5t1h54QOKw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWSBzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVvg/6AxYXYoS7bwJ6FfMEWF3aZQC24PrTxonYpSlRluSIpirFP+iA\r\nAvi/KP8kvcUyQIPdxuJY3i3AA3u78XaaOUcELsR3pg/RwePg55IfbPxxBHIV\r\n8Kl0cZ6WHUnWoSzg18FuaZnAsOe9drTulSRIowEqgc3Q9dhIeXKzCDg3t/FT\r\nG2X90SMUZpgY5sosVetZpoGArtlFZ0BbjGV6E9q3fIY9iGUHUV0kGUA8wdVK\r\nWTdZUTcxmDNB/l+kEq4EnYXFKnmK39vN0RZpn59MS7eD2QQn+7ISt7n/tAxq\r\n7hKlqSSHg2H8tIu1TrNWg9NSlqoiSqx5KAliT5LXkK/Fv01UowIbhxmjoX88\r\ngaHzGJmrYBllU2JBeRSCvv1eBp22cPeLiFxvYaOta9Ng8ZwhKQoZNWBUdBR8\r\nj1HejinvJJNruM7lDE0dnpmNfFSCxTLFELTN/h0/ZOSfkoLJYW9YvQPE2Q0u\r\nrbTtC54PbJC9XfuLFgBqiPYfUIgcb6Zas550MDAdnvP3OZJtjePxQ9HjWJ4+\r\n2MaEWorE4yw1QmKHuRzGqmo9xr52o+IBbRlAxhezLl8KblrIZfR+jbB83iFc\r\nomGh+m1A6sLrZTIdZnZuYjW5oCqQTydu6e8kRVuQOZ9/V1yAG9PKtYT2RFMp\r\ngZO059lUK9sC1wdSSKZtbitIWx2Ai3r1oKM=\r\n=P/kp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.2_1650008179621_0.20077372124239523"},"_hasShrinkwrap":false},"1.6.7-beta.0":{"name":"hand-polard","version":"1.6.7-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"ee3ea020e8cdd49e494b6068b3cb86e018a1ad6e","description":"## Getting Started","_id":"hand-polard@1.6.7-beta.0","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-08fVn4o0lf5rb7t6EyiMLFYlvreENhFcTqVr7J0g3eglasoAMcSDTSXGY69AsVg36DhO6qyO86qFIOOh8puKYQ==","shasum":"4a1af09bcd36ce063fb527aa14719ef010a24637","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-beta.0.tgz","fileCount":84,"unpackedSize":3766159,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5UR9akuRbocz0Zl1p4Xh7B2g9nSEWc7y1FSFmPZJkRgIhAILPmK8xjpWex/OlI6Bx6JDNwyX8MVGtO9kGJxLlaSMf"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWT60ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/mA//bt4TF3CSxU8sSD/anthAtzV5SfJN5nuZtAlcptYZllzvJ90e\r\nFH5vBiu+3/PlPISu67DwpCEowi7DWJZpuMs+98U5IJE+ohIGqASpGqyCnZFS\r\nPwDtOpMhC/9sPCOYB/CibND66OtB+YoYh7Y5bSLxHB8EIzGehGVpy5DSsbwY\r\ncuu+5cotFRoGXhlvYD92uJUeRDSf2a54dUpdnOn7ekn3Xo/Lielwslnquwwv\r\n/FyeyRfHby98EFTPP5ETzTwOeohkGqlXMuX7HP549wmOY+BgaGKlAn8NlSFA\r\n1CHT3riXk4PDbmPG0e3ZgJTHU89/spmrVwy2KDqcHNZW/NyAjG3DlTk2L9bu\r\nf7qt1mki04aF3X3BnkCWKU9ozDn+7ea3xBkgRXg7OHWsnLa2++tkb5R/iZqS\r\nGcOTqxbEOQP1T12kI+LWVJALOo/LKTJPSIWcEaKcX9d/HXkdjsHJ1Nk8aI6G\r\noMMufoDpEw0mPHrsANJr+CuYlXXcQKZGeg3hxyqqikYqdb5Jd+us7I2EStJF\r\nE4wlcCljQte4sEQ2zkXMC/0yAQj//tE3/E1JTyw45y9HCLKX0UFshlZg6gNy\r\nYHXdL2Jit8zcD5MxRNEeHJ3XZbUW7ZAQsdyDeEApQGnt/iTuSrhGfMYDJ8ds\r\n9rQlG6pwrvqQO4I+U+In1kb8s89fINtTBS8=\r\n=X8Qx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-beta.0_1650015924129_0.6750995145838761"},"_hasShrinkwrap":false},"1.6.7-beta.1":{"name":"hand-polard","version":"1.6.7-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"3d1efaa12416e8971bbf6dc9c47003590767d60a","description":"## Getting Started","_id":"hand-polard@1.6.7-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-iCNsljEN4/itG+6yAjqUKeOjpyhTtWdAvseqRUUiz6A9lKrtzILoSAxjEImLNnKhRmAHeUpB5JTVTXoff/HJWA==","shasum":"5462af28d48255eeef2312c14d2410c72e9f50e1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-beta.1.tgz","fileCount":84,"unpackedSize":3760243,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCM4AJPktP6+IwiAvQ3U9S0lCOVrjHJxPotgS0eu73rNQIhAPKLJZeQToiTfdKWBgPBwxatXGn8FiJzf9A/gV5dMaH2"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWUFFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkSw//T5huAkaCytrdYA3c2EFj3f+pa6yKO+By9SOgwxSK6vnVRbsb\r\nmlCuoqLp1iAwOA3gBl88mP9xbSfTTQRYwKw4p2us20V/wv6NLbIfrwE7D56y\r\nGSOHgsioVC3TKP6NXNDiD16VXmhkp7U+FZ7gmw3Q1fARpLZJCnG99YHsl3TO\r\n1T7OGZYd4FHMOc/h9e+d11m+5tx6+UfXWzD/P3pckAJlPxadzWAWaCWqO52c\r\nZn6K0R+ps7jQa3tEEqyLZs24daD83Q/Uf0WBkGyu5n7eQPBwDmhIwk/AUZXh\r\nkG2/bgHZ1uZ7OKXtYYTVoaMzPZaPpufcZeBr8CxfrD5KplXpS7i9Ja0CXwjy\r\nSQRFE6tT9fjGkryndTRPu85GNnSXuttlbKiVQqSjuE4u+++w5gkhehItIBn6\r\nRGEUJUJvCbGH08R9ygGczfxgW/A2hYipcWdIXWZSCtJ5la4pEzbjPh0HjYSO\r\ncKbEoHtgdUgIsyCZndXJxYL6SFryC5nUOxiziJfhmDNTJZxOzodNCQ6M6gSu\r\n4pMHZi/DL0mPBVgvZDNG7YOY8FQ1gXZA8rFOToipmpsuLH4HQgq0wxnRqs9O\r\n8hvf78kod4kMbGea7hJRgQjkFfG3KSFDFUciGiyViVUduQdtnlX72O8bqK2+\r\nIsVbOy5EU1o+eTL7dfBI/F5TC7u7TLLXZ4o=\r\n=74sj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-beta.1_1650016580942_0.7862891083276959"},"_hasShrinkwrap":false},"1.6.7-alpha.3":{"name":"hand-polard","version":"1.6.7-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"562b51c4b0995fc37b8b90ddd7e0e34392bf383c","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.3","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-mDchB8xX+8Dp67mYjzAn7H40LUt0z38XaD6y3D1ebCirU1h29ZHUV+lgZYmGuEFNVbKjLxlBGDWnaNZGNfJxGg==","shasum":"9ecfaf32a7be679f7fb354e4a6aed7e0f8909749","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.3.tgz","fileCount":298,"unpackedSize":12499064,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJGnCpIGXZZ1pZj9vtg/FPDW72rBeDnZynVUPHrJYWmAIgW7eiie+nL4AY20EO+Pvh0+I1hoXJgz5OD14betXU0Ho="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXL94ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp1Aw/9GGQ76XnrRqFUxVOQXq3jc8tfBB/xsznebUApR3luT97O8LDT\r\ntE5T7onHWlLhSBAgS09ncgkai7NsQBOAPDoRXrxGu1ujw/yYGFuY8Q3dZEdw\r\nD/QJAbXTjfetoxAA3p8nZsDYNw6zIBq2E92kL8Mtpr9iDNp0rZrqTNHf950n\r\nkkpuHpSbZ/Sbj1pMWuJ7qQ03NXa5Gi7+M/WqcDFMhtqyyYK1wOx+SDrfHdBU\r\nN98qyi516GMNKEqHJEpy8J4NnGylsBES/9S5cRr65xT5+dKyvZ/sJ0Rhmiu3\r\n46Efnyq+KAGRRQAHH+ZVmsFVTNmQ8AT8dVe4Lhnd0dq6gnTKHgyG0hFzjiz5\r\n4b4/7fUbltsmWiW14KQcoei1uNaNBALHCGrtBjS8UbhiQn92lYv5WfYKDS4/\r\niLIGvsgBOlZV1ZTlUJU8PgZLIzyRRFk8L+xkekzjwol74zot7u11+Hfi5OY1\r\nuGSjm+qXjZTsNrdel8Q5Ic4+aY7PVavYN35I9fExz0e/QL/1Qs5IvPjcIYcm\r\n0mibMls2Lz7BJOoXIL1pUDaoVgSrF9M4dRTCVPhUttxZeDmj6wVUqDrtR80l\r\ncgoJMCnnGZDqiFK32uEOSemvlm8Muyva4N3D9zvGpZdm7xNuiTnr0LmATsUQ\r\n1hffFs6Rq4geWXl2jJDoZpQQxULnoPqB3h0=\r\n=RUne\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.3_1650245495992_0.3252520307458284"},"_hasShrinkwrap":false},"1.6.7-alpha.4":{"name":"hand-polard","version":"1.6.7-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"919ae65d2f4aa6f2ff9e3ad58f01c2751f272e2f","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.4","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-5Xw3rmEgCiQ05zPksuCBoJHn4LaOj6ldIBg1p/JZjq3jlfA6muYO80a//APZPf21qDF0ZeWfg9xlwHw4cmRdSQ==","shasum":"abfea72b54a5290431aec1165116c2844392979b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.4.tgz","fileCount":84,"unpackedSize":3830672,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAGgMx+xDb5N1m95DdPmAMvqZ/Km91XFdgO0b9IoCJsWAiEAisyagu6Jbjy2wtRsXy3KKkMuSElm50m52IqCIRPXdFY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXUvGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSfQ/7BU90w+SCoIfaSzVL8C7OHUvgAVe/2pfoaz8wEEkFm8xg1MwE\r\nuCCutx20xhQTgm2hA/qWpyHpuQ3HsLN0d+gPCc25GlqSzDb2IigoxFoNVAKv\r\nISvpWZ5kO6ptQrAXoKslb9Etv/rtE7zq8Vx9lw0YaJ12FH4pQloFQz5Px94m\r\n0IPfHVlWcv9BbJ2seN0tvlc4IrRa3mRz2dk7je3++UhWEI+0IkucQXnHT05D\r\naGJN9UllsumrHASs22w6U7hB2MoKjSmdvgP7zFS0OHm4GQsky7vDyvAsfq7Y\r\n6umJC2WRmL6SK8FZUthaoNyO4+oA7ISXOkIRmD9OctCsInvpNoNnXCrFZ2IT\r\naCC1RN0O0RTtHvNOYcO2SyN4HBt7GQxhUzZ3GkAk8zXI6GSKpMp3KK3brAGB\r\nIo/Ydrk7eohGuy5Xk/VtiOihpsgsnaThTEvfvWlJJH9/NZOTU3UlPHai+g5e\r\ndJXd2g+lqO6sUh/6R+P4QGYtrypuhyhttJekkr7qw6fMjNLJe+mn2bbkXRSC\r\naJbBruEuIYkyR4v9ckQBHulNHXVlHoGq3e5K+ZO3p1atxo1Ykf0KPL6QArQJ\r\nFOCD5AjfY9TJV/F4s1Khywgcz/DVvNjOUigAyJPMMJDGSfsjAdUckYtdmzpb\r\npy88Rry8ROGgOKcBGb9NohBdl1U/IDTwQxY=\r\n=6C9T\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.4_1650281413804_0.9243047764803247"},"_hasShrinkwrap":false},"1.6.7-beta.2":{"name":"hand-polard","version":"1.6.7-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c131852e8e578f0a7e10ab526d654426f0eca7b1","description":"## Getting Started","_id":"hand-polard@1.6.7-beta.2","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-Xa6M+CbxxOtkfYkvqcmMFGRhxDEa2JUYz1HFK9kJXCAipojMZ92XckEYIUp3r6etnKmAMitgBJisptUvwpvVDw==","shasum":"661df11123b8e219441bec874ebfdbf8840f4e5d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-beta.2.tgz","fileCount":301,"unpackedSize":13859313,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHX+/qCgDZvuJkUuoZ6RHGXiahH0qrmV8m4PVmP/GDp9AiADoupQxrRGvLZOX9V94BMaa3+9DPacSoIoW5yfP6cIoQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXowrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoiyA//Q/YM07/bDoYl9qzNNO1RDppyEJgQQmXcfx6kMb/VLMlUHdhb\r\nuiB6aeRlf88DsLgMhmyEIxZJeAD8vktmQTiJuprPLeFVjCaHhB9w4PjGZ6Ap\r\n10h+dpzLW8eTGveRxVfx8mvXv76zzYK4PtZsyb6IT0zuZLy19+gRhXTxRfgI\r\neLdOouj4kXjcDpDQWJFUHFUavKMdepQWsAv0+KYaKcmJbiPvyXb47OyP4X4S\r\nVde/irF4o3zNoc7a1M1b9s397wwILXjwqnMasRQVCtYu0Pa0HW6eHb05e7oJ\r\n/efXTJndrIfjo7GTQ5FlAL1b6qyahi+H628MSgXD5JsM5JOOKTjrGJfBIyMK\r\ng6DL6IvKN+XZfCsaoobOLtb2BYzOtX52NjVP7eQ2o8KRKEQaBi0RBbdv3tUS\r\nwPLQ/0x8d/HznXcYIw8d3eRYktyDtXSbG2nLV+Bqzaafs01Q9i/CsT+YGihF\r\nVDOJkyEeDrafVH6+RACC72uhbfelR6DCnVukj9HRS6YNvDu1461mJFZ9PBhh\r\nwOxctyN2+Pm3CnEBsTXDRE4SJnE65GdPDLJULqPmMlMjhoXvTHTEP7WkJ6vR\r\ngqbcJSdVZGWPj5lf/OuVMfNGNo3FCKqmsZYN3QAMm45ANkcuozQVYyxXNf+G\r\n4SB7SfYbdn7AbKPMscvq6h42ZIImq/IGTwE=\r\n=I7yJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-beta.2_1650363434971_0.7825391118411982"},"_hasShrinkwrap":false},"1.6.7-alpha.5":{"name":"hand-polard","version":"1.6.7-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"a0959b8eac091493437faa7c88cfdcdf6980f0a7","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.5","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-DCX5Sr+by9Z90nQ0KGLCSEKLoOevSHhpP3ifosrIcSc4z5D6FQNbVh0a+iBMosWBAD1SkVmFoWAL6KQgetoXZA==","shasum":"cd0501d3587e0884b77751c99126883f585dd7b3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.5.tgz","fileCount":305,"unpackedSize":14890076,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCg+Ln5mshiuCG0szRhg2e9n58C9OKiCGmCQbQmrkVASQIhAJL2w6UjXjgXx02k7LKVITwHZX3cEe1lpsQWPDu8zAuJ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiX2T1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrCFA/9G1FjeuEsdY+Cp4QBXRfpyAqhTMGOHI3zr+nbAIFO/p5rm5D1\r\nhnRjV09fVn11sUObzlHZoTjJLjXUjLdT2LpezkQ7BaZ3fLm9Q4xFZE0WGhUU\r\nO8iwt2kTrhC3HEIQPnclG5aa38wlhye1VOXyM40vpdq2AT0rMHZCIhxiyyIh\r\nmXj4RjH9osWBbC+PVhywj1sXFXbnuzc3LCHey96N/0URuU7jAprsS5DbtPjX\r\noW+u/hG7y95nmw7/QnO8KXMlwHTRsZiCBIsvF42duIDBU9fK+6+/4bjflOaN\r\no8T+Oc3lIAdA0E8TbrYhsPYw1RU4bsIYrijlmF4n6zQqhthBH1JFfSiSw6rE\r\ntx9pIjAimtRIApsa7GFgXgtpqQ0Kxt8lqMZWcx7xKlBXMP4txMTY2wuCouQN\r\nr//+ua0RaA21zE3huQEM3VcraCQwEapq7Aq5OfDenqHZ1aWDJk2Xf4As487X\r\nGPjzevenEZcz6swsMm/aNwWhGGawNGGPUfnFksTTcbSODVhzrw2VG+pQ8TPy\r\nNEPOQIjRSTDtHOea7lWjkLCKy9b4yVButs9oabVdsuuEUWjM2795DX+Xeh5Y\r\nig6j/dEMzMhzEvJGoeVQDiFb6sb3j/sTODksaJXQ3nVnTtFzxnfNFck6Jzbg\r\nPEqFV3aq0Srgg22rzY/1JbOHxxmKsqyTMds=\r\n=b372\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.5_1650418933182_0.35694535931848503"},"_hasShrinkwrap":false},"1.6.7-alpha.6":{"name":"hand-polard","version":"1.6.7-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"af511b03a3f1676b1bd5a1f4fc4bceb821f0162e","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.6","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-Of1YNNsEyUdiIw6iaS/FjudpoHyjiNp8xe1ulmhD5nGhpr6T05qwP6Ifuiw93PDPCQLQhm6byUIJnt9q97jclQ==","shasum":"66efcdbbf3436774baa8cbbe9bee0eb434fd4cd3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.6.tgz","fileCount":308,"unpackedSize":14913946,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDo1xBbKLP+bSASKUnDk3IQwDbs8fyAivCzm1irO0rm8AIgSt/ts2VhEiyfK3NjiSi0WO6n0olMOwH5C5z6/+JWJ8s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiX3ByACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp7ow/+JHHx9M6YB0KFj8KOtBR6CKFTqK2I61xV/aE6uu4TxaFn+AF+\r\nQUrJovK75NGOupBoqkgq1hKUqBpJQECI2VUR3sW4GCtIwXyQDVE/JMMN8TkN\r\nd7AgkQrb6tXmkjT+uOkLSFFuTbCbGl2tZAArPpgg2F2O3OFaVgWyQkFxFqZP\r\nCqAdsRd2W6EyBx0XnzfKC13sNOUzCkKuurGksikb/ojU9IGc1LWsV45YOXf2\r\nM03gbSci7w3+aLhpWFvwJKg+V2rvGFtx5JXvmyDqEJEPA/smSU+7WaAqsW+0\r\nC14WrLTSoZhmSzK0hzB+EuIXrZiT2WnyQ0ifsvKEPKdfTTM9lR8A7V28toB0\r\nAoqgLN+YK2RZ1FweVOy0tdcKihASj8KV5DGAq1V5/dTVOnZr3t3K/oWwSx5w\r\njcQoRsqJMh1eeafKp0UWhnwub6qjxITB6wVbOl6kNBI/4hS9pfrVlwD5tbrc\r\n90C8g3jxCQ8C3wG9mUaVWkAwALiDmQYXffYSy2ON9cEm1kHOkpAAT+6Isw1u\r\nGlHKuUBHfmvPTFVZX53jnOPNKXYCTJfgQDqu1DWtMsspKak8ZeeI67BlsVng\r\ni36c6Ma8VVoSzhrRLFhYKB6JB7RUgosZ2ss6mWivjWTVxw1SjhWgRp8YdlPM\r\nzSYnWIoNMu09XLlRrYklH/2m+BiQ+cPym6w=\r\n=2cR5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.6_1650421873831_0.9111758862788291"},"_hasShrinkwrap":false},"1.6.7-beta.3":{"name":"hand-polard","version":"1.6.7-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"3ca5c6d5cda9dd183e679e678a69af09ecbefd7b","description":"## Getting Started","_id":"hand-polard@1.6.7-beta.3","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-BjY/2AI9UzdM+t4BKaOXNdRjyGQMvX3in8kRgdsZU51klEhyEJ/lul8qwfz65rXsUklTylLdl3yQfe/V3XQ+ZA==","shasum":"58fc62c0f3ebe2be8d75a544aff94653094b9e37","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-beta.3.tgz","fileCount":84,"unpackedSize":3771692,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQ0F835wHsBuQ9fHsZztVV2GDodvYeN9VI8zCqQuMv/AIhAJpsb85jZ8fzJy5vo7yCj5J5AYmivRREwUs2b3L8h9zT"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiX8LgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrT5g/9GjMIIU8KL2nJ839X7aUdXQ+69kGYycZzxu2lJANdqum88A7J\r\nZi3WcXZevdrvcSYbE/QehSzXV56KQtmdNVR9AjE4LerXbKB40ScyMf7DovTo\r\n1m/DKTpUw+bcXtOhqvlrter0ZvT2EpXtmb0hmROMDe1BhJbrRWJspRMlBeIe\r\nNETTEJqzLJzCFqonzAt0yMyX4tKhqDUiXqemrfDD/YovJPwJDO1k0HXi/JnE\r\n8npInB8wQUZ9YvlNi1f2YYIZR4WjlOmBQgK+gZaHE8u5DBQErG7aQ+nrgsbo\r\nV+E2sur/4s5IDOfwUJ16a04P/AqXaj4DqstW3Zik3j2Q7xxlgzm+CUei5r1R\r\n+yVy+pJNI3z2MexQM7NHf536GEcLEIoH9cejK9W59shS6cufeu7NCyotqfhp\r\nQzE0sKXqzpfZzgNITjUd53CBThMhymu74mOAw5ZoUleC9e/oI41kDtymv5J/\r\nlVgjYt2kjSoSPnkmbf37+qJ/+RuVPGwWhnARw3BdPJAD2KbXe1pLdjmWEq3q\r\nRPoKEF/QgxZFFMLWcXJb8OkuoWEIsdroMODFq13V421PMBzcwFXyOETpMaBh\r\nT0mVRAyo9kPGZXkmCzNiHYdrJzP07f5y84tdKQ2D2GX6Wy5HwiYBjDmbTjJT\r\na93pq7sNEIKzc0jjabYzYd1cL5SPKwKbImA=\r\n=V6xN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-beta.3_1650442975940_0.35993881844322084"},"_hasShrinkwrap":false},"1.6.7-beta.4":{"name":"hand-polard","version":"1.6.7-beta.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"4343124831731c94cb89e5447c21c394b8363a24","description":"## Getting Started","_id":"hand-polard@1.6.7-beta.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Aoy0ZvQcFiJTAhrRuozLKU+yFXg62Squl1VQUkf7Z4oEgmfgxj0p71C8LzA2pnWiZoFyZIx/g5QgqCnMdaWMvg==","shasum":"0cf08bd115a4dd95db710a5330d22b2f06c9c8fa","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-beta.4.tgz","fileCount":84,"unpackedSize":3771056,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCduyFmO8Z99X+DModGcp+L4rWHK2PJiAdBj8jBEmL/gAIhAKg/RMNnlhTCxh5ydrW23IJ8y5qoeibDU+ZOMMiU9wet"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYn7nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqw2Q//dGwc+eVxfYBCj4+RHSOhtA7CqeHlRDkZOrz9olp9wIT+K+x7\r\n6et1mZy8U/3URLurnLsj/8Zimgd+MwzS1kIe1nrc0C292an98b/AO5te+DTV\r\nzgGjAWSH9PZwPePVkEqAWtl1/okoSqTu8SlQZy5STN3OkjDAAIYQQRKFf8gi\r\nH+0pp0b+3/WplsAFMaGQ1H1iUCzHXD67GsAhitFaRsGLYvPgzv+FamanvfHz\r\nMim/yUXsKRo8utu1W29Gf39fAAsrJo9bbzqY/n1SzAVEc/uT4Fm7z3fK1ewt\r\nJAyCvgVeQotRcG2mojY1+zFcc5GWRblWhjrwMjXya9sA5jvKnsd7eKug23Mv\r\nNtETVKOUvKxtzVGYcRYLlYjXnKm0UNKrUjCgAeBSF3ngs3fL6Pr4FHOFzO8p\r\nTZLSe+IaUM93zZWFz70hbiYaYlyke72Qxa6DDHzRyfb2Ho7T8KE6Cd6l8ocT\r\nDw83xrdhkfphAeTM0oA5wy817DnwrYg3IVMFSLxpTrReyACzgsaXtU7URn2V\r\n3I2+UVuWMkZ1+ipnFHlMDkWZVprJaUksE1YLnCsM0fojmvByiAPh+a9YhFBw\r\nrk5NBnZF+ul+E2l4fzWMXMKCM95PgP5khctrLX0aZbv8OJN00tOQb+lGXt34\r\nkXILY+ETY0Y24tL6JdnfTcuYtIAM3j/6I48=\r\n=1Jxr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-beta.4_1650622182795_0.5900012510081905"},"_hasShrinkwrap":false},"1.6.7-alpha.7":{"name":"hand-polard","version":"1.6.7-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"678f378005badeae6e66792fbf539955c9593fde","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-NDbv3tjWKdXa/MrZa76hbUjRg/diRqQwecvB1e9pwFG9/IQgHsYgFVkaJL4dboiHwmMtOZ2QqnI7wxGQO9hzKw==","shasum":"4425e5992b405a72296279f070c3a067c37f9c6b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.7.tgz","fileCount":86,"unpackedSize":3783565,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDk8xvT0FD8OiCQyzDm+rAntlqoQ7tQYCH7brErEh3ZTgIhAOdwGSpqLQglq7+TTmRpFzdqED07xXukWNmR3S8kTGDq"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZkn1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrclxAAhN1Iqx+s3Lk6Tl9EAKbFNLBhT/NWkzRYFUMcezYVOGdPUUuO\r\ncymylvpAQ1BK2P1VWl8dvn1iEeeDsWLfzZn+gmoU4+i2UBCNnGRd9WX1Vzsz\r\nnmae0DrXhOJnFi8eNxTIQ1ygyyR3mggz2DUuHTUc34rIdjLIL0fYalX55yBO\r\nguoP3I698o84PPqxo23ghNElhmoEtG3Ywn3+ZlV1FUvCizOc6cK913nKhfa3\r\nvCsXEs+EEIocdzIIOoqmlEw08ezl1X+b9q4wSX1jwP6DhOeZxP4NMNr97PYD\r\nlyOxRJpx6plGnHefzw3ejlGuLzYhl02ICmphL+vF7KqpQuoZdJv1ajXXuk/o\r\nmqDwoOsYx/6m5xjSLgmR44e3lvJ0CJnKskbgDkQbHOuttRqt/MwCiKpKdHsK\r\nfsWpoIlxddU7PWe5Gecu7Uxg7lSp7aF1iwnoBRxhEN9CSP61bBPuGx54v/DA\r\nyIoXvgKPRgcwHPQaBDnc3o/xmZvs0ay2GCUPFHqTkRLldQ2Ul85w1+yIX6p1\r\npygz8Su4z5w3KposhqlaTlZB1C55A/libfwim35WfsVhzkPQjtImhz2pNbbb\r\nSaq4/QZ+iGZYjH9+vcQ00Qk2iTDFbBO9NAFmoRAiCw24Q13xYyGPzaBZ0XLN\r\nakhpXiPHfs5jwII5gjjhqUDpcSr94VNqZ6Y=\r\n=iLsU\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.7_1650870773366_0.8788473466063933"},"_hasShrinkwrap":false},"1.6.7-alpha.8":{"name":"hand-polard","version":"1.6.7-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"2849c4e73be82e5409f14f8d60e443b506acf83e","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-kQ5WoMdAKf1oRkeK0N+/b6vagUFr81Lw+LaDIO6ogdiBJ46gFNtyegS4NqwupgLaIPFBw/lsTCoXRMsd5dgxcQ==","shasum":"bd8a82bdec5291538b7593579b542decea183cfe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.8.tgz","fileCount":86,"unpackedSize":3839746,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAyvIWMbevXbu3apZtSfT3gMs7YpVgTYaVSSN2ZVPtM5AiEA5dAsLO1r/D2gnPXLJ8eCtKGpIqCn0JpjjKh6EIVZrrM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZkuIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmog9g/+I3S1FZ869SWEeufs43iViEeLdpE76FGTKg/f9V4vFjQF0HI/\r\nsZGY2wnnFHLtbXrPBjSqcnJYEv52UdNQgwYBkL6N5k/2Q6PiOagKY1rXs74d\r\nvw2eHi4Kc/DWBDt5tdjphMBc1xdxu+R4vtX6AmMT/SmTchyyUNzwKfNPdE61\r\nyYQqH8dMDDkeQWKpyzaXONLFHbnZRwSR4uUZ1DW2TQ9CrEBoiCptI/1g9XFA\r\nQ8mPq0OgXKNQY9K2eMnl2ESKhO+00yQ15+B5iJZFizfumtG4YOYkxMCujjri\r\nz3Q0WtvrV3uWoRAhj7s6AoNUyAd0qJIm6WdNsaWOtYkyuS/Z/RXhaTF5zEGZ\r\naMvw+vgRwpfq2nwkzpJGZhRyeV/ybDwGwUI9vuRosO+OnxPwl3l6ABW8bcxY\r\npqGgyvWrxaw5yBgbC+ZHwfAMnytg7Xu8i6FqJqAuRhyzzNkvv6QYFiysXV9K\r\nO6ONQLv0BCzTpCxm8FUz1cm8afq6gJXBa9CR3d4GEawpYHjgiIBRe4VWTvlL\r\nOeV9tV1iOjzlRl6M08Ki8hIcS8drgbvIgJnABzsze/mp1wQIzP4md/PPD/VQ\r\nmvavlYbOuMKsVGPbiTlAk4dc1MO5oJ+1EYQdBg4rFbxn+4likIKkzhtAsjfy\r\nXpcjoESNPRaoRfr/wnonYaAwDC/gAn1+MPo=\r\n=TcXv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.8_1650871176190_0.6557466632883289"},"_hasShrinkwrap":false},"1.6.7-alpha.9":{"name":"hand-polard","version":"1.6.7-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f7386e56eed1f061b898f49f30ce7a1283021a4d","description":"## Getting Started","_id":"hand-polard@1.6.7-alpha.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-H6QcI92K9a2411mqfONiBEBj6V3d31om5D70vKc/st4XYobuhpXsQPNpFlpg/NepEnXouV05dOHAVdIClcWlug==","shasum":"8065252245c19fb48862e9bbe5b1b5859fc1b7a8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7-alpha.9.tgz","fileCount":86,"unpackedSize":3839463,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDudK08ZcRneRtHKhB3xW++I0TFpnrM/L8oBsIMSO7wGQIhAPSwcSprnlcYuk7oMTKFDKFwdEA4CWYMjJjxlSwyhYh5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZlHwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrecw/8DPzUKUp5gKGJT1e9ULUaTA6ol1BgPZ1FY/x8rvHQkkAbjpcs\r\nE02SOBcZLCpINWIKGw0/tr2ZwIrPnvi+H2XdS4PZEHIpadPtVX9UAh7H4LEx\r\nav4Ls5gMSFNcbf0djfEkk5QpYm7PlL/iJLNm+AwhKjM9JGnC/NoTkOy3umee\r\nrUfvV+OfzhzMByJFNgF/H9X+e2W55QLPd3dTYEoZvdEB53A1EMPmD0U8rDc6\r\nbMhXgvoZErG+AWrHBwlrdZpFfF4HFdOyjoo7ubJwMdpvpMrpRQWPQORxptMY\r\nWJdDWDQhmV3E+Qb6RqMgsbieD+7HUotRSrkMAdOENgTxzkO6Xmg+SRjQPdzc\r\n3iUFVaqSdnRpj3LALrLagNxlz6Y3Pm/SWrIvYAoVwNXgTICVxSpx7pBxSdME\r\nsixOFcgwc321MiW77DevM3XNt/UeWiAv3I56tDYJrXWrkWU+dRxNINqKJrj5\r\nOkeWLTXdYlkmh/BeZ21qHhYgcxH6Rv6X+8n+pBT+HrsTJljEWOSjZS9WGduk\r\n8etZLYMrdWcHQv4b8DXeE5Cxz90sy9F145QPRVZxruRyayJw5uxXpiJbogJB\r\nwxzUBEidYGSbDN1anU4xFH+hDD4p52tItmL/EK8x0wLHDxNPiWZw97OjEvs1\r\nXAPs8NfilCINE/j4tb95ha+Y8X0o6doJLYY=\r\n=wi1i\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7-alpha.9_1650872815918_0.26571015675598986"},"_hasShrinkwrap":false},"1.6.7":{"name":"hand-polard","version":"1.6.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"e973f549ff89f695c9983f850a8ddc4db6a3b25e","description":"## Getting Started","_id":"hand-polard@1.6.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Ljc7kbnWWX2XvWPF4/VCEBER0Y8A19A+Uut5SzOsaTDyIlBVeC09c0ri7bZ5L/Xy7EElT67hFQuwdD9T5oigIg==","shasum":"0315a1f772ba192e4d5aa6e817ba97ca69ba1546","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.7.tgz","fileCount":84,"unpackedSize":3757849,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDoQEoAjnjcyPh8T8spFNWeKV1sWi8LRFWplFz+PvnvigIhAJM2xm29yVv8GqG8njDHEkj9Hmrpd0a9IeEvVStU9jYn"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZ8CNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqu2BAAjYWUM7pPWkirssAmabhQ8FtodFi0u8+350lRJzC4ndSNsaym\r\nqok81hxDzmgqkkvb2wuBCIvYcZO5kxqaZtNSr2AgVbLVwVJF9GH65GogI6wM\r\nx5LK7rk4q/NrmkdQAFAVZZMpRUCnRCyA/mSAl6fYPVFwJLly2m2bjesGqM+F\r\nGz5IdIEoP1AxjN6mVRKurLIp6YPQ1tXHfdu5pe3IzdMD3kQOvJhkrwElvYH3\r\nkiKQ/iLI0XKt2OUdAz+eJlSuf+f9g88aCV36LCUTLm7ZvEqn9SR0NYtYR5il\r\nDHSGDrjTRzXiZizI/qWYTja9RjktiziSAkCJAeTFgJCPiNK5Tjwi0P/XsAUX\r\nGI8LLI+XuDo8DHghDnjQdzfFMnIPWxuQf+YEe4G/tgGzt+ZigaRq+yd7Zm2Y\r\nGaw7i4sxYhRzdVdLqcawE0L83wNJDgSjyV3HxAmz9hNl0mcwYBAiDeqRcbgi\r\ndRgKi27B3CHkggxe0Qoy+OP9jUV/gJrtAp4Ola3MxQLClZti0dEG5n5TnDOi\r\nAO5jsLvM/W+ENLVl4E5/UMFtbG5OSHk1xif8h5P88fF67ZpdeqNAHTwAM44Y\r\nO31z0CK2hQgNFpzJ861WnsZnQozU2YqCQMiltRoHKVaNfA4c5+fMAH0sX9DX\r\ncgQ5TAbiscueYvzK6e69ffJXAb5D9iYBPZw=\r\n=6HOe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.7_1650966669766_0.7740885995209719"},"_hasShrinkwrap":false},"1.6.8-alpha.0":{"name":"hand-polard","version":"1.6.8-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"d6bdbf007c4101f0fed788066ccfa2d912a4bec0","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ft/xJ3EtZSgHOBcaSk7UZ9wwfY2HzMTnBYBT/Oz0WfvWH8ak+m0MPz6qXYomoAGOMGe8Xs4gCp8T2T3xbKh9cQ==","shasum":"6398f9c2b7c507eb9e7cfed2f8202ecec51f7efe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.0.tgz","fileCount":86,"unpackedSize":3840346,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9MBRjbx5bgDE2r4lT+FPiX0nz/ZV/HHXL0+8vZdeawgIhAOab0QUdcSID5dJv5X7ZLt7jFkLo34qqgQ0UHdBkD6Ec"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiaKBxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpi1BAAjSIJsIFNdOIrMaETmVS5ouJgo6KRWE4lNuQSLe1/dXzbkglI\r\nmb0+SNrp5anRSlXIW2l/1h4LtHCXdA1/f0NmDAPBfaBef02XZn15AzSE3APp\r\nm2QvSAIcEP9T7s7ZvQAZtaPj7D15Y8z1FT2bbBL2BwxuaoA7AuAEnEpMLf6m\r\n2KEiDo1T5CCfTnWurfFAIzD2RpXcbLnJE1MHDw40IrzVChEztYYouWrMPvmx\r\naN7CPnHitH38k/FyKWm/pIVtmvzdqbjA6ylZBOi6q6tWVpPnNoOdQUurmP8E\r\nOZ541gBGg9qmySfGlHUqXHjwSGO0qJhMViwBMyYpVkUHoQt6nUVdma0Uw5T7\r\nk5ASVSczCh1TNubIntXfIHL2B6T9BeQQAXaPZ4T0kdRS5XRNUGzyaV7gKEQY\r\nHv0Qw89QnAoPzA3dZZzAbLO0COT1ZHtQzUhamKjv2OwLPaLkkaEV6MkixPQz\r\nojQZuAQSVpRN/5zbx/FUjSCQHV2OgVGv6Ik97o1CikqG+MI2NV46wimu61iD\r\nztnzN6CdUsX450QZbcheDy5Zd0PTfo/k7i/7yypCFDJkaRdBM+/HMzaW8btm\r\nHaE+npuePNuDIseZZZtuif7QuCxx3R+YyXKrI1M5A/nFVsAbiWocZZX4ejqA\r\nMx3l54oipFGxwqgOFr7p5X0eIGpxpbagpTk=\r\n=j+hS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.0_1651023985608_0.47188602295089477"},"_hasShrinkwrap":false},"1.6.8-beta.0":{"name":"hand-polard","version":"1.6.8-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"feb50a238a9b0ea681bcf6bc67bfc9f98f82613e","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-7GvfgiJELcpHoGEmVYa1/y8DcpGPX382lfkW4LkE0wk6dHd56k5CUMGVcM7UE7Fql1/HIIGG8DPD0ueQMdEs+A==","shasum":"71b56dacbc46f4fd595b569df9edda395a3743b0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.0.tgz","fileCount":86,"unpackedSize":3784301,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwRFND8quQj+k357I3ai0Cyhf4QuPOl3VS/GxJ3DVK2gIhAKEkpxADXQd3sgHutDjKF5XuOzfK9DKzbM8A+UbmFOBT"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiaQMHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqfog/+OZ37O6t8QrufRbvxgtyxXpGN5kW7sOUDnF6begvKQaIFvXX/\r\n+UJTpDRKruTxn2R8n50FkKSypLa8HtdUMkE9OomKXCYauWr7+4njNBUZUFxR\r\nIiUlzfFStRSxssTOsqyyp5TU+hFvlZ5HVXeDLcICgayB+Tw5/n1OGfgCnESu\r\nJYNVEqXjbNXNy1W5G2/6fLWfeG5UWZToLYU90i+NYaeYs7o70LH13YItRslU\r\npz67yHgjmKyap1OXGl3656goYkHt5IN2Z1kgHXU7psYbdJqju4ZJY2CpR5uq\r\nKmr3/06x0a8XvtWWAVwR+n4RfzyIUYtcpPjEoGE9kxZMHJcZIQJhfdElye9l\r\nCFMN5ptL3IUWFNPGFgltf7RDZyVIyXWT2GzeTQXQM1dUfj24H/4VK/LF/HYE\r\nLb5arZ9ywKzKoVsgr/WyGwEBavMvEXd71bZL3Qqepaumt+wd3+5TEJ25Xc6u\r\no66peoW3f9wdW2026cO5wG23RziRHaUubz+Fh2bpIgWX+zissJKRBjnNmMvJ\r\nNQ3ATjoPWBqHCswZLGMw9TCW30WFr4yPx6aD1o2/zE/oELrZ4O3bJP5VbNxs\r\nR4gFT1NdWU97gbA8LYImIc2iGoWlr7hqSJABX1txMlwZScRdl4fqaOzbow2B\r\nzavecy5O584M0Cw/Boqy2EJpi+xHmMOyKco=\r\n=XfGu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.0_1651049223076_0.4058506465981766"},"_hasShrinkwrap":false},"1.6.8-alpha.1":{"name":"hand-polard","version":"1.6.8-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"b69e7ebcae8afcf68176d6766e7d67a8dddc68ab","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.1","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-mlJevb2pgwVqfD/ijAQy+ZijzG7KCXtvzpbFdeEz2NotrA+p9PzmifAOCDDM8P71KUUPmGIrIT3Be6oZxlM2cQ==","shasum":"187a698a54a8ba6d353d140b8bc783b9de2e8eae","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.1.tgz","fileCount":304,"unpackedSize":13986198,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB8d9tP8xCm0LnXZ5ISjIJKgpfhUHRPjRhZRvM7jzO+2AiBosV4qvA50d8cMlVc24NpYcVIdM7xNIBgJeZt+D8iGzA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJialqxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmodxg//WPUMs9Dg2KzXbMTHZppBetZe3R9iEzAtSL9VNgGCHtUJ4Pjd\r\nyQNebhZqAiqPQg02ykUoTBxTwkwLtto6Ej43yo95x4QtTjOlVTVprPQEAJzY\r\n4BF+Ozgi6d4pLcvhL7eBfxyPogkBkwSUCbHZq+9xSio4qp/rKxvR4y9HSTr9\r\nXtiIY6Ws6Gs69oZq/ihClWFah45051zf9fRIaCwtDO3mA0Bicime4/ni2EmQ\r\n2tLZLMdht+goMXK/f5/x0fbV1ia4nIem/v9xKWpjLjjnzZjSH5BWKoyw+UTf\r\n1Sq4FVyf4LRTKn9+mf5kljjyVzvKZXRy00ihn/I1RL4ykfdB3hgVqhDS98gQ\r\nTiJCOZtqDREvyK/aQQGR0vuWUa6+zqlIiVHkAN5spD7wnIYSmDYHL1lUjcEA\r\nVAE7KV1F/lKr72kxK4T9vwFb2tIyaoB5UooPf1D3NlSxBX+TH6jf9H37pAlz\r\nm2OSiuaSho6sN0Ps7X2uvxSoTmtdlX5VirpjQGnltZaQbEHBx8l4NVWG8VVN\r\nQcVkAQLjDp8TvbDcfyeXQnvV0viXPBPhL80aUcNP1mxpvvU3c15DMVW6zpI2\r\nnklizWzwWOFqg0ISHO67mSBefe5v12ahc6mMJ2F2cxA9AxezRomB6PnYQPG+\r\nfNBd7GHXUCil1/auFOtJhtDkQINcuN0Fc5I=\r\n=2tUl\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.1_1651137200656_0.061453257078951884"},"_hasShrinkwrap":false},"1.6.8-alpha.2":{"name":"hand-polard","version":"1.6.8-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"90971be141856ce47147686e899632aefe3a7e53","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-pJI0rc8+2VeIkcwVsvMSR216cwYaCseoc4mYaiS/K4KleJ64f7gxwq5dylqasWq/M8CtjYgY27EsX4cLfWHEdA==","shasum":"10deca0ac17756bd397711ae80f85456b8b28f79","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.2.tgz","fileCount":86,"unpackedSize":3843376,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCy50XCcirOVyD5tXUUqTb0YtYQttawhaxxoWDvstbYjgIhANNReTugCu8Sv7g5o6Imkm6ah5eRXDLjMdBOZLZTjhYF"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiamQfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoOxQ/9FFMU+xbOlYd1UTzcDpD8hAOi9qCENsDV08/qNR0/8V8kKs7M\r\n5QJ+SBDl/ckftrjBPBo7h/LZ1IRFJ3EiNXOO79MyzzAyHo3sX/E+5M9bbZnm\r\nzhGPCNfTwEkzSmuFOAcp/cWRB5LxSzq+TCP2pi+Lq1bPabyG7O6iNDTZe286\r\nRsK5DFBpsiLMcESuCiXuT3J8ULrxTbJFkUkrs8VD8b3jfCD0QcpixP25oOPn\r\nFJ7PYIE5x/2YPtoH69opZndVitZZ3bQ9xpFHmCkFvi6wg0DjxHuaHk4qJqii\r\nJCrzyRC6XPPDEva+MiXNq+fGjVuSwHbYZQmaOt6sJ1vQsL8pNyep0YTSyINi\r\nN0QP8cwWQLJy2BDkphIThg7jrzroeVxPqrxPZ/Raesz04iM8kqiNGtSg1N1o\r\n16EbtAQ5NPo8vIirD+AZMmVkxFZqrzp55XFq3OC5JHafu+s43I1U8eCRzozO\r\nqi08CBnrxX834ZQrLXiraCJQTmEgn5s5mFmvno/XDpj4kkNx5/0LDjsmfXOH\r\n09cqfhVghoK0LqCT5+WCn4zJp3OvRGr/6PhclJ3vg8LHB3pePe9yrS5S4GlE\r\nuRuxUz61Bb1uj1LhpyCtU3qohxYIClYiMJ3B8j+8zHIWdmG80A2GnvEToaNT\r\n+KkfBryVjJUH3YfUPb65OE4hrSMwaBorOo0=\r\n=PN+0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.2_1651139615264_0.6948317958789203"},"_hasShrinkwrap":false},"1.6.8-beta.1":{"name":"hand-polard","version":"1.6.8-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"fee64f8417c794e9b71ff2a95864d180c99b292c","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.1","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-a24nnSo+yEwJKdG9Hc3GGxjB/tL9PzNrSNlGRYWoXPlXqOwGvCnJEXNn4G7X1LBxRKzqXmwDj+138mdIhmit7A==","shasum":"2cc02182366ef22e13aef88f5c5908bef42d989c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.1.tgz","fileCount":304,"unpackedSize":13930278,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB+bEH7CauD4zB/Bl1xZsv0mU/Wa76dRzkl5NG70EZ2YAiAsn8aWHBcvpX+Sc8GeLaSE6evZ4k+q7I9s/OOtE/HvjA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiamwcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHlw/+MZixpU1pEMKho7NedWcKrPvX5vbpsBAauBGySbA/B45jvUU5\r\neCW3fnaR/Fovj17xBeAMyuPWjeI7G4tlt0yrCYG+Tj3672E7LYmzWdBCtiFZ\r\n484HIv0K1pPZdIHL50TQHX4MuOW93HJBAKEOW7bEzyKjtQ+IGtO2iEnvQKlO\r\nZ0QSCS+2X4wDVvwcH9p1nihc++38gvHv4MfFwbD99kavDj8JwHIw3pzPDoW3\r\nAweZ/XDyBPXhDbMv7I0WXPpfOvENmgpw964vmyPls6WyogYkAV86YF/po6Oo\r\n/464e34PlfQvC7G3/+qe1/NAX/tpdnVWNL7giP/WdMwtkDOEv8RFC9XufIOy\r\nZHvkIyLBKlowIZ+I73CNs9nTjiIIjSzZREVVJ//c+RjhOc3/pAayMYJRvVLQ\r\nJEILVAcIntn9qgpMoLMQ3qrDSAcRHpRYnLK1mkOYbI5XAObI5baff3m1nnH/\r\nwqhiAU5k1KLdbAQvG1f4qTps9IXhhLdsYr8NbolMJ9/Q3KxDAlUbEcM1kqUw\r\nvNv3yeY7gdE50TdDy/17Xjz52VxSUV86pE4jJdJkefMu9FJ+dZq9TX0q8Nk1\r\nz+Tzt8JmqzqM494Fg/F+nHFiiWXBfkuXwIO3k2dx1Nxie5dHlLHZehh4iMcW\r\nnOL+NGEvWboNQjgtsAhCdC8nQDslu2NDKE4=\r\n=fOBa\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.1_1651141659821_0.4643310063775168"},"_hasShrinkwrap":false},"1.6.8-alpha.3":{"name":"hand-polard","version":"1.6.8-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"3172f30d61b8abd5a7d6f98045a0e213b1518661","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.3","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-wzPqS+ggTiLKs5LNrcooeVbzflbkxT7RwlPs2f+LOcenjCIrodZ7HYAXWXV1IWJRi4rF4G7MTcZAYRZ83GLp1w==","shasum":"506d194d881af245aa286dbeb606831f246f4d25","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.3.tgz","fileCount":86,"unpackedSize":3856006,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3WUs51+5mbUfKFTV4SwrSgF0ZzaTbfpLlBHMMTKrc/AIhAMzsE9DEGLMYJs8YgCyH6vwpwBMe3SRzMklOz9Xc68F5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJic0B6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRWw/9G/zjFobt22j6rj2HzGHm3i58DryjIEMup/vPcbO8dpKZ0Mvh\r\nz42b2GbdtOW5yPfxTxZ0pYxDwba1L9j+r8KqO1l/QbDh7GH9IiyvXshTGM5+\r\nSVJAgLsR5bDXvbyxL30SY20BExNl5aZuQVA5Jkw1SZQYcptOsija65UzuXBN\r\n90lmqtThmkvrlr+d/Q+YrQimj820yujxXeB8SdB34RXesDooXYuVpSF9+jO2\r\nZPkKa0RYM4wDrsL4ZIBMlvyKpjd77qmSPsw39dZGOQWxP9QSyfGTiAgx6iwT\r\n3WJHs+ZPKnF8Q8zPYDxtmlqLG0cUDJ394UX9XJRbiWtK1YTc/zXQjM5fg/Bo\r\nKMFhQBa3s13OWNc8RMArDXTogo/BiQy4m66G4Ng/ECmMGU9olPbAy93yb2nR\r\nn7U4kJFmZipXCQvGxzm/AyDb1t2QyoQHCjkjRggB3ebnTZ/oB5tlprFXoKdW\r\nhX2oRewzsTwDEh3GmjmByUID7WRekyffp2d+VDqQbRiSA8/AtQs/Tsx0kO10\r\nmvyDiz6ESNhnYy6JCL6X55MEcoyBppm/Y3TTt98/BQSv4DIBljxeNJlC2dJj\r\nTnZp3KE8YG2z9Mq2RMGpWYecDpmazy3rkTOsYYdfF8DzMEfjrYdiy+SdbJpr\r\nXSqHy702zxqPBWeZQihs4RsGpTO/qEp8I98=\r\n=dJVH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.3_1651720314689_0.09112409464646398"},"_hasShrinkwrap":false},"1.6.8-beta.2":{"name":"hand-polard","version":"1.6.8-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"72806012295013d2d79f0ca71c5e8f3f8f7b52fc","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Vu6Eg8eR9rvGYzt+6C5ETML84sGiTRdl279+XbkCoXyk/ZtXm1f/2lolFkAromrfFSEsCrPOADZiIl+zCaHV4A==","shasum":"80ebd4e7e504a9b743e99eb358face2b3fff1c97","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.2.tgz","fileCount":86,"unpackedSize":3786723,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA0RuOPeRCgYj0rOMfsDYP86bzwudtFUejNCI8bJ0pYWAiEA/FEmtordfBEXbxLsNjqbqM+fze/L2rRM4QpDjBsi/PY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidkWqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo5og/+JlRhZj+CvlXauvpwIEue2aLULWFMlAwpzI5owXVc8xUIezNr\r\nbZaNjWtJPRJe89hvrw6T4o3dzysYu1n1w5LHtdOqDd3BCATrks8Zyi5gpK++\r\nxpw6dp81ek/hKZQiOGPXU6BerawE0dOg8QQ4bMXfIitAmd6zFbHaTYz+mw1z\r\nGNdtgNIKB7Uw3f3H2rrmq9ShzzdLUftWro632UwJB6fuz5rudeJ6X5egDN2n\r\nzPJ140dq8GJhF/g63Rpe16uF/WFZglhnLZLYCzd25E/QI06Cwild/t3OVjIM\r\nACE51zrO6Rp3LO/nvNYgJ+63bvxV0GEWB04v3ecG4FUVrlSr2x8Gct0n7WQn\r\nbIaJe2pktFOPpblnBhte7rWYmmXTreQ1KPH/W3rzDQnrijlM28euqVZ8PBJ4\r\nKXoT4jBd5assUiY/Kdoiv7gLClbRZF5+PeN6A5bga/m2r0XNQsnyVwjryb5U\r\nHLgFBHtoHzMD8DCeRcHwI0D20EY21ZfvIQkua8WLWVxixV9e2KWVrtR3BGw8\r\nk4UrkqeFjU4qBASuKO/KL6XWMvSBK6DpE2qIyXok9aUuA86oInz6E8s38bp0\r\nRXtTNHbc8jLOo/xhVYv93b1BRFeVtYNjS70FwAiM3FHs+C/B2FWqvTI34iI5\r\nttB3kaz7sbKs9VQLsXYYVd3fu4hZYVMKr5A=\r\n=52we\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.2_1651918249616_0.15674133348094643"},"_hasShrinkwrap":false},"1.6.8-alpha.4":{"name":"hand-polard","version":"1.6.8-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7d5638313f385561ce5c31c2de54d6bf0779e974","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.4","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-r+RRYVrgWSi4rmXre31qsVqe0NcukUv9NFEYU8A75IpR80yGo+geEd98ykqYgW2+AUWptGGoRb8hRlozPcCspA==","shasum":"1a1444c00d3157a76fb74996c0834bc21b5b2f0a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.4.tgz","fileCount":86,"unpackedSize":3862268,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlngF7+xGcDVvJmiWlCjaibw4kZ5ZlZjgwfUinyuK8TwIhAJxmwYvdEIXCWDLJYoZZilPm/7ypIVVDPXnfUIFpoJH4"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieH38ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpXQg//ZafwWq2vUQ9w+zZoM7Mne5VVkl2xh0OE4/tT4gBRpyZ5WLC5\r\nSbH1RwPfIhhoSQqP9CA8hkmKEXXIEQrwL8f813dfM8kXu4OhIyJAv7xY65tN\r\nx98MgO1lbtbomEUvOi0eubHsurPKJsBva3c/T49ojqtfPHuhM/hr7wYVTXW5\r\nrc7qpPpnev00JyS/rYw1gCBmJP4TQgHSn33aX1eQdCqFK2AJSkEPHjOgJzdR\r\nGodCt5Wj7zNA8SvVxSF8HFGDFEYHZsQ8yui2Slk4B/5gHpwgTAAjwZH74dS4\r\nX5OPFxPoJX//L40jI32TPY1dmJG9Tz1v8vg31Sk4GvkDNEbp8guObZoCToLl\r\n5b93wLDU8mgKw5YYK0v9YGAAX6YQuGDdInYA4YWdjcd90po+ZbXyfQVy4xga\r\nRhpV1+x6or6tHDWtQxWt8v2xu4C7h2rOsPMBcrUgYKN1jsfFVBOHIc48cZBC\r\napOEbMrslwD3uwrY4cHlPDfLsswXYRz/Ey0EN6XvAWTWUvQCU4BwVt1sjaYQ\r\nrteg+Vycjr2ie8FNN3o4AGkMNp3rCqWI0uadSTFLpfTmUXAYaLYy+wP2Sg/l\r\nMsTr2VSEx703aDDHbodPj+tkc6BlVcFJ7tEe1YNzbp93dE1s+7Rk32fTSNXZ\r\nQF9Gzdyz8cKBoVtC3xm5f+u1uowuDSDsSGw=\r\n=lRZB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.4_1652063740649_0.8282466570609996"},"_hasShrinkwrap":false},"1.6.8-alpha.5":{"name":"hand-polard","version":"1.6.8-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"c1b9c4d9b2355086d2ebb7ee2a1f183eaf706c13","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-PJ5JJrb8yx1iDMb0lHaYqFdZSBeZezUjVw8oxSpPGHEu11GtezrAnWaV2MpRZknfBd2Nfd9E891A7ZiMxrUZGw==","shasum":"fa3815570b706cfd569ffbba917d1f929c1dd77e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.5.tgz","fileCount":86,"unpackedSize":3858039,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdSi31Qnr+9/v8/2c2ZtFRzLFsI18wRsAtYBJ+TZDy9wIgMlhYlTz3BpjtWEft0JsVxqc9awa/LbdwrmX+Flr3e9Q="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieIbaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBsg/+NL1RaIJjJyoq2m6xc4e4oYtTkl0ZXvmoZX4NZdm5ALZ5bRMj\r\nCfTCs/7eOQ//5JUPw/OWpgWkKXC6pDzolQAVGES0CJ6Rrip/BP5qWJ4Tq/lB\r\nUfyu0ZESkLbRMF6Tm11KAszTZMnVTJbXht8JldfFXkrdBMKAwRp5A3Xq8tTp\r\n+2jbgqk+0LRs/4+hknURlfLcKpc53KTMs59KF0NePuL3OrTe+tArBwBL3Puv\r\nsgWilrHQpGdfV1uF03SzVserkT+xKbgdfHzR8wKmHavAJ3OF7QASXnjOBklV\r\n6ezk7+4lWhQwhjzfx+br3nzvOkN3AWOebrDEc4TxprAgQ8/qkJ9UFNaNwWhp\r\nuwu8OVpDWrMri/DuL+X1o/Ef+DC7f9s2PtSb3+1c0eeAYS3oOuvZhTz35LdM\r\nRRrzqvrxg52Q6OQftsjhYHIQLgS2IGI3HHd+0byKQ7At5gKAieCTMmxcpM2S\r\niR3HRjxC+F0kFPCJmET3utSBwE7pVpZ9WWNk3dsVDgqYl30FBLy++Abtymud\r\noVkdjD2a0itxi+Xw5MmhZr2Wx8E+WFAFL1TfkvdBysXVEI8/GlNhHrUIe2lK\r\nsVBerFT0J75qAuqEjZ+HmYZ/xC57/58bBnJRNHydPcoC7r3RH7HqxYz5gLZI\r\nrFgepwD3hr8W4tl1TmqGmNZa3Wf6bWh7fFc=\r\n=Zm/6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.5_1652066010281_0.8376093964716624"},"_hasShrinkwrap":false},"1.6.8-alpha.6":{"name":"hand-polard","version":"1.6.8-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"621f0065294417b3acffabb5bec14421829b5b0b","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.6","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-n9rH387DJPqAiiPV9FPsAR7mYHLxovRx0twzLIvjQd7W/EtKj4qLak1GBDunRdD29K8PEuQ9Is9W2Tc6N6hgKA==","shasum":"8cfe3f270a87146a4b4770236568920634cb25ca","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.6.tgz","fileCount":86,"unpackedSize":3871722,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBgeDi36f//g9RSPelZM1qN9vLpix8c9T+R4Lc0e8y7gIhAMfeapGWrMww1BpUIgTLG8AKlgzl6l5w6LXLXA/oEnM4"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieLqOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo5sg/+JcZjMG2iQ8TvdT/VTqnrgugfLN7vkdwpt8QvZ4hPcm+Ww2QH\r\nVXltaual0WMRoQyc1pY0RY4BghhRl+KkDQhrRr67jpwmUW3fvbkeZdTbaoeL\r\nphhqCMw/zfIM5PVxULrGbqEwjfFSAPkX2UNm+4SyIghFMucXb77yPDBHu4Bs\r\nv2OM5vlSqF6RjT9Ku+3tpl90meEUzZSfV73AN22f8P4J8zlPRs2m+wMWacok\r\nCMLc/WoD6mfdUIHFuMVRYOY49Ou+hCX5cjUug/V1ZePiy9iQ0AgWEzpynDpl\r\nagedJsghGeCRErKw44IlHuyzJcoL+rCB5sXeXz25R/np9aXofmhOHjV93Qsz\r\nJFB5CCSI285v6OeapJheXc7vsaF2vGTN9SwdcXAMB1PInbqI6z9o5a9h7pKZ\r\nwZ2i+SJFZIDnICWYsXFb+pW2PI7s6lJAsi4qJk10DYcmq4XqU6vTWG2Q2nPL\r\n/SQS4PrdrUQKXREagIrjqXpqEp/MR0ZprlI0nuMVyHdZAuEb9fcIqfFw4upy\r\nL9n5jeWLypiebyjESXhdsRP6R81PMvEM4rHFDqLgzNOZ2sVYLs242GHkkm95\r\n9wKQ8lnPwHpbmtWQAZvTR9kxVZwRWhYqNc20qb/R8yNCjE2d56ssu9mK+gYl\r\n4uG/ABtVzHq5PT1y4T1C8hilDh/GnhPacaU=\r\n=FGqw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.6_1652079245878_0.5771403281604353"},"_hasShrinkwrap":false},"1.6.8-alpha.7":{"name":"hand-polard","version":"1.6.8-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"52bbcd55fb77346a72713eb34892b107eead709f","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.7","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-LXI/FV/Td4VwV8ISdJmlbZGAcmCUya1lo6qNcjVbebeaemU5wz0VnA26Rte0RImSW6+G9xiFBM+Z3s/1SzX3zw==","shasum":"1fc6785de84533bfdd65ce88cf2773a3a1b7dff2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.7.tgz","fileCount":86,"unpackedSize":3878883,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIALuiGwWb7p0dBX8dpH3ySIcZyFTZ9ibBSYFrgaXZM+4AiEAxNQO19L6Wy3m+4a240U60oF+EmrQFvZ8mFwpHoCnK10="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieMqcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8tQ/5AaXGor1eG1vrP3GEkJcIeuAh5YQAQYhL1Uh2HKzGenDEBS+Q\r\nPfH4hls+fGMsQ+2tawDQzhETDGXtGGDQoPwzIsEjIXXhNHfGMSIO96SkIuPD\r\nWqyY1xHc9Le8HA/NB5qPiIndd04H7BXikeSE3UxkfGlqAh55CSxCqgGa4m3q\r\n7aokPNm9H3ufqfZ/NAkMhmGrRt9reb1GU7BzFe+e+nAlyyI5gReP7fpUNbrq\r\nKkj/QQge1JfqF0P7qYRzp9U3HvbTButw5BjUm1UYcrr/FunO7/P91whdHqJF\r\n0ZKMvrmJfzJ3+rEii/lC6GpuwL81z85y1dJCnTG5MEvMK6FSiLQj0jM6anBP\r\n/+l0b9e7J2lPDYKjOfsQ/1kS4GKbhgv7rC89ac2GUJMFBZm41uR6btWmKODb\r\n1gbFqglh+AgqPaN3whAfy4CH6P4PqXhk6TMEHYShAr41SsT3GPcT0Yb4WEl1\r\nwaeWWUUKkSQ2NXUYBkwIrZD4aIxBOaNHcZnqTjIgVVHiXUYpEX2sYnT3C+Ic\r\nQoerJnAPnLXnU9vcLivm96D7yxlFHMVVdzNAZ9Q4DNjrOTV3zZ/SPf1XA7fd\r\nbBtwdZ5Q59Ihfwkgs7iJJvOO4IhkQLJPPtPNSORIObawJLeIca/6XfvfThgv\r\ndvCHs4UztpWDhtM/ddgOEqMa7IbDTfywtkQ=\r\n=Ygj9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.7_1652083356676_0.22216946961299922"},"_hasShrinkwrap":false},"1.6.8-alpha.8":{"name":"hand-polard","version":"1.6.8-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"e9cc3c91487d39300859f49f87a6deddc7d72796","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-zyXjjX3k1rYXm16oP/BgQ7ejK0g5rhVK//a+JU9tIcNiEjoI6phXzVuIpt88LceLwrQLHo2ihrqRsJrWtANtRA==","shasum":"fa6f7aaf2af666eece1c8a599e24826b9853c379","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.8.tgz","fileCount":88,"unpackedSize":3971540,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDxr4+HoDxsN5qFawsBSS/bnK44vzq9kAYLvpHLN7kvaAiAxFniABfsEgVNfI0iB0ZKLketBAQyY0UJRfCV1xxfzcg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieOgPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmphxg//fSW9pgVVJ91vPUBmMDJgy46DBsOldO4m1NOLDDSlaY0XObLR\r\ndmKOW9m1Su8+l1sqzhhHlsHB78k54NenASmUlyBd08HRgmMvqT6rgCYSq7ko\r\n946wAOh2h+7TEsSuwPiCqnhIuO5+GWSNrcFffIQvlB3FWoSo8q89psaz7pys\r\nD2I5nAI5k7AuLfg1jrGfjmYQl5lx11eJGyaiX51IEYlr41oWMBn2pYi+DUkF\r\nk/YcvF2kWCDus9Wc+QWSV8CMOkkiatNLB5HDQJnF3/leZrh2cJENiAruuc4z\r\nvx5CvWwZ5+9c7xcAgKaHczr+hxScxEp9fipBL8AvwlZPHMbxaiJ8XudU8C/X\r\n5bt8MkPGX/zViQCmJmNW/NYsWXHQDWFwjcHbOm1vwhXrwx4aw7dV4ytrwpMB\r\n+9moU01PA0iZ0cJMWO8JbEr2kS9gNhxjaoy1IG/YOhlzjHwYNWcpqGwOWSYP\r\nh+/6a2E4oWUY+0Pxcr79NC7tE5Q34ixTaVVFIcRxKsvSuCZqPFZtBcMi2RY3\r\nAZ3HnfLbr4YzlyalOLO/7tvW3Wh0doYsBJZUuGOU2JN38eGd410szPwMKRPQ\r\nHxZ99iRVVEBZm8GJprPl2xrtdD+9hX+Sb+PBUD6KemwF/dmk1fw0esFUGN75\r\nsvayVEuLbyGRd0Srx3wIvgXB0fz4GuWUGkI=\r\n=kT0n\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.8_1652090895590_0.7158331339373956"},"_hasShrinkwrap":false},"1.6.8-beta.3":{"name":"hand-polard","version":"1.6.8-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"0f80004dea3afa46ebabb49fdb9168d15e99e872","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-4MXA9VL0azCALnj0zJVtw6gbhQSR/EIPDXGVh/pHYL51LREGJmtfKUEmYh7WgBqt/93NCS1654ifSbjAk3OzGA==","shasum":"472c8e58ba80bf7e4a3bea16ae3e5f21c8553ae4","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.3.tgz","fileCount":86,"unpackedSize":3789650,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBlcV9hJ2Vs0IU2JpaGnd1IGx/8XF6rEpbv6G6Hdx7ggIhAOnEH6gvu7gnGCKM5oRV2SssFfaGhd+IpkyFXNqH3uEG"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieOi6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo4YA/+O3AlMSzSvpjCwhyw35jpxkuqGqqarsvD+j/jr3Fo3/gD/tDb\r\noHQ63mAG7tnzktQPyVoq91EhuqcV+AJg7pbFfeGOQvr3kupwPwkPX8FtCWnT\r\no2Z2ayRcHTyP/8Uvrot5Kc9YAdRGV4dvxy/rmBGiAR0nekSt7bn4xWYHIoOf\r\nA/VHO9KCXCaf4gBR224KxCJgq511JJxThDiTBkeBf9QdBckyyS/ot6Osv1HO\r\nBI6w5c+7kFrL+PgfMkLocZLIIqU+m2bmHvUc4Jsp98XPDiZiKuevjPFRcnvY\r\nSDIZvE+b7q/8TqvRFOgfI2h4tTj+lLoC5pBlnUYHSn4gQpSUp6/4ZycIfO2m\r\nfw5q27gDzoMKjdP0VZtOE0go7Mp6yenqhEN11+ras+GJ5ky9gkBHJHRgUJ1g\r\nrfafodEwIfPvpcyUI5mQOXheloWggExsUHh4tB05VFxIlhZbvbqPa8Xnvf/e\r\nF9lG+gAx7TCHsaaDrJU2G6xDfyITWoVtZoEs9z/Se9WFBrnnHynDoV9vnNrG\r\nI86azvoZaV2IYTXimCVlnoTqu3+wsi9OlckBtJWRveo/i4OZJA98Fy5OKyeF\r\nzHfVURflw03TGl5AvmlIQWTZW+0j658U//96BeHuK9BVpxhESHyTmkP2+y3f\r\n8IbjWQnnoJMkdQbisk7bzAp/axmtFS/KfRo=\r\n=x9C7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.3_1652091065735_0.2684029359135818"},"_hasShrinkwrap":false},"1.6.8-alpha.9":{"name":"hand-polard","version":"1.6.8-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"d216510f339fce9fd3f094507208a15096ecf25f","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-DWaNQWUvx1cnt+2WY3mWi70Rd3jPnnZxp61G3Jz2Z8iDDvUzMGgy6pKwQ5W/nkm/vT7Bxo8lIS2l0n+KHKh3GQ==","shasum":"b4a89b7765bbc0af6c4771d6f0ac7eb51711b589","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.9.tgz","fileCount":88,"unpackedSize":3879406,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFuHz7JBFKswUKQlcF4Vc+SiuWU+vCoxBlAna5LcjfzzAiEA64+NxR4MBp+SwTj7iRVHcNQ0ygk6u2oQtarNBuFz94Y="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiejXsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqv8A/+MV+qB//uwuKShC7Ji0F5z8WWyZCuzroBAx//H5Sfw7MO/yaS\r\ns6f7O09y+aXgWCiEf0ffjWkKPrcwdyZ5nj/276FeTO66Bdy4cNnoomHs52z5\r\n45dCdyXINSoKrWbAbcpdB+7HXM8U/PnKjxJbAXyBwLp0VqbNa3zFaxp4rz1k\r\nWvtF8p/pdbcQbUOS0nf6zUEngsqyGJLC5ug6kybkbSxl/rdnOQy9SJkuteBc\r\nsG3WBrGuXErK0aznInDXyDW8lrUbbLMv19Ax5Y8yx6XfnL95MU/lKzY3ejiN\r\nhPSY5/9zznwZRvfnQHvzBPVwDdOJdv9RyGGc3EcEpRY469fPj6yZKLG6cPyz\r\n7dSN99xBj8g+5y7TLNeiBTi9RtFBu8ll2vRBWVyz0LqW6qbdkXolEEFHO+A0\r\nXKuQJJ4nwPFACWu+tK5kr9oDh0Pj5qWeeB/WLMEEjXHzW926j4XcZJKRFGrm\r\nAwbGcuajerzjy/q11FvmnnDoeL4xI+EO1mki5ny3DZBhn5itcXC6kg7Mc/EE\r\na7T17mvyZ40C0puukDkJT5tqoy+7p9ILRz3dEd8RKWxI0ZZpA8OAntt3iq2V\r\neklmQNbfZbVW5tSbMcNHcdcK8ha8qTb++fFTvOtduakhAfMGz0g3FYiMy5Fn\r\n0UnpQT0BZgPkGlk0lQSeQIerfSuFm+QtAhY=\r\n=2ZxY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.9_1652176364637_0.992706960674643"},"_hasShrinkwrap":false},"1.6.8-alpha.10":{"name":"hand-polard","version":"1.6.8-alpha.10","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"8d82643656f7ef729344e3cf2ddbdb6e60de4d98","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.10","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-mVC4z29HwvyZDTC45Cofs1TshsdA8WozQf6OxT/S2jQ0sDYZhoMnOw+VIp9CTpNA0HlGN7cPMHpVjs0vCeIAoA==","shasum":"53baa1a0ae4c2bd667ed91b3d7eb9958b59d95d9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.10.tgz","fileCount":88,"unpackedSize":3881806,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHMK6Fu+Gdqno8jc1CQWR1WQH/REZVeR375nsLHWE+xhAiAXeBehum636onIdG2yc7mdEqWD2NZfEz12d+PynVSKAw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJie2LYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpP+A/6AvQ2PFFah8JluKzaLn0r6ELnyWH8ALatJS5+Auwu0XSF52mx\r\n9NAH1G+wLpAwcydfDJH3g0vRibupICH3rNZPC8prz4GLX0LxFrfuZtIGbnZH\r\n+AxDThFyq7aOK2k8miio9dikOSMqP5ulX0ruM8TiQOLGVShXUknzpwXTtyRE\r\nkQYbrUhyn6pyfi/Dip/Nrh2ubujqZ2gIcglmxprWWSxk8dyyHKFVjGOtpScx\r\n4Jed/k6SX1PGdpcVV0cfR/8sOEhyWVbEmkaUkyQ5/1MeBuiIFnZWUhKTvDS6\r\ncFDiCHAmJYiaX4VEGOJWmo5Xs58qT20Q67Rs754mdIe0XgF/KjiKzKbq06A1\r\nzhSGyOpQm7EFCufqdp3R+nhKiVQTAuy8flOI6xYgVKEDPypQ1NIN/kwaLrjW\r\n8GKc05ZoL3UNAHPX9RYB4BjGLxTmeBxiRw47iynklg7gnlV6A87K8KXzm526\r\nX2R3z/JRLssEoSHMApCxiQNqDmvnJT8rsE7OUSQ0u9XVQRY0Y8igvRAPNdDK\r\n12IjEdOlgUQlQsONZVrc5Gmr2rqho/ieG0Qf4ghoLQT18Xc8YdvKqipj9KAV\r\nyRpFUK8xNqjtpcmEQBn3kfCel6GiGAAjfUiXgpAOpwZ4ugybSmaA/FVwzstE\r\nkuoQPUWUHQTHkxqcgi0SFEjdDHgFq6E8Tb0=\r\n=xfPV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.10_1652253399859_0.9356456508235629"},"_hasShrinkwrap":false},"1.6.8-beta.4":{"name":"hand-polard","version":"1.6.8-beta.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"ab5061089ba658c19aa1dbad7aa579a50949d6c4","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-PaKhEHvjwzaP5iNTMgsG7PljP7gyGctlkZa9UVohsLWtG9GPUDIcakdsYQjZluaNhzKXaP2Ibvenp0folp794Q==","shasum":"746fb2b43e2eff7f8461ee44d5450f2300194d01","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.4.tgz","fileCount":88,"unpackedSize":3794968,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLXUuHPrhb3U1HEtJJusaujKQZ4wimcfiFr2VqTw4cAAIgSgaPCr7RkaUgQzNt5ZSnFCha/JvnNPQPjfwWADvQEg4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJie4o3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmol4RAAmIHjgF6x5cBcUDDlkwn6/FXMiCHBmgiVfFzFlAUGTiekqOxu\r\nL35S96s93ZqNDb/4H6o0oJD/fx6d64P7SWRTc4hudZD6wpnve4TkrWwrN2GG\r\nXIm6R73kz0Flq/J6I05SvKAq2Ra+vcctHar/8uxPAfkT2xq5zQC/9E3W5B0U\r\newHFFT+OQvIPMlqvX0SkyJWpgxsAA6sD7YWrwr/VwbPwbcbGg3zW+PLLzgEn\r\nY4yCpPBUQ9D+26Q/uyb4730YR2ZCpbE8NVxvCudD8ytfoxQn6EpJ88e5uWFy\r\nTPIIQKgo97DQmbBPSBT5886JozEbo85UcYYBqTCDQEkRBUuBWavJXQSg8edL\r\n4jBTE0/hUgPyfjS8dhcDUoeqnVHYA6uUQa1q+mtVrGahD2UEPASv52J9HRJs\r\niV7hTR2AmZR/qxKtEpL6ncpBNyMtc5hvABexJOtck9+h0ucMhsyFgP9brFan\r\nkPeoEkyWp0yP05UdEE5MsmbnQPZFoqxjBM0oySiEeOwg3qfZ106rtl2tVxyt\r\nbGti5hm1fjUtLZ0EoIEORhylufTpj2VaYOI+IQnqd+kko9nPkK6qno+xkg0S\r\nKZIIOyLmkfy/zqJpqKbw+jLU4+ydaE7VcvWk2S46JOFB0J8iPPSevn3RGJnR\r\nL7VPNlfAj7E1KnHZhw9kk/viIvAv7koPCiY=\r\n=t51G\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.4_1652263478859_0.9720860841373562"},"_hasShrinkwrap":false},"1.6.8-beta.5":{"name":"hand-polard","version":"1.6.8-beta.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"26bac67fe2574df6f3c5c73567424caf58e6f323","description":"## Getting Started","_id":"hand-polard@1.6.8-beta.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-A+y7NwWd6r0jVMNJVQt0ftbSLLeLL+Bif9sOLgI5+LR6hpYNdccA8oMDrwA8qyrk6TZh2GuUzQ/eV95sfM2Uew==","shasum":"ff15f3efd5bc9cea2f3983b9d0eb81188a4a7ea8","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-beta.5.tgz","fileCount":88,"unpackedSize":3796171,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGxlf/K0/Vjv5wORwVXohSaCPd5hZSYhfePlt8q7DqZAiEAi59cbk2yYjFvoTqZsKAZrfbEqrnz7vKAm/bYX6f4frI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJie4s5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRzQ//ZABoxKIR5LmesrIdsAMTQYTM8xy4Lx6wsR/OSvtvgdPEphgp\r\nCCLAwCWG/25rohnmFeUQoO81Atrm++lpKV2TgGEjSkIWQ7ReDHOnKnBGh3yR\r\nOgF1SEHkUZEIFAorHJh+7KpE1kF4ZwBGm/MoRLIzLEkyKyZCFJ67VyJyu2c8\r\n3R24vkWWbDHHwQwZsyTcozGdHnuwqTNwAQU6ib9mw/B4wjWOOAMf1lOcVzCP\r\npeo3gYwnSqjpWRXehTnJYEFgYJu0WJCzW9l/XmlFkumVc47SP7AX4t4DSaPk\r\n0I643hWSHwoHMkW89y7VTSWsLyz+MX8SgYiU7pmUdMF7Faevc2yrQ+YWEYjr\r\nzBLDx6RNLhuRsccEIVywms7ne9H1QXjZ1s593N7kFNNbfmEeXHW5aWDPWDqo\r\ncWygWWDw+Q+dbu4cKyCjlwB9j6myWPrnwKqt7mgfr/xD6lT+7SoHS//bx013\r\nyz7LriwcdUE9AvBf7EFAbruBNVsb27Tf2g3kNotTZkCwYJLE6jI0xsj87Pjo\r\nmJbUhXIixyNREqEPlVUStHk+s7VM9/WfS6X+4THQgr9r6LliJPnEvrMKC+La\r\nkd7dKlJ9ZeiHG4aeglgxBfmpIO9kD+6UixnUlyJMbdyarnbUAfqu/KajCPK2\r\nCHvvpXVF1j1gCvIJ6BzSCIGPj9nNIbyNCQQ=\r\n=GvoF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-beta.5_1652263737689_0.020975595284806747"},"_hasShrinkwrap":false},"1.6.8":{"name":"hand-polard","version":"1.6.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"e79beec6aa4afa694c077db6f21a135b05dae590","description":"## Getting Started","_id":"hand-polard@1.6.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-eqgsSdIv0uFzKmAi4WCWMRAYHjXEQrUYsfwfETY9bDbCPjYMnwD1AysBRVyLqX07ngdKJJHcUGAVbv6Q7lfutg==","shasum":"7010cf033eaba183c4b0a84d665e11ad672b7742","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8.tgz","fileCount":88,"unpackedSize":3797444,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGvwxhEPJjBMWHdIZ5hEFiQpQ1Y7gFT+SMYtbJKcO92xAiAC2wAqw8AluSTwDO0CxAwmrz14KURszFngA2BT3xxoeg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifKcqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrBiA/9GJ6g6sHVwxi9wBw+uUxNRT1siEId6o1wOyvNqTcMRMBfUa+C\r\npY3dcnKZGEhIbxOvXua9RTI5agprUuMPGx8FUHkkXxa03twJ1fkdTMkh+iRf\r\n+pK+ocPQE16Vxj5vcW6s4S/ziYcCuLVJSfamIcf12RcgYBYIWT8ktMpVLuNH\r\n0vE11esTw2UxPy6pGn+saPY3G5UEAs+sXsW5bXwo5doIInaCcsem+hHmGyia\r\nK+xl9KENvu/RPwtFpZa/mezmWYEL239GVQ7rkdSat6nxMvT0HXNI7OG4QGF+\r\nwz+UFvvQPFsI1MUO6Uk/Pq5kEi2yshZmcCmYGD7EcJ2AKqrjce1FsFsVh8uZ\r\nKrWesQ8PXZYy2OLWnZWf7VYQ6495eYYpAzy1zBawVakghk7c0mjj4hVJdpWj\r\n6etDbBVAVdHcTusj1YKQS6RrqfzzDqolQb0n5QAikmi/FAQYU9sNlQD7cQxo\r\nMtIpIs5pKztA4mejQh5jvjNaJ0+OHFAI8XwThNqz6dYnuIcc2dovJokiqmBM\r\nmAkGSPDLwoxDoTsykyuvwaB8efF3mYBx+2xP+p2mAtzlURgYUY4BI2nqIa0g\r\ncJzf3HG3hFm1Gf6/KdBOY/VGEfo6jG+1TaxqQgz2w2nRCCQg0xoLh6hC+Hkg\r\nb+7N4ZFs0knQ1zQmyDwVlsjXFFOEW5nIzY4=\r\n=EwzQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8_1652336425985_0.6424117705989842"},"_hasShrinkwrap":false},"1.6.8-alpha.11":{"name":"hand-polard","version":"1.6.8-alpha.11","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1db9c289195c54f1c3f867f41e3cae2841a6b884","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.11","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-j1UpXC/1eitKlA9U2inL0pMQLGdFmowwSe6rAmTySshWvWKhye4StG1zkz1/65zWOxQp3zCUSRmE9LFVJdm32Q==","shasum":"7605547c70de92fee7a092c2010342875d09951c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.11.tgz","fileCount":88,"unpackedSize":3884123,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0qqmsLggK9ux8f3o0D/Npcj+2BXZ7G7DJvhl/aYjeEwIgFdWilM6gG+IynkO8GAFfyJGjNo5jgLJv5IEhkGKTQuM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifLfmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqTFA/+OwNzl/qA18UqFtfoLcAmLFLKmOhZRCCzrC6HrfhW7wtwli0Z\r\nFOohXCwuG/HNbnHZQcCZ2mYtaRYTWzDJa3WRZSfh1kNCu7nmOpUqUI6ck8OZ\r\nP+kxntZ5kVYszYR+9QLDz603thMKWDHv81o3fFeoNTim87kCqD6LZtiqk1TF\r\nSkNaiJM+PcJC365+tl8HVRgyGWpZNKZZnVIVviM2UwVSsFdCBuLO01d5BPA5\r\nWfqdwhV7Firc+1TVRbWne6xUlYpNhU35ISOAio5u0f/3q6Vc+D5k+kFU1N6o\r\nG3DdM6PG5qYv0zGUPLkTAb8eCa5cs1v0tv00XRItzlSRnOTSggFwVNE++5xk\r\nq5soaaAUqJYySxMml/lMI2BgwAouEAUFlJjay08dMeGy4MzBPaVZTxHJNzwI\r\nte4jTXyGGKH246Jef7g/e08QkhFmhcZ00aDMcSGBNvXkbuicl7DdJ+3GWBDY\r\ns955DwdtVo4HJt/JRLQ6dTplS22bIkIKsxyrxrQQNovVTWKh0O+qdJV9A8hP\r\nocFXn24a56/YwrLTlfEfwFcd1Md6O815CxPT4WwZRdeJkOh5U700oZaamNBV\r\n5Srn9QHFgunKzDfIcOLl0L2pxo9o14/QFoQCVDlZSSMgAqPp5upX42aVN+vO\r\nMF4PSUAShkJ4JBGh3Iqg7NwxM2+eOC6ZaZs=\r\n=fx1v\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.11_1652340709805_0.5624129749915112"},"_hasShrinkwrap":false},"1.6.8-alpha.12":{"name":"hand-polard","version":"1.6.8-alpha.12","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"e9fd00a963ae4d9a8ebe21b9ecf32066bb02341a","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.12","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-Kao43QkqY7mDftqWxyohWhWeOvj1phpfpaYJ0Gwbc/o7xDvUpYos9F+XS6o4tvvW2VjDLQ7CfjdlwAMTUoj2og==","shasum":"0f8677917a4ac006b8a211e0e67beedbb6cb8456","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.12.tgz","fileCount":306,"unpackedSize":14032191,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0YzW4W1f/KnCuXBL+cdKjgyKrkQatob+d2G58gRlwFAIhAML3dLFeuCkN0vIVoePOXo68Ws+AyKDClPbNgmbYAOK2"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifLihACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqqzg/5AcNYvgUTlfU5Jpshpt1BtAbwg2NRc7uo9zXPHB6Z73PyQmS3\r\nv3vlYK3xpGTyIorSPhyTLXsawNTFSKcocxILrC6cT18uK+YZl1lc6jye4iHL\r\n1id/c6xYx//AwWVKZe1HVyXgtQ3VMSw+r8r0rQcPFQ2NOh2pnUsbOlnct+Lf\r\nEIjKup2AwosQmKtN1g13ZlHP+jWkRt5HX+ZFz+bbZ2i4O1GnjyNiH1FUCdeh\r\nhxfqVmiLMfA1qbK9qvwcRAU/DJ6MIJnkcGi4/SbENi4RruZdtJ5WgB3d+Y6T\r\nd5PVTBLdQ/Vcln3V1RXNXHQWjDXHmXlX12MZVol3PUicq/RIf9ssAq83a5Jd\r\nLJEeqNwxDrL7Fs0oe0Bh0emV1xJlU7O2jYJIeDpifh32+UA1t5/NfBiCtnwi\r\n76FuCA1MTZn/l/u24KrNx8ab4jFem5taztTU1QXNyviH/hZPvUfYBt2MyAlI\r\n3iikb+PuPP+8svTBGoYfujtGrkvXQRf+TmFCr6md1Thm9CLKAZS5tLJ5CaBy\r\nEzEpcb7jGAn85hDfCz+pPi1LHOZoS3YLZMXWrKEWQk+70XkNNZQi9GyuGfjF\r\nLM5svazYDVGAXWWY7RTdy0HcvDi9Phr4N7M8wEhD41jru2m5Rj7zQbNEzl03\r\ndpqys10rsdXxkMtCnxYTe5VEGNkTM046/qc=\r\n=XkH4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.12_1652340896905_0.4227549913011963"},"_hasShrinkwrap":false},"1.6.8-alpha.13":{"name":"hand-polard","version":"1.6.8-alpha.13","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"605bd056dc1ce3174b0fe108f9bb76ee40ffe5f0","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.13","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-lP7fRhMdK3fVxCip+HBekEFlc78m90/n1vjJFPnmi6aRiBcFFBRmQVJJ+ffZfO4aie2L9OZL8Dj0RJ3e0ZCTsg==","shasum":"9c263d02163c051a19eaa700ad70fbcb19346600","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.13.tgz","fileCount":88,"unpackedSize":3889758,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICpi5Tx0RF2Mkap1FmJUWQCfEyYcCHFPWmaND8djTnzRAiEAs/GSle7S6KbNPqhzkagwRz58mim1DvY2p9zY6dqZqtI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifLliACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqvRBAAjTdeT1sIj7DnUtNMvnZgRzyP4TLeXM8xxoYmZiSK5sUgskvx\r\nCH/jJj49ki8fECUOO3YRHVludbqvBxOVMmEQlUGrVoCyzw6vNIz3ZJJOGF+J\r\n9vSlf7Ec3Pnht6/I6wwsXcHksBttpK4bOozlnt8DgKan+30JqA/D7HriGDKu\r\ncLLC8g4MAApHkuLctvpTdqJXfDQ6dejax50YTMh3irM6KteIWshBWCGSKIG5\r\nCFxNb8StKYYscMeY+ieQEZLR/bhJkXPHfLE+4uuefC/yHBYo+Hc2MhGOUN0B\r\njNtRtIVDHMk9Vl9XTdsAO+vSTAzey7Laat/kOtjttqyt+1AFwQkRzbWObcmW\r\nl6M2lo/U7muVgXw6cd1IVvdDFnqafLiL7CJ/ngd5qj7O4ty853SIHDj6X+GA\r\n9Pzu5Dn8O0L1XEn3suDtOp3ZtuTezv9bxHLJxgFsH/fwBe1hrSZQuMjokGm3\r\nbHyxGAGfHf9OsO2IQeNGY+JWDOgm0sB+Hk5p6lYqC76acYEzsFHsGFlryGKy\r\n8aeiD1bV7n7VAt7qkzaEH2hedVcDLh6OJS3Xz6MrDdhxt9K4PXfnJ28v+pYl\r\ndFI9LStOzfshbr8a/zwizMpQ+0EqffjrUpVJOhNOnlN2qWmkZx8LbcY0LWGZ\r\nQbicRP79KfJu/OsYMaJLQauHPj2nPVjTWdw=\r\n=vEkv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.13_1652341090097_0.34781160065220784"},"_hasShrinkwrap":false},"1.6.8-alpha.14":{"name":"hand-polard","version":"1.6.8-alpha.14","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"4d1f452030714d0a013e83e78541d087d13ed620","description":"## Getting Started","_id":"hand-polard@1.6.8-alpha.14","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-jO/BTQGlgW6IKpYAgEa7aIkFmG8ximq6QdoYIYokY/9otMz+5haAZf82opar1HNL1DpzZAOOBT6Gq+nF3/UPbw==","shasum":"b88963fef01669944ebdac6cc5eaf3a36a19623d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.8-alpha.14.tgz","fileCount":88,"unpackedSize":3889863,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGauwBy5EtbobJPLPC14nF0A54iO4+5k3Y036SRLRjyhAiBMbw9Hta55Bqi1e2Rvpw7Uo3PF4k5ysz5HRjuaU/WegA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifLnjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrmAA//RL6783vR11qc0VEnQD58IpbDdn/ofk7l4zJKYYVWJvKVvsYI\r\nVAACDj5AUHhS21EyLmOV5p3UR9SW9ZpDh5WSrapdoJsGaWzf8G2tGIrdr4d5\r\nM/zPxz6amODP+XumQyIiPdVvcw/Je5yNLsAZwoy1xX3BF/viCjO7CMGvMVMn\r\nRe0qtBZNJT0LXvluK4wsaNOkN5WbWt2hiNqmEGE3faLAwEmKInMPQm5YQ8Kp\r\nx4PkCnRfN8J05sL5iI/KGkPfspKlzWgnTPMiX6XQP3QrcS+dI3u07apunvKG\r\n4p3UOWiYKoVOLvORjBQqYh3+cX0AZPWnibXdeUci64dKj9DwqWGLNuN5NPZ8\r\nl1K92edUsugJfHSCXoBLnSFUk4anRGiVGxR3lW2pbwcg7kSurhUm/kUC5Qdy\r\noRjdG/kkW+8Sh+f1SKwig0GXaqTSfM1haYtSdZk5+nvcXgYoQi6hcEd5PyNS\r\n5iT+VwRtK/INmswE0LPXu7EQwgcHnfIf+6OwmKvBjRSiLMMsVQGasxEfN2OG\r\nvzd5GdpfRh7ji0mvqW8MDV48GCrnewk7vOInhyjjteLQ5kviBZ/Ah29NiTvF\r\nYL+RQJ4+I0kQ3IlzMM06Yk6YIojX6qLasRcVke1hFFrYFW8nEJd7rnbWAXYy\r\nJDEpdYbCBAYrX36NppWoWGrcQ/x/rZnmQGg=\r\n=4S+d\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.8-alpha.14_1652341219572_0.5958706326276306"},"_hasShrinkwrap":false},"1.6.9-alpha.0":{"name":"hand-polard","version":"1.6.9-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"32fd130cd9f3ae7d5c92a1a95a2888d47e50b402","description":"## Getting Started","_id":"hand-polard@1.6.9-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-b7H3ZoX2iMshBwAtwL6z/u3OgBw0ll70UGnYdLus+u0sczmRflfW7yuQ1ENvS7Cbc3spUjaRZ8gKiXt29pdXFw==","shasum":"513d65f9b3e95ac12d112bb30dd151f3c18494a5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-alpha.0.tgz","fileCount":88,"unpackedSize":3892422,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQ0sVN6ZBbchmSGkoqvhpM8/m4Edbm6rWg19tQZZT2awIhAM5bNMuJZZAaxHvuQdUsotx9IqJMxUIqPQ+olav0idgu"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigbXgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp5PA/9G28dQxVVsBU/VFlUFlyorCr7Zw5B85Wbvk8CJOEFO+/00Mk9\r\nUEyzBvv+FBm95OQyFv/RSxYNFYP/TfDb597NR7vzRUDNWfAfM6eLSLUBWKme\r\nTUjQ1erRPnmG3H9UJoyPa2QnSbgEIx1dFlAAGj3IDatG1w5rZbaFiceUHPBR\r\nBx/7JSOPMjMNEz0cBsN8vWa28gtIoB4vGuMTPA9OOevrAv3LzTbDwnQBoyd9\r\nmQvIzCzSRXJz+CCt7JmUqW3TkHZvMEcMcsdKxazetpJwyy2DR76XHD0gYRdD\r\ntNMiUsAE16UVIu14IsotsFsEYbCRFZ/Wn4ok25hjSFHcKhCVgliwZdI+aWot\r\nbVopzbSlgw0sNp/0a7z0uPvJ2JIZUK7/VodkeNdNhmcWoENf9wECGwq2CQoh\r\ngnEOO0MPcBYncGOQpRuo8liwK5ndMqnXEWaCjDCoNGXZ0GitnNLp0cGI3AQw\r\nfMtbXmReUIMPn7dmx2hxR7ElID6p/XzUPyeNDEeg/dYQc32k//G1oy7cKN9F\r\nTRxduq1maN94vQctFaVVmXG4DKRjZpCliGpNVd5NME3hFRzKV7SixNdnpDXi\r\nCJZ68k2yM93lfz6kWEgmcLKGFeUgfXK8K+T4pRwDZw2SkTbUsm/KtuEmTpbN\r\nUIS5T/3EGiFhJyJF5LnPX+UY8P2Jq8LLYKA=\r\n=H0ls\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-alpha.0_1652667871993_0.7725015930456973"},"_hasShrinkwrap":false},"1.5.7-beta.1":{"name":"hand-polard","version":"1.5.7-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"dadd7211b5e6233885fb374c866e94e27e12a9b5","description":"## Getting Started","_id":"hand-polard@1.5.7-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-VJPxhZK7++N4wXt2Y8Gi/PZt0fUxvZhuG/lTakE4HBrrrnAdnNr2r1tFM3ABPNOMzX/6Z09ftvzHPbCe34ZM/w==","shasum":"6b184ce974f0ce77066f7baafeb82ab8ebac5618","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-beta.1.tgz","fileCount":84,"unpackedSize":3185379,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAmnka3aYwBh79SVCM5vofZXPnw3qeLyovX/4C/R3jOKAiBuxHmDCOaSCmnO0zJj6LKsDa7+RRbbTxi8lseywuv8iQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJige1FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+WA//VPIqyxSKSGM6VT5tC9RrdRijWsWZhucYshOAOiXP58ZKoazj\r\nabr/NA0G/cGMWNcI8hnyQ1Pnzt9pV5m6OQSttytoR3X1cye7vl42iKCMeFJY\r\nXGVT0bP5vWvB7hnnKCf6ITHyJADCAmEsgo5bdnUmCH0cupmmmo3rpnCLgaUu\r\n5fXmgbpXJqn/HQIM0K8ZsEFDQxuhcuzLK3I0cBmU2UxxRm5EWmwzRh4wFdVk\r\nizw3SPUoZRUZauxkFvKOQqSJTwQzg+eUvedW4RFHI8iiKzdzkw6xUS0D7TmF\r\n+iTYXZ4qnhqDkhOFzivSGmlK1zIbQiV0y9vTfjvpKHydmVdtEpyMmxJe4vWL\r\nPubG/LKYSt6gaJKaf61y+IMnYndOi55j1ZvBVORknH7Rreox8lBhExbCau39\r\njGXtiv5ZbzKY4zIovDw5tdZwgPUbL6hMs/X2S743SAnFaysRe8CTAPfdN+r4\r\ngjwXNbie1AEnleWKG+Rj6AVKb4ZcFHp23SzFg21RLbarmLGbGJ91kZY8SSU9\r\nhfUeu6QAVJ15iSKBKInkA9MbUQJ17KFhTsCA5uwbmpnkZawm6RuBgFhuS6V2\r\n/9X02kyIwl4YS5YOC2cGgRyQTMY+EEFn2vcfYKGfBzUOuDqMubaTDu84m4S2\r\n0YcQ+SVam6yMQNLdiF6pPb4u4R6JrAy8So4=\r\n=mLzX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-beta.1_1652682053239_0.48933326453023884"},"_hasShrinkwrap":false},"1.6.9-alpha.1":{"name":"hand-polard","version":"1.6.9-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"9e72dba103e6a3036e1d14df1b4d9fcd79345dee","description":"## Getting Started","_id":"hand-polard@1.6.9-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-3hHXPa6+809b6NebdPW24ktASpPGrdmRYOAoV++PC4Bg//Eq7YS+BGyFuf+5rZZ+W6k+cOTTW4jm0MnR9uIVdw==","shasum":"982ea7359e3b057f856f9959a8ecc9ab401db3c1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-alpha.1.tgz","fileCount":88,"unpackedSize":3894816,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDgxDojbatSICJVVkHGhw/TP3qmgzF5JVQLjBfm+R1FaAiB4kwYVpFo43JPtpQqiuPz4EMHoVx57fKO4KwUcVJKBIg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigw7QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIUw/7BsQkZgP7Za+Bp8hTmiLGlJO3u76ReXHPv+FqE2Pgc2soHLNg\r\ncYQPE+3kkRhvmjAO+UJ6ljQs2s0ibyOS5v920c12UCqf89XiMzzOhaqQXkq0\r\nUfHbjHGEg7TZk7sm+tb/C7ebPafC5ETbmai/DAbKvvBwHRAUFyWOC8NrwSSj\r\neTg4/d+TcVBtb0XVXvn1WFmKhRiLw2dOAb2MuC6fQA/CNmgKnt9Sd3u50c24\r\n2Zh4AeggkcwvJMtZndOGeh7nI9zFMS9xNQ7EynHwgM6xHL68EkSq9yJzAy2u\r\nudaiVfb8sqXpNerSt0SbcO/FyFFjD8sKyl1A2qf9Um0widm65ijAIlO91V2F\r\n6K+mYIV1Ktuk9+lmy7HZr8jmVdJdXb2uYAQy2GmaSG8gRo5Q/549Be84k17E\r\n3Lp+4TY6wlHsx3qxH1u2K8Avciv2bVnd0G7/RFLpzvsZ+FkVVyvoblJJKdqK\r\no/FAFiSAR/8qEyPRCzSph81q0Lrcuj0+UJgEZuUyJzio1b0rbudGHDEjO/TM\r\nD6F/KdmWfeL5+nMgIXqevMvTQJYg2dzWDaC0Jm1yBEJyzikWsKHHorLAPZhn\r\nnsdR1D8+ByGlZmL68p7JvaxoCmkJN27SZYNugt+y4872OC2pZCoBv/bEqzYd\r\n9c3+WoyNmWlc0tu8aPDK/6JrAfQ5FdkmXVE=\r\n=2IiG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-alpha.1_1652756176625_0.7170202254840152"},"_hasShrinkwrap":false},"1.6.9-beta.0":{"name":"hand-polard","version":"1.6.9-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1026d25b87a6c6d62a2cc42a23dc8a78f3acc2d5","description":"## Getting Started","_id":"hand-polard@1.6.9-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-huTabXCwNHjDmuykLwkYEz6QF91Frwg5os/Ra6OmHfH8ln6+te3ELCSoTZYGlIXAtJPdvrWpBy4CHBu2GUrYCg==","shasum":"af8fd678d602f0ebf2fa59152bf7ca146fdbd7b5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-beta.0.tgz","fileCount":88,"unpackedSize":3801449,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBo01zeDOL5ydnZNOlbgqeP1fBt8lVnRXP4kGLMil4qHAiBauDPanEbY6ji7QRynSBA9zAEso7AyIkCIgpLupu4zgw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJig2NgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSWw/+LOUps4wvyTdt5HgnBnsaKsC03wZx6HDrbkhgL/RGYQAhnIJL\r\nY26rkbf8sr4v2sKA1KFDkFGPQ87QE29U29oid9oZbwZZm6ptY/JWap5BuyTd\r\noDstAaiCxydzstWJZnko2YSHEBD5hSbWOKWDo6MPrbNyRumfWec0j4FfJ/u1\r\nsoQw0Aw8za+YRlBpO59vAjoh4i4mFWtF0wmlyI8Hsl5k2JUI4jOfOlXJZcK9\r\nB5O90rXgwyk+D5gQDU929Tqc9NPltzPsmDxOGwnodRRESK20VoustybG06AI\r\n8S+E77jsUvAf16HnqTFfK/dbbsrSUMzMmZXK0lvOS9PU8IaskM/mXrcpilkR\r\nj/dYfz+9tFZxHSlosA2j4Hrav/YfySTUcXbAmb90WRLlj+e9EHPdUhMimwWn\r\nV4MbnRa8xDo9EkAa9UgshMhLxDC6VZ+/H4u090RwlsFkR5Rz2f4lHBWnwDAL\r\n/tBjEDz3KTKJH6b/1yd/EppN85zCo4TrVDHzhfzrBcmg5RR6ukdz3rHzsf+6\r\nMuhlcO6/gROH3LJ+hkDOU6MB2/55bKzNB5EUaQrQhPkTYf6l6ma1+5m6LvRZ\r\n1jbskkCqSQM89QiuBFWMWhf14Kj0bL6lwI3oonKDoEwCLVkrf3W9DTzePNtr\r\n9RxCjLdOvN+dN9ehVBZbzusGX8hocJmgDBs=\r\n=eHSa\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-beta.0_1652777824499_0.26675534275247204"},"_hasShrinkwrap":false},"1.6.9-alpha.2":{"name":"hand-polard","version":"1.6.9-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"2cb4db1905b47cdeabb61762ecad1f942af8280d","description":"## Getting Started","_id":"hand-polard@1.6.9-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-HmygmC63iEbP6278mPztgNsw1NOxtcX2qyLAmH+zeKbccfUEkYBSuSmC9Xs81YmyT9srKfu/9+yVD00PgQO65w==","shasum":"8c5a2aea3fe1cfc1caccd5d049b30ecaf9be12fe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-alpha.2.tgz","fileCount":88,"unpackedSize":3895456,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDAc1FJGS6q7hrrhB7hnzg9hOHqiHpBpEN7rhHcmnpbTAiEA3Hd107L68gl2KwKpN8oZqoaOa31LlBcP0hsmKhzJdNg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihE/WACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmJxAAj0JNS0k42i9LXCGUBWh2q8AkUglFeKuEkOItk9DUnwbgRzel\r\naeUeu7GExPvm+ad/XmKDlUUmg8yWBUs593nskrN46z0UWdbNqsj9LuB+raM9\r\nRQN5g+utj9/njB43fNAqS3Xnj31ZVnMVf/FBlkhdUdn79qFFkCi+pwjsr+JW\r\n1CvWiUxs20LYbFBIG6xHTs4aKHdQAMHGTZHJbBw+dq+Aw/u7XvtACYO1oLjP\r\nexsv/HqTIqmiPS+yXPZrKrczyvsSQ+wM0xG7Nvo33Cftvi9Geeu1h7oKMfRC\r\n2u490Js5UnoBTBOwS15PTJIgqGly3Iikbmm9/TlTC2iRVqm5B9J0povBhwhy\r\nC+5v01ZmQlZL7Q/LZXUwSMrgd4CGrmT3EHlY9BY/JCo0fFI4BeJRYeM6q/uW\r\nqrLiJxxGTRqHyaKyfr6SZ+ugfGCtr2sqW36vT15OuOzuJvnY797l3Ti2JZCT\r\nD0ohCjcWH2UXv8ZXMBtK3sGUO0BS94TZqWvred/1NoRxH8ZhdgphO+Vi9hId\r\nnvAAGH0SzO3Ip6JGxWfL8jWesZ5xFFh2ShibEuM7gXQfZLYeuwUdOmuJy3qB\r\n1108Z2ckciBwcpMDZgNEwdf3bqc5cAszyM37ZWMuFJCWVSEMqv1P6Eh2232Y\r\nLTw2N0bzkQTac3ts7QXwgahGZcGl/c7DZlk=\r\n=3fqZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-alpha.2_1652838358001_0.9640577889120219"},"_hasShrinkwrap":false},"1.6.9-alpha.3":{"name":"hand-polard","version":"1.6.9-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1aaf2b172031cd3328aea1c4f85ff59d252c8cd1","description":"## Getting Started","_id":"hand-polard@1.6.9-alpha.3","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-jdHT05FgOENAG0wa08KSb45uyhdGAd2NCMtudFvEfFYWRzRdMIYtyrmcxdk6AyE5WFZD0KOGx5TVDJU55WgE4A==","shasum":"f3db1d9eff261fb9e65d27e0f97906bb65a58274","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-alpha.3.tgz","fileCount":88,"unpackedSize":3908495,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIVQV4034qKd3G/CsWSjSo+s743W/T2W8b2FzVLpIQsAIhANO4Oipt1cvy4pV236LQ8tSfVjMOG5fME5wRdV1d2fkB"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihGrUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrzhxAAiuuVaysrWmlexTgAAXxGDGws71JZlaz+2O6QP3ILvZckMmt3\r\nDjgaFgGwSZSC1V7G+fOwJ4NIvLtoytZF+vncDIfq3OLO2E41PiteKmK28uLE\r\nLVfob87qKLG00bYJA5+Nmw62Cc1YfF+ONMmJ6GCVMKpACZ/yMFa+SL1/Wxe2\r\nv6HsvoOtazXpwlz10R/wHTIM66OtQXcOOQj3p2m+qdhfNy+TNCX4mKeHT0bU\r\n8asLmNyrWiiQmqRJIYjQ3fiOOQh507O5WPfwG3YemJEr1muak1kufb7MfqK4\r\nXkZbGl4CeLp52GPT2lXMhiNKoDdw6bngEV8D0Q/b1sDc7art104OPZvHgTP5\r\nrwU08urWVBfQsqNheIAX71CEbZZT6K9jsVrVYXc326RGJJbHHyPEeHEp8+h2\r\nUqxTVxwTBaiODjsQtbCkmE9Hhcfup+bGhMQUOoOWAtlpAyWLbajbX0+hstYu\r\n/xd9YyQfYMaxIcz8GvgpKNlbEgaEDRdsMTQjnkR6F3dvHBzAwHunYT6Z+hRF\r\neDwaYUKWgONb8BnvlWverKtgjI7p1o/RJnVHhLsjrTwg00sWlB0AtLCqYjWa\r\n9OTwQizgMVy74r8TH3B1qDoyQGeYv8G8Ef2RcYmVyuYkiayYfW4oJZFO2atK\r\nG2aLSTt9Jiwj0O6ggAxg/rLSetyxUVlGf70=\r\n=HjMU\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-alpha.3_1652845268368_0.5729855715148311"},"_hasShrinkwrap":false},"1.6.9":{"name":"hand-polard","version":"1.6.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"7703b8077a494bdd7b59e04bd7a0bef82a118b6b","description":"## Getting Started","_id":"hand-polard@1.6.9","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-MmlYpmDZ4pgW2vgO/1pRsPu2L06T1bGwT6rnQSAEkyzbrnaG454pL/g9KQ1GxJhXpEikYs8PWumCTsViTnWR/Q==","shasum":"9d384b00111abff7255f392d8902c152f8d7c4cb","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9.tgz","fileCount":88,"unpackedSize":3801918,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGT1LaqcEzt5C2MCUwL5gFuYXtfWEWML3qG0zDCWs2sFAiEA2RppRkTxWY26/uJUB4PcFR3avIN+PpPYB3eTSY7pilY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihJ1FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZpRAAllu+e/qZeYHUMipohvN9Wd8MSl6v4BCufIgpWeVbiOvHTA5P\r\nDu/6vbUoxBQlmntJ9MJ67YNhPpRnaB7rhcV2w5eP5Hwlb4X6omGXBmSmoUIt\r\nx0KkDcE79U5LIjE83nx1hLkOjuuC+EsShz2pFzWUXg1HcI0uV6kKQVnp5SaQ\r\nR/GPAqQyiQKarOYtk9mu/tPWS+TzIRTCmdfjyumkkbiXzkC7M9wuRRBADeF2\r\nDnrkrQquRyzCSYBAza+TIEVW2t7Q3iDt/64gidvF8ZVCDLnFBheBQfSua7ze\r\nSNzS7gSiunz6cv5dCrZT6tolrHFSYnCjKYnF7nhhcimHxG4iqwyHb4gnB59y\r\nRYwQp7Vd4tAoRdeZLyg0XN0cfMOD5phgf8KyiooJ7ucc6DbQNw7LaMgEBByH\r\nmR3MM1X9MBeP2SRCdkD2+40hq1ce5RxIJULdx4l3MikYA65psuO0JARa4H8t\r\nVA0zMnrRvhLgkP5aIRul4jUINyxOc8Nobgg5H7y6awUFmnFcm1bcFmeOBfVK\r\nYKrTSFTF1/C9zR/x19nRr8xj9EfEHSa6KFSl3rSHF4T90FtrAfI6Gvc/oxl4\r\nfK/k6dHtYgzAxTakJpD+KM1jE7IFz1qpS5pUVbs2l1j1djpGzvmW63CiRPAx\r\nJTc5o6DODALE6kb+LeIzGKcRVxzbYTE3ogY=\r\n=hUr1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9_1652858180752_0.015400877661578827"},"_hasShrinkwrap":false},"1.6.9-beta.1":{"name":"hand-polard","version":"1.6.9-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"51cc8e1812dcd25eb73107ba833ef1a7062fbd56","description":"## Getting Started","_id":"hand-polard@1.6.9-beta.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-Pto+tB1bf/Ir9y7Wh8AQAJrarNYpKiZVd7sQneMoyv1HjBqDUJG0S89jgERvKgQgwBLrLRqUdLToKPcf+WTJpA==","shasum":"9496687823e564c69abd511e76f4a4604ec83595","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-beta.1.tgz","fileCount":88,"unpackedSize":3814214,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIETYaR/rNYvOEIRK7qXNyaibblzAVbVCh5Q5Ljv22sfZAiAe2BGmgyM1hXMtP4HV3peRHAhgiuiIFN8A2ovTnqhVxA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihNBQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3jg//Wy/eBqefbs+mpzJ/IngWHR4zqU8pm84rtUnHpTbGFr76Q/pn\r\npHutKOawsff6AbaM1vsH0evCAwd2YqQkpmTIdPUWK6Ngq6vEXkdMyrtMiWZQ\r\nmn94JXunHKQfuft0VwxzfzqMzzuc59MicmKmakL+fV914w2bF5j3G+EusUXN\r\n7Vplk/Tq8+m/7QZoOYrWSPLf2KbCOx3CS7YVfcuNzliup/V6tx0nVpyhRbnv\r\nfoLHs0OKt9Y6q1lYUCJ7XfI9+eJtTiiQ/L4tGncf6ZDBu85WxLmW9hQijJ9l\r\nZAX7he60u0qsgEnqGHjn0woGKeQfzvClC0aXNCZT/Byl4Uq7BaKlbSyRyt2x\r\n1pbfVyz6ru8vNfK1Cvu0KNLwvrYWwJQZWI4szcX8hfrSOT7SLkqn1nKXYh3k\r\ney0mDCtfuUj/6va9EQRFLmuAlrF8Mxy+1wZxE2a2btmB9xBZkgR/hyVMZs1o\r\n7XtXV8+lR/geuyfe/9cWMDK0dWLMaxe+r8B3x6Aj2P0GwKx8V92pdzL30217\r\nc5GNkpvRVfMJgTruZBLe1RCMbokWVFQ+iMkvZuIkS6r0PPBLvNSiUV62uMh6\r\nFJHGeCDqrkaiAYUygMkMCdwghq7/jk8TAmg3yVBks4N9svKTIHicKt3uvEZu\r\nal2so92B8CnIPhFakO0h4sFjNftxFn1foBk=\r\n=4iQj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-beta.1_1652871247947_0.15568785683182895"},"_hasShrinkwrap":false},"1.6.9-alpha.4":{"name":"hand-polard","version":"1.6.9-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"c2213ff7a51517945b1043084a5cd1da2d0d0bd0","description":"## Getting Started","_id":"hand-polard@1.6.9-alpha.4","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-7PDOsCHMcrZ6NZoDfkXz6iIt45UppAYNqKSCm1ZttFiIAtKAsO4EP2Ki7t/KSQ4UTqghWFzkKBHgcEmBDcDOIg==","shasum":"58c821fed107173841dc50062b991eb50ac29790","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-alpha.4.tgz","fileCount":88,"unpackedSize":3910192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2Y2FBKu2+O4nrCTmWi9YlL60COmi14XJ7TVgaEtB6VAIgeljoxBdhLAsTpVyCwaSU3gOeyn9WMFfQ5Vl0EL0KOJk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihclLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLdQ/9E0ZK5A4TPmSZEQRPV8mQDcXu2xG7KPMcWp2oTpwBpiJ5drh0\r\nRjDQOIOngVxdg8mSspirKogXY2gqClqRL6sUTfVkQ01hLSHIVBQQXWQ7helg\r\nLClMxQEermBGy2AcK3wU2vcW49NNuXiU1+86WUumf8DngnG3c/wITexkfV12\r\n9dvW0Bb0oPMFBRurN1FLKDkX8YusG5rnzBtqJyNqu+9YIB8SzQzVUyrCfxRX\r\nfjPXYlnGcr+WcDBxLG9gZU72//vFsoYXFpMg5l0+e3uSE9o8oBualgP88zrP\r\nDiF2kGyjA6ozU/mzSW3NkwC+WZJAHVNeEMGC+ziQQD2Olz9yhIypmtsQGeqV\r\nLXHMt9dtpctEhoqUiIVZa2Xwaox+OLAS36AbB4+vCAtRCK7CoGjvotZ1uN3L\r\niUpT8N/G+jxxMeojzRdL/CXd4sPlYXowCyBPc35Gc7K8pJxHyPGV92SAtHCl\r\nTHAq0ibX6D1pAjgguns30sJ4JRPpnXKLsGE2I0Xrqms3inEqkZTS9Go61Prj\r\nFhzFUR67FfjHELsgQhGoF6eRcY7LcudixQRAidLHhlncsllJGJ1MG6AvgK8r\r\n1vaBrrRIKuF2rPRTA0Qi+LEV1Vg20xd8W8IeP1U3Wa6pZ7I18hG0bBv5VeUI\r\ng7IlW+qV7HvsN/IPgQSCZUFHyh3gVESkolE=\r\n=A9G2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-alpha.4_1652934987022_0.9006511968737976"},"_hasShrinkwrap":false},"1.6.9-beta.2":{"name":"hand-polard","version":"1.6.9-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1db2ac73033db9d174caa0f6e1b2249028b7d720","description":"## Getting Started","_id":"hand-polard@1.6.9-beta.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-zZqwvJQDlvNNAQe+nGnesG7X/jRSbXytYu89JNJpblhHqA+NnzeHvrW3kDIEQ2nTPgLIkoJtul2k/Ovwf38gdg==","shasum":"eb90e440b6eb9f997e41f55b7637cbf01152bdcb","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.9-beta.2.tgz","fileCount":88,"unpackedSize":3815373,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGPzmETSRxW9vbGYKz97dHaa0TzpLFQ7R0EShTkpjSNwIhAOT5deVe0/putEgC/Lfk0aRCc4i2oERQUTwo7dAtL9yu"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihdiLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVXQ/7BKhCEoUeX6MLxvZ4eNVu6DOKTquZKOLd6/O+oEIMI0IFabxf\r\nb4r4pmlIysw4MgeKNzog6FK12UrlRm19Ucyn435J54YCeNzTYPnYroQpcIt5\r\n8wtevZi9eddGGiwBsuCeeOEkYRLCeWcH7j54bVkt4zxGkxpg4bYjivCgrYBX\r\nU1q78KNc83bgt4hVIzrp7+mrNIhx5aI2lGpU9p+V3mvvAiZl3Y9OntcqA6bs\r\nBxUi0Y84A2/W3BZyhQcl7dnYR0GCwif2BRXoLxStz9NLpqGDcGn9qIXtoE5F\r\nejr+RVdUHTpRKL2l+t6rqYPAfJ2/kyxmXAE7Uz3T8MIRaZ0wysfTUS9KrUCZ\r\nOanQlWXzjUMx3qmX4oK2E0rDWyJyeHAV0wr/1Co9MKWJ6WIGJ+QSjJ18AibC\r\nJyHjmfWwLy+Zbe9E5S3R2VXBV/uiVdVr2GZvFpd0u11H/y17pFVrml0CRroA\r\nAemoBoCwfM+m/4o7c+e+XqtwPBLazlqP/oG5m1eNgDLGGIo9RuCK4bDp17Xe\r\nGDQ27Hc1VbJ/aWt6rmS5JCVm9kn7Du4/88pMdjbfZLxNPh0g7k2fwZDFVvn5\r\nPH5T/0NHgx2h8UoUDkgvQkRZWGFNvQsza65k5mDd/AacIJWTpogd1H5+muIH\r\nOGESirlv+DlSFC7bUVaVHR9yVrIKw7mWlvE=\r\n=pj50\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.9-beta.2_1652938891101_0.8126592030620132"},"_hasShrinkwrap":false},"1.7.0-alpha.1":{"name":"hand-polard","version":"1.7.0-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"a2b80b4d9cbf8940391e0c8063ba297c0c6e77c4","description":"## Getting Started","_id":"hand-polard@1.7.0-alpha.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-QiDyRblNu7j/04MsDSoShMnZji6J/YgPuVoIKJNs7oPAW8qVFbdnLB7EgXsOV5KlhnHP6IU9e7u0Xrx5nLTIQA==","shasum":"88e5651c7e13ffcfb08b2106f7707144ab877f81","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-alpha.1.tgz","fileCount":88,"unpackedSize":3911742,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDseREJboX+ccSI+Hwl3sgnvK4MSbD/Updtnusa0KPokAiAmQguc2+04+hlwQ3fKtxTA4e0EwJw1x7AOVVKIqYfuHQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihu0BACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpqqA/8DVpU+tCOVpRXvJ56Fm63j1zUO6Lqcz+Y00pzeqUpmSrFV/Gz\r\nZFZUnGSkiDDpsQgajPA37PIc2q/tBpY/5wdvpbrOaYSC1Ny1/RjBxXyEhO9x\r\nR6fDFHv2Iz6Zvfxxo2KpYpb+mahYlw/Bt7/emg8AZ0t1SSPyYbXnpbReL9uE\r\npA31uB2ESOfkCol65eBAc/Wu3KbyR8CQ/SU5d5erEYq3Y28vrxBhQtdypEQg\r\n5XiWshLZQOMvJ2SwaOFf5lGO3mwKvN1rdFSmXE9XliB2Pn7PZ4HEefUVIp5l\r\npJuHueJtQ/OzxxiYlPzT0JSLcpzkjBaT6aQsFKw+8hZXjmaA8KdgJhqb+q6f\r\nlheYM5jD70FDCXMIKuPfx2gJnE0RPIeYjVzTi5xooMCxIpQSfAOx5JlvDw/Z\r\nzJmJueT2H2z0rH5ZwQwasvOq24HDkUrlewjBPsmwXi4uMYAmsGnfvC9UfgMf\r\ne4edht5t/cncFpWM2VChF6Pg9IRIyJURPbt+DpG1fCmB97I1FUSziQPfryLT\r\nOfw34a0fTeMiL0WOlOTaTDpxdEgJ0rRXkMKGFbTAKO8iN2t4FDQ27B37vljZ\r\ngnFujED8aSVeKuPBL5jGqMJ9lD/XSga0VfFu8rUSB0qrHSUMaOm5bZf/EtzG\r\nYlgyzWSB8MKG5wz9/0FOijoHb7wqlOMzT4A=\r\n=F1mZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-alpha.1_1653009665287_0.8602781804049546"},"_hasShrinkwrap":false},"1.7.0-alpha.2":{"name":"hand-polard","version":"1.7.0-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"0ad5d31e64e6df5d1d2c5822ec3bebfd4cbcad27","description":"## Getting Started","_id":"hand-polard@1.7.0-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-VzpPgMIYlTlYJ2HvoqHy9CyfCaF3HjM5eyrBBiOpsBHsMDEoHVFoFER+ERz/MyGRY6MvfWiOZm/MiCBkICEgOw==","shasum":"0dc1bd55b9b3b545d3a4b44b749851463889ae68","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-alpha.2.tgz","fileCount":88,"unpackedSize":3906131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8eyD+JkeyHGNWcyUMEVSymDNddxUg/StLui6U+oJyFQIgGjITScg+7KYUNIVLyrwdmsZDPA2UpFLnLdl3ulDbbVw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihzDbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKrA//d+/lpqTZsMe1w4eruhIaeEY1ZTGi9DHlIeAWGad/0AFnlPee\r\nbhu2TAVyC0fAqroMPf/9D/OTHbhJFgZhJ6m39Re2n+JEgxsrMzMwpzQsuu4y\r\nVJ/DdVFPCiKRuz2L2ra4mqXkrTMuJYqQWP4IXW5dbh6zcGO8t9Ph83OGxcKQ\r\nk0XvIgDrGcPrdZd1l3B+CnAU6L9s9PG/uKaVOnbF3qvnT2501RjM0LeWRj6z\r\nnIoMxTxrx6e7QQavsiXIMaLqDo/puDp3VnOtOarpNf5suZhEcbWOA5LZ2vEt\r\nipjRkDZFjeW+aVVu3bSlQxIEUMymNd7cdneTeG4AxyYpP0j8dsEb37qDon8d\r\nJPE9myQLs/uuU1Zuf8VN6Lf+7qf/amOQ112BhRsmxRCSxoKrGKpETpPbk2/u\r\nJwfzeJKqZuM8Z7/Uy9TB8YoC+eOdvpl1b4IUhgb+3aZMExXUNNRaWjfnSfoh\r\npmavqBOrbrWkwPE0c+fOZskRudbG7ffHvhbU5vXBZNCE9fj41Ekd1NxZ0pT9\r\n3duLZZml9364dJ4B/5Yr0mdKiG9aIA7b5kPbrIYBoz2rwGFULcjnGWsyP7l6\r\nPhCS9nbCSb3BqFaGYXK1f2sR40raL17jfYnFzmJ5FZfxriZTw6QmFYmY0J/4\r\nl7LRMJHd0ux401k7BTLWM7oYLn0Bl8kWyBM=\r\n=Dj68\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-alpha.2_1653027034850_0.04359246200605216"},"_hasShrinkwrap":false},"1.7.0-alpha.3":{"name":"hand-polard","version":"1.7.0-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"175cb83d472cfb8ae314355d8cacf0ee0849485d","description":"## Getting Started","_id":"hand-polard@1.7.0-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-PlMRAFyMLoGUqlqkiqwPLeqa9IvSrUKL25BW1R+ex1bX7nDOKpBJsIZ3VYSN+lWLiCaxsBHcaXvzrZiqc9eBQw==","shasum":"2d709d90ae12561f316e20a8980fe0a71426ad90","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-alpha.3.tgz","fileCount":88,"unpackedSize":3906450,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEl7sNPsjtMhLqClAsJpuwAPSnFLlvrtsCs/8O1eDZjhAiEAzdhcnzVqItpsKRMz+05TiVjkL92VWtF0g4JnmirFGr0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihzM+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWrg//Y/6px6ElHLEP0KfP5wIZyyKBiOXwHighl6XnkMbcbwvk84lX\r\n9h84YCugEUuP+3zD2v4in0nSMp8I+qoR+f2s+bTDq5nwOjUk7Ke/fFSnBqeO\r\nU6VoXpAep05NH+wysOyhhNAdQKonn6WlGSx4ddKAUDxBDYJQwno1CJN7njXd\r\ntZRWQVqIPzFmR1LEi3maVt7QhZI+B0bA9NomGnaqIZ9PNHSb0L2D1GVmQH+n\r\n6N+AKiea2FEP3ddFL8cwa3JMJu5LKfukBGHw2vnVGQ/mEDpQkxgdpzcYY/JE\r\nKNP+XMDbCrAUZq/qZlPpHoCzItWQY5+cyyb1nbvdijo9yKM1SBtsKtbIBiAS\r\nRuWXgaEUW9ehgSppJFHnb1o3u2sFbbvI/rXkkKJklzXcPyn6J0XsdaxpZBo+\r\n1ZxnArll8mrBmHeGkF2f+Jr4pxhLlc+xYY6PKESky0PfnKQcQecS9duGUyKu\r\ncvimd4sv0zDMiyMyFFz9Npg+QacatfsIOLJS89T3Zv3apjqIPDLykn3/jiFj\r\nVDDWZAFqd/q2PB2HT59P0xwceniHtgM18mTax/KCH7kOdAM+j80JnOQSFVKf\r\ng4xHovdswJrIZzkD4PKyOzTjPHyOPO2uLBcfkmREO3gkCxPmE7bNgBicLWo+\r\nUXOoSR7I/PVOInL0CRcqKcUnIzm2Wy+5oNw=\r\n=wyF7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-alpha.3_1653027646038_0.7294071565146167"},"_hasShrinkwrap":false},"1.7.0-beta.1":{"name":"hand-polard","version":"1.7.0-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"11d269e080831052c6ab27989fd53ab79b8201d2","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-l+my3YokRylJggQH8VkwHgCJxWN2Zk9/Pc0R/7R6pc7jK293mEImAyEG2YJiUXbjU0l2GJ54QXWJH2KfniBqWw==","shasum":"1352d9c3207ebdf445964f12698fd8fd2f179deb","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.1.tgz","fileCount":88,"unpackedSize":3816385,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAfburN71clkmneGaZzc4MG7PKJWiH4i3APfO8kD2/yyAiEA8o4vZbRaCjcXMXXQ41PGZSiGOBHCwGjScS513c+AJE4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiixmyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqvuA/9Huz9cx4hczjY1qcoJgMUt85gnzaGzhlpjd6j5OsDR3Ddo8ZY\r\n9qoGJuRaFJYVHU9gkJ8YqFpwT7wVo12cb6kgj7sNkomMCrSyV2rfuI9XCg1T\r\nhoezb3W9jOhvNb5qhMnYqAYbcTXWDrwwTDMaBvqQnDtrK6cvmgfzdJlE7oL7\r\ns0uD5dTYxkiDnnzeu9uGUEz4c1cDys35Eq+wDmk0cnMdsLWDRWuyAtvomWGV\r\n0Dp2zJozKenRuh/+H+NjwZTQc1H4Yiy0pz4SHdmEfh6onoNiAD1OwaRXjyvG\r\nMfanUhsvd8zQNAoi7lObeeB0RMDprT6mtZ+P6SDNJc3Pqm2UenK+iaeUlhjJ\r\nBbdoB0pSPdB13hWOd5V6tZkuOPT0UFynFquZt3CfawJh7UsgO1BeTMC7WEjv\r\nrC37SFY5VuRmFxhBEdYy9Rjyk4nT1AKec/B0wmH5mfauwTG0oh+FTgFQEnVd\r\nTnIX7ERRG0MuSf24fkdcdgVsahlHLcjRfwlFe07AcQAU45eQcH5I/lQXGjlG\r\nTq+O1reWhDB9cExwCSFA7Bm6XHjFMKJ2TTI+duzSJjoiR5AeuVlUralPJEAt\r\nN7wbfDBH+z9P2tJhMBA5vciNVdUtAgH43gQIzCZe4IRQGHhAj517Crs5kxBY\r\nCqJuPsD3luxKuT743n4hdJJBo/hIqEBhI4E=\r\n=jFbB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.1_1653283249865_0.5355436398852045"},"_hasShrinkwrap":false},"1.7.0-beta.2":{"name":"hand-polard","version":"1.7.0-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"21db4e96ce74a5a9b71001a8d858e10d9397c559","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-G7aS7c9JG3LeyrXMAnMBwjX4dZEeVKBvP12lZIqF0yStfv57HkbwCtsXw1wCRiOuhVwqSCUDEUzDSb1XFQAz1g==","shasum":"2ebd2ae0e9328d328469a4dfb9cb7c1d09bd5065","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.2.tgz","fileCount":88,"unpackedSize":3811036,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbxQ1vdCraa36mxISdSAI4smqQ7iqdbeDlDdv49QrcuAIhANIu1t3Q/BGl2AVWapMcj0NAG5lURSrHVVeJc/QzaESl"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiizDDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoTBw/+Lcc18JI6tl4hp/G6f5VTx0XaeeFlLXig+2s47vmWiuXxAOmb\r\nenuJf95+DIcuRVJR8xrzuFmxkFDCpV14tLTI4lxTsFeT0PAOpWQRoW+S906a\r\nNQ2mJSTKQYI5Qx6/FDqz5PT75BpiPiHlArdzFNBYENFFwJDh+oQmq+/6ZBTk\r\nV/BqEjUh3wJmvDYku4lsSECYjFsPQqQfvcwak47ytqpauXCFkaqIxHqSTR/R\r\n0dHvruaknw/rPNCoMilmQbWh4npyluemAfDlMSB+DyVwuhDTHmFFaYlssADx\r\nRmKMpkSGIURasxykfxc8FVDdMcJqqswi1JeZl4wzPxNGlYVHPGYlNlGgW1I3\r\nld0anbhJLM8oppTlWql7Um7XfmCzaNWhsKft6E41QEwN9wnCrittXnEVKPhc\r\n2pVTZlzAHoFz8c8mmU/Qp90a8kswtdBYe42bjHdr/Dkhs+3hAZnP5SjO8na7\r\nEtoMUVl93NAYfMYW2REd1n2Cbu2kpwnzDtrnNLAv7jI7TE2HDfb/IYepZ+tj\r\nIVpvgBc2QMb4Jjd4ICDSC4ehNIL4On1CkVgbSmPGpo2O2SIYIEj0TfQX66gG\r\n48F6sjdVzRN/1nJhq49mLESh7ZYEq78qZ84MINEERuomHVDDCy1aCWrNm3T9\r\nuQSa+v4+lPl9aBsDl+lVcVBKcvxipO3soOE=\r\n=eKn/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.2_1653289155519_0.5277488330795774"},"_hasShrinkwrap":false},"1.7.0-alpha.4":{"name":"hand-polard","version":"1.7.0-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"586dd731ba548d2abd853c65b9a54accc9367942","description":"## Getting Started","_id":"hand-polard@1.7.0-alpha.4","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-ii+hkrL6zJDmpVnPocI6eYJjYqJ9ei/kIm+OAA+gr3cffmPcxqFb5zbPh7MNZiztIVLjMAP8SR+SEBIyhapLTA==","shasum":"994bc978a53f4d18c3bab381fe6586b10c2e53ff","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-alpha.4.tgz","fileCount":290,"unpackedSize":9147809,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIyEM8l8I+w47OTXXWx6bPQ/ZfKVGs1bAc2hSVsy92WQIhALaHEPdWG4U9zUryjDAoHatCrCCdY5LCH2GSV/uZnFYN"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijKiMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrL4Q/9H3ah7brji37bh8OJiEUuoVe7NSsylb5ZLbs+cIkg/pSfugE6\r\ng3BrGsl4PzxUzt9fWpK4wfkbISKTwopesIi+wGucyAxeFXm2YrqUb5OwOvRL\r\n7COOmd6O1t/BcwXv3lZIsOZrNr+YJeQn0T5cVEX/pfX1jreDUDoUX5GS/9Oq\r\nxdj37VGGIJgVTZp1axbueudDjTq9sMjbsMP0+YbYL1vcEGWcH2GpTZQPfWYe\r\nSwYUmFha1xMzbISyZavnfGCQj1Uzrnsdj7S2NRsahY5Q9DJr3/Faa6h0qXFh\r\nhMPOxaSevDYcTrEL7B1M2jQqk0/RzZ9BYo6zY8PeE62BH+h4cGYtS/7Oq7Gn\r\nkFOV5H4YzfdbBAVaX8jzlzJURQ2A6hw8MjjsBFGJrKHgN4HGuiLhegwnb5jW\r\ndhJU41muJYypsqPhq1hBGu6Mbx3zdVEgiDa5+c8ht0KkJSaJQFfW3t4RsUgg\r\nJLrO3YDHiMNEH59tIHR89fu7f6g0J6jnm86EGPAs5kDoNe30JpO7RRL4uIgT\r\noFNqYdtJQiPadIpRTZRAqVKHohEL79ZjENJ9FsamFYhzj2W6cjYV4jp15VEF\r\nSs4VakutbYIIvIY5WuNgkQ0WiEt6rnojyd4Ih+yaVzdT7eZZ4wMzPygHM0IH\r\n2kro6CeAQG+BfJaT92na9gMoXyWuw0PsB4c=\r\n=TCOC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-alpha.4_1653385356627_0.6758482429719237"},"_hasShrinkwrap":false},"1.6.11":{"name":"hand-polard","version":"1.6.11","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version -- --release-as 1.7.0 && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"b88ad1e5b4b119c875f8e6fc12784e13ea3a5284","description":"## Getting Started","_id":"hand-polard@1.6.11","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-kRdGaTPh14NkCiKZAmoGIfExoc/vgD/x/axIouuBmSz/qde4J1rPW6YmENjP4J+sPr3IklTv/OIBVthJE0H+IA==","shasum":"c81c52b0f9cd41be83d6bb5ba6a47f2600d30822","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.6.11.tgz","fileCount":88,"unpackedSize":3807004,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFBS7rxPqHcISd8VCnnLRDQT0XHdMMiLJQNgvXLia0p7AiAjFvufoSD3/BrqTlztSN2/zBD7DEEN3SwhCo5Egzo9kA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijY9AACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4VA//f8FQW5HPOaiWwCn/5mkhWPQYPhE5uDBPD6ZnnwVtHp5sjWc1\r\n5BQh7vQEghCKcCDC86N2cZRGX0TIAWRi+4RY5P7iFqnQ+fpstTwlq6FN23sr\r\n62M24hyplKM1pnDerQ9LmQ8kP8D+s/4KtT7NQlKT+GwEhCqTXFcrO44kz6PR\r\nI46Ek22lmEbMOQYQ7VGu9q6SJ0LIIlsxW1tcCDuG7WPeRJAb1u7pPKUyMRfX\r\ndyzQ+YYa0N0cJ/lnVEfPxqYQzlxV3+XAbey+5u1MDN0jTKAdU07HasFR7jkt\r\nExZLYF7ox8zDrOglg4fDEe7qBPPuwLptl2A8FJBLfQivPfx73LEdMcDVYmaU\r\n408jMoIbiK5iBvYv/N+rs7k1ANaT8RZAQNCvZJUfD2FvuHC5GhrDdjCjtvMN\r\nt3GdEZ6dr0MRxxxXg7U9VTG6h7lsAoufPj2XYKUMRIpy9c12HCI1vOq0KwQt\r\nKGCo6qF0kYtDklRYuFuL8PQC8Hl4MhQXlp5knM1sNO9rWpHu//O80ojuDxcx\r\nWunAL5bwwwruF+nMTFSREdcQt8A5wgldX2PzrHkOpbh0vhjOnOG+NWMt0we/\r\n5v2BojXGsKwN17j4WmQlgQEo63NTrFANRTa8SBS8TCi7Z5/6K990x2G3efDb\r\nMcQIBr4u1r9C6duGfY0jVWIOVfRb4ygtckU=\r\n=a+vo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.6.11_1653444415886_0.7248494636402227"},"_hasShrinkwrap":false},"1.7.0":{"name":"hand-polard","version":"1.7.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version -r v1.7.0 && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"4264ceb1ff33f8b67478bfc2d073f23e44a1dd49","description":"## Getting Started","_id":"hand-polard@1.7.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-xClNal8B/Ygu0texBHnvZnktTOKZa3vn152RE4pIfLt+AGKhY6Ohf4XEfFHHIDIhWq9VoWWUKUX4F4hZVb08IA==","shasum":"0ade8fd48197860f36dee80273ecb631282eee9f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0.tgz","fileCount":88,"unpackedSize":3807348,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICcLHvivNMf+RE6KNwIHN1rMSNHyyRNrzRmRblzDioJYAiBBW8VJmaADfgR9pGCCVoBl3rMn2bQJ+angYGazhqNIXw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijZIFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqVWw//cd5UuaXIaiX5kglWWEMdEOAutVsMK/5F4XGlRRki72J7Xf0E\r\n3aly1fjat5uFMKkPUG7e4qwi6pvpZK4PPln1+TbnwI7Old+9pigIA9gsN7fe\r\nW13pUIqPnu2N0RlLOMXv8AIaZnPI1aPRBn/llALFxaFt++Kiu3wvGTIwk2Ym\r\nRlBxfGrzF4qjxij3f7nmECZ3B9h8eGEWM++Hn4hoabeivZJ8OcPKh+CwSTND\r\nE7NSsAwjgqEpKTJBklTNKNMb90jcE75G9rrGh+zbJcBvCWLhvPy6/Bp22Zdv\r\nr2BYXi7mggIi6MBv9rRXC8Rvf+G/zk6uoO4dPB1L2ajXG9YgID7Gp2xgB9Ao\r\notSKEU/qVKDL5ZPh1vKXRLh9Wyy43m4lmxSMnZMWjpkY33cXx9kNiV/820ra\r\n/y/U36+OGjMgI+q0ZSMe/P1Y3RtxdlJ7A/I/YwEFcCRQCzbEecIWkIOs+BvJ\r\nnuJr7X2SOwmHtsJ6Fz81i+8ELRM92+xBxaoFs35dKXie2EKOZZKYWiJPg8xC\r\nuelxPcZoa+Q9K48N5METPdH2OMFJzSm3gjr6WhIJa54tuAJ7945faFWRRmFR\r\nTn3bSWvYBEarMjRYDG9AzxO5lrUL4dttRKfd1OwyKPChqoqR3kOIZPPwyjQL\r\nBQdQmNsc5MlYtS+0yrr/eTAGpF/Nm62rCrI=\r\n=W3st\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0_1653445125206_0.30928272214675956"},"_hasShrinkwrap":false},"1.7.1-alpha.0":{"name":"hand-polard","version":"1.7.1-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"fcf68cff8f83cf9a3fe8ee4e3d448663b8de6956","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-VHGPfGlY5VaQDWQLSyKdqubHzLuNSfqCiJakT7R5jBYQpy1iQddU+WQ4rftOE83Hyb3c/PFfbM/cDSRTd2IMVA==","shasum":"8534994c46b88143311cd47beb50d4fe7cd57d85","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.0.tgz","fileCount":88,"unpackedSize":3918868,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGdm0Ao5DLfTmFbsgy0qy0ah5Sx5rxt1cmAweNsDGMi7AiBiqazVGPnicGAuwk+bs4ayhAuZaMafiQBgOpPhtHfRQw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijs8aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmozfRAAmn/3t42f5OfEAEeBYKEFf69URxu7967bUrniHC8ZaHPad81x\r\nx+gt9RhBM1ElaUOMwoM4qsLz2w08cOFoTaLSB8pFtmShaRcM0jKULwVi/eLk\r\n+iTscqY8oqN8NKIxJnhy6fBaAyP9XXOUaOf4eO4iEyoD1pmLeY2UjHED7PSS\r\nXo/aKf3/zKhmfHM1klCIiFVpYbJYLLyV6gxVqChoEI0kGq29szFDjG3vDRQb\r\n3hLkvYtXVz2oY/rfIV9fKbGnHeJFvmEiFDYUaLn00gLS61hkUy+m2whf3Esy\r\njpBmiEJ3qx3wOANeptMSLaET7sqeNAq4ssUojx36mOALbbH0yxakrUGMzKRo\r\nPPUDumzF84bA0I+A+44/WoO+2UBJA1LXOlR7OHWxtROMMA9KfAe7sAfrWi/v\r\nymzeavRn7nDSDrbeAX/W/vzhhWoxGhnEAiZotHkzMjnaVgZ3K81h0EipwI70\r\n2MH0xS3Z/Ki3/tQCDpexeT81BlZpDRu9I1pBPRA7dkLr755G1PBTUf7YxsoM\r\nxvs5Nhm14qzMsYAtU0GdY/SAeRlImHQHKEwLplVhmfVRoHuacm9eMQuESqiF\r\nFPwo2CZNcwamEmk28DeMaCmiuvEnKLKNwRHRuoYlpW5OR6aGikzVwLWd+fRm\r\nwOhqsa4l0/VHWGl+RLhD3QCQ3eSPWfZ4jzA=\r\n=alNt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.0_1653526298697_0.9306360332508936"},"_hasShrinkwrap":false},"1.7.1-alpha.1":{"name":"hand-polard","version":"1.7.1-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"35c6b7905df9f4e8483ae7182e6861e635de5a8f","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-czi2sD4CaXcbg5/tw545JEibo9vUTTdNBvNthDxLEPZVkIEYAdnG39r1sDYZ3+M7jSVLvbVJe+KhRtWcSLrGHA==","shasum":"c3660b32b59f036ee8b9705a8e9e8950d40cf40d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.1.tgz","fileCount":88,"unpackedSize":3921285,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHFRlCxiZfLDA2kpOkxvmLad1d3elKcMW0jW/nmDFiGBAiEA9zgJY+zJHfE4X5FOGC6u28XSqBi9Bg9JsFre8QudBh4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijzrmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3SA/+McsrhTuFXcm7zdPO/G1EwqLRx43CtX1rGzlgM999MX8OOWjo\r\ncOt2tuk7utl5HvCXQUl1pIq6sE7sf/q0b1mpFA8IOHUJ468lWXiBybJGtB2l\r\nYJTorTeY3fyFgqk2NGw+ZPK+hDUhOIVc9wg9jR0jq05Q8UpukbIzQZwBxlVZ\r\nCPYuKLTwPa4dZdrpCPwhm7dAPyGtLElVMi34HlKtsqBZPlt+Umm9n4aRCgOF\r\nHEfjgvVVFic75vd7GfCtcGYRNzO5zB0hnLA1YNakivtt/oUCv5Q40SVOGkrO\r\nqZSs81AVf5ksIvHq1kF6EuMj+B7k0kzvOpcDrIjC3heq6IT27Lg/EyaMYZoa\r\nncAVK6gQz3ruPQO69L34/q2+EQ3AI806FfxG9pO3Y3rdYPBpswhW4m500nXr\r\nV8B9c9QGMrFn2Zf6HJ8XIvsJze+/X+JbVdkrfRLm8bgPZaVV+f8lpp/kSfKj\r\nqjoZOcOGgzippJcEpFPxTlKd13nIZyD/4bVuDQr1gMHpgOZSs/1M2fPNtp7g\r\nWe606ae0nWSqYlaO5oSYazY5yP0e4IhSJ3x2TSKEHAFEWfzsZ7VOsFfbCKNb\r\nAlfjF79GWJVmFj9Rq/szutjvOe3ZOfR5MJfRB8/ZRk+5KR+HA05zEjXp2XdR\r\nZbeQvXCqYVZXvXK1r61twtBMJyeNwdgH8Bk=\r\n=EqhJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.1_1653553894667_0.6619444726756176"},"_hasShrinkwrap":false},"1.7.0-beta.3":{"name":"hand-polard","version":"1.7.0-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"770fc1426bcc7f3729b34275b1e7b64f13c74fd9","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.3","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-qZjE0Q4565IbheW6LZJCRGmL6RMRSVujYHtr+vzq9MdFh3nfdwLS7EAuFl5PCMwO7fDdt4ZD3NdxGyzFKmvVJQ==","shasum":"07e7e7a795dbeea71d9c32eb4ddea14b98d6c6ce","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.3.tgz","fileCount":290,"unpackedSize":9051442,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFWAJRQlVE7k42OkT7MhzRM877nB/juvcMT2kS43K5wNAiEAh+LKDmJYQ2UxdP42HIqO5vGci8YAym7eS379+jEWLgk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJij1EAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnMQ/+MnDQwgjBUFtNPN4hE9NJ7Orje2XG3P8XUtyYRc5pPkCFVA3z\r\n8qxjFJh5aPvCnrvluPMapGAANUR83/yul0I6qeHupWffcx0Wemv3Vs2evGqt\r\n3gHfzEIF9jdvHLfiUJK1M1zlSyF6tH7q3wkQRCWYyWi6kzFbiIbc5pQQRWdc\r\navPvn1hxung8V1qKy0ujKdbxfY/c2t68xR1vqcBx1U7nHouPRbLkJl4Mcc4g\r\nuI0W7A5IYruS7Q2P0scAfXtf6d6gcxfH4kqDe5fWx6wtlw6+3wJWUXYrCJo7\r\nsOSiH+fOudWlHzdHe31chHq7RJRpF3UVA4hwS0sQ+LGRaO5IbhuKhICpzjU8\r\nGCW2ob2aOsCZ/hu+is4RPtA2CTiGFeYpGqU1cadw0BG2AgnylFkfUbLkyQrF\r\nllZSCnfaNGepj6mI+3WT2weKhSSlOUlIOzJhS0z6jqs69PFKqZma7DDO5NJl\r\nctz7ds02PuX836HzqBqTlYcBjJ8KOlhbJpWCGMpZzQ7quCC35Hidq3a6cZdw\r\n3Wh9X5aooz+eBHhxeGhl4zTGlaBxHcasq92UGZ3Oah+rCSmGO9FVgEzO6uZd\r\nD7F7aNlv+SqnOQqs6w65fw6hhJKKERyRdAUNGw16TuRbbuVZBtthNI0b/FSV\r\nwXpwvBFgQb75c/oEJ8+svySPDlM0slABzw4=\r\n=586N\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.3_1653559552421_0.8707366021267464"},"_hasShrinkwrap":false},"1.7.0-beta.4":{"name":"hand-polard","version":"1.7.0-beta.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"129d2b722395deafd5d79e401b4f880523a14dba","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-yoRb9y+0fT29eaO9bpdUbvk0bBRMO+DCXcjSr9HmBxJyo61E9CvxY6gDdauUtF7B4ECTdnqpDVHteEVb14OvmQ==","shasum":"c88260f2de0c56fa4ebc2346efc03d0e818abc8f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.4.tgz","fileCount":88,"unpackedSize":3813293,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDKTw/Y6x9X7dvyGZVf8VhaVOPrWu1N1ukDl6gdKQk0dAiAajha4wWqDNA3kIJ+JxI1Q0XOeueIj2qdxatsMA2fmIg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikHrJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp6Kw//XH9yVikLLfyI7P+jV9Hw1dScRG6G/QtD3h/LiFmfEg4B45sq\r\n/6kx4/5HLD5p0ZB+GojcT98urQeiB4Pb6lrrEDz2dtweRNkVQApxZUkZ5BxE\r\np3R8iZbUplPDNwW1scvn1tNE2h3HLiMAYdOw4jB40ZdPHS3drr3Y1HnYj4KL\r\nmkXQvcwIc5RqzXI3J5rYc/PQwqXqT02zJi9HCX6El+Ns1FjYJb1hP+5v4d4s\r\n+MVrvIMK0LKAQCRu4+eAh0RT6AEK6sH/u/R/rA68QLFtpDiNH+dcGOD6NT3+\r\nDhugIhMl6xuolrh4nazL0YWVc9U1ExBeAtxchM0jE6OO7HaXsYWe19NexCY1\r\nTzKYeB57u0HPQrXQYkIWdIxia/0SuHNaYOvs6TEG7H4BnS5D4rseloCaXr1I\r\ncoeGboI0uguvqVL28pgCceEUIEX+Mc8JLMB8KieR7J/7POvM+QOzeMVfCkZ0\r\nhBfLN5KiEYwPVUCXtSkK1K/0Wuu552IDT3QVtyw3hg0BF4pDLPLWkLTK0sSX\r\nUsT5elV9QoXDAJ9SGPDZaZ11PHnwDpyO7MiVoqeW/aUaIprfprvahdFf/3nd\r\nJ5nbi1/hS8Fw75sAc25CpsosAlWYhoKgPcX66KNdHkCo6S+79osWKCKNWFs6\r\nAJlSBhyR6dkF2Hky1SJXBJFix9Gde+e9uhI=\r\n=AcHj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.4_1653635785743_0.42972223818863076"},"_hasShrinkwrap":false},"1.7.0-beta.5":{"name":"hand-polard","version":"1.7.0-beta.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"2d2cdd4cd5d154a789b09d34b497b6f30bb7a95b","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-zlidhPCspZt4Nph/5DWgdwqyHHv3+Rd1x7BOAEE/dShiZ3kUAdH4xfUUWYXnb4jyrPFtGEcPlDiddtnA6dhkZw==","shasum":"bb9d5b6b1bc47ecae8e4b45ebc0585398d62ba0e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.5.tgz","fileCount":88,"unpackedSize":3814056,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDr3pgJOJGZ6EBgeZ6B9Blodc3qfBJ0FImMJAyRwcfAsQIhAI7/+0d+13pVRD6cqFJ+jNQf6CELhOBjr+g40gv+XpNm"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikHtXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMZxAAo2qIQClvpXpWgqjwnCSIG6oMwpmXPKgtBW0hSbF8420T2aos\r\nzlLX6MQvJijhEfhDdEWcfO4VuVm2n27m0yQn/i0TIH20oewYZ1j7pF/0xQ6k\r\nWCaNPmTOwJlQ9h5qLZZQPDhiDoegXq9UAnMDiPSbo4ysSNR8lNMLZBUN5ETA\r\nAFIKcbo1azWDtvRKNmm1tSl2B7mUYQAlDcsFy0Ct6H51AfUY1avyb9hxgCju\r\nIHMqVsKaZE3RzXbr3hZ7jEpEx8SAk2AbrT1uTSuAPMIHnbxgIjjyVvZ1YPuq\r\nYS/OFbG8HR+k1De7lrB54KWuvaLq8GD/dOBhFJIRbG8mN6TEIft9BeOTMpxE\r\nIpAtRu+1WNmK0aO1TJGqu4QWM7ff5z47Q/wybQsn7TyinPFubll2tAR0zEbG\r\nn98/BM6Zira6L63QrbAZURtuSUW0euqu4cwwoGEfWos/w0rZDM4VI127W+P1\r\n5xXsR6wKVef1g+JRxjfrFQQqMW8md1yMX5+XaE3bW+sFUnGQ72LFPTSA7FcJ\r\nPlBJPpJhNAfEMtFCIGabReZuL32KWvTceb3Qvvc1aAg/hOc5LMBl3Uha3xfb\r\nNC5RTgmrxRSIvDDDtyFM6OyHqEgA25htzRy0CGstZymzW+DJQCQnC+45uXP2\r\n9xYNiJo1vbiFCStUi9/YKivMgd3TqCEO2fo=\r\n=zT2X\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.5_1653635927192_0.9840568121946094"},"_hasShrinkwrap":false},"1.7.1-alpha.2":{"name":"hand-polard","version":"1.7.1-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"6c90800f0590950490e458c5d7e48310bc870c5d","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-GTTX1GBr971uBqJghH7NFUEmpYeRMRX1n5mVrBONiOiSoIkAOnlMUx2RdD1gU5WVRDOa1HV4FcQYrdNRz/iVGg==","shasum":"5e8f712a5ed6f1b66cdeb44edacb6c9fe5463ef3","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.2.tgz","fileCount":88,"unpackedSize":3937144,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEAluNvTOCE4g+VjTUNcNQ3iIOUZeMnxIBE7mcBfnE6nAiEA3EW6KWDGqo4VNtpgj43fLotriBdp5dYZCU6Mpn+E0qM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikJGLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq0gA//ebMhug/brgNGSQZsfEjKk9p8Oz5KGrLOUAuje6wiyQPCDUY9\r\nbeY8ka0PIKUSeqHy2BC4sFlw7NMDr6pg94LETguHCij1e7JlIXC5by0SzZQD\r\nwy4xhD4brD2m5/rQfAXoHF7nICZQctUv1WXPmrgEEyTKQLpNBzeaKvywTu3p\r\nfYgpjRHf9CxkbsKIVPQ2E55MKMDbjz2q8Dk7fYZgivuwFQhDNkXSMD8qzvvB\r\nD6sL+C04zMzy3KZkYzEIQdoUhI3C3PzFSwdtgSpOqL+j3bnAPCJ4mspCVbUz\r\noUiKspFwc0Re5H4xafrKtxVFZi+A57/3LEaC610EkcAHo48NmN6mmvMBq7pd\r\njJAl6xk1WOmnGwm0Dba224Taj3Oae64QJmuzVaqySMCbOfpHt58OqR7+7vad\r\n/c8AQegDW+mXkIICae6Y2gJOHhv/4r77ultd4Aiu2cAwieESzehbQ/v9/uMI\r\nXfJlDoeSHGLtDF049hXYn4YtY1rl3/a42Lk2oEBnNY0YYqOeLYmZgepWyhNn\r\n40U504MbbEF4TnYsFzro2Ut0ZmD1zOvSBotc1Ag7j/y/uIMoG8A0D8CnSH2R\r\nVaHSnAnBXR1UB2xca5/O7PqnTkTe2k78kYy9HrmEW64nw9SImVmdUkUJ2+t3\r\nvacGLprJSSDx6o78bW51RyKqNMG43Rw9tzg=\r\n=XfNC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.2_1653641610807_0.230890811535456"},"_hasShrinkwrap":false},"1.7.1-alpha.3":{"name":"hand-polard","version":"1.7.1-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"6b2ee78fb816ebe7d071413859a25233348ba2ba","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Z2lZtYS+DpOfA7lNMptUhE80AKkTTK1sGLpFTmzQdMS95mN3fOKqERdVOtvrpEISKwXhht+YrS54Lr5rdp/Prw==","shasum":"57275db032a20b73de8f3643f2e7763268b34b57","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.3.tgz","fileCount":88,"unpackedSize":3938963,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDmNmkt0l9IeDn/SldE7JQE0H8q2Hhx0nYRZCofVVB0fAiEA5BvROMbGzUpq3vBqVYHzDKbiM8rSBLocgEdevsrYSOY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilB57ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr2kQ/9Fb0At/0W17NL/XlDcuCtV0SjcTAPjdEY9w/m4OLyhvyhp6LR\r\nI1zfQa71mLRLqnqg1leeSX1CEcVSOkk0c94Q6SD1rI7tx4WNgD0zfqXPjVym\r\npaHnUYttmu/ACKsycy/veFpCL3NM+FMDW27fY+8iqpXG+bZrGduLDDLCzQ3u\r\nTkzFfgs+F1/p6WhI4VKFtKv4BOlJwWgHm3cJ+AlzDjOzz8ob29ImioHULK29\r\nG9dFzTOI6+kUnRJ/khunZp35gjgEWCyAiISQqT5vlYFIU/j1FMReIDtSv5GD\r\nsJedfRfzSrUvUjjZA/Si11jNjnl0NEH90HKpSLay+oLVlRacdbsHAexhcJ23\r\nM5tzq3hFMy347i7h6J0MzsXB3IoHigX/N6bqfdU430tHrVnzIWLKMDUE3Q7k\r\nbyZlocp21rjB5JOqcQU96+QapH3Cw2uVdM65cMvZvuCyHTJyYb6gwXYVDeQp\r\nuspBigVfTO40iUj7lpiN1izqAl/z54uoQVQ2V5cgvL2p4MeFOuxLFvfoJ0cK\r\nZfjiHiLpT2kI/LnMmfdDHziwATiPT5H/So0UYK6ayev8CqZEsXlftpzCRSue\r\nHvduQ1E4+MyzS9qPs0uAIiAfdtR4NMZtyQc6WajcVdIZtwY0rt1gM81PV9Z9\r\ns8lO6DXFI5NzeV5fqW2CiYp45YLSN8wqXeg=\r\n=PisE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.3_1653874298919_0.3254251114545308"},"_hasShrinkwrap":false},"1.7.1-alpha.4":{"name":"hand-polard","version":"1.7.1-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"a853d5c8428e06c57bd3cbfc81bf48863e972f15","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.4","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-+tohr0DHtPqq6omQy+qSG3kbM8xI19JV1NPrkT2vd9ykr6Kb3MEpZ8qqmeGQLpjLKy6z6f15JCiqYwPCk4CRlQ==","shasum":"bcb990b25d843ac7efb0f56176c16626e45a6364","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.4.tgz","fileCount":292,"unpackedSize":9222410,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTsXHnu9m6Djb0FmvD1SjRUCzLlhFO4MyUuRK1gbxS1AIhAL/Q1CorTEOad1DSqScJMJjoUo+O+4rprg1kins3spGU"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinaMOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFYg/5AMSV+oLI2DN7RGr8x8/Rc3SCPOstEZncZdKc43hU4LVFroCK\r\nROG+3lGx8ZtH43wUek5wEqYXEg7Oj/skry0NAyT3h6fVXkmtVoe3v0+gdp4v\r\ngH416s1i8W9WFYS/yra8fRQmjtoeiX0kByYAib2HCdsdcHmYIk4M+Y3hVCkA\r\n+GBrJt5NRnmRzkgWJOyOJ+mjat0W5O2hRthbAXwdqnjoTsslnX2PsKBWEi+3\r\nGD19aTEHcv/OmwproDtSpVBlDvpGnrjvkPBUfq77LjHH62fDGSy1IuQGGyWE\r\nUykQUAUFcLTs7aIvMkUjQWY9ev9sNZsgIxRnHjj0/VWdoWiHTuao5ZFmjw6E\r\nhYmMnYYEAoW3/xLN49FLEm8FFylCX7nFIJLvAAag25xGjhzHxnXK1OPFZUa3\r\nHBG/jLAzVY/Q0S2e9sb4W+y0bjxiiBPgReoS+6aziPxyGYMfYr6XawuG8Vst\r\na5ap5W5rs8UywAocnnObCeSufMkpq1QxMcsFK3oGlanPT9OdFeZM5jYMJwHM\r\npsZRIjuQfUoapPsOAY5jrY4UcJisZaR0n1Fxp5aEb3T4wPuO3G409EjV8UXN\r\nXpMpelOdj0SmEnlMqawh58qTIfX9TMTRnohqxjtYB9n3hkjJB5cTc23xnot5\r\nnJYLC0pyrm6AQ1KZNJRANNNlKO6zyVSRYss=\r\n=opnV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.4_1654498061754_0.9458433119445555"},"_hasShrinkwrap":false},"1.7.1-alpha.5":{"name":"hand-polard","version":"1.7.1-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"4774f90085b565aba34e9db6c5513d7f89f380aa","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.5","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-LiRVNmbBzWNrOoq7Agv/xPEVtdcdqGLo+qa641zFH3TGp6eC8uWz1FTgvqR1A1yCv1pyek4okJzfp2oOKW+nlQ==","shasum":"50e07b577ad7d20df4a28a6a48d25900a8cc32e2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.5.tgz","fileCount":292,"unpackedSize":9223070,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFpjn4cbCdYnIfC2uW12CABo2BANX3tCosCwYFnJo75fAiEAn1b+TRDYW+khLw0/REyBsEhhIjyXBbebl9jzhntOUKI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinaOYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmra1g/9E/YJKbZd0viM664hpWBtrUksfIOhmVu+wqMPYJ5euITY1G9d\r\nbd2HskRfBUshMbryjSJXhwdDMObZYzGOGFu26GnvtWpa+Fvl1IaOQX2RdI4E\r\n964yRYLnpCAnntKGxEb7XBxzwt0Efd1vWH9gHcogAexeS3fizBlJ/OOc98Ds\r\n4er5YEL7KQCMOJ3xvjpXSusbmbY/wysN8QCw8hO74gqU6h9dlvxePOuaL8se\r\nPJVuY0XTQLL27shdutl0ERTfPxW1ikHe+Cd/wEv8dvXtLBd1mVyya9jqZNsH\r\n9iMkghRWkRXnduYed09VySFyrbGhjkHxWP/fwqapOC9yJB0QmMRxnAhbAel1\r\nD46Mwv542J3f4LNrAFjzgWL/mVzOoC1uWNHZUFOKX4z69DUykcGV8qcXrwKH\r\nebr1WEJCZVv+J3IGrm84dexiHQKBxV2cvLlKoJOHOVQ+82X5mZrcBzEC11NV\r\nlmikopk4ATQq0x3uNw4AGiOZg/+23ooqXdeeqG47wcyxPSmAVadIAX0v5OWm\r\ndtYFofLbz7x1ACgAM6vbbZKb6GRVw1kABtuuhAemjEShxJ23j2ig1kC4hC0K\r\nEAzZwN8h3HClRbHjLGdETho9fi6sY2CNEaR/OmxNDvsFbaKNp8elk/VMAaBR\r\nBJq12mD1qAVUa6oAM30X0GbY7EUSFA0sszE=\r\n=wHWb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.5_1654498200438_0.2606277792580114"},"_hasShrinkwrap":false},"1.7.1-alpha.6":{"name":"hand-polard","version":"1.7.1-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"440082e46ac160603a5b9da40a429db5c5379dc6","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.6","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-5blZoiqRvtiP64toozKyLeRFbO/ubxqt/RPBwgjcJtyY/nWwIF9+KTcc8xreE39HfqYhOZI0cpO+Urr2T3tshQ==","shasum":"373cfc9c62623cb3420cf0018601ab4377e619ce","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.6.tgz","fileCount":88,"unpackedSize":3950577,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkKsH8whb+icK4OG6q09sfl2H2evtN1UbgbMPK6qTdBwIgfPxJcgnwnJ6xdFdKnzcK9YPeM3klCCnB1EoucmZBEHE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinbLsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQ9Q//VuDTIgTN3CWRYKhaBXHn/9htz905fK7IKCIsv+KCBWYkTdwz\r\nHjbsMeVZbRmBjEpKvTNELW7JQTkqCaZ/fgMO702wlg7eDDIPgGsL+tYfVwNY\r\nQRbbeJnT3K9wPfK+E5pZBMt5yC1akAiw6OgCUA4eam60GhxEnYO/MOSSeK9b\r\nsivONuwZxD54agnwQMDsEqemkprMqEAnoVpqgtNOCwKnWw147qRYGKKXtpdu\r\nBLLJHjJFarWdegDTioyXWkvx+o63AcIPOK0rKrfWl+MWn3ZhnxjEE5eTVN+X\r\n4f/f9G/4fXp2mBfjveUIbZNXXvvzVjogC03J8+DVknZSn4htpzPQh3wbjV6k\r\np1NRp9Q9E10D6MHMH86qZHOzaC+6NjN3REeIyNG+QKlNdA8kOYhE3eN/UFGH\r\nvNCcH+daIjS1U8MFYIpvAysxInJMtDlgip1Fb6OH4EtoVV7AFtMrrfS7SjfV\r\n6FKk8XMMUAr4jE25M6Rww5eR2rZfpFsMy2n2puLg1Ew/JIYe1S7WgdtzoyRe\r\ngpb1dgIkHbT5LHRm6LgKCw4q6sr4hGGPgukv/rk+h2HSZqFAYkLL19sGitYD\r\nO0b65tWekNkMoGGTZP4wydZKZlb9fyT/ZL0rtg3tokdwr2C1ZOlUoTOpiizy\r\n1Jmd6QZbdqZFziHLEZbLdqMJbzr3D+Bbca4=\r\n=wDRi\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.6_1654502124007_0.5956125481093859"},"_hasShrinkwrap":false},"1.7.1-alpha.7":{"name":"hand-polard","version":"1.7.1-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"a016b13a5ee23564c37f2e10d17de184094d2283","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.7","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-Acogr6T2qM3EyFzp4beNsCrSjWrCkSXEjL9Neywth7DErViee+lZ+Sbat/EzutAZC4LObCMjO0Hh1ia9DQ83pA==","shasum":"cb61cb648074c6cf4b925d4d24c4872fd0705b68","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.7.tgz","fileCount":288,"unpackedSize":9202348,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBzJa1lBrQhW3oqcw5Mz7zuvqqV+ZQ71N95CZhU/qfxAAiEA9F8oOHvcmOtTfY3+7fj0JsTX9p+Mrvxz87MmcAtBtX4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinrO3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQ+RAAhn9K2S/0U4mM2f4h+xXpUchPQYa83VaKxO44RycIOHeZFbew\r\nOC8z3z4mPdnZOf8eL2uOXh90mpeMP9V5Cb3dSLjJvgeVsCWhPeE04/ljpWpq\r\nG0ienU7YpyZFIY21grdNqiER6Z4aG+DQOYYoEnqQPlyMFX0jE2wKcdbygkXP\r\nx2MLsXPswJ8iQYxKfnGtH6zUrP2xLw8SmqfGWNXdQjoZ8Vb55FlPq88xzOJl\r\nH8IAn7fBz1V8mDjZxYDEJOhSPfUXYa+PQbXxkb/KWcHFLotoXpmwRUVA2Cv4\r\n2VAYQUc5M6PzpcP4SH67t823nOzq+8MDFufYRSGo18Fb1hCa5gBbESYsrNsB\r\nkV1z3nt12c4vft96wU45/nL1snddbTwFgQ/wJDb9oeaZljHW3TfRKzTrR4YL\r\nW0tzlpecenZHzu2sTJ653MV4kwIoK1bHyTG72TplKo97aJxGqsq9E9c0LPss\r\ncWJi6oNqL0wQenI+/SpjeKQiY4VMLgfEk32jgKnJZ/trYjyOCW92/oUNGJsm\r\nANIJGy+Ps1ndRMQXfAP0LfZx5zeTZL0L/8nPDIss7VLbFWyMv2LwNw5Vu8qd\r\nubj5llJZfGF3Sol8yBcgAvVdKNkijwTNIsjrTlKVYD1ac5msZnWcrkMpDOxU\r\nWrYZEuFLCOotNDzmqj5w9aReCMyd343WYL4=\r\n=EEVJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.7_1654567862765_0.08347293438715542"},"_hasShrinkwrap":false},"1.7.0-beta.6":{"name":"hand-polard","version":"1.7.0-beta.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"cf8179cbe97705a4d7a37cf7b6a62610e8fe1b54","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.6","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-koHRogjoeHoaZk8EoQrpu7lyGTcqkbckJfU7WpUZpZTUtnqX0UEoVmVmOu7k63XIHrUubmjbmtD+q+yr3am1Ew==","shasum":"52b27489fc8fcbc908a3453a13ff0576baba2f96","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.6.tgz","fileCount":288,"unpackedSize":9073536,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/ke7OqlwsLwDMPNgZ0RNpaE7EKvp1CLqEjFDMPiNnEQIger9xdQO5efNsqm0X+x9CjU8BzrDAEXIOjrB/Bu6yVyU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinxOTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrP4A/9F324qrIDyr0FTssuM7BUfZ8+wAPyubigmWmMDBYqWLZoQm1J\r\nBoXsDonJ3SYzcnTDIaU6Mir/r/PXbfm6wbXC78vqsJkspbaMpPoxyp006bAv\r\n951BlCZiXXgph7iGyuI5JNvqr5sFtT7diz2pP/a/pHDcphEGA5j5kIoDTx5t\r\nokMqBb/TBJzdFdiqGlbiOmaY/SwZ3yaoMNT+ucwFjjwFD9+XrD4i4iDZLetT\r\n2WObJWL8Lj9Z6md41qUX+8e4o52gv3fO0O5TnW0jlYygMWX3go4G6hDY+WSp\r\nHtfXnZxbaUnS7wkqdzQbzJyFnbR7KwCDP0UqvhVYJr0FxF3uVcz9hHVgoCF9\r\nbHxOZJRazD2IBBst7FeNALxG1daQBPfJHicdKrbHPvaTF3QbG19AVy8MMsSR\r\nwrecE3EkPYRRuUINqD3vY9iMTqlsCDHImZfFcr5ER2tsgk5n9CpvsSKOhL2/\r\n+Bbg/nVmjuYTzZEVstbkacTYKxtbz9t3tXm9NvRy+SY4blfazjpvVtFghKrS\r\nd61HBvJAQKkZ9lsjPA0yCXLJke3bCGE+w6WYtqn311FtMbf0WQeJgXD1tnml\r\nCgX0XcbOf7lFKdXVfLmWx2YsO+upwfBPV74XUb9EoyX+6XTGxzILRvGfRAsn\r\nGo4hZinYk6xfmwYKWAVcWL68moP5QTmG/fY=\r\n=bJsl\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.6_1654592402812_0.4631340380957951"},"_hasShrinkwrap":false},"1.7.1-alpha.8":{"name":"hand-polard","version":"1.7.1-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1d85878211d30eded3156a5b67dae488ab32b260","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.8","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-0rNNcuhh0haWvpRAKLqg+IMvMqWNn5HQTD9BLeaawvGA8b1TVf8XKT6hZMXVVVCBelEcJsp6uZeBsk+XzpL2Vw==","shasum":"567d2618d4df37da6a410de8cdf72dfc58883c22","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.8.tgz","fileCount":288,"unpackedSize":9242548,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiEYWBtRBf8lJiIOnTjsORFoRjVNRPbeH2Gq77ATanKwIgOUSuZHI9a9r8N5tiB26w2h1xctnkz1E5USGoxMhN8Gg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioBzVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkxQ/+McFntrp9XDVV/PzfNn/d15VDct3pPI/b8OuZd/ILkj+V+KVB\r\n5rbIuOxQbrFPKYlg3JWzZ3srHCjmbGCFkphsvBF7EQ2hA7K9MdQFAJ1I02lz\r\nk5oWX+ASjYEdCtVeT3mWXe5MIk7WARugZ1o9+mVjA+xgT8TZlOOkZEvXed9T\r\nSEB9CJ+cUOJSkv2q1ytexeJ4voMrV3wmFq+knf/c5GWOsQblE0ZCKaO2+MBS\r\nAh7eH90zvOvSsFqzNsCZpKsHNawTtLEudi0RENPNud+dnX9yqx25ye+i2Nis\r\nvUcvPYlS9IxuK282+j1+YKUauTV8nam8ahdtISZvBJvxRn/+92wWxoPoEuwI\r\ndo+nWB7sJ9hpU0nJsHSYC/Y+OivdwWHlSjju7T3oh4vmqKFBvZ3AGHxyMsIH\r\nvTBmP7YNUk6VwroeE3hmx7B62/h2j33ePV0wapGWC7iMTiXYDXlsI1wLXD7x\r\n0CJR6LbAfyF3nddVq1EyO3gRuSvfxMVPryAfd9Rxs/GDE1EMyBajEkwlsxWH\r\nOh/+AyUD+ox6fivUIdLi8q3i6euuTtIt2Ni7pkRu4sCTTGpclUdhep9jA5ml\r\nkDLj7kE9w6TQUv6LDVlNO8BGA/7gwkIvIOmwwMKDCXEGH0dXNG4Ix5/xN+D5\r\nbdo8BxZ7C8xtR4geBnIRPa9B+WSMXwI0NXU=\r\n=80Un\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.8_1654660309430_0.5930501014733409"},"_hasShrinkwrap":false},"1.7.1-alpha.9":{"name":"hand-polard","version":"1.7.1-alpha.9","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"32c393e504fec7b9f00ca9b7726083dca596c546","description":"## Getting Started","_id":"hand-polard@1.7.1-alpha.9","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-V39fRL1+nCti3EXqsTRxhYyRLvB7qnVZgujE10Ol5J4NtBip7XGH4feAVn9M9wJnwW8DesdazNxrfu2VmA4k6w==","shasum":"5ec6dddb77be643c301090d5da7b231e90845ce7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1-alpha.9.tgz","fileCount":295,"unpackedSize":9331753,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0pKZjU19zqZgVHim4jFfbJyq1s+vW0/4aHUAQPu4BbQIgPEoWhGvkF9+2cZownw/m/kTzNPOlANWTY67GY4nzYl8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioGAWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlnQ/8DEKy8N8ZU46KBAGbL0USrFo2USVMsdgBQzowrWyyVw3CBNHo\r\n94P0UIKJCBNzGqlFAayAcncR4h+cITLgZR4NcZw+TFgV3SWuvlarJOs/hv+k\r\nBunjKEoxbgIra5D0UUzn75X1cvFfw4hV7UAsFU2isNq8n4JtFf+JFMOVuaKf\r\nmKsQnXImgCILVfnoLOFEon/K2QFfnBFDtxHCL7wXghgZvIRMukgPWeD/dnJY\r\ni4eCHZ0p2VE1FFviVBkiUYGEKh1G26lKMsYksoYFivp4oKX8AkAkfsvw8z9B\r\n3CuXV9ilYXkScOLAEmH3+k/IKNIIBrbMgIVO7nNSBKiQs4Tn98pGqqumtYgd\r\nN/58cm+BzFxEfeMl9G+jGZqRcYJA1BLy5mCBTXfgb28jicc7KT6MAveX7ty/\r\neWUxN+RDXQYfwc0KWElcOa+oLIl9L/n5tPJp8J96av1QoicP9RQbRL38lDhf\r\n8YBlbWObIVchcSSF78m2iwf8jMT+1mg2x9IFIKBmsLz+0DXB5EOeUACqtwtz\r\nfPz9AVyNDxeeKhsJgIX+uMvO5qTZbJVJMvEMveu6nUYvlUuJIaxN2mraJ66E\r\nO7cVOo4DbNM/gckVQsK/CNKezbY6CO+RJWB9WGssXZn2fFEB+72/GwZmxbvC\r\n5TDtBdaAoFqAhVS+bX8+AaW0FwE9l/b7T1A=\r\n=j5n9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1-alpha.9_1654677526153_0.37304149335559167"},"_hasShrinkwrap":false},"1.7.0-alpha.0":{"name":"hand-polard","version":"1.7.0-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"5c4023ca930df12180cfa6ebe190f560b7a00e2e","description":"## Getting Started","_id":"hand-polard@1.7.0-alpha.0","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-oYCC+FPGRR9HLq6s6U1uvRrynlfcHLbvsw9y43JOV+wYJOaLdI/2oPGcukV1g8ZDFNhsUPAYmv3mf0ZGEYhv/w==","shasum":"4a6ad6e41ae6772223aed483a061dfc511460705","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-alpha.0.tgz","fileCount":295,"unpackedSize":9200847,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJJOf5LQhKbWCSfUdtBMWz52KGjtu20GFW40AxSHCjngIgV7eyVx+BYTY+DN7layGrg7RT20rCrOZb+ECAiZNPD/A="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioGfpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzWRAAhO5mY2aDKiA8oJYEaOa2qlM1CLUybvt+GmoWOdVFNlbG7oYs\r\n2sJKxHw9dzgM1dIhGm9fuOpxTrOxZKcIeqPmJTMwMCbZsol5cDHV63bdfFIY\r\nOxkO0Q+DvNxtgPtV3WgBdLOFEB4idr229LJl8dFA5v6aHU98CIG7/hyyFSAY\r\n7ggPF1aEFG8cu+utRXTXbcHyuNrwIGqa4xre1PLroKoj/1hLpcnhBJZM+QFs\r\nUWnP1rIDv8TVOsYuXBdA3Dc7ceVjfirb5kO/i6l6m7y+RqBgCFgCgDjMM/rB\r\nTD4TSsMlzzXMjwneCUx5HUVtJTZI9Tdf8pGmf/gZX51MU5H6glDKAVNx1gpT\r\nc7bJg7VaQNoypVvbPe7Nu8YzvfKhdT1OVW0KfNYdZDvdvdxzjM6nxhwddnxb\r\nKRURIfnRB1lYUG9QIDzuUM0du4eVMa5846XaSobbGZfcEymbpDLhpqP/vKbv\r\n1fLAayYKzJE3LkZ6ZTP6Lu0FL6AHzP18HMcK8b+jLFW9z97H5+p3CRv+II9L\r\nNAvTHhoBU/KIPTpJpAwiS1GZfB6c1J8aMclRPdPPf9vJkZDQnqCWcgpy2LIU\r\nhkJQwEBd8s+CdXLhvIAjJZhSRob8WoWX/oLV5pQpAzZat10gXdiens7L9gu8\r\n4wpwwVomVxHkplkyGBSYsbEIbOjBh4RNgOI=\r\n=mMFm\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-alpha.0_1654679529331_0.43881983890631915"},"_hasShrinkwrap":false},"1.7.0-beta.7":{"name":"hand-polard","version":"1.7.0-beta.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"266e3b29f30231ca83944bb7480d22cf957755c3","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.7","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-CV8D9ia+OZgnni1p27zKdMy7mBCNF4HzF6OSa505s5LMBYfymlWBvQC9gkbxmAhsNccdibJEZURDjXHUBuugVQ==","shasum":"6ce789761b539612e26eee717d4e0a7bef09d354","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.7.tgz","fileCount":295,"unpackedSize":9200844,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICoLK+uLjq3EwTLieQsNL7JvVV75A65GsgtjMT8HhFhSAiEAl5vWaaV9UCFWyOxZqNozqk+putRQk7KOkmVV6yVqPGU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioGvyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4jA/+MBRIvoLlSn/xzcl0Faq6aTM/Qr9YL9CY22hwIl+iPB3Hz76O\r\nKzHHQTFO5PEBElZo2+Vdx193+ZshdqoVnUUD78Ab+Arh6OqHi1nwZKVoz84k\r\nfD/nLCBHg05Z2ljMVQRxhxVx8tqubjiCWd707vXzdpjAgMVGmRC1ZF+1z7KS\r\nKa/ww45Q7adf3jl3RncUEcs7ybhpE8nSpKCpCAvPFNJn3NvfbuSel5NKCNRT\r\neh7E8lAyecA9zxvtB67q1CLRREenJL21Ps3oDxpKKvrZ3C3qkF/BRWxJTrHu\r\n829kd9kv20PgCo32OiY5HdsNNBTUgmeGI7Byu54n7sA2bSTkK46Ka08awFkS\r\nsbRjClw72PQOkmxUqcZz2l6693pepUB3lvEPPG8DKFdx4NnY2PwplcepcQQP\r\nAAjjh5gH6Zc7ivCwsmgwh4YF3HPPX9d8fN5dUZWMxWffcc24ofOMUGDh8CsM\r\niut0ji1sj0fiDG7EtUfsRC3KwR9CZf7jcdc/Udm10w1eHUXR6tLJfh7Y6olw\r\n32cQXJX9qbZ3GXssEVFl9DLvwZqU+nMWRUgt8yt/ACgMYJrPIAirNwstwYxH\r\nQ1G1GW7aIzVeebmDsDS8vXwfQpBXx92r81jYG0w9v43A6mno4xke2CfCJe+7\r\nXSirV/nbpPykWHQO/HVDq8BOvTfV95rtx7w=\r\n=bgv1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.7_1654680562439_0.053772288061730844"},"_hasShrinkwrap":false},"1.7.0-beta.8":{"name":"hand-polard","version":"1.7.0-beta.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"605363a8b47139e96fa4ed752e28f659eadfc959","description":"## Getting Started","_id":"hand-polard@1.7.0-beta.8","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-xEUMd4e3d214ggXuHPfgBPvOoFPsb67AKFKiP7ovr17gQGirC8OSy8Pg5HPIuJyVFxmRVosIaziTF1swVUiiqA==","shasum":"12c005050bd6d88642c664cebfec97b7fd568c9a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.0-beta.8.tgz","fileCount":88,"unpackedSize":3823621,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICS/geuA/NR6rSW3my73viZcFeSkPBEiWEE8FTQGSm+IAiAEfW7i+n0LGS+d0gNFUG2gHH9D5NcNjYh7Je3xE8M3Vw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioG/HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmopBxAAjoacPvYkOQISgkcqVeWS4GNiJmJ9vCMk8wKBfFe6VtHt2h2c\r\nAiybyvO2tjHr9Fga7ZrBPs9WSAKJSP4L47csrZW6RF9W+3N71dDhvzqnq0Bv\r\niqAswKfWyzltcyJcuPn0h3eLl6pXpa9YMHVvH+NUFR3biKqnOzVa6CGPr6ET\r\nHQ5EfXkSY6rDIibA3uxy2lOIhHNqf85qjkhmMcjl70AEb15Yyj3Bv0jS3Gg5\r\nvzCPIQ74lFqiGkwssKAqh4Izmv+8Ms/LixByCQxlbI5RuueaQ/CBf9Wqp6cM\r\ncF/5CQCMXGyKLgwck1PZK7K7N+VdOW/GGg4byQO61JHVOrG3UZyJWc3VxArJ\r\n51RqgvnJkLrWbYXFBg0kuBtozP5QHBfen4fAuAYDyPBnlqARciXUIQ+Ly3Ma\r\nBrgoaqbYMKVAshXdHzBFQ/UgcLthYFzBDrolkRq7nxFgP1d8WSvL+F5IPNHm\r\n3Vo6Opu6e2Qw/wTw1nim6WJeSqbKczYYKAhb+EzO41OyZ4r+64rcLt1/vutk\r\nj93Ri39wNcldSESGq/wR1BDwFT2t/cHC1xrhizaFVsHi1ritkim+2u7H2Fif\r\nAIsig+dK30iVKxW0chq8JCi53O7o0aAM0tCbSrLDSQdVNkO+lS/JQT4IjBzo\r\nm71H/g0QK3Be6oc5cJ4e3A0PquYIn/LEDss=\r\n=gxwC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.0-beta.8_1654681543288_0.3874452615097015"},"_hasShrinkwrap":false},"1.5.7-beta.2":{"name":"hand-polard","version":"1.5.7-beta.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"9ba60eace1c12ef6b8b5514db6a853fd4ee5d7f4","description":"## Getting Started","_id":"hand-polard@1.5.7-beta.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-8O2b+n7avtAIShmeBI8seGIkgrPOfIVDQvhD4UuGxIYzEssixdjFO9/EujELi65drwSoSSv0DpEIJIxF4Zts8w==","shasum":"7a3bc4d695afb723bf9de87b679186f846aa4000","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-beta.2.tgz","fileCount":84,"unpackedSize":3206795,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZT0wbFNg+SKYrS+epXT5o3HAlPhVMf7Jd3rXjbwpE5wIgWoI7yBH7LrEShDDPgfmOl8cO+sLmJRH0ORS0LNm0e0c="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioV6aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoiRRAAi1N9Poc0B7FGZO63m+PygVoyJU9gabnWrffEI1+ShIxPGYTb\r\njFZCyEk+avGR+77q7WHbQCFwJe0OCvXRrzIpZiPRCZGXuob+uiXoPovNSNQe\r\nZPNQNceIDhjK/xf2T5sKibIvq77tDDjiJ48x8ZMLRlKGZZEc5f80AdkGnKNJ\r\n2yVQdKy9+AYvX7qPA/+mAZmSfvVj7h7u1nXYdmAZPMy6t6HWuiz6Tvb0o2lg\r\ndf55WwzFxUHFtAMa4oF2wFEb5QFSFxQ07ZGOnfGjRgQusycNaO94mc1AOloe\r\n9S9TEfYk4QGYuY6qAays6xWB+wrnS45qLsbXYVDNabNwHHlS4zuAX4bg9a1g\r\nYcPXlBTEpAsAD2IfzMay9PrUDSKcCLGy2b0xEqxjBJflG3ZX9L+zljWexGT6\r\nS8vjigjVSDaYnVe8AlQoML6vp2HJ6Erb8bKu7sKbspZ4YIiZ5O2SXL+lpIVj\r\n+JvuY/IjlFW/9x3xQEGShaKzO/KOwrO/5r19ziKnTJcOt7kVmi/9ls0G687P\r\nPKj33STsGB81Fl8sHiMFM1d4YuHy6/IQZRZlWSj545rpOVNbe5i9p7ayRwBr\r\nP1Ta61W9nQXGOPGaG7iId6C4Z/2Vk5VFt3NowMxGrp09ZXiHoPLAyK8r+RjC\r\nexDyzc3HFDhvdp7a1TgWyuS0lDZ84yUT1y0=\r\n=Rjed\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-beta.2_1654742682305_0.5233300286164049"},"_hasShrinkwrap":false},"1.7.1":{"name":"hand-polard","version":"1.7.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"e7b1caec2d7af650e07aef28a668458d5547b169","description":"## Getting Started","_id":"hand-polard@1.7.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-pW2MiJKnURhcN4Dm/uea2m0uvJ+AEagzE8NlLgU27dSccPaRQ4pprVE9f0679+nUbHYqmcfl5mYxUgccC4+gHw==","shasum":"2b6ac49eaeccbc1233af7e3cc58bc4ba4aeb2ff2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.1.tgz","fileCount":88,"unpackedSize":3817007,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQDeKGhzElJSdFH8NcpmWcxLGtqSgJ7bM0F7W7fl9wJtcwIfGScZ6d8HPq6Tp+kdW0l1SjXyiTdxF2/f1W64upf+/w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioZ1SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrMJA/+LhTFWT/gY13qqtkQPoW7N4vz9Pa0ez4XdV7QBLIW+/ZozEuV\r\nThKNdZ+u+QenLXppmhhLR7udJtrOACvdiUgdtdGczq3zdJIIz3qj3O8/2l3E\r\npeaC0SAfM7XeKEyGl4h7kbhmf+kGWt5c2kChhvui3/GKBkM0mA/ufPmXuVTZ\r\nu3Sw1xA+ej+8wLq1HMLDBR/y3ti+b2B0A0fXthFmigAfSrWZt95YwS/OiDtB\r\nDdhQlmEcNn2oHTijy4vd9G5AHVghvLp5YPcyb19Bmpr2akEZ726AiTlRHkOo\r\nV9eXGYdKiqPT9niZkrxCePeAeC8sgzYeDFmAdXD0CXARmm0MIM4OpwPZe8To\r\nIEeAD4JsFjY9YkxKOor1yPIC4S7BjcgdLhAp4k/kCUf1fcFC45ninL96KTeb\r\nmk/CeAQ4f8FcdJbLTFksceHRngI8+aold5yVN78ajcbTl1wZ5rVeyFaoMnKF\r\nRSUJq2nikySHYbeaO+XLeS78gccTpVr1JLVu321HoQXwV7hBAIL33SMicT6l\r\nfJggUkrzTHSo0L5rGQMYTxPd0pA/TukPFNrwxoSRejnO/1d3Rcru0Usvrkl8\r\nOEQhU/CKJbkQNtomPbHuKSlliArqP44lF9ecb33IAu20ufwstlp7isOoDLnB\r\nKVAcEpiJHDFFeOdz5vchDDyUDDJjlmRlU/Q=\r\n=OJUn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.1_1654758738167_0.15413813127630638"},"_hasShrinkwrap":false},"1.7.2-alpha.0":{"name":"hand-polard","version":"1.7.2-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"5b0c8f8970d2020259e07771981c3afb76700418","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-OHV54pT9JM7tUwsmF/Bq21JcG76M5DcMABriHP/w7sw0KbAGRD23JFW+BjYBb4iggwvvmzgvo6VLJBBFcKMa0g==","shasum":"16e12093d06d8157e5b766ab4b197f4d605a7f43","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.0.tgz","fileCount":88,"unpackedSize":3948809,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBXvZiNuDa3QQCK6tETOu2Aip16cJeh44HMfp7NRWfuCAiEAl8Ee6uPsvPKjSIf3Q5UtTH8HoNEgmFRmamvvQh9bGr0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiocPLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrKWBAAiUIT86tLoDhCJTRdAf1hFsdrpHUIR5yE7dIXhqch7MNTB+6D\r\nDgbxWShY2l2uS+MS1Cisd+hjrYlI+8pmGAahotKUFHRkns2rvRb6zgfUiz7O\r\njJiLwp2T7dv4m95nRPBt9y5h6DXP2i72w5N+WAd7oxS3GxK7WJb/MNVsSbxz\r\ngkBTyAxOF4o/ADtO9yVX3+NClTD5lXoysmTP4GfieM1ANBw4UIecSSvIE6HL\r\nQ44gv9eu7rLski3+dCb8sXdFBTeoLa2C+DURRSCdnnChmA+8U1ov+Mq2qfPt\r\nJ9SfgNvn3MXcGtGO6qd8I2CSgtItPBOr0nQ8WCZgL4/ciDMWthAFVhfdNL0e\r\nMJt157JanT/CWTaBMLc1+wSMk1u0wIHQEEkjGE6rjtRB0iYPbmwTQCW7dA6A\r\nYkEt0INnAfceFvKzmVCYrDHnoRwKZBtB5I8adQTD7u9DUwNLOyPz7mxz0+p4\r\nZlS19lHfiIYHTWA3R+7mvZGUz8+rXEfPaWX0CwhlKZPS9KeUTJ8+F6zI7+s+\r\nDXh1sUKljoT8Ze9+KcLnhRnEFyxN7IrP0a6ZAv+wyombk2XTprTp3sfshiGi\r\nr+OJyXvUSBiBWmVG+0JM++6vZd7Ku01regFTvyXihwr8hsz+J9RduRyWJ43v\r\nLeAtq9+w0FwT2lNXvWl7e9KrWYZTcBECKTk=\r\n=oAlb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.0_1654768586615_0.7404965202942255"},"_hasShrinkwrap":false},"1.7.2-alpha.1":{"name":"hand-polard","version":"1.7.2-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"37733dd4b94f3da40c08aa5e9ea9ca5edf8cb1f2","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-AKbYHC2IZ38Keb9a2Pmpa+KRWeZZFwqlLO5UEAsMWDAi93AxJlpHjgp3qwWGf5Ps/cZ2iUVb6HthTJnylYGUzg==","shasum":"7a8e0b89079581de41633a77de51c2b7b036d288","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.1.tgz","fileCount":88,"unpackedSize":3949307,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHiy87Yvsatf2ounvPluYIDltiKPYjjCugDyJPy0tpZrAiAUS96QL+er5mBKp9cMR0NncVD6POnkrEkYEHESdmPa9A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiop6DACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTxg/+PtynFKeJeC5xsGLZbZbjAdaeUjW1N8UhszRcrXRAYqR2J4Xr\r\nQC9fAjwX4M90P1eVoFIK6NzNqHOZL/vF/IKtibQaC47QYfjKAgROiXjCil0O\r\nzPExvNUOP2irylhsbKl5xhmHP/39lZRxO2L9KACw/U5abcPBATZ8TxrpirI+\r\n0RdPkHechuQaf1qaWhzevL3DjaGs/LgmTAX1jLhS4u5LOyMAjwbM4ogcahUQ\r\nwgJE5QNtzsACxxG7z0pMqOJnNhlVDZu+h0xJ5GLtv9Me0OzaP4Xsm6IST9/W\r\nU2GjU5EfqNLNX2QR4DemQJEz4gLAMzXBi9zqI0bGV6M9nYikokVPfeN6WzFd\r\nwDoDdf3q7VuSvNToWe2HTN4a4N+TKjDteTv45Tgx9nGQ8dN+Nj3N9Sfco8/0\r\nxzC04DY7e99AOApbeXICEZogoSaGxW57ioB5ecTDyy392WvlX9YDwClvlGAg\r\nB1DIUH849t89wMYNXIKqQkcsPymcWled6guOzE2Wh4EylbrlO8nPjyux3WAK\r\nBC+VaYcYsjjez2nz1NmyyqfLfJ8kr01pLLwZRZI06OrhgtS195Ds2Y3nlAj6\r\nj1n6UftAjvCo9kaVXFkcEddz07Yn6Bb9RrVQX5lLdy4J6HJo9sCsmJPX9XdH\r\ngvMl/CuS3VXdag7VLeRQUz/JNVnG1q8WUF0=\r\n=QaOK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.1_1654824579363_0.11537112059065624"},"_hasShrinkwrap":false},"1.7.2-alpha.2":{"name":"hand-polard","version":"1.7.2-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"abc02050fd7c89fb8d6f4e0fa3482c35ffd9f979","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-2Q6KdEi+M1qsz/WHtb6oxi+2vc5rS2KOiwoPcrnbOktJmpiArNXhOpikqsNEd+mqkNNuUKG+D1YXFAy8YGxspg==","shasum":"2d5bf1f999f4a4042834ee31041da8339057291b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.2.tgz","fileCount":88,"unpackedSize":3949780,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBZffBY70sVFsmFKm5Y6yZnDpsvODw+x3MZbjziPDnySAiEA2nlACAQoZEGAX/wsk78lZH5dODMOVGcAkoosGVootz0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiosD/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqSXQ//eJmGzatcFvgb+x5/q1jeGIJDMldqWMTufcLAbFtk036bXpEr\r\nE03e4ehlIcxYvfS8qxlytEPUtvzm1o39CpmKzrbZobNeESY24GIj72strCU5\r\nxSvpPA9DgUbRSzLYHjy+HLExiTe6IqSIPmeCLs0inkiPC6IHOl04eME+6KyR\r\nhCqqelw50/kd1p9EbcpCD9qvgAHwlKa4+E2CKZCDpRd5dHi3jdaPTPmGmDvG\r\nLDgLXLVpnHF9ID7+El3xCa1mi7bIdsg5kJ3dN+CoXDKsnvc1odIM1EmrmzYn\r\nJGH51WzKZfc1K8zO45rPEtnZ3BSzDGxmYHIIGl397jOnI0w0dbVjTJNBulMj\r\nXGIsTA9TZIn/BN9B5DK4wIkFHRzuxcX4i14MKmJ4UoHzq23wyakGEIfknmwR\r\nodiloi6L/nom1MHs+pEvfXD9g8NEKMs20El93QiuedkzHDEnzUUu9qesFCXA\r\nG+pMaBTOgLuklPOSgO0rYzKFP8A8E3C1C6aGwUeSA4uNlMkug+UrXPovLoO+\r\nFaYYVINj5LqPrrSEacCaxnf7hEAJV4GUQ1i2c1aYHIbcpzD4ccn1QgxQpqOY\r\n/iD/jmOC/4OW16rVFg8CLVUX+rqVg9lEAxnDxhoyrVtTpgj4UE03R292D3kq\r\nXBycJcgJ4zyaPrIboNsXQ10Fgy0XGrW1cLM=\r\n=YAhq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.2_1654833406770_0.7057503842615691"},"_hasShrinkwrap":false},"1.7.2-alpha.3":{"name":"hand-polard","version":"1.7.2-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"0b306b76e748f39179f59fe998a43c6a4e70c104","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-StN8oeeRgvkAmqRm0ICDRWzuGiKkej0hDG3MQplw69YTDfZ943w12MD2EDhrXniBrjBYMRgpzpE+4QkJo4WUlA==","shasum":"44fcebf37986e43d6d2f0641d7303c36c7693aef","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.3.tgz","fileCount":88,"unpackedSize":3950131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPesWFvDof6vwkcl+Vczf6se0WsV2lJpJiB+LdqBZvNgIgIj1OJoyVdef9MOFKiYmTDbKTNT4JSNe7tUxQUrRQrWc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiouSjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmplwhAAjyGdHum7b/O9wIJ1pnd/3S9XqlnbBQMYHDZOIwjNxS1Wd5cS\r\nSp4z/tkt5pBEGOVsds7Mu0AgLcfz/XgNHCPmSfIlQbUNiID1ywf7xtLSRy7n\r\nk1KNGFy3mJqv/fBa5nAXrXyj9Dk9L1wmT02QePv6/Pmib0kFlSvNuaBWrHTZ\r\nJALWt6NgTZmrU5RsEo7Ek61RD1kP2YCgx7lQS/uW7jcwHHMX5mO/i8oxJS3+\r\n1IYfJCBWPDdF1JoafAM88GMOciymMls9kKiyLd8gGTIwZiWN6ufxKUATpwty\r\nQdPbvh88j1/HKI0mWVztxIDcFglrBfmFjavFgeW9GD7GdonBXGyjv2UBQ9ic\r\n+M9eDyfZp6qL/2G8KWluzI2Cd3KbiqKkMsNHWj47ofjePOjCSfolLNW9SX+C\r\nmUMjQw0Na0/5x9x6UN49BNsTDhbUFSOgBRJHSOjGWUgzqACnMN01mDqecQ+Q\r\nWmJQ+EzDJjLKuup0mPr1og1u0FIgAyjrMtgXoHkv/VhOhjpch9qnGLqnLRmx\r\nQesouIUWKAVctaPxWT4TKsthFQx/LYrsygBBuHIvxS1TmrLKUfbGJ9gH4odr\r\nKGi/uovihllMGfwtrNqpcLBqEqUk54yWbSfwUaQ8vBBNEcG/46YzKwQD3Xes\r\nuWdGWzyMIfAx7IWQXkMcsZrRTWs2n9RoxCE=\r\n=SUdv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.3_1654842531756_0.36430169056094397"},"_hasShrinkwrap":false},"1.5.7-beta.3":{"name":"hand-polard","version":"1.5.7-beta.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"7c3cb291c2860143c829cc8b7252f02a44b4f51a","description":"## Getting Started","_id":"hand-polard@1.5.7-beta.3","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-tq8I7y5q5IPQNHxytu2y0SvagV603kVBHjWkdgw/nowYvdvbkCSehbyjv4Nzgs2JuW6WtRMybMrnfj6NOU0mJw==","shasum":"f9c1f96a4cd41559002b93b1910a822a2537cbbe","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-beta.3.tgz","fileCount":84,"unpackedSize":3206925,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGoMsKelsm5889OwAR495C5lmiRas4J/zfyWlDcsWk8QIgOXWocjW4522fo7ts/nSZJ/bKJNe+P3frpPmEBtFJn44="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiovziACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqyEg//UzhhDa8cGAJukLyLXjEFLX5hBlNvudZClJLH7vDHhy2NbhUQ\r\nX2ZkL7MxEqGYCqJaAvZdXZhGuGEDcUjIEEJ4nlEYV9KiRcWvmZgJz7Ltp/LD\r\n+gF3/JejgLsDpNcAxkO0u8jn0DrxXMU3zt00BZUzcJlVHTwVDrLu/ewKz6og\r\n+ZFIuoD15EvgTOVUxsM/8q5atobOYlLvZsRYxWJUzXaIT4OG78Rs/vS8Irjz\r\neoqeWFTyye8shVs460wwZ5EF7Kh9tG43O/Ezf/fBpOUzm0QWUieyxikXfkZ5\r\nCkrO9Pyac7vtnoxp9h3AZBDh1J/bEyLAaOs5Z21BCZNr+Y3EQYtqTvR1oJbF\r\n07suH+8PQKpJbA6E326xQ+eyQZLRh9qN0iB2ZHZLYSDsTu8uJjAxHc07LWZy\r\npegNhi7V74SssA+VuHY7AdBBUSYUE2iJvjwljKxLwfcL/H5/JEyNhJkC061o\r\neuGu7qY0Z9Jk7aiDvpXho0gMrcjAturrzUuCSGcacyZKv17ld6OHOrNg15N1\r\nY2VU4QDeuBksUVENI+ygkJ77NJwzx1Sf5TY8gsDtQhWqyniKHrf4IGZJgAnE\r\noqpHOsQp5FSDSWg0RgWp17CXdhNfsFbPd1YWmTOpeucwWVGA3hYd55tpABEA\r\nP2he10DQ2o1E6+gcWlP35xxe7z/3MLFK+rI=\r\n=T1wt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-beta.3_1654848738148_0.4890535496196251"},"_hasShrinkwrap":false},"1.5.7-beta.4":{"name":"hand-polard","version":"1.5.7-beta.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"f6f6e9af896bedcd5907c7fda37dbe7145c1b033","description":"## Getting Started","_id":"hand-polard@1.5.7-beta.4","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-xJo+hl64ewFUYahft5RfeXwWUGXuZavHGlgcgjZJpJ4s5KToaLqpktJ9M3YHOYQSG6JZ05BkdK5ERvMoLbpfsg==","shasum":"912c678783cbfbb7e2e410d9319f396fa11bbe87","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.7-beta.4.tgz","fileCount":84,"unpackedSize":3211840,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID34BLi/pLuLEWU/wP0cquHk34fXTGXewIKuTnLj+QTFAiEA4jt1L2tK4Ui4B0IMNq+4la0zSJqtjlFlstQUgYUtIww="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiownYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpGoA//Q+uRYAZHsRuIQMyfxXdL7g6hE54ztKiE8X2Hd1Qr26hUZVAa\r\nqXTJ4P0sm8fBGlmd3AmYMr6hBx2YFV1VfmkmDEHuXLmKR0wvcmm2X65DEfnz\r\nS6/44dEoJxKP7AuOfnOHphPcojoi7kpsdbjEA0YWSkLyk5oCfCdrmjPdXYTo\r\noA2nKa0KipaCvg6gv+a6Euwc+dh6yV5AdkOFatbW9AMdfDqa2OS503Dk2usq\r\n8OnbXA5MnWUEMUVntfsDmwE4q7J4DBPBY0aff3Biq7NacBLFUYkJd0el5X68\r\nxI/Xecz8Lc1znX4Q6XMn0hlfx1uyNxQ3fxrdUQJYQsrwd2QO3jvfalErCz61\r\nMuScPCxBi8+JIUc/3BVdBmsk9vD/1euUfojWd+gLuma74/PIJqEuwCb+ZITn\r\ncqn8eiSXDdsLPnkMQ+sYXKkraLaLJ3DU7lMmgT0Z6Fa4QPbvBhyWFJNn3TkG\r\ntD+4T1gaDsHy38VBGsZoG18MmmJYuTUQ/hN9a8S3K4QJDV1/ErOqHA1i9rod\r\nhqQ0bzbWTVVRbXzyEW8iqH3E+yNo01/wN1tzKMGjEoelX7AhJ/nFt2MVNEz5\r\nqmtuGzZFLF+leYrW1M4oH3DOILpAF2uJdRifA9XqCsK9CoDdxnUxOKw9ywKU\r\nEZBUSlDNcrbK1gponwotIuD1d2B5B5dDpgA=\r\n=IeBs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.7-beta.4_1654852056148_0.4621193182337333"},"_hasShrinkwrap":false},"1.7.2-alpha.4":{"name":"hand-polard","version":"1.7.2-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"a8a0ef38dff49b5734a490c1cd613ebf3b440193","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.4","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-tWQBl+5ide+I1XL/WVYhHYPu6yY30PRTkQWmCIs9j+iAqc9m5XtC9T2RYy25U0SAdbK0jU8InemhGIxTzd3a+w==","shasum":"93553b34390d8556945240cff9858702ad26a2d6","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.4.tgz","fileCount":297,"unpackedSize":9366008,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0ExiJ0BVzF/8m+2J4ZNffEaj4ThlWcEuJzh4PPqlPngIgbriYvDp7Cv0z8BYD/hTtsqbfdcZRt+uuO25ak6bBkRI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJipxEOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBBQ/7B5SONncLo8uOZUyX5Zhzolebib4NyomWuGxZYQgY57Ilrd5O\r\n2aM2Va5pH05USyShh5kptBSCg5bnv7gYFqvKq5alE5owMAMn/VPTnRARRies\r\nL28ovCL7drJB6dzQwqQEca7Ylo7PbUaG2ysmPtqAVoY4qnPFvw10MpngOTWQ\r\n3Sklf995qL9ndJmeswvc9jQZoV2Vmt3jByCgd78cWr6zzWbQNiITrUKqtgqQ\r\ndx6TaxDL0SnSF6azsmMs/uIlAMbmh1p6gFe46+eXb2dRV0nVrGMmigvDE34s\r\nnfd4yP8WmX6FMnfOw3EpS0PWseIH0Xoj5OKiyynKZxqoaFoY1lu7FImsO3eJ\r\nzgBo78RxYndcn8WNc4Y+uetyC4OqIqqkf4+KtZFK5Wb4xp4Vivei3MCWRTfQ\r\nuBk+UkSOHhEuEsn78v8Xml6LDrSqLAg5v41R1kE+zcPFgsqg++7DfVuxu2qu\r\nrjIUvzG7aCcGHWpSimbwUK5q0mfy3wQOzay3tIfcVTQTpUugNfBK35aSUe7Y\r\n0JOviW6uCmU9PZaKru58xmbR6uB+kJpMlY7H4uW4fvmI+lB+Dn30rL17oDN2\r\nydFJNAEP0y/2Z0+luTef03TfQy0DvI9QHmNtnPOOVXNB4k9H6cYv36Yd84Y1\r\nSBxdDZNwuw6wHWyo4Ovy32hHfKDpN9SDEjY=\r\n=AZap\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.4_1655116046126_0.6472331476798823"},"_hasShrinkwrap":false},"1.7.2-alpha.5":{"name":"hand-polard","version":"1.7.2-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"fbdefd46cbfa0f1099bc5ed89a537ee4146d2978","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.5","_nodeVersion":"14.7.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-zaEIbv0zBKIF8KXgLuRd76/aXT8pXdu/8gigNAOmiTrAF8HNcYW9Hu6SufILK3MWs6Qcc2Z5g7izAmgQYZKDdw==","shasum":"deaa3cb50d2cd489fe8d9eea39c4e5885a08beb5","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.5.tgz","fileCount":297,"unpackedSize":9366331,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTmachfPmqixMR0WugQmAMGTlPe2a1s8U5W+iHvp5SaAiAsPX2mQO+ay5O+SqUnleJY6Py2AT1JttCbCGFcvH9MHg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJip+YrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqTug/9Erq3Pnuu38vqmR2sd85zL7OKp2CMTtR/tiY8HLzYqpzCcMwu\r\nWEaR4Kz/fXfY96nGj15DoFHtZ31jaffJjM7ThciKBs5XkyBFmmz1yxeYMjzl\r\nwj9M5OMoT6eHoJP1uG+Ij4ojbBmHlQP9YnLOjCq8p2zE9htKbUYePcNpk0dO\r\nNJltq7fJTuyWnDtP0uKPD/7KTqA+OzT7nONQ9h2msrcVBSfwtrYMAjMR3KPN\r\n/0NfQoKbRW1qW6RIZou+3TPQB8IK2kKyv5D+E/spKTOPFvtOzTWEtT5Rf8my\r\ntf8GN5H0iGSFb/uqhYz6UcFNCe+uMeT3itlEiEI9x0ATcc8jBcbQwjY1fEqY\r\npgJl7ycpstPNR/JXqHjGvpH8xjtIus55sF+pDgSz62FZ39+9N/o4wrmPg1iv\r\nDfkcS5Zy52vHt/CDB+4mK8GAzHtVt6UqwU8x+ZiKti4678OeKnCzUprtPUVP\r\nFiyZPKz5rRvIN17MD6G2yN2O48xHv35pBkOBnP3VwlpE7AmpFhRI/y2OwO2d\r\nJoe3pKddQAx3J6Bt4KEU1kI2tq39M4fzaYSAvH9PVy4EArnZKT9CqSugZ2ci\r\naxrXCM7VFxWGkGZKobsfVD8uPhdiXfA0M30br0I7RyuN+TskxdkkrN/ij2Wu\r\noUwerOLwUXj/Tq2OJaTjkuFr4cWzuQMRFaY=\r\n=OOzB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.5_1655170603481_0.8618309058752398"},"_hasShrinkwrap":false},"1.5.3-alpha.0":{"name":"hand-polard","version":"1.5.3-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"8dcfecddd25553b98b05617edb7dfaed60031e30","description":"## Getting Started","_id":"hand-polard@1.5.3-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-pvlZjikfLH5Wp49Uuws9ePV16XLNnRSZRi4wYQCXxNkOmSewoaS5DW7GUIMycDqil7L5WfHi0EsGnzxgCZTHkg==","shasum":"8ff48e3640951f184347c0456a1b6741d5db29a1","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.3-alpha.0.tgz","fileCount":84,"unpackedSize":3166356,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBmYLjgR2rJwY9r1HZTP/hPwPC6wNkYQWu60YenRhhHyAiEAg7KeuA2x/ENTEji1uYGQ0ziu13vw/9LiHgzmwXg9eZA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqCotACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnDRAAjYQ09PBltTnJ0mUjYHCdXb2WpGqeOenFn3jFY5KNBAVL1HKP\r\nUwR488aC5svOmD58yskT5AwAWqwhMQQwsNYkMuj0SWqOqywdofb9//j5osj+\r\nEE1yMXkGL8ce/R+IJAyjiSdPgO2vqobDJDIdCdqlKIMsRTqZ8FzwHuSpfzJS\r\nnK2mJk7bUoRcruLPRFvuYjwH2RJRMvG2mKlg3+PjNgMd6/n7ylC5JmBYD/Yt\r\n0B6DDAk3Kfcek/MVB7D6s76cCwVYEmm9k5FT9bZWd8BbjSESb+ihYevaIAhG\r\npWoHQWkFSeSunW410aI0RImHdjsZhyjLtj20BHUcgwouceAZcElfjczoF/Xe\r\nnw8py5D/KNMqFg2KxT3gIFXKb1ic8VdITELwngC6o8TukNbMYNh1E5U2UByL\r\nZeVbSyHfIL2x+klb9OGMygHG2nO3K8Pqnm3rM0Dy9ujnKw46YNQ3x/St6cQH\r\nR2V68mzkXEA5i9ltyy5tcNuZBMVd6bSdrKviNNqVjNoCL7DLxNLQw4GKhxNA\r\n8jJWWkQG4pQOlKx4NRC52JWA/LP5F6eoeOUQqST8WSiqxC/rBFLaeBUBJLc6\r\nYdlcV4ENUqizQxMDpPbcyv2r3k71F5gVcMEuIs4BRMc8WEL7dgqhOSmIW6g/\r\nCweUczsBirgxXqYBOJvdSHrzwryCcak1rzI=\r\n=UzBq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.3-alpha.0_1655188013463_0.8997943353047555"},"_hasShrinkwrap":false},"1.5.3-beta.0":{"name":"hand-polard","version":"1.5.3-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.16.13","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n","readmeFilename":"README.md","gitHead":"cb58a90041a9afd7acea9aa5627ceff173dda6c1","description":"## Getting Started","_id":"hand-polard@1.5.3-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-OnZ4uaZujKBgH15tTtJpN9WczBq+gsqDnq291/pA96FtBD0h/a8y/cx2gay8xEt9a5KUCcUtZF0W59utqmMBQQ==","shasum":"9ba0735ea01a095df25397b22d6c010eed645c94","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.5.3-beta.0.tgz","fileCount":84,"unpackedSize":3166486,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYej1K85oC5ROT4R/hUdoH6Twa0gJSUxwG/HWAoKyMCgIgVkCE+d6rTKBm97hPTB0qiKuWbqkiXRnaUPoLLLHQmeg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqCu5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpwCxAAk7UJD1k1KTIP2q0tKUPCsUTdSHVHL07Q8zvdA5zEjw1ehALC\r\ny2yCiQm2pHzvGVcXcdPBmzWhj06V9trl7NwVxL+FRuFGf4DNeIzJkiBsiegP\r\nyjJiMX9hNd9xx15fG/PBvP1Zwsnvt40zi0ZC0+k189wMsGRdXC4ke/DFQcyV\r\nQMk2URes15gq0n6SMYl4sFOtlV6E+Nldy34n6WBLgithznMmV8TVNFcVTzhV\r\nRvbcZbVDrInJtIIc/O8EuEcmnhAMwhHy0lZJYTOUdst4WKuyoYuWWzfp/I+J\r\n2CXjN2zZX82zp/8QTTnXqWtSa3VKz/DZR7ASZzKRR2ZxAVto+qUCtyy8Re3f\r\nK1gjKEAhBJCraf6Ijl9b1zezRtk6aHBQcH6gL0A9FxGaXmsw8SiiWGHXSdMi\r\nZucVK05lZw+ZQXKfrCkhgi2DxUJ6LqBPv/qlvrt1wW1cXcCUlIrPglz58MGV\r\nPrN3cfAHy2MFMys7DzwUZSWhBaY8fAzy+BN4GzKmbrdbYlYXcQ11KTc3wh8w\r\nTrlOo0I6kvFFycP0WvYbBE6EnIgI5+WwmUiyF1xZ1391G/g33sb02jnG4IWn\r\nnX+pl60pVWMRPOD3e6MXZ3cQmE/X+QOEEkWcj4Q/DYF9hYtwTW/OH4/chnqp\r\n9ZWBdmaMUs86jMYNwFmC0rkNkdoGPw1lT/w=\r\n=abZq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.5.3-beta.0_1655188409541_0.13770096966181278"},"_hasShrinkwrap":false},"1.7.2-alpha.6":{"name":"hand-polard","version":"1.7.2-alpha.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"3e5dbbba4a09d9767a3a26880a8b394dcb90beae","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-a9Q0VE5GPUoQSKT6YXsMOC1N5N893f/nlTRBWMRT72PYx6F/D9hf9uJwt9BRcmNY1P3iFTBWiTzTgtpjIVQN5g==","shasum":"50e55879da8468eeb04226fd6ffc3e8638dc6f0d","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.6.tgz","fileCount":88,"unpackedSize":3951981,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOnU7iDokDA6ErF8fm+vaJbEk93sIHwhPHAIw7lBliTgIhAPSmohXe279PQhoQlrAk1eA3MTSArkljA7Q7JVAXC3t7"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqDXYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJHhAAhTZlAm+/1q2b+z3l16j6LQTriNFesMJNcekWbhPXncb2NHY4\r\n65ecUdrkcW9DhY6m7eSEBic6tNWBGV6L/9DJNuAj/lu96sZy5E357LaqryL1\r\nu5GjZwygXmdWwYrq6YXvmgNWJNu0lTq+MCwMH+WlkYDa2xhsOeubgM3Zl6zG\r\npiEEtrU6zB725gOxx24MWsRno8ZKTZw441pkb9EAuXbg5Ywn5I8x3E4uM6ru\r\nQhIONQpssFgHiQl3S3Ri8J6zG4YDVpGqMn66j4Wk0+KEP0/CBJstRx4lkz80\r\nSkk4AjpPXBrVOLj9BMXbwuIYEgZNwdldxIKBpofv7nB9l9XBjIkXNJuNd0+T\r\nHx+ovyJGDPocMoTwwa133ByMSkbjX8UdukzHsSNOyS1NVV8iWdL2LoYz+qRh\r\nyyEd+IeP3LwXLjuDH6QRf1Wp3T+d4GrpKOpFoqo2fMi13/3L8/uKKkkdNiNn\r\nJDINUQchB9mdSW3iuTqkPWvqgDHc6wFCYna5QbVJOuFkxyIAdCFwSs0JZwzx\r\ndlh49Bzc29tq/0x3BardSfWUBEnozIG3xAsfqkb57i+trDgT9SMuDpPo28Ei\r\nT63uLj6jrDLhjXKKz4fXggypZot9mTRnInAzmR+iKguUsYgsGJ3HDTH/8y/8\r\nP+DcolTskff87xPGLlWKuYiI2SA22YcODm0=\r\n=0K/i\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.6_1655190999750_0.5394391167384069"},"_hasShrinkwrap":false},"1.7.2-alpha.7":{"name":"hand-polard","version":"1.7.2-alpha.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"fb85ec6f11696596c47ec0ff844774a755afdc9e","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-TInnHcra39Vmno2LQwBfvZQuVAYEW9voXoOKDDrSaA71GUYaikbgwQfs8zfzHdPABqspKhzH5vPMBZ41kR7Bsw==","shasum":"b3d01816d8425119a51e2e2ec3ee3fab7542b0fc","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.7.tgz","fileCount":88,"unpackedSize":3952918,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGCaJBMeRhcq3FABh7qOTcHqy+r1CXWFrosPdUX1RqSZAiEAqt4aSw9uJ1NwIyvnbOs+3QdIHd8RsbtDNhE4i5q0DKs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqDgnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaOA/+O1IIu+RQVT7sNuz066DjgMIixQ7qkV65ZHCY4O+rtaIeymPw\r\nOuFa0rjKb2IF41gna8bh7N6z15PMzNdRTbH/m6+zWQp+z6MWZVB2b7HixABQ\r\n2+v0Yqr5rpFuj5d6qfHXibefGGoDnAaGWAeSp5JKCGRvCPsflYfh6wXcDtD6\r\no6cILq7E6vdnabizJM7G19Jph0FCIdEAx6xQmthkKqOFYu2tqSlWZbQyJbii\r\nYmdNWdjsiX8/6NQp/krWWElOy0aK87Q24Sox6HOzxBtZ6lFkRJNhYtUEccle\r\nJq24438wmBHViIi6hZ/hjWph2UdSs0CsTc2/fNyG3FVnY/cMtFCxIJMNXlb7\r\njmSKb6TnyIG74fNxp6kD4T7BE9w5dL7XVVDa7ZM/FkgV7H2mnbRy8fGdY+sM\r\nk6I57Hud/8R/j3Bg4EPi/n6PF4LMXtxwZ8Csqy8vNRx4vq+pzWEe/K1Zm9K7\r\n4QDGeqmtDenXSDh2SFcRFu2vIfXvdgjZygi6S7BRB18roWpQcVBm31i6Zs/2\r\njfHl7e/ZUeB7a3iQoNxFo6P4a12d7XmxjxQiTiwfgS4+QF+PrLGvuwLGAP4S\r\ny2aijzShsd9oKcv4BMhoRVfvfBjZ0xsJqQ8fh7sa3E5Vjh6FjMxAV7bw/R3Q\r\nBw9ehkrkMZRSxhNgW7VpVCDYMEil9cpIk+Q=\r\n=CF3W\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.7_1655191591622_0.09437274162459386"},"_hasShrinkwrap":false},"1.7.2-beta.0":{"name":"hand-polard","version":"1.7.2-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"0c16d470c2a8cbbda8a252fbf39488ca633686ca","description":"## Getting Started","_id":"hand-polard@1.7.2-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-8WC1i3kdA0KAOMiI501TR3PgSxSIWdWnH1yBeNmDIqQTCH4jL9ZxDd6T1ggU1kQrIOlz5zUDQA9tnaoO74xkWA==","shasum":"ab076ac0615f6ad47d1b93d98ece2acb559c718c","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-beta.0.tgz","fileCount":88,"unpackedSize":3822267,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICPsY+r1x4w6iD9SADiwUkFJiQizH2qSGvE6EGY6TagLAiAwEEoWAR38V3bOk44TIqnSPoAIiICjOc3qEo/HRQeMSw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqFmAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoZ6g/+J8iiaZJDaEYrbL0COTMDvBnZeh/KvFwkgjcUvBulK1HJeNWi\r\n+C7wS+L4zuZ1AoXQhinXrpxuktmywcbB9g8iG4qINnlT1VOzAWz4y6duL5DE\r\nt+c2OrT4KEi4qMYzvRPI5pCuOICWFu2tz6WoIbdjm7wpMBqxOzJ/WBUpHXmU\r\nsz7RpvC55IDiKaRz+dSPkLiRYJ/3px/FQgcxnmZmx6+2nY3awHTRnibTm9uA\r\nBhOo7r6S28RWcDBE3zhzFzUXrRkXeEmflb1HW8/H4Uj+fhG0GXtUfeGVGka/\r\np52Cn50YvHMbOm2+y7xPfB1ixSZQFv5U6VE5xn4DrrIWxnePXK8EIofBrodR\r\nLaAbgwoLR7guQDmiuZPUy1MHsc0NWW5QwTBxjp0y7dobdHU6doKaHSdQqTs4\r\nGRgC5bsCGop6V7FSNhMAsWQDlG2JrUbDZTL2nMdgeajZipwDeKjGJgQYI+Ec\r\nSgNuKPc4OppjH8YQ1zOQp2Nf9GXgE4h8EiK9UcQDI/TAyE3xJrZhp16RDTTL\r\nmBl+EQVUNZ+4omzRELfd3QmLufnM34iVM8P0aU91B54vIzMhpR+/bJkAQ6IQ\r\nRb+2NBRhubDz4GDQ93JyY6xzyjY1M5fmJo01ZtZFGrRQ2M6dPTlbE4TKmOrK\r\n5G2snaTS0nxdAjTZXN87dmmnZEMsVzWJNV4=\r\n=H+nn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-beta.0_1655200128018_0.0411697124657433"},"_hasShrinkwrap":false},"1.7.2-alpha.8":{"name":"hand-polard","version":"1.7.2-alpha.8","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"a34933c7beae4f3da0c4c8875a51e50ad4cf871a","description":"## Getting Started","_id":"hand-polard@1.7.2-alpha.8","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-S65p6l3bO55olonkq1pm5odLY8dHqcaINy/HD5PQ/mh/MudL5A7a1MIt9Ska145CJJBMykZznYVOifcP6ddrIw==","shasum":"9bd690caa2e8e7b45dfa407640c8ca1c18cb78fd","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-alpha.8.tgz","fileCount":88,"unpackedSize":3953332,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKt8xkcLhN0D4WBJ99UqSAfDX2B33hJ9poH4HF5KvzOAiEAjQ6msSuRs64qAvyeESmaUKRJck9B/qej3korumYpLFw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqZdPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoQ8w//UyziUyNa0WLNAqY9r8CJR12euyOyS6iwRsEABElLU3wYWNXO\r\nnS0if2qoGWv/HWlqZp7w8ZCtakGw391HyNELnBrVzvFJIA44H5qu8Dql/RgH\r\nohKxfB8Jq3LmFSt+obZWuvj5rW5GKsxJDHqyT7tF0hMY8dfoUG2hcKNkHgzE\r\nx887B7q1lTfm4dfd7R+xlafxdxv7VoVe1PEX7JY807rz+hpQ6jW/Uv4orK8n\r\nBADwC0jJlLTfAmwsEmZ/jbOe/2VL3kYMGeiqZU9+GvIBJzgRhXb52TGyWrwd\r\n5O3VaCs29bOFVPANR/7hUXXJVOtnxrZJ7I343wdB7LL61r0KV2ABxBrBNM/q\r\nt+LjsX9Fjf8PjQ5OBybY6/gpHTnSVK+py6Mkbf1PVSUHu++WY396ZMqqkg5C\r\n/NeGKvHl16S1ixE3BiRgbZeLWNRyV16oJtt0zVRbMLrbEBmPPmZKx5RSGxrP\r\nc/9aF8LZyvNLdtpPxWae/7PhtVL0/4GscDclgCn0Gwy2tAhiD6GaIAUSJXBG\r\na3kQCuWgZnBeEMV0Vwpin0MhZyFZBha2QFfK0W6CSr7UtKhATQcThaaV+Mya\r\nZgmm9OsKreDngeeAET1zC5qEGguRDqqyjCKJTgIHbpn+Wd493+omxxqMO8qA\r\neyNEp34GVwRtOEK8LfjEUziWDKDBLWxBngc=\r\n=tBle\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-alpha.8_1655281487503_0.7239387290851287"},"_hasShrinkwrap":false},"1.7.2":{"name":"hand-polard","version":"1.7.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"1e4c3c1cf3d72cd82168e654ff45f2995eaab8d2","description":"## Getting Started","_id":"hand-polard@1.7.2","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-T5QhCNQFtk7Y0ITiLV6CupMrqt9S1WUZAlZhFmZHF6XAiV2c5VTUvRV8rgYbXKch+id9T/MsTYUn28Z1ateoaw==","shasum":"45a870e04e57312666e9eefecb22f1313829429e","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2.tgz","fileCount":88,"unpackedSize":3817404,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8sQJ+xvjFwWzVwOHYTT1OgihSVeJxW3LeSYCwsNdYiQIgP3tOwErrd4Ztya98YQjmQxtFcj33LOcFSQG9nYGwACE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqZ8NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrx9A//Rg7s9nPuSb8aswgD1AEZomrEgX9X1CRt3p/klg8kasoRChN4\r\n+hBBlE0Y0MgR3MuyBEF25gunRUu7BRc1hHe0yspXpEL79x/OckTvAOVttU+/\r\nm/LlyJDCbVh7I5JZIBBj7k/0OnxmwAEhA8my2j9dfwHnHAasmO0vO8yDkNKf\r\nuVL6qPANGtVBnsFRVBzetBcC7riYFgBz77RdmEc5VMctof8WMb7WsqoZ8mqj\r\ne+6tU+dlI3ZrxXapurkUvXDlRpxSS4yeQoMD67jo3uw9VXBj9gQaJ2Sif7Iu\r\nXqOnFt3u/8zK9CvP5SSFsiXJIosjDXLPasjNVAXVf28Q/723bDJiX6EWmVsw\r\neLal0qyKxUm20eHxXQQy/TvO7dO8MWbNj5ZGP6uG2hAN3jm/8rluZwMkp26+\r\nA1vqdKQDtvA0PkXQI1GTA9AATYkSM2S5UPvgpvrN6IXDNYoL2AZAyfBu6LR4\r\ndy1NnKdQ7whr7PqbEAUhl7zcIuctLKe3G/sTLYhwZPatv7A3FhCGykzVuRW1\r\nafIo68rDG3NUCYseIH51QICHWVPb6vr1QPHk0uqd7f2gMADd2nTGmSJ6PM+8\r\nOckYLiXLKCSQG0XKYNtJOH16q2E8ZuMNqXTzUqgS5fMPGn3+xJ4rfFo6sqar\r\nejp4AO4I8aUb5TBjgG6PWuH+mNiygxrUo7g=\r\n=9UGb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2_1655283469711_0.7781561666328816"},"_hasShrinkwrap":false},"1.7.2-beta.1":{"name":"hand-polard","version":"1.7.2-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"598d5774e4811b45c4fb2aaf869f36fe1f2a44d1","description":"## Getting Started","_id":"hand-polard@1.7.2-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-QAABws80ilEq4sg3cWpQu0EkQtBHdpSUCVoMufM8CRMxp9cdmc+c5RPjMTbcH7LUat5UONlXS6ZVURebyGF3yg==","shasum":"a6358a91ff2fcf10ae6a1a9350171a7303fcbfe9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.2-beta.1.tgz","fileCount":88,"unpackedSize":3822678,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqEoT30vaO1fKljl1e3iZu/hUdjExpQC9jhd2wn2YodAiEAuQGUFgSxB8g3fNO4W1yreBCL3O9UYkxRhNMbiyvtJ88="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqbEGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqiqQ//VzsrgtN9PPkhxlwXDjENdHFDzY9mE2O6SwVsfqy1K5rZqPHD\r\nWTaRT3oj4N90DDNFuoHlMUzVH8C5QmvACwNuIWRmsx7P7HRp3TAfvH10F2GJ\r\n2h6kMDzkZU5BITiVrNeA9CTpJ2AqIgqcjo8zJpR2B5GWVA1hh4UvGBj1yvQF\r\nTMXkZlhiM7+JZ2qV/4Mi1zuvcXheBZ09qxctcxztW7wSv5/lKuhmIZ15lWP3\r\nd7gjLVkHj2gnmMEboNGV1aN3JVWqapvIailuAUVPXvFeETpBvzagYt/VW0wy\r\nRKi/AI8ha286LXZj1O67Tr5FFzYPjmPWylL4dXhJpuFUjKI2axtHathuJ8LR\r\ngwH7yFHo0flaVQt1vnUYh3XjdE+A19r9yYQbvsvjfejps22KEXDiwpoodpb1\r\nkrxG8L+lKThPVZgOWYfCFQ2bduAhjxiJ+fpGOX4tEWVxAuzCEDHxWbgrZe8Q\r\neoWJ1/E/3wVy1YeeENv+ckrH4NTspHhGThOTzRrCoasKwWxKNypP16zPmRme\r\ni9+tH94hogNmpIJRBEGURRzDHtAFhG/4lalpi84Lc1/fl6bR5OBBA8Ukl7fT\r\n2a2GYuUaIMr1Bskek8r190nMxb3iJp41AsZ7q8bP6xEOK1Rdr84RRvDNphZL\r\nrhfCQE9XTsh2C5nq2q6NMiroXPtt56qcO7s=\r\n=cCez\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.2-beta.1_1655288070519_0.4173418485979976"},"_hasShrinkwrap":false},"1.7.3":{"name":"hand-polard","version":"1.7.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"9e28ed7a7cf37df0d6f2f1403db3b6963e43acb6","description":"## Getting Started","_id":"hand-polard@1.7.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Dhenzz8h5zS+3DVFpUhLOW8xmJFLqTHfmKX8YDwnAdeezx8taySKLWDAPsKaxlz2Exj/i7KsP9UuezVObDLy0w==","shasum":"23fa7c5e8dfc461151c328d25183c5d8d9b93778","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.3.tgz","fileCount":88,"unpackedSize":3821438,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEPMqBZrfEMi7fbZrhEJUea/NGzIwLgkWLBAPx4Y4J4AAiEA9na8JWDip641njs8Ppz/NK/15lLv9+8Et4tmBfq3cp0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqsnsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoe9hAAh+GaBwX7qI1DgnivmxY11w7TbbPJj/anSz09iPN+Nzw42qnK\r\nzKm1M8t6IEGVVgCZDlrvSlms006uLKMGt+fV+zai+ri3IZTZVPbN7olRlVuG\r\n0jwPVEyaPPELDHuzv95mQuCsCYJSj4TCmgLUIATDPvq1M+pSdXHBJbvdnIsU\r\nwwPJPgSg4wB7xaKQxzAs0smXcAIA07WXEPeAAlEYzZtIihkjvT1KGwhQ4Tv0\r\ne9fObfhay7EkUc5xId7eV8+N0QW2qyqSdARK0O0CWoid+zbtuHILzDKyi4zh\r\nvjus1kD7Tw+YYdO46fIAcQ1VYTJRwruweOWT5eWfiJayVwHQ781w4GNOQeIn\r\nNh9F+RZNJ93wUU5CA19RcuzyT/cVJETR9NE2U9jbTSdRHgyDQzCwpXV3A+mf\r\nB4byeCUA7vunUCacmJh2H8lNPx6iPxFZaWrQ9uU0ET3ak7BjeL+xjySQ71jh\r\naPW9kmMzhvSn72MpeOIzrupko2ZAhNTp5fN4lvjtIiGurbFiP7HCH7C/XX0p\r\nysw7LG4Zo7exsWAzFY6slN4chgEKS0lzBQJRqc5aeI0lzk36lqeu/AHeY99A\r\n9ePPLnLuXh7Q2wHv78tol13dHT4aTz4czfwK/FUS4jMTKaz+K9L6jG78yb84\r\n4/PzWN9teZ3ykisCVyOuSRWri242ht1xUEo=\r\n=y2MY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.3_1655359980583_0.03641061543161683"},"_hasShrinkwrap":false},"1.7.4-alpha.0":{"name":"hand-polard","version":"1.7.4-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"1c56e1a119db0fddee68f69f5e0d7c565a4c7b2a","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-96ffDDz/y6lr6XZauUzYguXRIhwXMb3M8Sc5jzfqO3hCx7L3VhzdYabUlc3oyAQ08zeZyaLClNKQbku78+1zSw==","shasum":"6cad1a2f274c405d9e69bfd2f23d567876fb181a","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.0.tgz","fileCount":88,"unpackedSize":3966358,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDC6jqK3HxHGhpE/m92Swf6Pk7QEc84K8AbEa3qHZouaAIgSN0jVOJvH9Zb0WEtybdpDnoLCL65PcFNpZjf6ihGppo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJirDiWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVeg//QFB1C79My0l2xFeMzCDvVJLdFwNeiMwzcGfnKWl1u2EQiMmW\r\nBRXwQc/A07f1VqO77l94attR0ZYZcxy8SrPRkvDYu9NRbFHSYjR6gGO9sxKg\r\nMFoWPeA1oeDnUyFhgA+vEcnEVwMmvedRHw5jVyPQ/0m5hNQvqhR0Ssd8T7n5\r\n921duO8lOf4/MHI3kPmiVmY7VeAfGbeJH3l2RKdqTaH8XOCEN2FcUe2RHgRN\r\n2pwlHxR5Ow7I32e4PhDSJYjyeVtmgJ4h6wGQMh44oZJr2bl7ebvCpxrMrAmh\r\n6yg8TD/G/c9wOCRl7W4ttoHHTG7L95AUB1dLRVmP+/Ud2Ynxku/bmqwEwqbI\r\n+Qy7VZ78SLaYxbHkSICEnpUTnlF8mP1Y8JBHHQT7YwGfdKLedS019kCvYQIs\r\n7TJrrKxuazPjTY5l2nzGkfFBXd2ZE5iEdfeJvkmXpyxVqXuvIH1QOvPVHP6x\r\nX0ZjN8yOKxCp6EA9pw+kW1c6kNrLQ7VBLogIuQMIWIHfjT3qnzZSWwxd94Yt\r\nhKAFWTHj5wScakmqFlew286SyZYsad+cO3hKaNbUKNyk6mIbZWJR67Xf5sn5\r\n/rZATvuG64PLXxdPOeN8zApJ7l/czV0dJ+D3IIBpDolZqKFQWWWiXCgMCIi0\r\n/xisdWnodPezizy2b5kxP5inossAR+rIpXY=\r\n=Um6D\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.0_1655453846668_0.0003652131058997643"},"_hasShrinkwrap":false},"1.7.4-alpha.1":{"name":"hand-polard","version":"1.7.4-alpha.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"8ff5454515bbba380eac08dc2fd7bf311fc2d0b9","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-itA+782drdmkv1D6U82soY+y4mTmZWbYF6TpTjNWF9rVP6deIMG1dQnmEJ8Y44+e51zvf8HHuTti+V3pWbcJZA==","shasum":"d336cbad2b200a6d61e04a444c5e3cba7d4d365f","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.1.tgz","fileCount":88,"unpackedSize":3971617,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGUyyeu1v0EozUj0h4nUZ3WO+0s1aaBjXH7Ip82Z9/CgIhAPax4WpNGDaAcGODlcfwQSGEl7WBivkOzqBE42XSBlvF"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJirEjOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoseg/9EDlzAnQ9X+wEDZ6cA7Y0aRPvA9Pjfdld/W4yClsWiTtk9gRm\r\n6wJOvaImXyiNJzZl8G79hIyP2YVds+Hpuk4Ybast+aIl/J83vHSkvcTDxlUn\r\nYOFxi1kRU2DFF0CgjhmyeA0ut9j1ZM0SB3nDtiCPXF+9eUJgLXhZ+YQzgbdR\r\nu2ygPUCTaAnfJZRmFHgQApO5BYNjYloOz8JSGs1fRahJqkDqy5N4geVRYja4\r\npD5Z9cOdHymaC42hcOMo3WmAqHi3pFK+OT9LJ9baeoId49zEbKSgXdxUErK/\r\nEmwmLTB3Q9ZTbSCJ2ry8kUbpV5iEpDLBBllecExcnXksRnnSEYziXNnU3Z5s\r\nsWG3Nvxh9cCpca237TcPNjtEu1dPsyUNLHIowgdsDJkrVYFyqKRjvfo6+hW9\r\n80NXPkENHqM1OFXFQX9COMDNjCs+Rs4ETguaopa6npE3JyM0Qj6Kwf8xf73x\r\nG5+WZDammAVJpNkkTqvIya3z55RXvYrM1bY/oWrPNCZPzvNqNL/kHJeRsVBL\r\ncWRuzIAShakieBSbI+pdqD+MxN1ZYwpGTO1fa0eU3kRUHDjnG6r+mMQ4dKYa\r\n/EP4/JfFqSQsfS5YOOfQ/bXzeDZlNuECtZ9Fh65aHfxg2bAObwgnl0VcnGXG\r\niLgc2PkoTYc96h152rJkJMcLyUk7+TGpVPg=\r\n=s98X\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.1_1655457998685_0.8890185893514373"},"_hasShrinkwrap":false},"1.7.4-alpha.2":{"name":"hand-polard","version":"1.7.4-alpha.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"2c13318f42734dfad5db2e5a74a918c1b138d4d8","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-shxqygoRJkd/9Lzc5M1VwRIW10jcLqvEiDxIfEJDISLs8wB/51bq3j6+Pui3b0Pgm/gMYZ7XsQcDPP5PdD3JNA==","shasum":"ee457b94edfec77a4b5182d162ff2c4c76591881","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.2.tgz","fileCount":88,"unpackedSize":3976928,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA66cxzFqt3g4eDcwoFJ+U5eHvNKA65QIkTEiLUiskbDAiEAshNs4qfjeELC4l6LQfIWgsiHtxVnB3sBR2Xd9crs/K0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJirF8HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnUg//ZoIVnD21T1fg0hsJh91O9bj46iWH2bbPkZiKmLKNmayqZ6De\r\naXFJjdHhLNKoseTuxmD7AXupildto5yV4Fv/ssiFUNPFyiLj9eZCdg9XXOUL\r\nogQJz/wVd31s6kUZpYTJsG0hTQzKEy5tbQn5U5c3Tr2CiHXUKefAtWD1HveF\r\n/JkUgFZXSiTsPkx2sijaYwizSBnrBVKoN/Km9sotA3tHXf4sGaywoBt2CT2j\r\n63bMNqyMOSdOJNT8G7Qoj8RI5yLKv2cG04Ktl+jOXF0jD6w3DnXPjzOZsPC7\r\n+dEc4ntlSI0/kusaNB4Phx52G2sAgfpWk5dQ9Sp31O4rRic/zkYaP3qqVTgm\r\nEDXhg4IOtvaOmwhS5a06rdyB+dPvvlNA9AoN071VXaJabBfieowI06/eGZkY\r\nhbHAnOyZaV8d9g0dQtYSYm+v1YYKmLDHV2hk488bfxQm16Cm5xVg3NUeGRyR\r\nxe/9TwUPN6D9DcOpvwjU4OyPhopGU4ATLksRYwTg7Y46UyBnRtxROtfIwmDI\r\n9iSeW4sarn/rn4fF+m86FlwF/VtDxzCvyQSGhEuca3Sm+Q4NH1pGA6xutzp/\r\nHEkhUkJWzaz7YuwN9c1EshUUU1+3anBI4BthLuDnSMF7vDmU9bLJOsl/ITSs\r\n+aRzbiOQvwOqrjHbZG2yrQmeP930kGCoGHo=\r\n=eDyR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.2_1655463686924_0.807732366145544"},"_hasShrinkwrap":false},"1.7.4-beta.0":{"name":"hand-polard","version":"1.7.4-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"378d2b81b5c984c862fa332d794dbc2069a389d3","description":"## Getting Started","_id":"hand-polard@1.7.4-beta.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-+9pniIRcO6RYmT9QLvaZJmsmNpCoqox0coXHM7YgtF30ugyUipZu2bjER86LhhqwSTWilwqe3ZrsqCtHsZYd7g==","shasum":"ed971f59ab9c2058a636cd2f860384b6b39311a7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-beta.0.tgz","fileCount":89,"unpackedSize":3837090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEqTbVviShP4P5YLxawjMOL5rdh6I/1TMwJNtg2SXLrVAiEAv6UhBM0tjdk6aMNuJuwbIwC1+YL7PHPc8fYY4DSnefY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJir+rXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqmfw//e9/bx3ESctVFQw3IjbO8RCTT33ta3mpUk3Z7PFYDGtT+T5yl\r\nL9Lm7iL0gaN8tm6PiA1Jbvsy2vmpfoDsU/Wj26ZHKn896RCpzTyxaMQ7yr3b\r\nCwZvsy4AqJTbT7miWiHyvT/brwpOWbmuyHn+GEDW2fX/k/wydBXo2PakTctk\r\nYjAUCZXOKs+etRm7LSr3Rdm9yRQTN6CDBgv3/76pMDnO4w6pLo9YkQPBI3Js\r\nA4f6o1zCzZU+OnMrrh78jqtZyVQPSb+mADemoCWLkhDYb30hxPns+yU/0eVD\r\nz208sfehnKMtkYjJFkr4MGjPEUhjHTErJLkDUgKLe678aGxINhMJR7Ae4CDc\r\nCBADLxTr+llUxt11k4IROCQF1j/YXs7YCTSn1A1surobscRdb+NPCdfcPKZH\r\nRpEJeFm1doJFSd+Wvs2A+dCVWNCpTW9fQSzBJ6K2OsMqP18UIl4zx1vylNdH\r\nmDIIwo86lY1RF9FfxrRBKQ8kHc0UfAQ1AeRpN4fo77XJMmjQ+8VkFYP1CkHD\r\nC+yUJm1Bf8uPgqukuAoTOqqmVRSWQaq8XtBPwLH85nPIaE/P984jFNlRGpp+\r\n3B8s9IU+cDyvXv51XjLWwF23sEpyU19Tuwk6i9ct2VkMRFBi578ppmFnDkoe\r\nq2Gk6rzag8X44V7mP493YQuhH8wV9Or/GgU=\r\n=t9Pr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-beta.0_1655696087327_0.5183606304191029"},"_hasShrinkwrap":false},"1.7.4":{"name":"hand-polard","version":"1.7.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"9fa3a78452720d18cc2b996ccf683e8ebf533020","description":"## Getting Started","_id":"hand-polard@1.7.4","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-ImEKpCVtpb22U5wa4Fcv67NrQp1MeXidwieiPnAeT3BipRnywuSH7WZqdFmMi6Sdy7qb58d4Cc3vqhhPRU3CHw==","shasum":"6768d7cd7aeecbf93061ccc51cfc746515c0a3df","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4.tgz","fileCount":88,"unpackedSize":3833473,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAd2X6gtYMcgblfUu/SY5QfTy1vSDP4LIFnxOlmZmVQMAiB6Fg/Che6oRYX83EGw7X/u3U2fCFvgtjwpGRRunNdHYg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJisSQRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpY6Q/5AIcasZkzJUpQ93hthx/eXk3owcZ3SyfQ8u2Z+ih9lvwvXkrF\r\nmUJorXntuNwuhsn47C+B622ApMtBW0SW2JIINtD2oPaUTToteVyEBtt9vnMS\r\niqT7ZmfpRxeBAezK+kNK5Q9SJSQ17sFDGH8JhHJu4H9DXYZ9IfyW0U459aNq\r\nI7WGDE4CwtfSx037CgOX2V9P4td2ff0cQcrGbxLkC7++A7fWScrfHxUzmRtV\r\nCdBt4h3G7hBER19Egg1CVRuWVYLgpwrOBCfZ9rRcrZefoz+oO1DFn0OAriW6\r\nvN5RPUsW3AxcEm0q0U791zGtgvGXhd8R6wuFgU3HjLB5yVgzdoZDOSSVGfab\r\nRHau6rfGiD9fHburw1UGQ6YNWO24Et/rpfIY1I29Bm4/tdt9a9yY1KY8sh8v\r\nwMmovprf8esLyaRdNjNt+R+i52OQzuxJZ4a/48F1Uq3OjsXHvlMgBpfydOfz\r\nkJnI2YiEAwpEmAgeMBtPiFFCb3Zcwz4dtXbXc6+6HNqZ9Sw2Ol2fQa5TI1Nk\r\njd+VAyKcOmj9ijX/Ok6b4c9QJ9frrDBdm3olaBN9YfKNNBnFY5US/1i5dO8I\r\no180xTDRpiItC8hYpVTCOareJWt68zrkkRzat8FBjLEcEaKzcHFKFY2lH1RQ\r\nHhC2AfL93xGy0tfMLO9fI15/ZbwnLyH4Lh8=\r\n=0Y1K\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4_1655776272955_0.08204800363090237"},"_hasShrinkwrap":false},"1.7.4-alpha.3":{"name":"hand-polard","version":"1.7.4-alpha.3","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"4770333ad32e56a041ea4eebb7478e12a9f4a945","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.3","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-LNgBzyOxxkZcWnaPQd9/G33r2DPSvQmfe9YDGVV5dYJXNVgNXFScqDzTtT3dPx/ypPbuCagGd3D7pF2I97DnSg==","shasum":"367e08fdcac416e38b72e68b81f893a6c91541b7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.3.tgz","fileCount":89,"unpackedSize":3985428,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsELEBW6lSrcZ1VMoht+XNiXcUU6uPRJwgPoeJIKftdAIgRB66IvYCilLQVDCcIIEoWgKvGqm2WRt07rXEhxPNmVE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJisW4LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr20g//fesBIVbYuMjwKEhWc8HldNRCJZVo89xmceVhqbp3XXh1Ygz3\r\nBi38YexopesH23ntsQ33nY0jtyhcLYIYCLUrLfHgJmr9q4xy+XUBhj7fPOcw\r\n1a2uMcyVjoZWc+4AvwIDsi87mdQSxw5qw5Yvv7OGXEkeufMU3FvH47TIwWXa\r\nd8VbkXlUqv5Z8/Hcx/UWYM7+B/1aotwzkDmsQ7JWfRvHlqertGJjVRHSk3Gg\r\nKpJ/Ea5xcdgI5F2+XdhMek/giVoZQe/AycPI5tFhLyxDf7e/HHctUFeI6MN+\r\nKiDDS0X+EK90pjlr1Vvzburn8EmUS5t7OrMBE9poVai7K84a8x2++kfPnu9B\r\nzxYw4mwC35OBDGsgyZ7JzPFzNVimG1PrxV0DlXqoBVbp0OGU4Gpb2mIhVmiT\r\nWHFTzgO0qndoGuJbwBXJZrVWiCTbvDFpzh+1Cl0sd0Ocib6V22Kg4S0eADQO\r\np1nATyhY07aA9furLWblsbkfSCOy6PQQoNdp3Of6Mm3QvoWysyoDuUPvu/XN\r\nzw0C4BFlNtUCedhMgnaAaNESl/jhQ7rOZ4Pf//qyE7L1Q2rEnV/ej2iHbjNR\r\nlmhiGLe4PSuFph1/nxBuk+VAsRBzcCITamA/oIOnvbhsACLw006zZrjvDrsu\r\naeX5Dvcr+KpPDqvOSeknBY4gE/nQv17TtE0=\r\n=vlWL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.3_1655795211020_0.005120544013549333"},"_hasShrinkwrap":false},"1.7.4-alpha.4":{"name":"hand-polard","version":"1.7.4-alpha.4","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"befb7478db102ce84a6fecde448b23606aad3bdb","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.4","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-81/5VVk7NRhOB6dZajiv3dPe29KaRrjwEtE7EMRIBn4hngmxYmSr0aHTnk+t0nSobWezYDeU4r5x65UQGikKBA==","shasum":"20721c439046d371bc5332b78ad0fbe92a3c2053","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.4.tgz","fileCount":89,"unpackedSize":3985782,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEppu3Zn2mVcpvuHnZKozTBg6xD9eCXKSLVoUCwyJPI+AiEA11/85Fsjk0SEhyI2Qc/RDzuwBimvAlMYQqjP2a7Spqo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJistKZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqjkg//YfAJOVSYo2CP3lGU2nefuj/x6NIuHtfnOR7ua4B3ef6ZziKJ\r\n3CIrT75+mdS/JBwED3irQHYPGYcKe+BytKi22WnuRHrDA3Qd9VYAJt34zY6F\r\nBqxesjqYF2wzm6+RPOf58hCPcaGlpsoubUVOhp/ZvtgDDojAxMZE6fKA+foA\r\nrz/UF0xXyx0DAcGsLdhMHq8jWzYNzUAyfrVKgxw1G7YEUn+WYEpN7NMqVmRb\r\nSwZr0vaipV5aO6PgXrtrUcmNjQyQgKPVfhSlyP18LdN3Y81muFMmp/RzcJjy\r\nNAqk5lwf3XRh6TGy4IbLjtp/A7cUQy72UHnoj2Um6zjBnIgyiR8Ua3tcp/gz\r\nJW1D8JZGWQAnA7/LUYUCR7oIrWoem6IJ7a17xrAFCOn0mgteB53BFgn6tf/f\r\nx03/TWbMI2743JM5ehnCm20xP5VP4FVn+5ZCwpGipTh7ov14cJ5au8tXqduP\r\nBklBuscwd443r0iOsUL2DuJzq7s9NA9kJBNmSJfGp5k7jF7s7ptgRAQckz+h\r\ng25kBUDIGLnapPUgRgb6t7C9eK8jPWJLTzUfK5mNyMg0p8O0/DDTOlHLGe9C\r\nFZhyKTY6iX2zBiNsla7fwgG/2xKlE3ZIoLxwFTyH4r+PvQF0pBQt5sX00VQ1\r\nrvtihU3M0M+THz85oN2+XbnE8q5y6dFga8I=\r\n=iU8c\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.4_1655886488827_0.618984254609741"},"_hasShrinkwrap":false},"1.7.5-dj.0":{"name":"hand-polard","version":"1.7.5-dj.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","antdv4":"npm:antd@^4.21.3","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"c26b8ed72a5a9271bd318d8dcb1110378330777d","description":"## Getting Started","_id":"hand-polard@1.7.5-dj.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-zzgB022Rem4k2m9E3IrZHUomRsvXXY8TVtsQ6KZCwBsovElg9Hg97RwHV/5hxDt0HbM+ELU0Z9FbjH4NQJJCnA==","shasum":"1c945855a7a341ff4ad322b7ca234ecadf9c9d94","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5-dj.0.tgz","fileCount":88,"unpackedSize":3838756,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFefRoizhniPtwrkDxxjPhVjZhnDGpKRNfb6k9Ni8agFAiB1Ht2aUAWw0ltyJm6Qe0wNN9rm0ZPVc7u1cp0mnuLFvQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJisu/8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp4exAAlQ709puv1KRuUo9eflMhxo3EBzTgvQelNI+pCkjlHcPC5RBm\r\nTL8X3YuoXD+NyJqO8R2qqpj5F+LKVhF8fji0/veyIBBTGe/ZYl3rTPUdrfLm\r\nYRSGThJvQq8ossHOVABWpMkwIMQOSraCTsCKSXKuy8FkVAOG+6ncdC6oZM84\r\nm9T8tu+39cZar+3lf5tW9MCqPVJpZ/J7PiiSIV6nakpuwgrYJrMAZ9ChMeYT\r\ncOmf5NU5+QzqY9dU2T2s6grLBVqUGiTqctfDVPKkGGTT4DaBZ4MNVM83y5s7\r\n+qnX309bsemei9PdwayhFF5Me211RHCyA5oiQz+il1D5OHsvzsBQwszgRDWk\r\n7pPV3qQZB1UWFgk1tjW/1yxytt1HJoyGngjJtc36ldmrYNRLxtf9n/titQK7\r\ne56LXO63B18K/3WgxhHzN1wttV3qbC7OHss23KYS0QeasGHHu9bd5XhSYJVv\r\nVhEwRzGXi7fsWUjH6L0rYIzpMpNzn1iGZu8alx/atsAdmYNpQFPpf5e0Snox\r\n0cvoaIxIQSbT2ivUB29SmYdU2/0cBYG9FPk8LPzBMRvqZkJ92pjSHr/g1l7V\r\nPV282dSkcrUWD/NZ20MPtWBBo+lsim+cywBrwUTeQDC9A4oDVL6dZ024nIC6\r\nN2zIeYlarlSeVztdQez+WnqPatysZTkuFWY=\r\n=txMs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5-dj.0_1655894011910_0.33484298738506624"},"_hasShrinkwrap":false},"1.7.5-dj.1":{"name":"hand-polard","version":"1.7.5-dj.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","antdv4":"npm:antd@^4.21.3","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"86836f3c33cbe241e9ef103b54b3c89c2e1e1e56","description":"## Getting Started","_id":"hand-polard@1.7.5-dj.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-xfvqD2wQl5zrrm3m5BTJ/hWiIsnvjTWLezUJpyTQtGzrRKISfG+MBpCFVrQ86ydgXjugMQhjEhkKNAJd3pIKqg==","shasum":"f588f2761469194441579cf4c68d4dca25d9fbcb","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5-dj.1.tgz","fileCount":88,"unpackedSize":3828983,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICGk26gNcIPxdf3sDg90r8MiRRtzCYuxiVTakV2osD4WAiBazsSadIn11VB3/qspPYrPX2+ux1AK5vJC7MUrNYu0Ww=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJisxLUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqy+w//cmIlBEIi4yFYAwVJkPu4BMaieNFVr3mMzYe8ztDzlBedgvR4\r\n/+mvujNEuM1PGbBW5JTecdFreHKuVVwRitcxQw+Gva2HSfCJEIwCBlGJLYF4\r\nJVIQRDn8tYW/iGv30qS6rTdrsZcCHSGH87dLpkMoGExt1lSmoX0OrQd8Knfw\r\ntWmmnDP9vF4nw6CgF6WcW82hx3gwyVgAm0+hgVkHunLVPStrgWNQ8J7svIG5\r\nF0rdMu9Yncts8IIE5CbkkN7kc4rlv+puzbAwEfBKlufKSDkGFmoQHqKcV6fD\r\nyReks7BvC1q10iX49+tYLZSpZIZuL+RrYJrdhbDSWAjrNbhit8C0WaKbEBLa\r\nr+df0XwGAYPtqEMFqUZBcAMbyOUr+Z745dtuWzRarAv6lWiDSDRBVK8EUZw3\r\niRn21dCRSR26bRRSsUK/Rr/CMWBQHXufLUZj8sz12d/WVdT84t0ZyN6x/X6a\r\nl/JGL2BH1NDt38rUuaN2BifrTbRBcAHSXGnBLt+FWRSSXURB06iBN2NiVAgC\r\nsRGIyCZx5rCeZ+IQywTbcVv6JWT/2SvtcssMxkCv+Jalnc4u+flzr7cpvFQX\r\nlrCaFYlrrTqBG9wfxEckDy9Oh4Ni1VS33vZgLPxJl5oCNDf7pXp9ahG/ED+5\r\nwCbsq3naLeM0IwB/qnTOSo70LNqrQfVIe3Q=\r\n=2gts\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5-dj.1_1655902932041_0.16358585444608487"},"_hasShrinkwrap":false},"1.7.5-dj.2":{"name":"hand-polard","version":"1.7.5-dj.2","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^3.20.0","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"701dfb048a68daa3586b528f81eeb6342bd07c7f","description":"## Getting Started","_id":"hand-polard@1.7.5-dj.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-qMPy0UeppOTy/IMtgKx/vbskfoh7khKRTM2THDEI+UF0RlpXRDUQYNjf39wAJASlD4HEF4l+XxX4uYDivPAHbQ==","shasum":"5f5c487a14599085b5901e807fbc346728b24eb9","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5-dj.2.tgz","fileCount":85,"unpackedSize":3826712,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFkUKbC0d444d8IeX8sLN93rts8mfvjpJhgY2Y7L01U8AiAD81mHZvCyKP3pdg5vxHC5PmrSp2GrTjzyxbmdtaBwVQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJisx4/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWnhAAj6UmT+uNhqDHCfvqpOI4f4QdsD1HVBUzNhCtOJRYLWhVTSH8\r\nDpR9/AkSa6RcaNwxqNM+cJhbp6MDecTVhGG8LmEMMaAxZwhoEHN76U9SIAGg\r\nIERxbs/HGWoUJqhz2fP0iTIyv/MfeRpgSPUynWoQqgMsaz8/4fA8UtgTw34p\r\neFQ3krLx3CrGgfB0jyJH1fmCst66pho+/PitCppcGCdqkc/fDUdSBfK2MDU3\r\nm0+U/eieF3JGJE5Il9ZWxSkLWsvhctXV7j0TcHCnOBzmQUGL4TzoKJQJp+wF\r\nP7CS7ZJzmkB+sUNwimy+GrgYpkZk6xBHN8CTaKQPkdN7a3qaJGcm0zA4vYrv\r\nv8ffI7+MazD+AqAqdY+7K8CKckY+nWMzaw5/2WW6A9SbeTuKLehFV3J3IPWa\r\nz0Mlp/f5HIAHMuYF/1m6o8u31La5vCPm+8W+pfGzsHAtvEcpNIKbdTWwwg+q\r\nVmMAKwSbE0ANK0oSGJzU/97DVySza0XHu/A5Obauw0QinB51mN2uVfU6kzHp\r\n4JQZf5ucLc2Qfx5PmHNDTCx489HwR+J2KP4U1tD4Mc/Shwp5/6IFHkMRntP5\r\nXZM6RHBv/lQ7nDGAwwLA9xG2lu4KLZ6YE2n43WQ54CWaBm0MaRm2cXKVugYb\r\na5LOrw/c5FDHWeyEBRGvn7Kro+rUi2JXoUA=\r\n=dhXx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5-dj.2_1655905855294_0.5202554294225796"},"_hasShrinkwrap":false},"1.7.4-alpha.5":{"name":"hand-polard","version":"1.7.4-alpha.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"11e1a22c1ddefcdf53b528f5828db0e460ee7f1e","description":"## Getting Started","_id":"hand-polard@1.7.4-alpha.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-AOu6m4kRwKOIbtrfViSTuH14CZDgJM5dO46QR9yyxWSdPeOmDAueJ5amYr3ujGCyc65Aei2HVenUYuMS3v0YSg==","shasum":"f9823afe691127eb4ea711456d956deeeb39c8a7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-alpha.5.tgz","fileCount":89,"unpackedSize":3986178,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAM0cuiF6kFJn3u4gbH0sOvbIBoL2ofYCZdGZGegtj5+AiEA4vwqRtoU3YwFFJwkPxQxxMSOBq799ftGK0jnigLPIzE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitBrRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq0bhAAgLrwddiF+D/Q/dD1N+NzOQHOwOAUuyxofWhdVvZ9M/qzL2ge\r\nWYk54ekF8HT3UoPMJw8eAy4vMpVATmruIfNswt/OPy+rOECo9DnTWMhYU9BW\r\nfX3cwnH6emsxSro5+WP7DT/lGiw2HPJ8saWcRKU98qcHp3a/mEFxIqBuuBuG\r\nTay/Gfg2+xQ7BRTTlHpJfORtTYZWO1U8/d153kJ5V4jYalaQoAsyhWKaQzug\r\nDlH7Eovwc/pQ4S7Mlr/23ro9J0+O9yyZSBF7GlgSfpLiXQuzihuHUTYFPm+C\r\n5FidNg/WIhiAvONajBAD/8ETiT4Y99u81nk87yYn10u8S4L+Aj/o5Dv4xtHF\r\n1UwEJeM4n6jCHnFPZ0Kjud62esD2U+qlE93WBKNL00nwcU6BZZhMJ3gOgFIU\r\nbLal7fTvROqhj46p8SxoAZ/rQtLmGCOBqNNWmESG4lJWLseXfr4FvcKJSbDR\r\n1RiHn2u20oTG/dZtng6lFpbwVnNP7U+Xx/rKqn94n4E8WSIAHGbeQvpIWxk6\r\nLAIjD3m6hOgSrwDbE5FimY2nAWK1QSbD5dX2CTQuB6cizPJn5PliaGTUuyfM\r\nA/aqGdRJOCmYaVbvWGjbCbtzykLeuvjJd2s8Q6i7GVbQgGQ7E47yuDxPygJe\r\nrOfU7aNVIbADNN9hJCBXLcLoZ4WaL6QoahM=\r\n=BRjR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-alpha.5_1655970512821_0.05222116629787932"},"_hasShrinkwrap":false},"1.7.4-beta.1":{"name":"hand-polard","version":"1.7.4-beta.1","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"86cda737b0b66cc5eacb23947a3def7bafa09825","description":"## Getting Started","_id":"hand-polard@1.7.4-beta.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-dk9c055132JMq8qXATJ5TLCc8/Ji4eLxWnHFXqKd352eqcwVmN+6njjkHyutOHYFDqYpiOA0fDH6ZSC4AhaFiw==","shasum":"791d64324e483a527dc717628e15b75a600dc3b7","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.4-beta.1.tgz","fileCount":89,"unpackedSize":3831858,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAoG+JiiaVRlGiXKt2I7mSRAkLb7RyI8htHg6NhPtJKfAiEAstUl5l7DsSXPedvdTLV27xbvVlr1v5eJEsgD9UsDMJc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitClQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaPw//UyJQtPXMJLvZdVCriHTQKyHcQpzMDcLKUTy02EKOeTreogPR\r\nyNxVZvSHQVS9FegzRFrB1sgz/4F2FJ9i2YU0Gvo3WSdWmPAK6xKA6rnsJalM\r\n0DeCbwKxVcIwopii6fvdRIzBcspTE8EBeCppHFr1i+yXxlyADAeCx8hqTVoW\r\nZQ/StJfuLa901P7ysG8dyD7ychbawuBNpJeuwaOrCVVfMwnwHCp1XQC/gu19\r\nTIVfK/v0riefNwWeLAZJhetD3Mf3uKmHoDJe7emtYsjn60IjIHYEmEby/Y/7\r\n7zZrJMPdLLoKewddSErd82qUPL2PXdE6rh409w4ttnKyyHqsn8/3oH/vJe4T\r\nYoQ8n1jlfWZd2pJxrxt06qfqtRDISgtO3AeRSifPNVsPdR1AQKk1zmrqamqi\r\nvaq9oYuDGhhFhxlJLu6dxxhG0SzBzNq5owc6wzWCvGrvXMyLW52u3cUJeSOi\r\n0839+SKnFEpwXREpPwSdtCHy83n1zYJ7sWRtOo0AyK0eZxg6/u0QvFz2Ogcx\r\n4/Q67VLqwCF4gMdduwDWRSqPFRHDutByFN2Q034wGD4awkhXHwsoSZjqzyRP\r\n3SrfjVsJuZxAsmh7O8ScoyYk4PWZ6P5kjHMTvbmBug7khbrQCAkspPQT63nm\r\nmQIoc23QzlfGFGYYHSlICEPa6vclLVwNmeg=\r\n=n9qA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.4-beta.1_1655974223761_0.03681112908703188"},"_hasShrinkwrap":false},"1.7.5-alpha.0":{"name":"hand-polard","version":"1.7.5-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"2814a0b8fc6e5ec89043b99ea49f45ae5d548a90","description":"## Getting Started","_id":"hand-polard@1.7.5-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ti0joQs4JC9BohQr+Mb93srOJXwHtNHnHVZEJ7R8msPej6oulm8+PNro5WtOF7n9NuG1XY+QaV/+ln6fHPBfqA==","shasum":"1d5e804f688500efa88e8c3bf52f6a20cfca1e1b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5-alpha.0.tgz","fileCount":89,"unpackedSize":3990786,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX1cz5TGq52lkT3lvGf0cDA2X9kPM2DapcoQbA1FRtLwIhAPmUIWDKl8uqLvb9Z68kuI58G8FHgk6/xgYTttxe/ZfX"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiu6zrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpXQQ/+PliybteY3CQD65v7gzrhIPqmgGfQ5lokgBFnXsesv82CO1cp\r\n8HJpnjsGeRBCTI1LUBgcMGwirFK2WUf8rJhz6WAjqLppJrHn6lBNiaW37MaT\r\n73DXf0CUIUPOotsgIlNZ8PhFf8isVN69X19Hxxn0CyARm/xq3Z9D2P4bP/Xp\r\n/PtwnZ+V+VvENscmVnQzHMJGzATUEfSKxzgqqahCoAP3xjhiczGzQAOWsEvx\r\ne1aTvtREbQE6TsGSNP/nkO9Jr7pw6h2eScQpBGz6MH8Y+Utm+4Yp3/KyO9Ke\r\nc859AJTSqWnguDnU7Jz6s8qcuzNrCU7wlctmmsn3+vfLgDrAkjAip9dsSI/x\r\nCcwXgiLp+eyTXr2jdmzIWBsq8ume3SWV0QaFORdXwl76F6Te8lgD1MPHeTtH\r\nvl29fxVKkxRIK80twsRSGSOaDhh8pfUt25xPxzzIyx2UFAroOm3S6EkcI2l0\r\n4AnAyda1CM4lAZuUKuFwa9vYtZlQd+kPBhS2nAfyZrlHSEsZ6SeMl72/waBs\r\nQThsymYRYOoJpMbxrYS87N6lnDHKwAJ1OkXb4NtuDctrgWOK0SSAaBtm8MtX\r\n6ggtvu21+2L39BqihjMRAl/hq/ZoYIUXIfcp1bF5jU7KDkeT9hUse9KMBalQ\r\nbiILzdXx+x+PmAPvUBrOdFUKwwrTj0Mdolo=\r\n=qiw8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5-alpha.0_1656466666918_0.7970926025430762"},"_hasShrinkwrap":false},"1.7.5-beta.0":{"name":"hand-polard","version":"1.7.5-beta.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"215862538c57e9cd91edaf599b72749d26ab533c","description":"## Getting Started","_id":"hand-polard@1.7.5-beta.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-41PDDCUHiH9Ra4ye6mRVontpNQD9HXkSDsdNwW+VGkYeNkUvJFQgi3qOxrVNKsKnvo4SGdOlyWZybG7bFkRSsQ==","shasum":"c76b53fca8fdd94fb620a6622595fffdad763708","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5-beta.0.tgz","fileCount":89,"unpackedSize":3840489,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDls5O4uaZWEK2+6H+z339AhObVgsQ4c9whJ0t8IUC1vAiEAwXkqHMgRAsej7zETo1B9hCuSuFnOBIFGl0CMc6tY1j8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiu8RmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbpA/7Byc61jMlHz0/2qp1q3x6xNb6vESOP+3+fpJKuo3NULxawiu6\r\nszYf75Be+ag+VB0rp/VjPhx7go4LmCK5SLh0T+QMUWWns1dvKvkRXF8ShVyx\r\n5FekHCdo1lJCorhHgsfxVn9UQwU4DY0D7VVHLWHb27y59UP4L575+XZHAqBk\r\n/jMfah5jQ63TN6yjDmGDZctWrQs3lWXfzSp7sL22ZFXpUkWVAo38VYdnDN+h\r\nqhryOdr38cTwRUJtMcbBsyrqpe0a7JBGt+sextLCNSXJxiI4bynnSuG7aKF8\r\n8kGYjBWsNgG0d7gO1cJ9zhhiwvuE7p0rMftl/36kctxQamM1R0Kf2mWcD5ZF\r\nL37emE63Sd7USxxo91gjXDBaxIhIqx4ub2q3DfmYFHja2AXMf9ddyehz/VzW\r\njLthclLIPphS1IM7AwTQAjjr9Gb8GhSqH0gItrMTsMNVyq0hIx+SejqVM5pp\r\nRCyYk+XHTP1KYcu1CbSd4krPnVoIQT32YG6IpF/rHLApIcYCAndRq0s33TrE\r\n0L2ppn7PDZN1ce427R0x/aK8PnF2teLLW2HEuIPD+i9fNbEghU7Qm3ROuNWy\r\nPX6HoOR2OLmHDGaLiDzEgcKVh0LBVY5QJAVqaMJPrq4qceqmtb2cRtNgnSwZ\r\nrHRRUH9JRlOhWGvFduUgAeXUWGo8iQrpt88=\r\n=/a/D\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5-beta.0_1656472678354_0.6911694663485655"},"_hasShrinkwrap":false},"1.7.5":{"name":"hand-polard","version":"1.7.5","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"0029b3320fa1f8b8476cff9288636d42a2f94f2f","description":"## Getting Started","_id":"hand-polard@1.7.5","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-xInQtmv1r+U9FG4kREKN7ITC29LYNi6eJqYiGuT1QJ6A6KPOf33ueT5e/RPBE19bqd+d16cK8+6jFJiBHbr7lQ==","shasum":"9f21c548d8e53d626794276b27be70a816912ce2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.5.tgz","fileCount":89,"unpackedSize":3867022,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCU+c+dBuKKuYlmWgd/pM/PfBX6Ei4zf0oeawCSYCA1VgIhAM9kKFNVv9n8QR7W7QwOulvRXXp32yhRRY1x3LKl54nA"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixjidACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmonTg/+JzFhh9V4j+97eBAcKBwBHEoRoitvn1bR38oRpMNHD7XoBIpC\r\nYpiFRyVwd+vNs01x3BSb/oQgmUcFSGmYV6xFl8yx8YKVi4w4LBlP3nuU4T4e\r\n/ZUyVFRq9xh48fuYdAvZobfTPi7yBxnkHOv4YWofjzy2Pf0/JCvDgbWK3SoH\r\nFJGn4Hreqofg1vinIOMw6npZVZNoy1K0BVsI/Uu6L33aKYc2f5xuKXMXJDtL\r\nw4goeEZcMV2DrQqm0dCQq+O6Qs5GwtSiMjIEfryznx5PeV4KT/ERQt0UpdWs\r\nbbqlZhK2ZBA6MDfXsgS+eiNPDT+Qn/CO9yI3wyQqB0m7s2annHkgLT4mDcIx\r\nF2G5fuiRpFG/IVNJwqqQ6J/lBE+NYTnn11RAQu6vVEPNLsq0X9Rb7gICEWVQ\r\nbSR0wpfeztJmCnttdf0Kmihwa7E0QubeCihHo5VapC3Aem2T9SI+5kC4+7nx\r\nFuJ8HIQpp8J8G45UoxV8kxkvEnuRrGWIktaIPFNMtwu1FBBI2mrD0+IYgNbm\r\nVJT4V9JreF+6KoiNHxkdEY18jYDxvxDmtHZ8nt6C44Z5IPIZicPo8c8xtzQo\r\nvCIOlygqHeJ6EbGqt1fPNje78fbWyxwzgnB3otFZD1XrnZjREcTvKv62kUU+\r\namD4eueooEySCXONShkQnxklAikWxkQnfjc=\r\n=N5Mr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.5_1657157788837_0.24683577387519473"},"_hasShrinkwrap":false},"1.7.6-alpha.0":{"name":"hand-polard","version":"1.7.6-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"e4afdd61c653dc67a140e35c6f015dfba5d52867","description":"## Getting Started","_id":"hand-polard@1.7.6-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-pvo7ezRxLaT5O16aKW+FjEhqILaCc/EmxHnplGBfXUzrkkXEKv11yDc8LrWc/nMAoxuM5YyTTc/PBZvqYczMWA==","shasum":"a1e2b7103619c526456d8fcea4bbb7500acd3953","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.6-alpha.0.tgz","fileCount":89,"unpackedSize":3991363,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID+TjPI9nV0HRYi/WUnlKRoEh7bz4GWf+ThEMSuEMS1pAiEA5l5FR+/uIuzst+6vNekdHXcXljRdS/83uv4iu3Y5Mok="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizi8IACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpakQ//fUAK2kSc3pCtEwCFzIaXJn3Zg7ul3rcXlISh2OOSCu4RUXWW\r\noMvQ5l0R1ci33pRK2BAudv04UkSQvHAP04UH/EUdqIrR4Wile9KS6esiZXVU\r\n0BHSXbxemwIEXLaWs40+NsMH8iwmSCcfBWli2JN9UinnDYV1HyM/L6l6BvVl\r\nJV9A3k0cjKG9/nrQEHrXGVq7Jlyj5O7VcqBJnppSVjPnO2SMYSykCHYdkyNd\r\nsH9WtbC1QrwjQHmYAH72tHbmNJMwe4vglxKD8npI+nyBoQbN2oHqLJcKT0JH\r\nXyEW9Byw1Wurpzw/kTZokLMH5gUwmuWvn6D/wrbDrx0aA/zDzv15raTNJbEs\r\n41Vwi31hz6yO22fd/6W2QptVv7EJpm2uLgJ8L5M84NPOoNrKrclxNXQKXCnW\r\ngzrTjcxNQVqHDbewQ2/Zwi0AKRgl1Dg7W5f3JrN2yij6NrrRPvOt0WDeEr9F\r\n5VH/JDw+IAGkmvW2yvNJKOPjib+1Uvs08Yfy4RHk9A2bfpUx3tE5guP9A/wb\r\nq5/DHcr2ke3MPRwHWQevwEqaUD4zEcyP4yJIqeYO7o/TAc5QKTqytFW3plT9\r\ndl7rPQDOxFgmYNTucbAKb3+gXIxfyRi/Mh6RV69m3aJr1g4c0HzQVd/QOw9R\r\nWXMo3VJGxid7OZQKF7z+FBZy/gvNxc9S+/w=\r\n=Y759\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.6-alpha.0_1657679624413_0.24183434258122194"},"_hasShrinkwrap":false},"1.7.6":{"name":"hand-polard","version":"1.7.6","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"9037b9719676e9e3b4896e049aeb907dc21c2959","description":"## Getting Started","_id":"hand-polard@1.7.6","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-2gos7PElWSsx3rwGZXn9d4ksAGdkkZMJziq0lk/xaq3hZFsKo/JXdOp3ORhWPLjP+kByYPX9XIpW4zln/3cMWw==","shasum":"d2b54092f795c1fefdebf9c98a5341d7648619f2","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.6.tgz","fileCount":89,"unpackedSize":3867221,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFo70IVlU8s20sSTUD4rkkAfH3F7dIzz9YXThFM1GqXJAiA/SwAqwIaDinLZizs8btM+e9IyvLGz+SjKG+QDTH4Bcg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizkM4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrXeQ//bVOhklXGbJV+txUTL6y+w+acdYx35mJlFhBELVg8GRmoi5m/\r\n2ZeyN/W1dKQylHZfeZHdt9nFccoDoPH5yNu/W0rmUTKpyjhYqpQo1rBytInN\r\nJxo4vWN6GF8x8e7iFnBQh8ZWFxj+2yUN0OFN9juBOcxpesk8Ck9gyCzXIyUy\r\nhV/STqkIHG0MM8K98e0TzOTvz53yDZHM2vnalrQqp3KuaUnyS9AHDQz0pavx\r\nkwZ4vw8K7nRmdWbF0vpiENFIdSvq5x+ZzDVOTLKu5RE2kWfiO5iq5vosfpTw\r\n+emZo/CwUmAASEgmY62fPSEUbE8wMnhn0XhbapfE7sBp5uHKTdJdCsMj8vWp\r\njgF6prQE+sek9Z+kfvEFMHSLw5x+ncikyY3P+bRzZegmJVPQL5wIfY52oY4d\r\nHEdxwkiIgGC/T3eQDHQECg9/nrhwDg76QbHXGCtJOfTmqciS/7IBVF89hSBo\r\ngeVIA4O+SXhClU8JxiPsX1mLgxUmyoeqfUcMUPdWS6jSzjPMwCH3Bzj8AV4r\r\n9oPK5VRWF5gPQvJxFN1rDt3MTVFYWcNJVhXU6Oh5umOxialDGIUiTdgRZtNE\r\n9mw/TRNcerWc5BAfGyLTPIE5j1ikbvp57zGmVjuKRg4XRjrKEM1oSazWi+Rv\r\nDtfO8NGfztmnsUMkX2iyYcOhk62ktVeUzFo=\r\n=BeOk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.6_1657684791955_0.13452432029681338"},"_hasShrinkwrap":false},"1.7.7-alpha.0":{"name":"hand-polard","version":"1.7.7-alpha.0","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md","gitHead":"2218360d1219665e6e4bcaa96be583fa751d93c5","description":"## Getting Started","_id":"hand-polard@1.7.7-alpha.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-2ijKWlGdjVVuVW6A1syhfvC53OMuCQXtV/U4JcsEAUQSlsYT0VKZQzXtdvxTehnS20j80xs0AvSc54U789TddA==","shasum":"cbd601a1b66e7ad009ca7af08c710ce2498b9dc0","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.7-alpha.0.tgz","fileCount":89,"unpackedSize":3995968,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFgupc8v9xvM2EsSaDrfg0shsIBB2WMcF2Iun5g1NWdgIhANsjj7j+FeliWjflXCwsiFNp/RSaXMrQwKtqk6CyLRGt"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0NzkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpvsQ//WCHbkszFQHZzz+dfuBlSMjHbqoeC90MZjeE8fHMt+6Em5sDN\r\ng9lKzjx9qejx0rNpmhzqg33UCE5MDOLH2LE6/C6ijoiwjEsJn4/lxmZN4xop\r\nPdspCOClIu2xycXcdH5JHD8Ykv8H+tRzcMTFMAfn8s+ViuMjnPETxF9hjSlM\r\ngwj/nJLxM5nvTgzlVMw5p8dh59psfINQn7bMbTjNlfJXN0AOMe7LKo7ZTIZ8\r\n6wFIuskl0Lf5bDmeynrGAoNm3xAGkTX+w36E75j9umtmytyTsVb9FEDzrOiO\r\nyw8EdG4MeUdosfAErCcdMBf5EEzOcFApZDI02zH5rfjMedabA2icoIsvhdGV\r\n3d9wmI16uvOEa3M1IsdpkWXCy+kJ0eTlZvPFBzTs829AynfTOuk5Q5EeEdtI\r\nqmzhWvhHuo0EKmVKuf4xIodk8SrBlUEIisy4VqkWgB6IhXh0WatrHA0KJdPO\r\nkkLNDB5BcgeZfI2mySmHAYSX6OcVF8fClidTX2Xyv1Pjme9x8HFh2NU5E92r\r\nsaUH2k42ntda69Qjn4E7eU2lhoiKsbHsyjsQ7A01lEoyDkAVawLSBI7K8owB\r\nEtJeXCNJ0CfeYVysvPsqb4uEOZVcn4DrN/sQ9CqdITS4cW+pPsV7Q2aSYyd5\r\nr2VyvN7IzJfXtsh/JjIWMLTQNtVklFxJDlw=\r\n=niVd\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.7-alpha.0_1657855204461_0.868456296032386"},"_hasShrinkwrap":false},"1.7.7":{"name":"hand-polard","version":"1.7.7","scripts":{"start":"cross-env ENV_TYPE=native dumi dev","docs:build":"cross-env ENV_TYPE=native dumi build","docs:deploy":"gh-pages -d docs-dist","build":"cross-env NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 father-build","deploy":"npm run docs:build && npm run docs:deploy","release":"npm run build && npx standard-version && npm publish","release-alpha":"npm run build && npx standard-version -p alpha && npm publish --tag=alpha","release-beta":"npm run build && npx standard-version -p beta && npm publish --tag=beta","prettier":"prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"","test":"umi-test","test:coverage":"umi-test --coverage"},"main":"dist/index.js","module":"dist/index.esm.js","typings":"dist/index.d.ts","gitHooks":{"pre-commit":"lint-staged"},"lint-staged":{"*.{js,jsx,less,md,json}":["prettier --write"],"*.ts?(x)":["prettier --parser=typescript --write"]},"dependencies":{"@ant-design/create-react-context":"^0.2.5","@ant-design/pro-layout":"^6.5.0","@antv/g6":"^3.6.0","@types/node":"^16.10.1","@types/qs":"^6.9.7","ahooks":"^2.10.0","antd":"^4.19.2","axios":"^0.21.4","babel-plugin-import":"^1.13.3","babel-runtime":"^6.26.0","bignumber.js":"^9.0.1","classnames":"^2.3.1","enquire-js":"^0.2.1","file-saver":"^2.0.5","less":"^3.13.1","lodash":"^4.17.21","qs":"^6.10.1","rc-queue-anim":"^2.0.0","rc-scroll-anim":"^2.7.6","rc-tween-one":"^2.7.3","react":"^17.0.0","react-copy-to-clipboard":"^5.0.3","react-dnd":"^11.1.3","react-dnd-html5-backend":"^11.1.3","react-dom":"^17.0.0","react-resizable":"^3.0.4","react-rnd":"^10.3.5","rmc-feedback":"^2.0.0","slash2":"^2.0.0","supports-color":"^9.0.2"},"devDependencies":{"@umijs/test":"^3.0.5","cross-env":"^7.0.3","dumi":"^1.0.16","father-build":"^1.17.2","gh-pages":"^3.0.0","lint-staged":"^10.0.7","prettier":"^2.2.1","typescript":"^4.1.0","umi":"^3.5.20","yorkie":"^2.0.0"},"sideEffects":false,"gitHead":"09752231b2b2beea5e95b0d7c02ad4ea1c41e002","description":"## Getting Started","_id":"hand-polard@1.7.7","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-b6NtjksSuFVzfFXncM9KbPtHEzJGirR5zjsXxdTLsf1gxbsPooKOIFILFLsuHUq+wYxSjiD4B7SgKgvGu2+1NQ==","shasum":"15ffb955c8e0ed6f8d9633100b217d4a05c4711b","tarball":"https://registry.npmjs.org/hand-polard/-/hand-polard-1.7.7.tgz","fileCount":89,"unpackedSize":3867730,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcA/5JLAokQfXmRrTtW6qgqOYiLZBsuJO2+wPheDHsAwIhAMKjKo/TyrRt8yghhbmEXw+I2Zrq16PIMk6MqEHmY+td"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0N/HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLOQ//f2SeXTuOp5sweJ5DFnlZnzCnAC3N1BB7SFKuxmyhKmdkXM5L\r\nzrMMJ7YGpGjJqiNnuWe77iXv5OMv2oUUA+p+qo+7YQr7VTDyoNeLSOBp/K1X\r\nucqLg77p3/7BSIUsFVb/MqGzWBLqC+uWzYAvjupgSa/w0REckqht1gcpMqrP\r\nSmxz2Lo4Z0vG48TFlpbICQVDprAZrMitKSp+LDtgVvEgPoLcifoHlb228ugv\r\notIjLnVYqD7yOItgvTLqDbekfhVIJpJDtOjEMOkLtAMjp+VvJLG9jwU8nJoO\r\n0iHBspVxXwlCtEdWZU0JGzzkDwigDSzR8S4QBHuF0yFbpptg3qW4fxOyLcv/\r\n36p8Tlm/CrW9r6c3Cal7y6yAnsbzWcxelPBrcMzlN4fpD+8u+NFT0cQHJ7mk\r\nSNRMKhxHWMXgSKiKo87deob7Nx4Xa58X3ToFZuEqdhiLZTEu/YcJZ4oZ5aZ6\r\nPpk6IV3GPUASTlesTQ1TAIJYQDzbDr/hKTRAl+Debn7PM5YWjO7A7XtmduFO\r\nXIk6VLsgFORuDvdUKqEMWo11tgcB3nSp3o5NgAsYvlnkLKEbSO9TR/EO1bUA\r\ndH5ZFOStPzORJbC+Iy5hFiE5BDJLkKf/bwLzRrSwS+i+G7oG0iM7UzqP2vBh\r\n3ZKr6rbW0wby092ygC17qyf6bW2Gjru4N1w=\r\n=Z+Jf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"},"directories":{},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hand-polard_1.7.7_1657855942901_0.5306584180136473"},"_hasShrinkwrap":false}},"time":{"created":"2021-12-27T07:10:43.411Z","1.5.0-alpha.0":"2021-12-27T07:10:43.624Z","modified":"2022-07-15T03:32:23.381Z","1.5.1-alpha.0":"2021-12-28T06:03:56.602Z","1.5.1-alpha.1":"2021-12-28T06:47:58.661Z","1.5.1-beta.0":"2021-12-28T09:41:39.545Z","1.5.1-alpha.2":"2021-12-29T04:55:55.951Z","1.5.1-alpha.3":"2021-12-31T02:22:54.872Z","1.5.1-alpha.4":"2021-12-31T07:00:43.643Z","1.5.1-alpha.5":"2021-12-31T07:17:34.552Z","1.5.1-alpha.6":"2021-12-31T08:24:33.946Z","1.5.1-alpha.7":"2022-01-04T09:54:45.824Z","1.5.1-beta.1":"2022-01-04T09:58:03.420Z","1.5.1-alpha.8":"2022-01-05T07:43:41.306Z","1.5.1-beta.2":"2022-01-05T09:14:06.148Z","1.5.1-alpha.9":"2022-01-05T09:19:06.634Z","1.5.1-alpha.10":"2022-01-06T02:53:51.191Z","1.5.1-alpha.11":"2022-01-06T04:37:51.396Z","1.5.1-beta.3":"2022-01-06T06:31:15.569Z","1.5.1":"2022-01-06T06:33:20.562Z","1.5.1-alpha.12":"2022-01-07T03:25:27.426Z","1.5.2-alpha.0":"2022-01-07T06:40:34.644Z","1.5.2-alpha.1":"2022-01-07T09:45:33.327Z","1.5.2-beta.0":"2022-01-10T06:44:20.163Z","1.5.2-alpha.2":"2022-01-11T06:44:50.809Z","1.5.2-alpha.3":"2022-01-11T09:11:55.712Z","1.5.2-alpha.4":"2022-01-12T04:03:08.589Z","1.5.2":"2022-01-12T07:16:10.298Z","1.5.2-beta.1":"2022-01-12T07:26:11.627Z","1.5.3":"2022-01-12T07:35:32.470Z","1.5.4-alpha.0":"2022-01-13T10:12:32.359Z","1.5.4-alpha.1":"2022-01-13T10:49:27.224Z","1.5.4-alpha.2":"2022-01-14T01:45:47.877Z","1.5.4-beta.0":"2022-01-14T09:45:45.138Z","1.5.4-alpha.3":"2022-01-18T06:45:36.626Z","1.5.4":"2022-01-19T01:29:53.051Z","1.5.5-alpha.0":"2022-01-20T09:19:28.148Z","1.5.5-alpha.1":"2022-01-21T09:13:43.333Z","1.5.5-alpha.2":"2022-01-24T07:30:52.064Z","1.5.5-alpha.3":"2022-01-24T08:30:04.623Z","1.5.5-alpha.4":"2022-01-25T09:54:35.380Z","1.5.4-beta.1":"2022-01-25T10:02:51.466Z","1.5.5-alpha.5":"2022-01-26T02:32:00.051Z","1.5.5-alpha.6":"2022-01-26T07:26:42.507Z","1.5.6":"2022-01-26T09:28:22.116Z","1.5.5-alpha.7":"2022-01-28T03:49:19.245Z","1.5.7-alpha.0":"2022-02-14T10:00:05.590Z","1.5.7-alpha.1":"2022-02-15T06:23:42.422Z","1.5.7-alpha.2":"2022-02-15T07:14:14.905Z","1.5.7-alpha.3":"2022-02-15T08:03:38.672Z","1.5.7-alpha.4":"2022-02-15T08:44:45.575Z","1.5.7-alpha.5":"2022-02-15T09:18:21.888Z","1.5.7-alpha.6":"2022-02-16T09:15:03.306Z","1.5.7-alpha.7":"2022-02-17T06:14:52.888Z","1.5.7-beta.0":"2022-02-17T07:33:15.505Z","1.5.7":"2022-02-17T07:35:21.048Z","1.5.8-alpha.0":"2022-02-17T09:37:45.121Z","1.5.8-beta.0":"2022-02-18T02:03:08.789Z","1.5.8-beta.1":"2022-02-18T08:07:46.971Z","1.5.8-alpha.1":"2022-02-18T09:20:11.483Z","1.5.8":"2022-02-23T02:48:58.956Z","1.5.9-alpha.0":"2022-02-23T09:12:51.416Z","1.5.9-alpha.1":"2022-02-24T01:50:24.233Z","1.5.9-alpha.2":"2022-02-25T02:14:50.716Z","1.5.9-alpha.3":"2022-02-25T10:09:04.867Z","1.5.9-alpha.4":"2022-02-28T08:26:07.397Z","1.5.9-alpha.5":"2022-02-28T09:25:43.852Z","1.5.9-alpha.6":"2022-02-28T10:01:28.113Z","1.5.8-beta.2":"2022-02-28T10:03:30.428Z","1.5.9-alpha.7":"2022-02-28T10:09:46.093Z","1.5.9-alpha.8":"2022-03-01T01:24:40.919Z","1.5.9-alpha.9":"2022-03-01T06:19:50.952Z","1.5.9-alpha.10":"2022-03-01T07:47:48.985Z","1.5.9-alpha.11":"2022-03-01T07:53:54.075Z","1.5.9-alpha.12":"2022-03-01T10:15:13.170Z","1.5.9-alpha.13":"2022-03-02T01:16:55.365Z","1.5.9-alpha.14":"2022-03-02T02:37:35.515Z","1.5.9-alpha.15":"2022-03-02T07:23:00.414Z","1.5.9-beta.0":"2022-03-02T09:41:10.751Z","1.6.0-alpha.0":"2022-03-03T01:56:59.615Z","1.6.0-alpha.1":"2022-03-03T09:08:41.115Z","1.6.0-beta.0":"2022-03-04T09:32:33.255Z","1.6.0-alpha.2":"2022-03-04T09:39:04.846Z","1.6.0-alpha.3":"2022-03-07T03:27:22.608Z","1.6.0-alpha.4":"2022-03-07T03:46:25.938Z","1.6.0-alpha.5":"2022-03-07T07:08:52.313Z","1.6.0-alpha.7":"2022-03-07T08:54:12.016Z","1.6.0-beta.1":"2022-03-07T10:10:32.295Z","1.6.0-alpha.6":"2022-03-08T07:15:04.752Z","1.6.0-alpha.8":"2022-03-08T07:30:02.750Z","1.6.0-beta.2":"2022-03-08T10:05:59.176Z","1.6.0-beta.3":"2022-03-09T10:28:52.000Z","1.6.0":"2022-03-10T06:10:49.671Z","1.6.1-alpha.0":"2022-03-10T09:53:19.974Z","1.6.1-alpha.1":"2022-03-14T07:29:13.181Z","1.6.1-beta.0":"2022-03-15T07:09:36.862Z","1.6.1-alpha.3":"2022-03-16T02:58:33.750Z","1.6.1-alpha.5":"2022-03-16T08:49:46.176Z","1.6.1-alpha.6":"2022-03-16T09:38:10.460Z","1.6.1-alpha.7":"2022-03-16T12:23:01.203Z","1.6.1-alpha.8":"2022-03-17T01:34:36.219Z","1.6.1-alpha.9":"2022-03-17T03:41:59.839Z","1.6.1":"2022-03-17T06:18:13.554Z","1.7.0-beta.0":"2022-03-18T09:28:54.301Z","1.6.10-alpha.0":"2022-03-22T07:58:28.211Z","1.6.2":"2022-03-23T06:08:09.088Z","1.6.3-beta.0":"2022-03-23T07:21:08.660Z","1.6.3-alpha.0":"2022-03-23T08:39:50.373Z","1.6.3-alpha.1":"2022-03-24T06:50:27.102Z","1.6.3-alpha.2":"2022-03-24T08:44:45.576Z","1.6.3-alpha.3":"2022-03-24T09:37:35.023Z","1.6.3-alpha.4":"2022-03-24T09:59:36.211Z","1.6.3-alpha.5":"2022-03-24T10:27:16.888Z","1.6.3-alpha.6":"2022-03-25T01:46:56.344Z","1.6.3-alpha.7":"2022-03-25T02:29:10.438Z","1.6.3-alpha.8":"2022-03-25T06:20:14.497Z","1.6.3-alpha.9":"2022-03-25T07:16:26.234Z","1.6.3-beta.1":"2022-03-25T07:27:34.750Z","1.6.3-alpha.10":"2022-03-25T09:20:54.115Z","1.6.3-alpha.11":"2022-03-28T04:52:39.641Z","1.6.3-beta.2":"2022-03-28T10:04:45.236Z","1.6.3-alpha.12":"2022-03-29T06:54:41.733Z","1.6.3-alpha.13":"2022-03-30T03:44:24.740Z","1.6.3":"2022-03-30T06:06:25.034Z","1.6.3-alpha.14":"2022-03-30T06:06:48.379Z","1.6.3-alpha.15":"2022-03-30T08:27:38.238Z","1.6.3-alpha.16":"2022-03-31T03:37:02.309Z","1.6.3-alpha.17":"2022-03-31T03:57:46.233Z","1.6.3-alpha.18":"2022-03-31T06:07:51.092Z","1.6.3-alpha.19":"2022-03-31T07:25:18.648Z","1.6.3-alpha.20":"2022-03-31T07:41:20.732Z","1.6.3-alpha.21":"2022-03-31T07:46:33.127Z","1.6.3-alpha.22":"2022-03-31T08:01:51.688Z","1.6.3-alpha.23":"2022-03-31T08:12:00.844Z","1.6.3-alpha.24":"2022-03-31T08:30:59.409Z","1.6.3-beta.3":"2022-03-31T09:30:38.957Z","1.6.3-alpha.25":"2022-04-01T02:30:50.447Z","1.6.3-alpha.26":"2022-04-01T02:54:55.670Z","1.6.3-alpha.27":"2022-04-01T03:27:14.363Z","1.6.3-alpha.28":"2022-04-01T03:41:17.172Z","1.6.3-alpha.29":"2022-04-01T03:55:37.881Z","1.6.3-alpha.30":"2022-04-01T07:40:10.165Z","1.6.3-alpha.31":"2022-04-01T08:29:48.835Z","1.6.3-alpha.32":"2022-04-01T09:14:57.608Z","1.6.3-alpha.33":"2022-04-01T09:41:48.206Z","1.6.3-alpha.34":"2022-04-01T09:58:16.649Z","1.6.3-beta.4":"2022-04-02T07:14:44.885Z","1.6.3-alpha.35":"2022-04-06T04:48:44.918Z","1.6.3-alpha.36":"2022-04-06T06:36:22.718Z","1.6.3-beta.5":"2022-04-06T06:38:50.960Z","1.6.3-alpha.37":"2022-04-06T09:11:41.081Z","1.6.3-beta.6":"2022-04-06T09:30:03.509Z","1.6.3-beta.7":"2022-04-06T10:19:47.262Z","1.6.3-beta.8":"2022-04-07T01:08:14.117Z","1.6.3-beta.9":"2022-04-07T01:36:06.841Z","1.6.3-alpha.38":"2022-04-07T04:51:35.292Z","1.6.3-beta.10":"2022-04-07T06:26:13.393Z","1.6.4":"2022-04-07T06:31:23.359Z","1.6.5-alpha.0":"2022-04-08T02:40:29.992Z","1.6.5-alpha.1":"2022-04-08T08:45:56.164Z","1.6.5-beta.0":"2022-04-08T09:52:51.174Z","1.6.5-alpha.2":"2022-04-11T02:10:55.012Z","1.6.5-beta.1":"2022-04-11T06:52:41.257Z","1.6.5":"2022-04-11T06:56:05.718Z","1.6.5-alpha.3":"2022-04-11T07:19:33.621Z","1.6.5-alpha.4":"2022-04-11T08:08:26.426Z","1.6.6-alpha.0":"2022-04-11T08:10:32.888Z","1.6.6-alpha.1":"2022-04-11T08:33:26.686Z","1.6.6-beta.0":"2022-04-11T09:37:37.048Z","1.6.6-beta.1":"2022-04-11T09:41:59.890Z","1.6.6":"2022-04-13T07:55:48.100Z","1.6.7-alpha.0":"2022-04-14T08:32:25.648Z","1.6.7-alpha.1":"2022-04-15T01:48:26.696Z","1.6.7-alpha.2":"2022-04-15T07:36:19.964Z","1.6.7-beta.0":"2022-04-15T09:45:24.447Z","1.6.7-beta.1":"2022-04-15T09:56:21.137Z","1.6.7-alpha.3":"2022-04-18T01:31:36.253Z","1.6.7-alpha.4":"2022-04-18T11:30:14.025Z","1.6.7-beta.2":"2022-04-19T10:17:15.266Z","1.6.7-alpha.5":"2022-04-20T01:42:13.509Z","1.6.7-alpha.6":"2022-04-20T02:31:14.089Z","1.6.7-beta.3":"2022-04-20T08:22:56.211Z","1.6.7-beta.4":"2022-04-22T10:09:43.030Z","1.6.7-alpha.7":"2022-04-25T07:12:53.614Z","1.6.7-alpha.8":"2022-04-25T07:19:36.367Z","1.6.7-alpha.9":"2022-04-25T07:46:56.125Z","1.6.7":"2022-04-26T09:51:09.952Z","1.6.8-alpha.0":"2022-04-27T01:46:25.864Z","1.6.8-beta.0":"2022-04-27T08:47:03.295Z","1.6.8-alpha.1":"2022-04-28T09:13:21.119Z","1.6.8-alpha.2":"2022-04-28T09:53:35.517Z","1.6.8-beta.1":"2022-04-28T10:27:40.121Z","1.6.8-alpha.3":"2022-05-05T03:11:54.949Z","1.6.8-beta.2":"2022-05-07T10:10:50.007Z","1.6.8-alpha.4":"2022-05-09T02:35:40.949Z","1.6.8-alpha.5":"2022-05-09T03:13:30.499Z","1.6.8-alpha.6":"2022-05-09T06:54:06.227Z","1.6.8-alpha.7":"2022-05-09T08:02:36.909Z","1.6.8-alpha.8":"2022-05-09T10:08:15.836Z","1.6.8-beta.3":"2022-05-09T10:11:06.007Z","1.6.8-alpha.9":"2022-05-10T09:52:44.843Z","1.6.8-alpha.10":"2022-05-11T07:16:40.104Z","1.6.8-beta.4":"2022-05-11T10:04:39.099Z","1.6.8-beta.5":"2022-05-11T10:08:57.916Z","1.6.8":"2022-05-12T06:20:26.176Z","1.6.8-alpha.11":"2022-05-12T07:31:50.237Z","1.6.8-alpha.12":"2022-05-12T07:34:57.140Z","1.6.8-alpha.13":"2022-05-12T07:38:10.342Z","1.6.8-alpha.14":"2022-05-12T07:40:19.830Z","1.6.9-alpha.0":"2022-05-16T02:24:32.175Z","1.5.7-beta.1":"2022-05-16T06:20:53.426Z","1.6.9-alpha.1":"2022-05-17T02:56:16.884Z","1.6.9-beta.0":"2022-05-17T08:57:04.902Z","1.6.9-alpha.2":"2022-05-18T01:45:58.258Z","1.6.9-alpha.3":"2022-05-18T03:41:08.578Z","1.6.9":"2022-05-18T07:16:21.007Z","1.6.9-beta.1":"2022-05-18T10:54:08.208Z","1.6.9-alpha.4":"2022-05-19T04:36:27.212Z","1.6.9-beta.2":"2022-05-19T05:41:31.356Z","1.7.0-alpha.1":"2022-05-20T01:21:05.582Z","1.7.0-alpha.2":"2022-05-20T06:10:35.031Z","1.7.0-alpha.3":"2022-05-20T06:20:46.301Z","1.7.0-beta.1":"2022-05-23T05:20:50.116Z","1.7.0-beta.2":"2022-05-23T06:59:15.781Z","1.7.0-alpha.4":"2022-05-24T09:42:36.934Z","1.6.11":"2022-05-25T02:06:56.123Z","1.7.0":"2022-05-25T02:18:45.433Z","1.7.1-alpha.0":"2022-05-26T00:51:38.942Z","1.7.1-alpha.1":"2022-05-26T08:31:34.856Z","1.7.0-beta.3":"2022-05-26T10:05:52.735Z","1.7.0-beta.4":"2022-05-27T07:16:25.966Z","1.7.0-beta.5":"2022-05-27T07:18:47.529Z","1.7.1-alpha.2":"2022-05-27T08:53:30.972Z","1.7.1-alpha.3":"2022-05-30T01:31:39.150Z","1.7.1-alpha.4":"2022-06-06T06:47:42.008Z","1.7.1-alpha.5":"2022-06-06T06:50:00.697Z","1.7.1-alpha.6":"2022-06-06T07:55:24.329Z","1.7.1-alpha.7":"2022-06-07T02:11:03.110Z","1.7.0-beta.6":"2022-06-07T09:00:03.376Z","1.7.1-alpha.8":"2022-06-08T03:51:49.653Z","1.7.1-alpha.9":"2022-06-08T08:38:46.410Z","1.7.0-alpha.0":"2022-06-08T09:12:09.741Z","1.7.0-beta.7":"2022-06-08T09:29:22.669Z","1.7.0-beta.8":"2022-06-08T09:45:43.539Z","1.5.7-beta.2":"2022-06-09T02:44:42.558Z","1.7.1":"2022-06-09T07:12:18.478Z","1.7.2-alpha.0":"2022-06-09T09:56:27.045Z","1.7.2-alpha.1":"2022-06-10T01:29:39.522Z","1.7.2-alpha.2":"2022-06-10T03:56:47.005Z","1.7.2-alpha.3":"2022-06-10T06:28:51.944Z","1.5.7-beta.3":"2022-06-10T08:12:18.425Z","1.5.7-beta.4":"2022-06-10T09:07:36.450Z","1.7.2-alpha.4":"2022-06-13T10:27:26.415Z","1.7.2-alpha.5":"2022-06-14T01:36:43.776Z","1.5.3-alpha.0":"2022-06-14T06:26:53.694Z","1.5.3-beta.0":"2022-06-14T06:33:29.788Z","1.7.2-alpha.6":"2022-06-14T07:16:40.070Z","1.7.2-alpha.7":"2022-06-14T07:26:31.842Z","1.7.2-beta.0":"2022-06-14T09:48:48.305Z","1.7.2-alpha.8":"2022-06-15T08:24:47.889Z","1.7.2":"2022-06-15T08:57:49.956Z","1.7.2-beta.1":"2022-06-15T10:14:30.820Z","1.7.3":"2022-06-16T06:13:00.951Z","1.7.4-alpha.0":"2022-06-17T08:17:26.951Z","1.7.4-alpha.1":"2022-06-17T09:26:38.928Z","1.7.4-alpha.2":"2022-06-17T11:01:27.166Z","1.7.4-beta.0":"2022-06-20T03:34:47.551Z","1.7.4":"2022-06-21T01:51:13.263Z","1.7.4-alpha.3":"2022-06-21T07:06:51.309Z","1.7.4-alpha.4":"2022-06-22T08:28:09.123Z","1.7.5-dj.0":"2022-06-22T10:33:32.171Z","1.7.5-dj.1":"2022-06-22T13:02:12.258Z","1.7.5-dj.2":"2022-06-22T13:50:55.505Z","1.7.4-alpha.5":"2022-06-23T07:48:33.094Z","1.7.4-beta.1":"2022-06-23T08:50:24.031Z","1.7.5-alpha.0":"2022-06-29T01:37:47.120Z","1.7.5-beta.0":"2022-06-29T03:17:58.569Z","1.7.5":"2022-07-07T01:36:29.167Z","1.7.6-alpha.0":"2022-07-13T02:33:44.712Z","1.7.6":"2022-07-13T03:59:52.350Z","1.7.7-alpha.0":"2022-07-15T03:20:04.765Z","1.7.7":"2022-07-15T03:32:23.306Z"},"maintainers":[{"name":"hand-rongjing","email":"product-rongjing@vip.hand-china.com"}],"description":"## Getting Started","readme":"# hand-polard\n\n## Getting Started\n\nInstall dependencies,\n\n```bash\n$ npm i\n```\n\nStart the dev server,\n\n```bash\n$ npm start\n```\n\nBuild documentation,\n\n```bash\n$ npm run docs:build\n```\n\nBuild hand-polard via `father-build`,\n\n```bash\n$ npm run build\n```\n\n## 本地开发步骤\n\n1. src/components 根据分类创建存放组件的文件夹 A\n2. 文件 A 中需至少有 index.ts/index.js , index.md\n3. md 格式：\n\n```markdown\n---\nnav:\n  title: 组件\ngroup:\n  title: 基础 (组件分类：基础，表单，附件，业务组件，其他，可自行归类或补充)\n  path: /basic\n---\n\n## 组件名\n\n## 代码演示\n\n## API\n```\n\n4. src/index.ts 导出上方自定义组件\n5. src/locale-language/zh-CN.ts, en-US.ts 维护多语言\n\n## 本地开发注意事项\n\n1. 本地 node 版本建议使用 v12.0.0 （个人使用的是 v14.16.0）以上，否则安装依赖时，dumi 内部无法兼容，导致项目启动报错\n2. 组件内部如果需要使用 redux，建议使用 `window?.g_app?._store`\n   > - 由于组件库的建立后行于项目，组件库内部用到的 dispatch 的相关 models 文件夹暂时只能使用项目中，如果组件库内部自行引入 react-redux 实现，恐项目用到了组件库的 models 文件，导致访问路径发生改变；反之则与项目耦合度过高\n   > - 目前只有 lov 组件，search-area，custom-table（后二者共用一个）会用到\n   > - dispatch 在这三个组件内的作用，仅实现数据的缓存，用于优化，不影响主体功能的使用\n\n```js\n// 全局入口\nimport { getDvaApp } from 'umi';\nwindow.g_app = getDvaApp();\n\n// 某js文件\nconst { dispatch, getState } = window?.g_app?._store;\n```\n\n或者\n\n```js\n// 某js文件\nimport { getDvaApp } from 'umi';\nconst { dispatch, getState } = getDvaApp()._store;\n```\n\n1. 涉及到 form 组件，一律改用 antd 4.x 中的 form，`Form.create()(component)`改为`WrappedForm(component)`[path: \"components/wrapped-form\"]\n\n```js\nexport default WrappedForm(WrappedSearchArea);\n```\n\n4. 涉及到 connect 组件的使用，改用`WrapperConnect`[path: \"components/custom-connect\"]\n\n```js\nexport default WrapperConnect(mapStateToProps)(CompatibleLov);\n```\n\n## 打包，发布\n\n- 修改`.fatherrc.ts`文件中的`cjs,esm`\n- 默认`rollup`打包模式，生成`dist`文件夹，该模式下体积小，但是 es6 语法\n- 修改为`babel`模式时，会生成`lib`,`es`文件夹，该模式下体积大，同时需要修改`package.json`文件\n  修改如下：\n\n```js\n{\n  \"main\": \"lib/index.js\",\n  \"module\": \"lib/index.js\",\n  \"typings\": \"lib/index.d.ts\",\n  \"sideEffect\": false\n}\n// (改成这个貌似能实现一个假的按需加载，个人测试宿主项目中如果在babelrc中配置，经过依赖分析，也只是单独引用了某个组件)\n{\n  \"main\": \"es/index.js\",\n  \"module\": \"es/index.js\",\n  \"typings\": \"es/index.d.ts\",\n  \"sideEffect\": false\n}\n```\n\n且该模式下后续需要考虑做按需加载\n\n记录踩坑：\nbabel 模式下打包，如果 tsx 文件中引入了.png 等，打包报错找不到图片，此时\n\n1. 方案一，将该 tsx 文件改为 js 文件\n2. 入口文件将 typings.d.ts 导入\n\n```js\n/// <reference path=\"../typings.d.ts\" />\n```\n\n- 发布命令\n\n```bash\n$ npm run release\n```\n\n## 后续计划\n\n1. 部分组件重构，减少代码量\n2. 研究组件按需加载\n3. 研究将组件打成一个压缩后的 js 文件\n\n## 多语言\n\n提供 LocaleProvider 组件，于项目入口出，调用该组件包裹子组件，并传入 locale 参数\n如下是 antd 多语言与 hand-polard 多语言共有场景：\n\n```tsx\n// locale: {\n//   locale: \"zh_cn\",\n//   localeMap: {\n//     zh_cn: {\"common.key\": \"键\",...},\n//     en_us: {},\n//   },\n// }\n//  组件库内部暂时仅支持zh_cn,en_us, 如项目有需求增加其他语言，可自行配置，并传入即可，localeMap同名配置以外界传入为主\n<ConfigProvider locale={localeInfo[locale] || zhCN}>\n  <IntlProvider onError={() => { }} locale={langTypes[locale]} messages={messages}>\n    <InjectedWrapper>\n      <LocaleProvider locale={{locale,localeMap}}>\n        {basicLayout}\n      </InjectedWrapper>\n  </IntlProvider>\n</ConfigProvider>\n```\n\n## 组件文档发布\n\n```bash\n$ npm run docs:build\n$ docker build -t registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日] .\n$ docker push registry.cn-hangzhou.aliyuncs.com/ecf/polard-web:[年月日]\n```\n","readmeFilename":"README.md"}