{"_id":"@dojo-ng/rich-text-table","name":"@dojo-ng/rich-text-table","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@dojo-ng/rich-text-table","version":"0.1.0","license":"BSD-3-Clause","description":"Table plugin for @dojo-ng/rich-text","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.json","clean":"rm -rf dist"},"dependencies":{"@dojo-ng/rich-text":"^0.1.0","@dojo-ng/popup":"^0.1.0","@dojo-ng/button":"^0.1.0","@dojo-ng/i18n":"^0.1.0","lexical":"^0.21.0","@lexical/table":"^0.21.0","@lexical/utils":"^0.21.0","lit":"^3.3.0"},"_id":"@dojo-ng/rich-text-table@0.1.0","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-MPnpD4m0zSN/SAVIjnIqyQHrxMWt5JuM+f+B0/Nfe2gbKyCBBQVIMMwlNiXNf/Q3NI9a8fPycXqswozbVNjYRg==","shasum":"e2ff271f696837465a91c17e186cdc77c111ec24","tarball":"https://registry.npmjs.org/@dojo-ng/rich-text-table/-/rich-text-table-0.1.0.tgz","fileCount":6,"unpackedSize":17087,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDSWuvdlM+tyVJsaMB/ddNSSwJvgTMdviRUBG7wRljToAiEA3y2r4UI91IthdwMry5OUPmQ+EqkvQx6q+/Hz+R0hvRA="}]},"_npmUser":{"name":"bitranch","email":"bill@bitranch.com"},"directories":{},"maintainers":[{"name":"saysomething","email":"joshs@holmescorp.com"},{"name":"bitranch","email":"bill@bitranch.com"},{"name":"jepe","email":"jeffreyp@holmescorp.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rich-text-table_0.1.0_1788374437388_0.9326953345807623"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-02T18:40:37.221Z","0.1.0":"2026-09-02T18:40:37.548Z","modified":"2026-09-02T18:40:37.806Z"},"maintainers":[{"name":"saysomething","email":"joshs@holmescorp.com"},{"name":"bitranch","email":"bill@bitranch.com"},{"name":"jepe","email":"jeffreyp@holmescorp.com"}],"description":"Table plugin for @dojo-ng/rich-text","license":"BSD-3-Clause","readme":"# @dojo-ng/rich-text-table\n\nTable plugin for @dojo-ng/rich-text\n\nPart of [Dojo NG](../../README.md), a framework-agnostic web component library. BSD-3-Clause.\n\n> An opt-in plugin for `@dojo-ng/rich-text` (not a custom element). It contributes the three `@lexical/table` node classes (`TableNode`, `TableRowNode`, `TableCellNode`), registers `INSERT_TABLE_COMMAND` and Lexical's grid mouse-selection + Tab/arrow cell navigation, and adds two toolbar controls. \"Insert table\" opens an 8×8 grid picker (hover to size, click to insert); \"Table menu\" is enabled only when the caret is inside a table and offers insert row above/below, insert column left/right, delete row, delete column, toggle header row, and delete table. Exports `tablePlugin` and `createTablePlugin()`. Setting `plugins` REPLACES the default set, so spread `...defaultPlugins`. PASTE: with this plugin loaded a pasted `<table>` imports as a real table (the paste sanitizer allowlists table markup); WITHOUT the plugin, pasted table elements degrade to paragraphs. DEFERRED: merge/split cells, column widths/resizing, caption UI (the tag survives paste, nothing more), nested-table styling beyond level 1.\n\n## Install\n\n```bash\nnpm install @dojo-ng/rich-text-table\n```\n\n## Usage\n\nCompose the table plugin with the default set. Insert from the 8×8 grid picker, then edit rows and columns from the table menu.\n\n```html\n<dj-rich-text id=\"editor\" label=\"Article\"></dj-rich-text>\n<script type=\"module\">\n  import \"@dojo-ng/rich-text\";\n  import { defaultPlugins } from \"@dojo-ng/rich-text\";\n  import { tablePlugin } from \"@dojo-ng/rich-text-table\";\n  document.getElementById(\"editor\").plugins = [...defaultPlugins, tablePlugin];\n</script>\n```\n","readmeFilename":"README.md","_rev":"1-30a582749fe04b43669dfc30d3bc4101"}