@marvalt/wadapter 2.3.22 → 2.3.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,6 @@
1
- import { writeFileSync } from 'fs';
2
- import { join } from 'path';
1
+ import { existsSync, mkdirSync, writeFileSync } from 'fs';
2
+ import { join, extname, dirname } from 'path';
3
+ import { createHash } from 'crypto';
3
4
 
4
5
  /**
5
6
  * @license GPL-3.0-or-later
@@ -471,6 +472,101 @@ function addBlockFromStack(endOffset) {
471
472
  output.push(block);
472
473
  }
473
474
 
475
+ /**
476
+ * @license GPL-3.0-or-later
477
+ *
478
+ * This file is part of the MarVAlt Open SDK.
479
+ * Copyright (c) 2025 Vibune Pty Ltd.
480
+ *
481
+ * This program is free software: you can redistribute it and/or modify
482
+ * it under the terms of the GNU General Public License as published by
483
+ * the Free Software Foundation, either version 3 of the License, or
484
+ * (at your option) any later version.
485
+ *
486
+ * This program is distributed in the hope that it will be useful,
487
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
488
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
489
+ * See the GNU General Public License for more details.
490
+ */
491
+ /**
492
+ * Generate a unique filename for an image based on its URL
493
+ */
494
+ function generateImageFilename(imageUrl) {
495
+ // Create hash from URL for uniqueness
496
+ const hash = createHash('md5').update(imageUrl).digest('hex').substring(0, 12);
497
+ // Try to extract extension from URL
498
+ const urlPath = new URL(imageUrl).pathname;
499
+ const ext = extname(urlPath) || '.jpg'; // Default to .jpg if no extension
500
+ return `${hash}${ext}`;
501
+ }
502
+ /**
503
+ * Download an image from WordPress and save it to public/images
504
+ * Returns the local path relative to public directory (e.g., /images/abc123.jpg)
505
+ * Returns null if download fails
506
+ */
507
+ async function downloadImageToPublic(imageUrl, config) {
508
+ try {
509
+ // Generate filename
510
+ const filename = generateImageFilename(imageUrl);
511
+ const localPath = join(config.outputDir, filename);
512
+ const publicPath = `/images/${filename}`;
513
+ // Check if image already exists
514
+ if (existsSync(localPath)) {
515
+ return publicPath;
516
+ }
517
+ // Ensure output directory exists
518
+ mkdirSync(config.outputDir, { recursive: true });
519
+ // Prepare fetch options with authentication if provided
520
+ const fetchOptions = {
521
+ method: 'GET',
522
+ headers: {
523
+ 'User-Agent': 'MarVAlt-Wadapter/1.0',
524
+ },
525
+ signal: AbortSignal.timeout(config.timeout || 30000), // 30 second timeout
526
+ };
527
+ // Add Basic Auth if credentials provided
528
+ if (config.username && config.password) {
529
+ const auth = Buffer.from(`${config.username}:${config.password}`).toString('base64');
530
+ fetchOptions.headers = {
531
+ ...fetchOptions.headers,
532
+ 'Authorization': `Basic ${auth}`,
533
+ };
534
+ }
535
+ // Download image
536
+ const response = await fetch(imageUrl, fetchOptions);
537
+ if (!response.ok) {
538
+ console.warn(`⚠️ Failed to download image: ${imageUrl} (Status: ${response.status})`);
539
+ return null;
540
+ }
541
+ // Get image as buffer
542
+ const arrayBuffer = await response.arrayBuffer();
543
+ const buffer = Buffer.from(arrayBuffer);
544
+ // Write to file
545
+ writeFileSync(localPath, buffer);
546
+ return publicPath;
547
+ }
548
+ catch (error) {
549
+ console.warn(`⚠️ Error downloading image ${imageUrl}:`, error instanceof Error ? error.message : String(error));
550
+ return null;
551
+ }
552
+ }
553
+ /**
554
+ * Batch download images with concurrency control
555
+ */
556
+ async function downloadImagesBatch(imageUrls, config, concurrency = 5) {
557
+ const results = new Map();
558
+ const uniqueUrls = Array.from(new Set(imageUrls)); // Deduplicate
559
+ // Process in batches
560
+ for (let i = 0; i < uniqueUrls.length; i += concurrency) {
561
+ const batch = uniqueUrls.slice(i, i + concurrency);
562
+ const batchResults = await Promise.all(batch.map(url => downloadImageToPublic(url, config).then(path => ({ url, path }))));
563
+ batchResults.forEach(({ url, path }) => {
564
+ results.set(url, path);
565
+ });
566
+ }
567
+ return results;
568
+ }
569
+
474
570
  /**
475
571
  * @license GPL-3.0-or-later
476
572
  *
@@ -490,8 +586,238 @@ function addBlockFromStack(endOffset) {
490
586
  // WordPress Static Data Generator
491
587
  class WordPressGenerator {
492
588
  constructor(config) {
589
+ this.imageDownloadCache = new Map();
493
590
  this.config = config;
494
591
  }
592
+ /**
593
+ * Check if an image has Cloudflare URL available
594
+ */
595
+ hasCloudflareImage(item) {
596
+ return !!(item?.cloudflare_image ||
597
+ item?.cloudflareImage ||
598
+ item?._embedded?.['wp:featuredmedia']?.[0]?.cloudflare_image ||
599
+ item?._embedded?.['wp:featuredmedia']?.[0]?.cloudflareImage);
600
+ }
601
+ /**
602
+ * Extract image URL from various sources (media item, featured media, etc.)
603
+ */
604
+ extractImageUrl(item) {
605
+ // Check for Cloudflare image first
606
+ if (item?.cloudflare_image)
607
+ return item.cloudflare_image;
608
+ if (item?.cloudflareImage)
609
+ return item.cloudflareImage;
610
+ // Check embedded featured media
611
+ const featuredMedia = item?._embedded?.['wp:featuredmedia']?.[0];
612
+ if (featuredMedia?.cloudflare_image)
613
+ return featuredMedia.cloudflare_image;
614
+ if (featuredMedia?.cloudflareImage)
615
+ return featuredMedia.cloudflareImage;
616
+ // Fallback to source_url
617
+ if (item?.source_url)
618
+ return item.source_url;
619
+ if (featuredMedia?.source_url)
620
+ return featuredMedia.source_url;
621
+ return null;
622
+ }
623
+ /**
624
+ * Process images in blocks recursively
625
+ */
626
+ extractImageUrlsFromBlocks(blocks) {
627
+ const urls = [];
628
+ const processBlock = (block) => {
629
+ if (!block || typeof block !== 'object')
630
+ return;
631
+ // Check block attributes for image URLs
632
+ if (block.attributes) {
633
+ const attrs = block.attributes;
634
+ // core/image block
635
+ if (attrs.url)
636
+ urls.push(attrs.url);
637
+ if (attrs.mediaUrl)
638
+ urls.push(attrs.mediaUrl);
639
+ // core/cover block
640
+ if (attrs.url)
641
+ urls.push(attrs.url);
642
+ if (attrs.backgroundImage)
643
+ urls.push(attrs.backgroundImage);
644
+ // core/media-text block
645
+ if (attrs.mediaUrl)
646
+ urls.push(attrs.mediaUrl);
647
+ if (attrs.mediaLink)
648
+ urls.push(attrs.mediaLink);
649
+ // core/gallery block
650
+ if (Array.isArray(attrs.images)) {
651
+ attrs.images.forEach((img) => {
652
+ if (img.url)
653
+ urls.push(img.url);
654
+ if (img.source_url)
655
+ urls.push(img.source_url);
656
+ });
657
+ }
658
+ }
659
+ // Process inner blocks recursively
660
+ if (Array.isArray(block.innerBlocks)) {
661
+ block.innerBlocks.forEach(processBlock);
662
+ }
663
+ };
664
+ blocks.forEach(processBlock);
665
+ return urls;
666
+ }
667
+ /**
668
+ * Process and download images if needed
669
+ */
670
+ async processImages(items, itemType, outputDir) {
671
+ // Only download if auth mode is not direct (i.e., behind Zero Trust)
672
+ const shouldDownload = this.config.authMode !== 'direct';
673
+ if (!shouldDownload) {
674
+ console.log(`📸 Image download skipped (direct mode - WordPress URLs accessible)`);
675
+ return;
676
+ }
677
+ // Collect all image URLs that need downloading
678
+ const imageUrls = [];
679
+ // Process media items
680
+ if (itemType === 'media') {
681
+ items.forEach((item) => {
682
+ if (!this.hasCloudflareImage(item)) {
683
+ const url = this.extractImageUrl(item);
684
+ if (url && !url.includes('imagedelivery.net')) {
685
+ imageUrls.push(url);
686
+ }
687
+ }
688
+ });
689
+ }
690
+ // Process posts/pages (featured media and block content)
691
+ if (itemType === 'posts' || itemType === 'pages') {
692
+ items.forEach((item) => {
693
+ // Featured media
694
+ const featuredMedia = item?._embedded?.['wp:featuredmedia']?.[0];
695
+ if (featuredMedia && !this.hasCloudflareImage(featuredMedia)) {
696
+ const url = this.extractImageUrl(featuredMedia);
697
+ if (url && !url.includes('imagedelivery.net')) {
698
+ imageUrls.push(url);
699
+ }
700
+ }
701
+ // Block content images
702
+ if (Array.isArray(item.blocks)) {
703
+ const blockUrls = this.extractImageUrlsFromBlocks(item.blocks);
704
+ blockUrls.forEach(url => {
705
+ if (url && !url.includes('imagedelivery.net') && !url.startsWith('/images/')) {
706
+ imageUrls.push(url);
707
+ }
708
+ });
709
+ }
710
+ });
711
+ }
712
+ if (imageUrls.length === 0) {
713
+ return;
714
+ }
715
+ console.log(`📥 Downloading ${imageUrls.length} image(s) for ${itemType}...`);
716
+ // Download images
717
+ const downloadConfig = {
718
+ outputDir,
719
+ username: this.config.username,
720
+ password: this.config.password,
721
+ timeout: 30000,
722
+ };
723
+ const downloadResults = await downloadImagesBatch(imageUrls, downloadConfig, 5);
724
+ // Cache results
725
+ downloadResults.forEach((path, url) => {
726
+ this.imageDownloadCache.set(url, path);
727
+ });
728
+ const successCount = Array.from(downloadResults.values()).filter(p => p !== null).length;
729
+ console.log(`✅ Downloaded ${successCount}/${imageUrls.length} image(s) for ${itemType}`);
730
+ }
731
+ /**
732
+ * Replace WordPress image URLs with local paths in an item
733
+ */
734
+ replaceImageUrls(item, itemType) {
735
+ const processed = { ...item };
736
+ // Process media items
737
+ if (itemType === 'media') {
738
+ if (!this.hasCloudflareImage(processed)) {
739
+ const originalUrl = this.extractImageUrl(processed);
740
+ if (originalUrl) {
741
+ const localPath = this.imageDownloadCache.get(originalUrl);
742
+ if (localPath) {
743
+ processed.source_url = localPath;
744
+ if (processed.media_details?.sizes) {
745
+ // Update sizes URLs
746
+ Object.keys(processed.media_details.sizes).forEach(size => {
747
+ const sizeData = processed.media_details.sizes[size];
748
+ if (sizeData.source_url) {
749
+ const sizeLocalPath = this.imageDownloadCache.get(sizeData.source_url);
750
+ if (sizeLocalPath) {
751
+ sizeData.source_url = sizeLocalPath;
752
+ }
753
+ }
754
+ });
755
+ }
756
+ }
757
+ }
758
+ }
759
+ }
760
+ // Process posts/pages
761
+ if (itemType === 'posts' || itemType === 'pages') {
762
+ // Featured media
763
+ if (processed._embedded?.['wp:featuredmedia']?.[0]) {
764
+ const featuredMedia = { ...processed._embedded['wp:featuredmedia'][0] };
765
+ if (!this.hasCloudflareImage(featuredMedia)) {
766
+ const originalUrl = this.extractImageUrl(featuredMedia);
767
+ if (originalUrl) {
768
+ const localPath = this.imageDownloadCache.get(originalUrl);
769
+ if (localPath) {
770
+ featuredMedia.source_url = localPath;
771
+ processed._embedded['wp:featuredmedia'] = [featuredMedia];
772
+ }
773
+ }
774
+ }
775
+ }
776
+ // Block content
777
+ if (Array.isArray(processed.blocks)) {
778
+ const replaceBlockUrls = (block) => {
779
+ const processedBlock = { ...block };
780
+ if (processedBlock.attributes) {
781
+ const attrs = { ...processedBlock.attributes };
782
+ // Replace various image URL fields
783
+ ['url', 'mediaUrl', 'backgroundImage', 'mediaLink'].forEach(field => {
784
+ if (attrs[field]) {
785
+ const localPath = this.imageDownloadCache.get(attrs[field]);
786
+ if (localPath) {
787
+ attrs[field] = localPath;
788
+ }
789
+ }
790
+ });
791
+ // Handle gallery images
792
+ if (Array.isArray(attrs.images)) {
793
+ attrs.images = attrs.images.map((img) => {
794
+ const processedImg = { ...img };
795
+ if (img.url) {
796
+ const localPath = this.imageDownloadCache.get(img.url);
797
+ if (localPath)
798
+ processedImg.url = localPath;
799
+ }
800
+ if (img.source_url) {
801
+ const localPath = this.imageDownloadCache.get(img.source_url);
802
+ if (localPath)
803
+ processedImg.source_url = localPath;
804
+ }
805
+ return processedImg;
806
+ });
807
+ }
808
+ processedBlock.attributes = attrs;
809
+ }
810
+ // Process inner blocks
811
+ if (Array.isArray(processedBlock.innerBlocks)) {
812
+ processedBlock.innerBlocks = processedBlock.innerBlocks.map(replaceBlockUrls);
813
+ }
814
+ return processedBlock;
815
+ };
816
+ processed.blocks = processed.blocks.map(replaceBlockUrls);
817
+ }
818
+ }
819
+ return processed;
820
+ }
495
821
  async generateStaticData() {
496
822
  const client = new WordPressClient(this.config);
497
823
  console.log('🚀 Starting WordPress static data generation...');
@@ -567,6 +893,26 @@ class WordPressGenerator {
567
893
  }
568
894
  // Fetch standard post types
569
895
  const data = await client.getAllData(fetchParams);
896
+ // Determine output directory for images (public/images relative to output file)
897
+ const outputDir = join(process.cwd(), dirname(this.config.outputPath), 'images');
898
+ // Process and download images if needed (only if not in direct mode)
899
+ if (this.config.authMode !== 'direct') {
900
+ console.log('📸 Processing images for fallback download...');
901
+ // Process media items
902
+ if (data.media && data.media.length > 0) {
903
+ await this.processImages(data.media, 'media', outputDir);
904
+ data.media = data.media.map(item => this.replaceImageUrls(item, 'media'));
905
+ }
906
+ // Process posts
907
+ if (data.posts && data.posts.length > 0) {
908
+ await this.processImages(data.posts, 'posts', outputDir);
909
+ data.posts = data.posts.map(item => this.replaceImageUrls(item, 'posts'));
910
+ }
911
+ // Process pages (will be processed again after blocks are fetched)
912
+ if (data.pages && data.pages.length > 0) {
913
+ await this.processImages(data.pages, 'pages', outputDir);
914
+ }
915
+ }
570
916
  // Determine front page if not already set from settings
571
917
  if (!frontPage) {
572
918
  if (settingsPageId) {
@@ -694,7 +1040,31 @@ class WordPressGenerator {
694
1040
  }
695
1041
  }
696
1042
  }
697
- return { ...p, blocks };
1043
+ // Process images in blocks if needed
1044
+ let processedPage = { ...p, blocks };
1045
+ if (this.config.authMode !== 'direct' && blocks.length > 0) {
1046
+ // Extract and download any new images from blocks
1047
+ const blockUrls = this.extractImageUrlsFromBlocks(blocks);
1048
+ const newUrls = blockUrls.filter(url => url &&
1049
+ !url.includes('imagedelivery.net') &&
1050
+ !url.startsWith('/images/') &&
1051
+ !this.imageDownloadCache.has(url));
1052
+ if (newUrls.length > 0) {
1053
+ const downloadConfig = {
1054
+ outputDir,
1055
+ username: this.config.username,
1056
+ password: this.config.password,
1057
+ timeout: 30000,
1058
+ };
1059
+ const downloadResults = await downloadImagesBatch(newUrls, downloadConfig, 5);
1060
+ downloadResults.forEach((path, url) => {
1061
+ this.imageDownloadCache.set(url, path);
1062
+ });
1063
+ }
1064
+ // Replace URLs in blocks
1065
+ processedPage = this.replaceImageUrls(processedPage, 'pages');
1066
+ }
1067
+ return processedPage;
698
1068
  })),
699
1069
  media: data.media,
700
1070
  categories: data.categories,
@@ -1 +1 @@
1
- {"version":3,"file":"generators.esm.js","sources":["../src/client/wordpress-client.ts","../node_modules/@wordpress/block-serialization-default-parser/build-module/index.js","../src/generators/wordpress/wordpress-generator.ts","../src/gravity-forms/gravity-forms-client.ts","../src/generators/gravity-forms/gravity-forms-generator.ts","../src/generators/form-protection/form-protection-generator.ts"],"sourcesContent":[null,"let document;\nlet offset;\nlet output;\nlet stack;\nconst tokenizer = /<!--\\s+(\\/)?wp:([a-z][a-z0-9_-]*\\/)?([a-z][a-z0-9_-]*)\\s+({(?:(?=([^}]+|}+(?=})|(?!}\\s+\\/?-->)[^])*)\\5|[^]*?)}\\s+)?(\\/)?-->/g;\nfunction Block(blockName, attrs, innerBlocks, innerHTML, innerContent) {\n return {\n blockName,\n attrs,\n innerBlocks,\n innerHTML,\n innerContent\n };\n}\nfunction Freeform(innerHTML) {\n return Block(null, {}, [], innerHTML, [innerHTML]);\n}\nfunction Frame(block, tokenStart, tokenLength, prevOffset, leadingHtmlStart) {\n return {\n block,\n tokenStart,\n tokenLength,\n prevOffset: prevOffset || tokenStart + tokenLength,\n leadingHtmlStart\n };\n}\nconst parse = (doc) => {\n document = doc;\n offset = 0;\n output = [];\n stack = [];\n tokenizer.lastIndex = 0;\n do {\n } while (proceed());\n return output;\n};\nfunction proceed() {\n const stackDepth = stack.length;\n const next = nextToken();\n const [tokenType, blockName, attrs, startOffset, tokenLength] = next;\n const leadingHtmlStart = startOffset > offset ? offset : null;\n switch (tokenType) {\n case \"no-more-tokens\":\n if (0 === stackDepth) {\n addFreeform();\n return false;\n }\n if (1 === stackDepth) {\n addBlockFromStack();\n return false;\n }\n while (0 < stack.length) {\n addBlockFromStack();\n }\n return false;\n case \"void-block\":\n if (0 === stackDepth) {\n if (null !== leadingHtmlStart) {\n output.push(\n Freeform(\n document.substr(\n leadingHtmlStart,\n startOffset - leadingHtmlStart\n )\n )\n );\n }\n output.push(Block(blockName, attrs, [], \"\", []));\n offset = startOffset + tokenLength;\n return true;\n }\n addInnerBlock(\n Block(blockName, attrs, [], \"\", []),\n startOffset,\n tokenLength\n );\n offset = startOffset + tokenLength;\n return true;\n case \"block-opener\":\n stack.push(\n Frame(\n Block(blockName, attrs, [], \"\", []),\n startOffset,\n tokenLength,\n startOffset + tokenLength,\n leadingHtmlStart\n )\n );\n offset = startOffset + tokenLength;\n return true;\n case \"block-closer\":\n if (0 === stackDepth) {\n addFreeform();\n return false;\n }\n if (1 === stackDepth) {\n addBlockFromStack(startOffset);\n offset = startOffset + tokenLength;\n return true;\n }\n const stackTop = stack.pop();\n const html = document.substr(\n stackTop.prevOffset,\n startOffset - stackTop.prevOffset\n );\n stackTop.block.innerHTML += html;\n stackTop.block.innerContent.push(html);\n stackTop.prevOffset = startOffset + tokenLength;\n addInnerBlock(\n stackTop.block,\n stackTop.tokenStart,\n stackTop.tokenLength,\n startOffset + tokenLength\n );\n offset = startOffset + tokenLength;\n return true;\n default:\n addFreeform();\n return false;\n }\n}\nfunction parseJSON(input) {\n try {\n return JSON.parse(input);\n } catch (e) {\n return null;\n }\n}\nfunction nextToken() {\n const matches = tokenizer.exec(document);\n if (null === matches) {\n return [\"no-more-tokens\", \"\", null, 0, 0];\n }\n const startedAt = matches.index;\n const [\n match,\n closerMatch,\n namespaceMatch,\n nameMatch,\n attrsMatch,\n ,\n voidMatch\n ] = matches;\n const length = match.length;\n const isCloser = !!closerMatch;\n const isVoid = !!voidMatch;\n const namespace = namespaceMatch || \"core/\";\n const name = namespace + nameMatch;\n const hasAttrs = !!attrsMatch;\n const attrs = hasAttrs ? parseJSON(attrsMatch) : {};\n if (isCloser && (isVoid || hasAttrs)) {\n }\n if (isVoid) {\n return [\"void-block\", name, attrs, startedAt, length];\n }\n if (isCloser) {\n return [\"block-closer\", name, null, startedAt, length];\n }\n return [\"block-opener\", name, attrs, startedAt, length];\n}\nfunction addFreeform(rawLength) {\n const length = rawLength ? rawLength : document.length - offset;\n if (0 === length) {\n return;\n }\n output.push(Freeform(document.substr(offset, length)));\n}\nfunction addInnerBlock(block, tokenStart, tokenLength, lastOffset) {\n const parent = stack[stack.length - 1];\n parent.block.innerBlocks.push(block);\n const html = document.substr(\n parent.prevOffset,\n tokenStart - parent.prevOffset\n );\n if (html) {\n parent.block.innerHTML += html;\n parent.block.innerContent.push(html);\n }\n parent.block.innerContent.push(null);\n parent.prevOffset = lastOffset ? lastOffset : tokenStart + tokenLength;\n}\nfunction addBlockFromStack(endOffset) {\n const { block, leadingHtmlStart, prevOffset, tokenStart } = stack.pop();\n const html = endOffset ? document.substr(prevOffset, endOffset - prevOffset) : document.substr(prevOffset);\n if (html) {\n block.innerHTML += html;\n block.innerContent.push(html);\n }\n if (null !== leadingHtmlStart) {\n output.push(\n Freeform(\n document.substr(\n leadingHtmlStart,\n tokenStart - leadingHtmlStart\n )\n )\n );\n }\n output.push(block);\n}\nexport {\n parse\n};\n//# sourceMappingURL=index.js.map\n",null,null,null,null],"names":["parseBlocks"],"mappings":"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","x_google_ignoreList":[1]}
1
+ {"version":3,"file":"generators.esm.js","sources":["../src/client/wordpress-client.ts","../node_modules/@wordpress/block-serialization-default-parser/build-module/index.js","../src/utils/imageDownloader.ts","../src/generators/wordpress/wordpress-generator.ts","../src/gravity-forms/gravity-forms-client.ts","../src/generators/gravity-forms/gravity-forms-generator.ts","../src/generators/form-protection/form-protection-generator.ts"],"sourcesContent":[null,"let document;\nlet offset;\nlet output;\nlet stack;\nconst tokenizer = /<!--\\s+(\\/)?wp:([a-z][a-z0-9_-]*\\/)?([a-z][a-z0-9_-]*)\\s+({(?:(?=([^}]+|}+(?=})|(?!}\\s+\\/?-->)[^])*)\\5|[^]*?)}\\s+)?(\\/)?-->/g;\nfunction Block(blockName, attrs, innerBlocks, innerHTML, innerContent) {\n return {\n blockName,\n attrs,\n innerBlocks,\n innerHTML,\n innerContent\n };\n}\nfunction Freeform(innerHTML) {\n return Block(null, {}, [], innerHTML, [innerHTML]);\n}\nfunction Frame(block, tokenStart, tokenLength, prevOffset, leadingHtmlStart) {\n return {\n block,\n tokenStart,\n tokenLength,\n prevOffset: prevOffset || tokenStart + tokenLength,\n leadingHtmlStart\n };\n}\nconst parse = (doc) => {\n document = doc;\n offset = 0;\n output = [];\n stack = [];\n tokenizer.lastIndex = 0;\n do {\n } while (proceed());\n return output;\n};\nfunction proceed() {\n const stackDepth = stack.length;\n const next = nextToken();\n const [tokenType, blockName, attrs, startOffset, tokenLength] = next;\n const leadingHtmlStart = startOffset > offset ? offset : null;\n switch (tokenType) {\n case \"no-more-tokens\":\n if (0 === stackDepth) {\n addFreeform();\n return false;\n }\n if (1 === stackDepth) {\n addBlockFromStack();\n return false;\n }\n while (0 < stack.length) {\n addBlockFromStack();\n }\n return false;\n case \"void-block\":\n if (0 === stackDepth) {\n if (null !== leadingHtmlStart) {\n output.push(\n Freeform(\n document.substr(\n leadingHtmlStart,\n startOffset - leadingHtmlStart\n )\n )\n );\n }\n output.push(Block(blockName, attrs, [], \"\", []));\n offset = startOffset + tokenLength;\n return true;\n }\n addInnerBlock(\n Block(blockName, attrs, [], \"\", []),\n startOffset,\n tokenLength\n );\n offset = startOffset + tokenLength;\n return true;\n case \"block-opener\":\n stack.push(\n Frame(\n Block(blockName, attrs, [], \"\", []),\n startOffset,\n tokenLength,\n startOffset + tokenLength,\n leadingHtmlStart\n )\n );\n offset = startOffset + tokenLength;\n return true;\n case \"block-closer\":\n if (0 === stackDepth) {\n addFreeform();\n return false;\n }\n if (1 === stackDepth) {\n addBlockFromStack(startOffset);\n offset = startOffset + tokenLength;\n return true;\n }\n const stackTop = stack.pop();\n const html = document.substr(\n stackTop.prevOffset,\n startOffset - stackTop.prevOffset\n );\n stackTop.block.innerHTML += html;\n stackTop.block.innerContent.push(html);\n stackTop.prevOffset = startOffset + tokenLength;\n addInnerBlock(\n stackTop.block,\n stackTop.tokenStart,\n stackTop.tokenLength,\n startOffset + tokenLength\n );\n offset = startOffset + tokenLength;\n return true;\n default:\n addFreeform();\n return false;\n }\n}\nfunction parseJSON(input) {\n try {\n return JSON.parse(input);\n } catch (e) {\n return null;\n }\n}\nfunction nextToken() {\n const matches = tokenizer.exec(document);\n if (null === matches) {\n return [\"no-more-tokens\", \"\", null, 0, 0];\n }\n const startedAt = matches.index;\n const [\n match,\n closerMatch,\n namespaceMatch,\n nameMatch,\n attrsMatch,\n ,\n voidMatch\n ] = matches;\n const length = match.length;\n const isCloser = !!closerMatch;\n const isVoid = !!voidMatch;\n const namespace = namespaceMatch || \"core/\";\n const name = namespace + nameMatch;\n const hasAttrs = !!attrsMatch;\n const attrs = hasAttrs ? parseJSON(attrsMatch) : {};\n if (isCloser && (isVoid || hasAttrs)) {\n }\n if (isVoid) {\n return [\"void-block\", name, attrs, startedAt, length];\n }\n if (isCloser) {\n return [\"block-closer\", name, null, startedAt, length];\n }\n return [\"block-opener\", name, attrs, startedAt, length];\n}\nfunction addFreeform(rawLength) {\n const length = rawLength ? rawLength : document.length - offset;\n if (0 === length) {\n return;\n }\n output.push(Freeform(document.substr(offset, length)));\n}\nfunction addInnerBlock(block, tokenStart, tokenLength, lastOffset) {\n const parent = stack[stack.length - 1];\n parent.block.innerBlocks.push(block);\n const html = document.substr(\n parent.prevOffset,\n tokenStart - parent.prevOffset\n );\n if (html) {\n parent.block.innerHTML += html;\n parent.block.innerContent.push(html);\n }\n parent.block.innerContent.push(null);\n parent.prevOffset = lastOffset ? lastOffset : tokenStart + tokenLength;\n}\nfunction addBlockFromStack(endOffset) {\n const { block, leadingHtmlStart, prevOffset, tokenStart } = stack.pop();\n const html = endOffset ? document.substr(prevOffset, endOffset - prevOffset) : document.substr(prevOffset);\n if (html) {\n block.innerHTML += html;\n block.innerContent.push(html);\n }\n if (null !== leadingHtmlStart) {\n output.push(\n Freeform(\n document.substr(\n leadingHtmlStart,\n tokenStart - leadingHtmlStart\n )\n )\n );\n }\n output.push(block);\n}\nexport {\n parse\n};\n//# sourceMappingURL=index.js.map\n",null,null,null,null,null],"names":["parseBlocks"],"mappings":"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","x_google_ignoreList":[1]}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @license GPL-3.0-or-later
3
+ *
4
+ * This file is part of the MarVAlt Open SDK.
5
+ * Copyright (c) 2025 Vibune Pty Ltd.
6
+ *
7
+ * This program is free software: you can redistribute it and/or modify
8
+ * it under the terms of the GNU General Public License as published by
9
+ * the Free Software Foundation, either version 3 of the License, or
10
+ * (at your option) any later version.
11
+ *
12
+ * This program is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
+ * See the GNU General Public License for more details.
16
+ */
17
+ export interface ImageDownloadConfig {
18
+ outputDir: string;
19
+ username?: string;
20
+ password?: string;
21
+ timeout?: number;
22
+ }
23
+ /**
24
+ * Download an image from WordPress and save it to public/images
25
+ * Returns the local path relative to public directory (e.g., /images/abc123.jpg)
26
+ * Returns null if download fails
27
+ */
28
+ export declare function downloadImageToPublic(imageUrl: string, config: ImageDownloadConfig): Promise<string | null>;
29
+ /**
30
+ * Batch download images with concurrency control
31
+ */
32
+ export declare function downloadImagesBatch(imageUrls: string[], config: ImageDownloadConfig, concurrency?: number): Promise<Map<string, string | null>>;
33
+ //# sourceMappingURL=imageDownloader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imageDownloader.d.ts","sourceRoot":"","sources":["../../src/utils/imageDownloader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAgBD;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqDxB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,EAAE,mBAAmB,EAC3B,WAAW,GAAE,MAAU,GACtB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAiBrC"}