{"_id":"@ng-stack/contenteditable","_rev":"10-4a35d90a7b48609d7aeb86316747f209","name":"@ng-stack/contenteditable","dist-tags":{"latest":"2.0.1"},"versions":{"1.0.0":{"name":"@ng-stack/contenteditable","version":"1.0.0","repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues"},"peerDependencies":{"@angular/core":"^4.0.0"},"main":"bundles/ng-stack-contenteditable.umd.js","module":"fesm5/ng-stack-contenteditable.js","es2015":"fesm2015/ng-stack-contenteditable.js","esm5":"esm5/ng-stack-contenteditable.js","esm2015":"esm2015/ng-stack-contenteditable.js","fesm5":"fesm5/ng-stack-contenteditable.js","fesm2015":"fesm2015/ng-stack-contenteditable.js","typings":"ng-stack-contenteditable.d.ts","metadata":"ng-stack-contenteditable.metadata.json","sideEffects":false,"dependencies":{"tslib":"^1.9.0"},"description":"This is micro Angular v6+ contenteditable directive for compatibility with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","_id":"@ng-stack/contenteditable@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.14.1","_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"dist":{"integrity":"sha512-nzqSWNFYwHrkWilajF3Xnwi1Dd73eg0K0fXlNl7TMoj1WC0QFZt8wKPYEbZ6SnT03P3zEY/RdpmT7ggfGc/HJw==","shasum":"1b25b43380ecf01dd1bc778b9da587103b22d69d","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-1.0.0.tgz","fileCount":23,"unpackedSize":85843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWvcfCRA9TVsSAnZWagAAZycQAJDKKyGf7yxpR6hGMygu\nqboxARIVJxKJloH0Z4Rfy4lUvTlolJGlKrjGOnHc5l35Tay08TGU3lx15cav\nExyooSP7HaK/PO4zObqExHj7YpeFsqNKdq38+YNg5CV+dG/mIPlBiNDil3ka\nL0O8pBB18GfgybUBGCUby/gYu8CwJDOsL6+vDVQyL8grD4KgwlRiOqbkWyiX\nz6segGycfP9TT50NNU4eDWqZyGr6NlAbCA+S9P/A3/0iNSckbZw/cgt7Mvkx\nqI6yKYNYrapXTWDpud8JzntHwgitYpMynsQWgJgFlQoVf+746BaqPwZUSO91\nviEehtSURZNFpwZOSsDGAJWYKqlpM+cy2yo5CrnNWsHXw2nL3zBe2DxLhBRj\nRtV8ZYUU4t99obpg+f4D26lFpRX3IQG93OJLZPymyi0xhtIXbtmMgeggP3EV\njW4ZA/kPKMUOgYO5TCpiR/VxBIkDDeRazu5BwFBFBUyfaxbo7KVt66VL883B\nQZYgTlh8z9380DN8hVpvwjT8zbC3tU7egXuiFzkhyrGwHm2kGAMc0p30jtZQ\n+cFsyCOeP5NcTxpcxceoeWsemh7qkOG8PZofJxhjPKILCAxirqLqYlANZBd6\nq6/rH/1oqeaLGKq/C2LEG3RgrAP5FiU4nEgqyDsuovkULGkI4WxMKI+N/T23\nBJGY\r\n=eQwA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC+hIPn0NFMzyiL31/dYMyQpcaGhYT78ymhqD/iOeSmeAiEArJpeMt5SFGat93UHzP59JUQ8VQhcsM+MVNVnVarbsSo="}]},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_1.0.0_1549465375227_0.9946530668195144"},"_hasShrinkwrap":false},"1.0.1":{"name":"@ng-stack/contenteditable","version":"1.0.1","repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues"},"peerDependencies":{"@angular/core":">=4.0.0"},"main":"bundles/ng-stack-contenteditable.umd.js","module":"fesm5/ng-stack-contenteditable.js","es2015":"fesm2015/ng-stack-contenteditable.js","esm5":"esm5/ng-stack-contenteditable.js","esm2015":"esm2015/ng-stack-contenteditable.js","fesm5":"fesm5/ng-stack-contenteditable.js","fesm2015":"fesm2015/ng-stack-contenteditable.js","typings":"ng-stack-contenteditable.d.ts","metadata":"ng-stack-contenteditable.metadata.json","sideEffects":false,"dependencies":{"tslib":"^1.9.0"},"description":"This is micro Angular v6+ contenteditable directive for compatibility with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","_id":"@ng-stack/contenteditable@1.0.1","_npmVersion":"6.4.1","_nodeVersion":"10.14.1","_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"dist":{"integrity":"sha512-foL2bLwIPiyLDj6EvdpGrtrC2+6kkU6/OBwppMkZ0RqlKRCnnoJvy/zngv2L55nYqe2TApfJuWGg/BBNArU2Zg==","shasum":"aa30fc22ed028525e3c253787e897f0a70595265","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-1.0.1.tgz","fileCount":23,"unpackedSize":85844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcYBzICRA9TVsSAnZWagAAcEgP/jQOlvWy1JiizpYlVWK7\ngZycdCFJz2M0+lf334CvaOZfFOu1TK3Lf4LyAOoIt2/ZhSJ0UVJ6o3k+n7Gj\n+0DghlSj3MyQAi2TFvNgjODPQmDBEI68vhhv5CAfxaqjZGgLtuvnF1fn4lKP\nKlbwXjHH4a1O6kq2Eh8fDkaY2TsnrFXYdueF+fCG1XFXaGfkkVoWfDg3ePiB\nrKQpexwBqm15kc0m8obEctRb/VdLZJ4S5rKBcB6YfEsQpPJgITV2H3eghg2c\nTnAkLZz22PyyNprM8DeDflC2F0FroLCPvlP0jNN/mbR2lHddgKpDE53Y+Ha1\nBE+hgF0oZ+M9LDwtKJ2tqBYytVQiliriBMiC1zNbd/xeovMlLqoVgDOFSJHp\nOeFIBkAAy1fLfGzeld5k1xoi1F0vLyGMCOb0+pd3oiC/F02ZouoX+foqOmar\ngbbDTpWcRk98WeLKzV9D1HzD5pdxX4yAMJv57rXxBkc4LKJWD/hG4DfYxVEC\nE+kaOCFHg86F4A0oRMqQv3Vz+l3hxg2yPKqMcZdfWc1+IflUzqZUNzIgUPZc\nd7OqhMfw19AqSt5h0gOkVEEKYVjJDbxHeXUGQGE69mvWsACvueUL+S017bbQ\n612sVD/QEmhIMAOLzmfiqR9nJ9fGr3ev7wDScCpyBgB+RWzuH1m3dmQscvPg\n2QTT\r\n=08YB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE6MI1TcMM0ulFmjjsL+hHy/b9I8GdvQ2eEnkRv5OfpCAiAYAK9fbA+lZ5F+efxiLXOzS2KlbtxMT74Z54Lni1/1Jg=="}]},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_1.0.1_1549802695870_0.6369434696877361"},"_hasShrinkwrap":false},"1.1.0":{"name":"@ng-stack/contenteditable","version":"1.1.0","repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"peerDependencies":{"@angular/core":">=4.0.0"},"dependencies":{"tslib":"^2.0.0"},"main":"bundles/ng-stack-contenteditable.umd.js","module":"fesm2015/ng-stack-contenteditable.js","es2015":"fesm2015/ng-stack-contenteditable.js","esm2015":"esm2015/ng-stack-contenteditable.js","fesm2015":"fesm2015/ng-stack-contenteditable.js","typings":"ng-stack-contenteditable.d.ts","metadata":"ng-stack-contenteditable.metadata.json","sideEffects":false,"description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","_id":"@ng-stack/contenteditable@1.1.0","_nodeVersion":"12.18.2","_npmVersion":"6.14.5","dist":{"integrity":"sha512-bmu0PFWNgAw+shTDlQQV6gBiUcbp6VEwl51fGCUci5GAhKtLwYEe/biPA6Q6tsqSP4l1/XV/HUvroKek1+csOg==","shasum":"05817e2e2bb0575ccc027e45e5d1c43fe51409de","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-1.1.0.tgz","fileCount":18,"unpackedSize":59337,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfQRI2CRA9TVsSAnZWagAAZxMP/1R/MUxry6TQpv5rezd3\nCRivuGEck3gCCIGMkXC/p/BlKicwb4IOdLXiwocqGtSVv8RW/0TDVOtyKV/b\nN8sdQZPYD4bfq5aqoeq1eGJqh7wwRvJ+NFhpwWxUsQ6zaYa/IJ+XJmu8lmm4\nmPViRRa1yw/CUUuKpoR5e8unpMq/yRGWt31+9WI2aoo9bbAVpbmPxsSLCLaI\nyw+jemEYYnEC4zDmbXRYKEZncMp+mcqgPM8zxZUgi04x/La1ytBU0QxueEx1\nHyXqcU4EVL/Z25hudEIZr2CC9ovsK6FIsY5iPLVhu4eW00vV5VKGiL0yoQJe\nB04UuM9//sd1dl0aV9mCKPjTrlgHBHb/+X7I/6/zG+V6rF3eHrbhJVL/St5S\nHauK2TOUhYZkIku7AGwgx8XAroxYpvIG5wyVrSLcECp6bkvE/Lvzgxm/a9xk\nxjCcOw76IaB1vRZ+Nxw/1/gnFECjKgqYw0+QrStzXPXIyEHNUimXj+SLzSXM\nfp2Zwkhb6NEs3O0T/EVwjsQ64NLmDOjMecYrIF7z5aklEnBCiIHGb+t+pXwc\nu/fwITGOB105JPMonv9SCcs/Sleld6VkDkTvsZlxcZjHUa//hAkJY3DJv6cG\nYkrQp6yZcQHF7FKpMKL+RCiY8kBMwr3vmeTsEbpuQPflecM+you4UKwViL0R\nZg5F\r\n=wDpJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDL2TVuJtSin1/mPhk854g6zUIse2aNnUebD8xhcE3pjAIgD+AR2sV+R6PpvRSmWa8CIeMeYpgW09chaucu+E1sIZY="}]},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_1.1.0_1598100021741_0.36418471500909066"},"_hasShrinkwrap":false},"1.1.1":{"name":"@ng-stack/contenteditable","version":"1.1.1","repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"peerDependencies":{"@angular/core":">=4.0.0"},"dependencies":{"tslib":"^2.0.0"},"main":"bundles/ng-stack-contenteditable.umd.js","module":"fesm2015/ng-stack-contenteditable.js","es2015":"fesm2015/ng-stack-contenteditable.js","esm2015":"esm2015/ng-stack-contenteditable.js","fesm2015":"fesm2015/ng-stack-contenteditable.js","typings":"ng-stack-contenteditable.d.ts","metadata":"ng-stack-contenteditable.metadata.json","sideEffects":false,"description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","_id":"@ng-stack/contenteditable@1.1.1","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-BIbrHOnO+EUpVd7R3EZQjDDZpM0L0T1CKTei40jpKHWr+7m8Sf4g5mRd9GTJcWx2OOCwC8w2H3cbeufUdhCOhg==","shasum":"43333baf40eeac472fda8396408f6579ce81aa5f","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-1.1.1.tgz","fileCount":18,"unpackedSize":60999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiJVvCRA9TVsSAnZWagAAYn8P/A89LvE9LA6HUKEqpCzn\nXHaEpjE8mcXN9ikk2lgVxcFiQeqy1e6wvu4UtQlJbo3rFJzzvuS5zHG0NHnd\nJs3bwteItR02krPphq5Jq+o1Smo95f5fhwQbP4+VPpEnL/ejc2UKCZIeOvYk\nH7O9/VDTD1Os4uC16HKY8JZdHia7eYk7rRbitC6Jb/78vpKZ9X2rT71FzZDM\nxKwrJ32nOM+b04svw0suarBL4hqde+v425wnbbWZOcSI8i00IUWtirz/PXvq\nLUbDIPKNLIemjtsvrUb+lFXYi2UtlJRqcYcgR+//+Y9j7IKQiUctIUs0Lzza\ng6E/LtRpB4UT4nnJoUyZ597EhhEOMsUUMC0ch9ChM4vQgrrAX/qKL+z/MOmx\nJGOg74e2bQnrT2SEKz2lo7KjXwowW3ypKZHsy1TlDunzL3c3OqG8A+nL0S9W\nRVa3m3IjD7UZ2oWmyzERe6Y+sz+/OYLyfBMB0un24cd0FXCZkkKEJfcuyHcJ\n0oQrVrWXQm6dW+4BVBjq7HZk3Rh6BP6toh9T4kEP/sfCJwkNSKbMynA78qJD\n8Eu29Csyk8W+0AXUm2zvlKSfG9q5X4U4xAsA6QQSVlS+5Iea1HkjZh6o2UVl\n4I7vIdUTaU9bn1PnzWicl0MgwED5Dd7y1mhqZS2M78q5/B6WZ94GtjXBmv84\nHwgp\r\n=I+yD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAVq9zmbGg9oe+pvAACutXnDbuh/483CB/c/7WfR/Tm0AiEA6VvwK7kJ2vb/ZBXZE5riT4JRfWUFmD0HibZCunvJGY8="}]},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_1.1.1_1602786670693_0.49484904990768386"},"_hasShrinkwrap":false},"2.0.0-beta.2":{"name":"@ng-stack/contenteditable","version":"2.0.0-beta.2","repository":{"type":"git","url":"git+https://github.com/KostyaTretyak/ng-stack.git#master"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"peerDependencies":{"@angular/core":">=13.0.0"},"dependencies":{"tslib":"^2.3.0"},"module":"fesm2015/ng-stack-contenteditable.mjs","es2020":"fesm2020/ng-stack-contenteditable.mjs","esm2020":"esm2020/ng-stack-contenteditable.mjs","fesm2020":"fesm2020/ng-stack-contenteditable.mjs","fesm2015":"fesm2015/ng-stack-contenteditable.mjs","typings":"ng-stack-contenteditable.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./ng-stack-contenteditable.d.ts","esm2020":"./esm2020/ng-stack-contenteditable.mjs","es2020":"./fesm2020/ng-stack-contenteditable.mjs","es2015":"./fesm2015/ng-stack-contenteditable.mjs","node":"./fesm2015/ng-stack-contenteditable.mjs","default":"./fesm2020/ng-stack-contenteditable.mjs"}},"sideEffects":false,"readme":"## What is this library?\n\nThis is micro Angular v4+ contenteditable directive for integration with Angular forms.\nIt just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.\n\n## Install\n\n```bash\nnpm install @ng-stack/contenteditable --save\n```\n\n## Usage\n\nImport and add `ContenteditableModule` to your project:\n\n```ts\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { ContenteditableModule } from '@ng-stack/contenteditable';\n\n// ...\n\n@NgModule({\n  // ...\n  imports: [\n    // Import this module to get available work angular with `contenteditable`\n    ContenteditableModule,\n    // Import one or both of this modules\n    FormsModule,\n    ReactiveFormsModule\n  ]\n\n// ...\n\n})\n```\n\nAnd then you can to use it in [template-driven forms](https://angular.io/guide/forms)\nor [reactive forms](https://angular.io/guide/reactive-forms) like this:\n\n```ts\n// In your component\nimport { Component, OnInit } from '@angular/core';\nimport { FormControl } from '@angular/forms';\n\nexport class MyComponent implements OnInit {\n  templateDrivenForm = 'This is contenteditable text for template-driven form';\n  myControl = new FormControl();\n\n  ngOnInit() {\n    this.myControl.setValue(`This is contenteditable text for reactive form`);\n  }\n}\n```\n\n```html\n<form #testForm=\"ngForm\">\n  <p\n    editable=\"true\"\n    name=\"myFormName\"\n    [(ngModel)]=\"templateDrivenForm\"\n    ></p>\n</form>\n \n<pre>\n  {{ testForm.value | json }}\n</pre>\n\n<hr>\n\n<p editable=\"true\" [formControl]=\"myControl\"></p>\n\n<pre>\n  {{ myControl.value | json }}\n</pre>\n```\n\n## Options\n\n### propValueAccessor\n\nWith `editable` directive you can pass optional `@Input` value for `propValueAccessor`:\n\n```html\n<p\n  editable=\"true\"\n  propValueAccessor=\"innerHTML\"\n  [formControl]=\"myControl\"\n  ></p>\n```\n\nInternally, `ContenteditableDirective` uses this value as follows:\n\n```ts\nthis.elementRef.nativeElement[this.propValueAccessor]\n```\n\nBy default it using `textContent`.\n\n### `editable` as @Input property\n\nSince version 2.0.0, `@ng-stack/contenteditable` accepts `editable` as @Input property (note the square brackets):\n\n```html\n<p [editable]=\"isContenteditable\"></p>\n```\n\nwhere `isContenteditable` is a boolean variable.\n\n### unformattedPaste\n\nSince version 1.1.0, `@ng-stack/contenteditable` takes into account experimental `unformattedPaste` attribute:\n\n```html\n<p\n  editable=\"true\"\n  unformattedPaste\n  [formControl]=\"myControl\"\n  ></p>\n```\n\nThis allow copy formated text (from anywhere) and paste unformated text into HTML element with `contenteditable` attribute.\n\n`unformattedPaste` attribute is experimental because here is used obsolete [document.execCommand()](https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand) method to write unformated text. So far no good alternative for this method has been found.\n","readmeFilename":"README.md","gitHead":"cf8c8ca4105e4da3483a7747f61feac070b2eb53","description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","homepage":"https://github.com/KostyaTretyak/ng-stack/tree/master#readme","_id":"@ng-stack/contenteditable@2.0.0-beta.2","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-9g5l4SShv3SYZg+04tFmZUPHO8j77CrzTmIcaBrcfPZiDaXVf4RwPPqQX62+FpZD5TsemJ0ro7uLg3jk+0rSfQ==","shasum":"0b3a0f74d094f2f85b15280adee47faa50563481","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-2.0.0-beta.2.tgz","fileCount":14,"unpackedSize":52483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCn2ECRA9TVsSAnZWagAAev8P/AjSsufvri1+Be51nUCC\ne+dVapNEZLGX8cVu3E84mVbUedhtXxSq7jNPJKpWtQt1wlm6mKezfN2fxLyO\ngUd8vJ88KOegyuPB185yi695dnCfH55H2FvXAjT5sfz/qL4K4QOYOBF5SU3Q\npHSdpiZIZsgjDF7IIqzMCm1w1SRfwxxFGNP9iEXFSyBWbKs+gtXXYcw10PNl\n/FUrqPMejF3ycKwb/CWK3KiT9XwTpPJJ9YgAJdRnRXUukb5nev5yDICebJzC\n8LDT2OZNT0Oa22zajbpH092NU0KhjLBDsSRBA9g+UnQCai54/5CpS0AYvS9v\nF/DwMYeDTGPv+Mq6y2Q1JiNLQzwGuuyP5na+gAGPg4PKAgceDG/rRJk0KmK0\nD1qlaXd3zMGxgzP0tQ6AtoAZjAilx8zRjUCz6jlTzR1oO7TFy3WYet3et3n0\nlhQ8oAA/zP6hLWZYCNOKOKNCnjLPvD6GIKPEZmGqTSzL0rWD+BmrwFecCRMS\nGF4yMWyt6tCPSGm6bnwQ53VA3PkpiHVgOPM1VnBfdmfk9oAU/OFrwdbucuI8\nxkIeJZ+VbFdmygcWAAsSScNvHccfkv/Z+U4GDjQ495uS+DIN2CMSSHI1keFt\nJbO4fl0hWN65BaMTPAqkxUab0TRv3rWzoetOntYIu9MbW2N838BzH3c+FOHg\n6/RJ\r\n=pRI/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC++S/b8YXaH5GO49rvHLTChvXomZVX3KTT0g+ZZgRiiAIgB+9RvJNXfnZACMqfJKdYzgzhY5XmW4Zem6YvVNvQakM="}]},"_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"directories":{},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_2.0.0-beta.2_1644854660725_0.4024491810368753"},"_hasShrinkwrap":false},"2.0.0":{"name":"@ng-stack/contenteditable","version":"2.0.0","repository":{"type":"git","url":"git+https://github.com/KostyaTretyak/ng-stack.git#master"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"peerDependencies":{"@angular/core":">=13.0.0"},"dependencies":{"tslib":"^2.3.0"},"module":"fesm2015/ng-stack-contenteditable.mjs","es2020":"fesm2020/ng-stack-contenteditable.mjs","esm2020":"esm2020/ng-stack-contenteditable.mjs","fesm2020":"fesm2020/ng-stack-contenteditable.mjs","fesm2015":"fesm2015/ng-stack-contenteditable.mjs","typings":"ng-stack-contenteditable.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./ng-stack-contenteditable.d.ts","esm2020":"./esm2020/ng-stack-contenteditable.mjs","es2020":"./fesm2020/ng-stack-contenteditable.mjs","es2015":"./fesm2015/ng-stack-contenteditable.mjs","node":"./fesm2015/ng-stack-contenteditable.mjs","default":"./fesm2020/ng-stack-contenteditable.mjs"}},"sideEffects":false,"gitHead":"96c10819dae9f23d53a5bf2893635b29bf380f52","description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","homepage":"https://github.com/KostyaTretyak/ng-stack/tree/master#readme","_id":"@ng-stack/contenteditable@2.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-vu1RysBdIns8/FIyYOB1j7w/1jL7sh0NlxqQ9gO3A4rhw2MZ+Re08c/DnqfvdOHEtYrLaFJUBLeyMow68f0cUQ==","shasum":"72e1311e0740b038763707f79b760a6e3a19004b","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-2.0.0.tgz","fileCount":14,"unpackedSize":53525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDlNjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqbcQ/+LDmUcyDPQujMhEGvYDKcbFVJ23crYKRtIhjiZdPg5zIj5KrG\r\njUJEPSl/34snCWW5zN/8qfrSvLZrUlVdOPbEiyNF+1a3o1HnCPmGfIfvZ32s\r\nGPahWJMloBX1Jm54dpavlicmXjm5fe+GtVDff0vTy7UiR78D0RlfwDZZ/Kjc\r\nyc5GhgB+dH8+ZqUaAClqpJxHDwWBxWGtsWB26QCqESsuWgO/0hmAykHfXM1a\r\nQOokIYe2VRtu9yGnO2ZLx1Hijt8cftHAx1Fl6peZVjUp53eKZFj7GEoKp01E\r\n5AiO/l26ffjWpE15yDaFOb2wh2lGQTJOvrr8ZTU5B3t6yd45v4numNl4McYo\r\neLG9lqECK2Lzzv2wQufQt+hf3SYCS9FIc7Qp8I0mss9JskLDlCYorVBdY4LM\r\nFZG9V8pOC37uAwi/Gz/EhqKSix6g/ox5OQpSXgFjpLaskU7PtYFKjkN9wfEO\r\nIrl734B4rX8OEo8SZoBgiA/N4mNGXVdZX39OBOh0LfY8xkuFqR/lscS6wiFj\r\nKOSVm3GdKdH0aTQKGkeVT2qO287Uua/qE3wPJtM/m8QTJgzOxKhqFolfbSQa\r\nJaMsOPniVKNJkTnEsHquQxb6x4amAfIMJkajpOdZhi7H4GO2x8rzQMHT1uv/\r\nCeWKI1r2QXXKNaUmXEb56K0NokDuvGuYnNA=\r\n=JUsl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGp7/aI7dNZbxUhLKYHkokVQJh4qJvI3TQIgZNfWvd0bAiEAv7IcD5dyLTWKMwjmQh6OqLPCpzcuICiIXLipFhu4MAg="}]},"_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"directories":{},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_2.0.0_1645106019316_0.633071739460038"},"_hasShrinkwrap":false},"2.0.1":{"name":"@ng-stack/contenteditable","version":"2.0.1","repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"keywords":["angular","contenteditable"],"license":"MIT","bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"peerDependencies":{"@angular/core":">=4.0.0"},"dependencies":{"tslib":"^2.3.0"},"module":"fesm2015/ng-stack-contenteditable.mjs","es2020":"fesm2020/ng-stack-contenteditable.mjs","esm2020":"esm2020/ng-stack-contenteditable.mjs","fesm2020":"fesm2020/ng-stack-contenteditable.mjs","fesm2015":"fesm2015/ng-stack-contenteditable.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2020":"./esm2020/ng-stack-contenteditable.mjs","es2020":"./fesm2020/ng-stack-contenteditable.mjs","es2015":"./fesm2015/ng-stack-contenteditable.mjs","node":"./fesm2015/ng-stack-contenteditable.mjs","default":"./fesm2020/ng-stack-contenteditable.mjs"}},"sideEffects":false,"description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","_id":"@ng-stack/contenteditable@2.0.1","dist":{"shasum":"5ad76ee8b3d9920caf6bcad70f11a329f5cf1316","integrity":"sha512-hvDj6oGPQfuE72kGgKQ9FE3A2HwdjX03IWP0jKMgP+MfG+ypkx3cbECNwpBjUCsgvbIprm1qhuDJnBMWnLVVVg==","tarball":"https://registry.npmjs.org/@ng-stack/contenteditable/-/contenteditable-2.0.1.tgz","fileCount":20,"unpackedSize":56186,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsiuyU5vjL3amRxHnxCGvbTwSQVabQrdsYWSMRj940hAIhAO8AKmvPfjqxJJylzPKzeYmJJ0nuMG3usC6xmeA2kDDy"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGBhzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoY+Q//VAI49ptim8FEgOCXdId/7DcpktR59YQDiaWTBQsDEYEz8f1i\r\n0/B5/mRefKiQ56fqSrCP1HmbiS2+BWTHrxz6h6gYRcSnFrjYxouqenqAy08j\r\nEgg1AXr2ozCnMKYlly1nWj9fiIGawB+RhmPDNSenStYcH9nWMNzPaZhIcpCw\r\nUJhuG1ZdnziKgVaAyRBwipe90XP2ZJAq/7CgwElRwAEBfjqYnezEwqNvvQsJ\r\nPgTr++FwLsbzUoryhEY9WZOB0locUKWvvgVTT5Kl8paGfJswG7vuH+mX8pIK\r\nRfrV1Ng1/6qfrxRSIpAs48zeiQfmUJrI56Bwff67OPJ9W66rUPY/QIOeezGx\r\nVwkhRDwCM1ak5VRfipBVsjHbhk4SkvilvViTzyARDwJK3JWOKAf9cHiUi6yP\r\nng2yofXNideQsEwlqAZxV0GAer6ZPsVgUbBvWi85xIGDiNu3A6JDTodz9zt7\r\n+ooni7Z+byMwstKuK3CZXkNqLiEv7EE059CRli36423eLp7fEbbRgM3zP7OT\r\nJS59ZDUqXEKX7r2CV3Ks6rcfZVXs6E7J+JxU11VvwNS8syyLXp1E93awKEbZ\r\nYuOsbJV+mH9izWjyZhva0l6xm0uHk+e6oY+Si+UJxDZ+4Iy/KZ1eLTy7AiT9\r\nQxkwBHk6ruukJdp+ZYj8IRDIfooeeoPuWk4=\r\n=3UUy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"},"directories":{},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/contenteditable_2.0.1_1662523507692_0.19266295308704118"},"_hasShrinkwrap":false}},"time":{"created":"2019-02-06T15:02:54.947Z","1.0.0":"2019-02-06T15:02:55.348Z","modified":"2022-09-07T04:05:07.989Z","1.0.1":"2019-02-10T12:44:56.021Z","1.1.0":"2020-08-22T12:40:21.902Z","1.1.1":"2020-10-15T18:31:10.829Z","2.0.0-beta.1":"2022-02-14T15:50:00.113Z","2.0.0-beta.2":"2022-02-14T16:04:20.874Z","2.0.0":"2022-02-17T13:53:39.422Z","2.0.1":"2022-09-07T04:05:07.895Z"},"maintainers":[{"name":"ktretiak","email":"ktretiak.in.ua@gmail.com"}],"description":"This is micro Angular v4+ contenteditable directive for integration with Angular forms. It just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.","keywords":["angular","contenteditable"],"repository":{"type":"git","url":"https://github.com/KostyaTretyak/ng-stack/tree/master/projects/contenteditable"},"author":{"name":"Костя Третяк","email":"ktretiak.in.ua@gmail.com"},"bugs":{"url":"https://github.com/KostyaTretyak/ng-stack/issues?q=label%3A%22project%3A+contenteditable%22"},"license":"MIT","readme":"## What is this library?\n\nThis is micro Angular v4+ contenteditable directive for integration with Angular forms.\nIt just implements [ControlValueAccessor](https://angular.io/api/forms/ControlValueAccessor) for this purpose.\n\n## Install\n\n```bash\nnpm install @ng-stack/contenteditable --save\n```\n\n## Usage\n\nImport and add `NgsContenteditableModule` to your project:\n\n```ts\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgsContenteditableModule } from '@ng-stack/contenteditable';\n\n// ...\n\n@NgModule({\n  // ...\n  imports: [\n    // Import this module to get available work angular with `contenteditable`\n    NgsContenteditableModule,\n    // Import one or both of this modules\n    FormsModule,\n    ReactiveFormsModule\n  ]\n\n// ...\n\n})\n```\n\nAnd then you can to use it in [template-driven forms](https://angular.io/guide/forms)\nor [reactive forms](https://angular.io/guide/reactive-forms) like this:\n\n```ts\n// In your component\nimport { Component, OnInit } from '@angular/core';\nimport { FormControl } from '@angular/forms';\n\nexport class MyComponent implements OnInit {\n  templateDrivenForm = 'This is contenteditable text for template-driven form';\n  myControl = new FormControl();\n\n  ngOnInit() {\n    this.myControl.setValue(`This is contenteditable text for reactive form`);\n  }\n}\n```\n\n```html\n<form #testForm=\"ngForm\">\n  <p\n    editable=\"true\"\n    name=\"myFormName\"\n    [(ngModel)]=\"templateDrivenForm\"\n    ></p>\n</form>\n \n<pre>\n  {{ testForm.value | json }}\n</pre>\n\n<hr>\n\n<p editable=\"true\" [formControl]=\"myControl\"></p>\n\n<pre>\n  {{ myControl.value | json }}\n</pre>\n```\n\n## Options\n\n### propValueAccessor\n\nWith `editable` directive you can pass optional `@Input` value for `propValueAccessor`:\n\n```html\n<p\n  editable=\"true\"\n  propValueAccessor=\"innerHTML\"\n  [formControl]=\"myControl\"\n  ></p>\n```\n\nInternally, `ContenteditableDirective` uses this value as follows:\n\n```ts\nthis.elementRef.nativeElement[this.propValueAccessor]\n```\n\nBy default it using `textContent`.\n\n### `editable` as @Input property\n\nSince version 2.0.0, `@ng-stack/contenteditable` accepts `editable` as @Input property (note the square brackets):\n\n```html\n<p [editable]=\"isContenteditable\"></p>\n```\n\nwhere `isContenteditable` is a boolean variable.\n\n### unformattedPaste\n\nSince version 1.1.0, `@ng-stack/contenteditable` takes into account experimental `unformattedPaste` attribute:\n\n```html\n<p\n  editable=\"true\"\n  unformattedPaste\n  [formControl]=\"myControl\"\n  ></p>\n```\n\nThis allow copy formated text (from anywhere) and paste unformated text into HTML element with `contenteditable` attribute.\n\n`unformattedPaste` attribute is experimental because here is used obsolete [document.execCommand()](https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand) method to write unformated text. So far no good alternative for this method has been found.\n","readmeFilename":"README.md"}