{"_id":"@1024-fontend-group/el-form-renderer","_rev":"1-438da164b87fa8a709867f52e08058cb","name":"@1024-fontend-group/el-form-renderer","dist-tags":{"latest":"1.5.5"},"versions":{"1.5.5":{"name":"@1024-fontend-group/el-form-renderer","version":"1.5.5","description":"render form-item easily","author":{"name":"leezng","email":"leezng@outlook.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/1024-fontend-group/el-form-renderer.git"},"contributors":[{"name":"https://github.com/1024-fontend-grou"}],"keywords":["vue","element","render","form","component"],"main":"dist/el-form-renderer.umd.js","module":"dist/el-form-renderer.esm.js","unpkg":"dist/el-form-renderer.min.js","browser":{"./sfc":"src/el-form-renderer.vue"},"scripts":{"dev":"vue-styleguidist server","doc":"vue-styleguidist build","build":"npm run build:unpkg & npm run build:es & npm run build:umd & npm run doc","build:umd":"rollup --config build/rollup.config.js --format umd --file dist/el-form-renderer.umd.js","build:es":"rollup --config build/rollup.config.js --format es --file dist/el-form-renderer.esm.js","build:unpkg":"rollup --config build/rollup.config.js --format iife --file dist/el-form-renderer.min.js","precommit":"pretty-quick --staged","stdver":"standard-version -m '[skip ci] chore(release): v%s'","release":"gren release --override"},"homepage":"https://github.com/1024-fontend-group/el-form-renderer","devDependencies":{"@babel/core":"^7.4.3","@babel/plugin-transform-runtime":"^7.4.3","@babel/preset-env":"^7.4.3","@femessage/upload-to-ali":"^1.4.0","babel-loader":"^8.0.5","element-ui":"^2.7.2","file-loader":"^3.0.1","glob":"^7.1.3","husky":"^0.14.3","minimist":"^1.2.0","prettier":"1.12.1","pretty-quick":"^1.4.1","rollup":"^1.9.0","rollup-plugin-babel":"^4.3.2","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-terser":"^4.0.4","rollup-plugin-vue":"^4.7.2","stylus":"^0.54.5","stylus-loader":"^3.0.2","vue":"^2.5.16","vue-loader":"^15.7.0","vue-styleguidist":"3.11.4","vue-template-compiler":"^2.5.16","webpack":"^4.29.6","github-release-notes":"^0.17.0","standard-version":"^6.0.1"},"publishConfig":{"access":"public"},"engines":{"node":">= 4.0.0","npm":">= 3.0.0"},"vue-sfc-cli":"1.9.0","browserslist":["> 1%","last 2 versions","not ie <= 8"],"dependencies":{"lodash.get":"^4.4.2","lodash.set":"^4.3.2"},"gitHead":"485a36a5d7b5dfa13d2788f343cf929b1f7a5262","bugs":{"url":"https://github.com/1024-fontend-group/el-form-renderer/issues"},"_id":"@1024-fontend-group/el-form-renderer@1.5.5","_nodeVersion":"10.15.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-oS4O/nV4ujXBt0X8IfYl0vqV40j+tHHElLnQjvg9sWoT9aRT3zBJnIs84l/Ip0etcTL3P8XEciE4cxuzSUeduA==","shasum":"237155ca065918380d1db1113945ca3e1b5e766e","tarball":"https://registry.npmjs.org/@1024-fontend-group/el-form-renderer/-/el-form-renderer-1.5.5.tgz","fileCount":13,"unpackedSize":387992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc/yZCCRA9TVsSAnZWagAAVuIQAKPCFNyOleGgSMCMtsmD\nOUx8HaxMdfzZ4raSjZzh2qY0q3j67T38C+XN8s14gMbknXryCoayq+POemZ2\n0889H9bJ+7Dx2bBrJCinwM++nik+Io/CMbaHQEiOkTzDZipx2jU4JRXX253l\ndpAS9OkM5xKuMIwmOAYyZEzrLjWUFxPug8995g6nvAiE8r5IDZ5tN6mKBKrx\n2EJAhZICH73HsZ+8ZXW+DByAAIzMQWFITOMxvttkjp8ymcvALC7Zy1m4IdrD\nnZtWDgKYsf8QEX7WMA7UXXMb0Fx6NQMAfcBJ9RP+KNfSjD3pncrspI+2jyaS\nimFF6wXMeHfCn9qYkJNZ/3PHWIQOU7akOTzdciOdECODLtluK1VZCBaW6kW7\nGzWovRGDYaoEbQVIyNem3E1VQ2rUROmvIYixO232c8IRQ3KOZsea8hbmoZ06\nw7887G0/6I3xiGKb2qbFP81GKKQd6Nis0I3DDEAwt7J0syOSj5rqDty9Q31S\nOWNFliDAd88BMtc7ExPLI+dBidjDLoJMPxmmHqSZwuCU5QZNGv4yRPmnBSUh\nW+vwZ3+14wl8iHyk7EzvlpqGFE0G+g2Sw2QDrqDOPYS83P55nDDxGRntcjcF\nvjons16pmgSzfsQvEMeFWuhv34qOKHhxPudRUk68nAPH7cxf7VPuCwgzqF+a\n6ZNy\r\n=5zvK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqyYgl46D64FJcC/fo6zHtg7RI3Wli7qw7xM1SBLo9RgIhAJcR7I0ytxThFcMTq4VzdJW232YbL21Sj+YyhjNYTrNV"}]},"maintainers":[{"name":"cjfff","email":"cjfff1996@gmail.com"}],"_npmUser":{"name":"cjfff","email":"cjfff1996@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/el-form-renderer_1.5.5_1560225345396_0.708151936637734"},"_hasShrinkwrap":false}},"time":{"created":"2019-06-11T03:55:45.191Z","1.5.5":"2019-06-11T03:55:45.505Z","modified":"2022-04-04T10:30:11.557Z"},"maintainers":[{"name":"cjfff","email":"cjfff1996@gmail.com"}],"description":"render form-item easily","homepage":"https://github.com/1024-fontend-group/el-form-renderer","keywords":["vue","element","render","form","component"],"repository":{"type":"git","url":"git+https://github.com/1024-fontend-group/el-form-renderer.git"},"contributors":[{"name":"https://github.com/1024-fontend-grou"}],"author":{"name":"leezng","email":"leezng@outlook.com"},"bugs":{"url":"https://github.com/1024-fontend-group/el-form-renderer/issues"},"license":"MIT","readme":"# el-form-renderer\r\n\r\nForm renderer is based on [element-ui](https://github.com/ElemeFE/element). It inherits all of the element's attribute definitions completely and extends them briefly. So users can render a complete element form by using a piece of preset data. \r\n\r\n- [Demo](https://leezng.github.io/el-form-renderer/)\r\n- [中文文档](./README.md)\r\n\r\n## Quick start\r\n\r\n```html\r\n// Step1: Make sure you have properly installed element-ui and used it correctly.\r\n\r\n// Step2: Install\r\nyarn add el-form-renderer\r\n\r\n// Step3: In the .vue file that needs the renderer\r\n<template>\r\n  <el-form-renderer :content=\"content\"></el-form-renderer>\r\n</template>\r\n\r\n<script>\r\nimport ElFormRenderer from 'el-form-renderer'\r\n\r\nexport default {\r\n  components: {\r\n    ElFormRenderer\r\n  }\r\n}\r\n</script>\r\n```\r\n\r\n## Props\r\n\r\n* Support all attributes on [el-form](http://element.eleme.io/#/en-US/component/form).\r\n\r\n* `disabled` [Boolean] Set `true` to disable all atomic forms. If the `element-ui` version is still below `2.1.0`, it is still compatible.\r\n\r\n* `content` [ObjectArray] Define the contents of the form, each `Object` represents an atomic form (such as `el-input, el-select, ...`), All attributes on the `el-form-item` are declared here, and attributes on the `el-input` etc. are declared on the `$el` attribute. There are other attributes on the Object such as: `$id, $type, $default，$enableWhen[optional], $options[optional], $attrs[optional]`.\r\n\r\n```js\r\n// content example\r\n[\r\n  {\r\n    $id: \"form1\", // Each atomic form uses an id to store its value, be careful not to repeat\r\n    $type: \"input\", // Type, all the form types provided by element, like el-xxx\r\n    $enableWhen: { form2: 'beijing' }, // Optional attribute, which means that the this atomic form will display when form2's value is beijing\r\n    $attrs: { 'data-name': 'form1' }, // Optional attribute, wording follows the Render function specification of Vue\r\n    label: \"Input\", // A property on the el-form-item\r\n    $default: \"default value\",\r\n    rules: [{ required: true, message: 'Please enter the name of the activity name', trigger: 'blur' }] // A property on the el-form-item\r\n  }, {\r\n    $id: \"form2\",\r\n    $type: \"select\",\r\n    label: \"Select\",\r\n    // $el: Used to define the properties of a specific atomic form (el-select in this case)\r\n    $el: {\r\n      placeholder: \"Please select your zone\"\r\n    },\r\n    // $options: Each atomic form with Selection Capabilities use this to define options. (such as: select, radio-group, radio-button, checkbox-group, checkbox-button, etc.)\r\n    $options: [{\r\n      label: 'Zone one',\r\n      value: 'shanghai'\r\n    }, {\r\n      label: 'Zone two',\r\n      value: 'beijing'\r\n    }]\r\n  }\r\n]\r\n```\r\n\r\nIn addition, we added an optional value to the `$type` attribute: `group`, which can be used to create more complex data types:\r\n\r\n```js\r\n// This example will get the object data structure:\r\n// group1: {\r\n//   input1: '',\r\n//   input2: ''\r\n// }\r\n{\r\n  $id: \"group1\", // Follow the principle of the same level of ID is not repeated, essentially equivalent to the object's key\r\n  $type: \"group\",\r\n  label: \"object data example\",\r\n  $items: [{\r\n    $id: \"input1\",\r\n    $type: \"input\",\r\n    label: \"input1\",\r\n    $default: \"default value\"\r\n  }, {\r\n    $id: \"input2\",\r\n    $type: \"input\",\r\n    label: \"input2\",\r\n    $default: \"default value\",\r\n  }]\r\n}\r\n```\r\n\r\n## Methods\r\n\r\n* Supports all methods on [el-form](http://element.eleme.io/#/en-US/component/form).\r\n\r\n* Other Methods:\r\n\r\n| Method Name | Description | Parameters |\r\n| ---------- | -------- | ---------- |\r\n| getFormValue | Get the value of the current form | - |\r\n| updateValue  | Update form value manually | ({ id, value }) |\r\n\r\n## Slot\r\n\r\n* You can insert a custom `VNode` at the end of the form by using the default `slot`.\r\n\r\n## dev\r\n\r\ninstall dependency\r\n\r\n```sh\r\nyarn\r\n\r\nyarn add element-ui\r\n```\r\n\r\nrun dev server\r\n\r\n```sh\r\nyarn dev\r\n```\r\n\r\npublish to npm\r\n\r\n```sh\r\n// remove element-ui in package.json\r\ngit checkout -- .\r\n\r\nnpm version\r\n\r\nyarn dist\r\n\r\ncd dist\r\n\r\nnpm publish --access public\r\n```\r\n","readmeFilename":"README.en.md"}