MCPcopy
hub / github.com/codex-team/editor.js / processFiles

Method processFiles

src/components/modules/paste.ts:512–532  ·  view source on GitHub ↗

* Get files from data transfer object and insert related Tools * * @param {FileList} items - pasted or dropped items

(items: FileList)

Source from the content-addressed store, hash-verified

510 * @param {FileList} items - pasted or dropped items
511 */
512 private async processFiles(items: FileList): Promise<void> {
513 const { BlockManager } = this.Editor;
514
515 let dataToInsert: { type: string; event: PasteEvent }[];
516
517 dataToInsert = await Promise.all(
518 Array
519 .from(items)
520 .map((item) => this.processFile(item))
521 );
522 dataToInsert = dataToInsert.filter((data) => !!data);
523
524 const isCurrentBlockDefault = BlockManager.currentBlock.tool.isDefault;
525 const needToReplaceCurrentBlock = isCurrentBlockDefault && BlockManager.currentBlock.isEmpty;
526
527 dataToInsert.forEach(
528 (data, i) => {
529 BlockManager.paste(data.type, data.event, i === 0 && needToReplaceCurrentBlock);
530 }
531 );
532 }
533
534 /**
535 * Get information about file and find Tool to handle it

Callers 1

processDataTransferMethod · 0.95

Calls 3

processFileMethod · 0.95
forEachMethod · 0.80
pasteMethod · 0.65

Tested by

no test coverage detected