LocalId plugin for @atlaskit/editor-core
editor-plugin-local-idThis plugin ensures that all non-ignored nodes in the document have unique localId attributes. It combines two approaches for optimal performance:
1. One-time initialization scan - Adds missing local IDs to existing nodes when the editor starts
2. Incremental transaction processing - Adds local IDs to new nodes as they're created
---
requestIdleCallback with requestAnimationFrame fallback for Safaristep.getMap() to identify changed ranges---
| Case | Action Taken | Transaction Impact |
|------|-------------|-------------------|
| Existing node without localId (initialization) | localId is added | Single transaction with all changes |
| New node added without localId (transaction) | localId is added | Single transaction with all changes |
| Node already has a localId | Left unchanged | No transaction |
| Only selection changes | No action taken | No transaction |
| Cut operations | Skipped to avoid conflicts | No transaction |
| Document unchanged | Early exit | No transaction |
---