{"_id":"@aw-studio/vue-json-content","_rev":"4-f5f9afd639835219aaeac1a4809cc170","name":"@aw-studio/vue-json-content","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@aw-studio/vue-json-content","version":"1.0.0","author":{"name":"Jannes Behrens"},"license":"MIT","_id":"@aw-studio/vue-json-content@1.0.0","maintainers":[{"name":"chrissle","email":"christian.z.dev@gmail.com"},{"name":"jannescb","email":"jannes@aw-studio.de"}],"dist":{"shasum":"5c869e0f39baf97b61fb9de05e16a919ba4cfdac","tarball":"https://registry.npmjs.org/@aw-studio/vue-json-content/-/vue-json-content-1.0.0.tgz","fileCount":8,"integrity":"sha512-SnNsCbvTBlrdhyG5xqbtSsmFvPVUe+XMCiOihm1KTe8CSRUn3GBkcnVYbx+y063Gucj8mDuGHOXsnJmq2EZ91w==","signatures":[{"sig":"MEQCIHb235qjW+4w+L2eTAPd6d9ZVETQQad/PTZ0u3hTi8d3AiBIM2vzaiqdexcy6ow23y8XLwpQAFFLs3H9uX1552DL6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6377},"main":"src/index.ts","gitHead":"20b0243589ef8bece2dfca60433da5637b98f53b","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jannescb","email":"jannes@aw-studio.de"},"_npmVersion":"7.15.1","description":"This package lets you build content by dragging and dropping pre-defined sections with fully configurable attributes. These sections may be infinitely nested, sorted and styled. The package comes headless and is fully customizable in style.","directories":{},"_nodeVersion":"15.11.0","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.1.5","uuid":"^3.4.0","ts-loader":"^9.2.4","typescript":"^4.3.5","vue-loader":"^16.4.1","vuedraggable":"^4.1.0","@vue/compiler-sfc":"^3.1.5"},"_npmOperationalInternal":{"tmp":"tmp/vue-json-content_1.0.0_1636845514972_0.3038870473821018","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@aw-studio/vue-json-content","version":"1.0.1","author":{"name":"Jannes Behrens"},"license":"MIT","_id":"@aw-studio/vue-json-content@1.0.1","maintainers":[{"name":"chrissle","email":"christian.z.dev@gmail.com"},{"name":"jannescb","email":"jannes@aw-studio.de"}],"dist":{"shasum":"b14e86961dc5d72832d5080894b2950506e5121c","tarball":"https://registry.npmjs.org/@aw-studio/vue-json-content/-/vue-json-content-1.0.1.tgz","fileCount":7,"integrity":"sha512-0rOKbp7VGdsXF3gVMDsXSHJFJawl3DYSLnqjR516lDsyUvLKJRA+GOqHvsx+S9pM5KUzoF8wu3dqriqumndHBw==","signatures":[{"sig":"MEQCIBxPm8Lzl8xYdW2C8PlbHTGoIAWpqa8tIlcjL+AhEeLrAiAcF8FgBaIw/X4BK9z9PmzqjG9Q012u7oCwbOYpnJkkDw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr9RDCRA9TVsSAnZWagAAfZEP/3O4WWhKRUNqWqQTXa1O\n/vQ0+517WVtW8k6Xz7b6wtj4sgISCNDFJub5vi/uEvi/qyaqjJqXYdrKQrj/\nRqeyKELBJz0wQBquyimO0s2JjGhlFYgYuIEePMG5a0Gora3bzhtaH8mVp0Ez\nPYbkAFiV9b/t01Tv2JPR4PS+2AvFAer133MY5Wl8xyyqSURTyfE093VlW1qt\nbEwLUGdcviQN5d5m+fLoWrn1OrDSuAOIJ3rF5Nn1mbaD2yX6QWUoShXPTy+b\nPa7cROsAymz5pH3PJEDHEGbwoJ5Th2fHfoubI63ockuRqxHhw5OAXxJi9sPG\nyBk+56+o6KFsu8jtFOBPGopEAlI5wL14bnGq0N2xZeZHbnNSf5rHCX7E0PF5\njjBljxzZp56boix/tDBX/fHOA0j2BbIjb1MgUZOU3xb9SSUGOj0jTg/j/7p3\n69wbHzojpsGe7x0403Co8Sj+PLOVuhLV9MuKTAD+hwaLIeltbISpKq6iheUc\nqkTngzQVSq8H9okJ0Wd4QNDyrr/Vx8pqBjyLEB109SSHhOI7X1Yd6ZhUa4ns\nSm5PzbT7+yKS01+xedFbe9FMsk2fs4oJA8994nqoFfQg4Gfk0H3wGWCRDbK2\n05h308NItOX7NDQ/Mpo8L1f9fl3SIg/fTD2mqSgtdf6Ek+50kcXJQTpm7s8j\ni0xd\r\n=3oHr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"src/index.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jannescb","email":"jannes@aw-studio.de"},"_npmVersion":"7.15.1","description":"This package lets you build content by dragging and dropping pre-defined sections with fully configurable attributes. These sections may be infinitely nested, sorted and styled. The package comes headless and is fully customizable in style.","directories":{},"_nodeVersion":"15.11.0","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.1.5","uuid":"^3.4.0","ts-loader":"^9.2.4","typescript":"^4.3.5","vue-loader":"^16.4.1","@types/uuid":"^8.3.1","vuedraggable":"^4.1.0","@vue/compiler-sfc":"^3.1.5"},"_npmOperationalInternal":{"tmp":"tmp/vue-json-content_1.0.1_1638913090931_0.002748976575035922","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@aw-studio/vue-json-content","version":"1.0.2","author":{"name":"Jannes Behrens"},"license":"MIT","_id":"@aw-studio/vue-json-content@1.0.2","maintainers":[{"name":"chrissle","email":"christian.z.dev@gmail.com"},{"name":"jannescb","email":"jannes@aw-studio.de"}],"dist":{"shasum":"2ce4991cde91ef54221749a72ce3c218b0d75373","tarball":"https://registry.npmjs.org/@aw-studio/vue-json-content/-/vue-json-content-1.0.2.tgz","fileCount":7,"integrity":"sha512-duLxtJoi8eJzMV4WxMwo5f/UgNiW8u6PIbuPtII33KmQnXcfn+0CPH9ddbFP8uLTg5IuwIc1SUG81DQfplvNCQ==","signatures":[{"sig":"MEUCIBPMXtorxrKJwLkjI/ZKo8O0xPTU3wpVXFsM32XJ9xAqAiEA0fJf6bz1EFDtEjTjSnxeht2D0/ozlmzVZtCdo+gpq68=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhugdcCRA9TVsSAnZWagAA+2cP/idsbAg0KD0tpsjhd9Ud\nmlk9+6Jf3MlVuaOaYIdQlHog66czT7TOe6bzQZjnrokjCBUCiCo1eIbGuXe5\nuCi3d0HkIFO0IDV9y8vu4uaeEAD9/RA+7GEOaW+MLYFTqFmGhUaZnqxIbNFY\ntJKOJASqUonbPeh/dI54ERlVs3v3DCo2Zg5WyKQCGpKwPweI7cWNBCdzh+FB\n4TA/LY2+GfIB7rka4ErffIzCJjl0VIx6/HZXsstVtPcpjqmZdhZ1OBauv7Ve\n+lwgUcF9q5HPGRqVQEhl5s3ABxU3ADGF6grf2XooglVS039rt+iWwMDkaEjl\noCn9tjqAXhXjBIru2iVmdDOsAZqMt+F+WqvSLq6JXU8grqSMM8Aj+RAN+mDU\ntTC4eIaBnnSQ3KPRW9GfN1+a/gh51zrJ/+kWAl9dTwNsN6OXPG/ha1otgO0m\nXE8NIDNt5EcY69IVW331gU3JVkqn0uuxse59SHr6DmIi8m/9/xZtfYiCrB8b\nbU8i84UXgdAFJIQCDffweL6o2vC2vBK8LmL5bKbe5Du0DVdrcYtyeq2DcFwx\n9rhZ7fYS+RTmvzvJu97sFyPfBNnPgXC4mpqN4Y64s2fjKusfbfdwlzLCKUfZ\n4A2Cr5nQQQF7d+Kuln2cRMC1+x0lCeoZtL46Qe2JM2skBmJiQ7SxORpKM3KM\n6t8r\r\n=isPG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"dist/vue-json-content.esm-bundler.js","source":"src/index.js","gitHead":"a681454d0a6d37f00eb0ebee17cd4fc24b568ed2","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c"},"typings":"index.d.ts","_npmUser":{"name":"jannescb","email":"jannes@aw-studio.de"},"_npmVersion":"7.18.1","description":"This package lets you build content by dragging and dropping pre-defined sections with fully configurable attributes. These sections may be infinitely nested, sorted and styled. The package comes headless and is fully customizable in style.","directories":{},"_nodeVersion":"12.14.1","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.1.5","uuid":"^3.4.0","chalk":"^4.1.2","execa":"^5.1.1","rollup":"^2.58.0","semver":"^6.3.0","enquirer":"^2.3.6","minimist":"^1.2.5","ts-loader":"^9.2.4","typescript":"^4.4.3","vue-loader":"^16.4.1","@types/uuid":"^8.3.1","vuedraggable":"^4.1.0","@vue/compiler-sfc":"^3.1.5","rollup-plugin-vue":"^6.0.0","rollup-plugin-babel":"^4.4.0","rollup-plugin-styles":"^3.14.1","rollup-plugin-terser":"^7.0.2","@rollup/plugin-replace":"^3.0.0","rollup-plugin-css-only":"^3.1.0","rollup-plugin-typescript2":"^0.30.0","conventional-changelog-cli":"^2.1.1"},"_npmOperationalInternal":{"tmp":"tmp/vue-json-content_1.0.2_1639581532504_0.5890726422020152","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-11-13T23:18:34.926Z","modified":"2025-01-09T20:47:46.538Z","1.0.0":"2021-11-13T23:18:35.152Z","1.0.1":"2021-12-07T21:38:11.053Z","1.0.2":"2021-12-15T15:18:52.617Z"},"author":{"name":"Jannes Behrens"},"license":"MIT","description":"This package lets you build content by dragging and dropping pre-defined sections with fully configurable attributes. These sections may be infinitely nested, sorted and styled. The package comes headless and is fully customizable in style.","maintainers":[{"email":"jannes@aw-studio.de","name":"jannescb"}],"readme":"# JSON-Content\n\nThis package lets you build content by dragging and dropping pre-defined sections with fully configurable attributes. These sections may be infinitely nested, sorted and styled. The package comes headless and is fully customizable in style.\n\n## Usage\n\n```vue\n// App.vue\n<template>\n    <!-- You can drag drawers from your cabinet... -->\n    <Cabinet>\n        <div :draws=\"TextSection\">Text Section</div>\n    </Cabinet>\n\n    <div class=\"p-4 bg-blue-200\">\n        <!-- ... to your sections -->\n        <Sections v-model=\"form.sections\" :sections=\"sections\" />\n    </div>\n    <pre>{{ form }}</pre>\n</template>\n\n<script setup lang=\"ts\">\nimport { Head, useForm } from '@inertiajs/inertia-vue3';\nimport { Sections, Cabinet } from '@aw-studio/vue-json-content';\nimport TextSection from '@/Sections/TextSection.vue';\n\nconst form = useForm({\n    sections: [],\n});\n\nconst sections: any = {\n    text: TextSection,\n};\n</script>\n```\n\n```vue\n// TextSection.vue\n<template>\n    <div>\n        <input type=\"text\" v-model=\"model.text\" />\n    </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, defineEmits } from 'vue';\nconst props = defineProps({\n    modelValue: {\n        type: Object,\n        required: true,\n        default: () => ({\n            text: null,\n        }),\n    },\n});\n\nconst model = ref(props.modelValue);\nconst emit = defineEmits(['update:modelValue']);\nwatch(\n    () => model.value,\n    value => emit('update:modelValue', value),\n    { deep: true }\n);\n</script>\n```\n","readmeFilename":"README.md"}