Merge branch 'module/spreadsheet' into dev
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { onMount, onDestroy } from 'svelte';
|
import { onMount, onDestroy } from 'svelte';
|
||||||
|
import { t } from '../translations.svelte';
|
||||||
|
|
||||||
let { classes='markdown', markdown=$bindable({source:'',rendered:''}), onclick = null, oncontextmenu = null, title='', wrapper = 'div' } = $props();
|
let { classes='markdown', markdown=$bindable({source:'',rendered:''}), onclick = null, oncontextmenu = null, title='', wrapper = 'div' } = $props();
|
||||||
let jspreadsheet = null;
|
let jspreadsheet = null;
|
||||||
const regex = /@startsheet[\s\S]*?@endsheet/g;
|
const regex = /@startsheet[\s\S]*?@endsheet/g;
|
||||||
@@ -29,15 +31,17 @@
|
|||||||
if (!markdown.rendered) return;
|
if (!markdown.rendered) return;
|
||||||
let sheets = document.getElementsByClassName('spreadsheet');
|
let sheets = document.getElementsByClassName('spreadsheet');
|
||||||
for (let i = 0; i < sheets.length; i++) {
|
for (let i = 0; i < sheets.length; i++) {
|
||||||
|
let sheet = sheets[i];
|
||||||
|
let raw = sheet.innerHTML.trim();
|
||||||
if (!jspreadsheet) {
|
if (!jspreadsheet) {
|
||||||
|
sheet.innerHTML = t('Loading spreadsheet library…');
|
||||||
let module = await import('jspreadsheet-ce'); // path or package name
|
let module = await import('jspreadsheet-ce'); // path or package name
|
||||||
await import('jspreadsheet-ce/dist/jspreadsheet.css');
|
await import('jspreadsheet-ce/dist/jspreadsheet.css');
|
||||||
jspreadsheet = module.default ?? module;
|
jspreadsheet = module.default ?? module;
|
||||||
}
|
}
|
||||||
if (!jspreadsheet) break; // break loop if library fails to load
|
if (!jspreadsheet) break; // break loop if library fails to load
|
||||||
|
sheet.innerHTML = t('Processing spreadsheet data…');
|
||||||
|
|
||||||
let sheet = sheets[i];
|
|
||||||
let raw = sheet.innerHTML.trim();
|
|
||||||
|
|
||||||
// Use parseCSV from the helpers
|
// Use parseCSV from the helpers
|
||||||
const parsed = jspreadsheet.helpers.parseCSV(raw, '|');
|
const parsed = jspreadsheet.helpers.parseCSV(raw, '|');
|
||||||
|
|||||||
Reference in New Issue
Block a user