@revolist/svelte-datagrid
Version:
Svelte DataGrid Spreadsheet component with native cell render support
244 lines (243 loc) • 16.6 kB
JavaScript
(function(global, factory) {
typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("@revolist/revogrid/loader"), require("svelte/internal/disclose-version"), require("svelte/internal/flags/legacy"), require("svelte/internal/client"), require("svelte")) : typeof define === "function" && define.amd ? define(["exports", "@revolist/revogrid/loader", "svelte/internal/disclose-version", "svelte/internal/flags/legacy", "svelte/internal/client", "svelte"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.SvelteDatagrid = {}, global.loader, null, null, global.$, global.svelte));
})(this, (function(exports2, loader, discloseVersion, legacy, $, svelte) {
"use strict";
function _interopNamespaceDefault(e) {
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
if (e) {
for (const k in e) {
if (k !== "default") {
const d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: () => e[k]
});
}
}
}
n.default = e;
return Object.freeze(n);
}
const $__namespace = /* @__PURE__ */ _interopNamespaceDefault($);
var root = $__namespace.from_html(`<revo-grid><!></revo-grid>`, 2);
function RevoGrid($$anchor, $$props) {
$__namespace.push($$props, false);
let __ref = $__namespace.mutable_source();
const dispatch = svelte.createEventDispatcher();
let rowHeaders = $__namespace.prop($$props, "rowHeaders", 8, void 0);
let frameSize = $__namespace.prop($$props, "frameSize", 8, void 0);
let rowSize = $__namespace.prop($$props, "rowSize", 8, void 0);
let colSize = $__namespace.prop($$props, "colSize", 8, void 0);
let range = $__namespace.prop($$props, "range", 8, void 0);
let readonly = $__namespace.prop($$props, "readonly", 8, void 0);
let resize = $__namespace.prop($$props, "resize", 8, void 0);
let canFocus = $__namespace.prop($$props, "canFocus", 8, void 0);
let useClipboard = $__namespace.prop($$props, "useClipboard", 8, void 0);
let columns = $__namespace.prop($$props, "columns", 8, void 0);
let source = $__namespace.prop($$props, "source", 8, void 0);
let pinnedTopSource = $__namespace.prop($$props, "pinnedTopSource", 8, void 0);
let pinnedBottomSource = $__namespace.prop($$props, "pinnedBottomSource", 8, void 0);
let rowDefinitions = $__namespace.prop($$props, "rowDefinitions", 8, void 0);
let editors = $__namespace.prop($$props, "editors", 8, void 0);
let applyOnClose = $__namespace.prop($$props, "applyOnClose", 8, void 0);
let plugins = $__namespace.prop($$props, "plugins", 8, void 0);
let columnTypes = $__namespace.prop($$props, "columnTypes", 8, void 0);
let theme = $__namespace.prop($$props, "theme", 8, void 0);
let rowClass = $__namespace.prop($$props, "rowClass", 8, void 0);
let autoSizeColumn = $__namespace.prop($$props, "autoSizeColumn", 8, void 0);
let filter = $__namespace.prop($$props, "filter", 8, void 0);
let sorting = $__namespace.prop($$props, "sorting", 8, void 0);
let focusTemplate = $__namespace.prop($$props, "focusTemplate", 8, void 0);
let canMoveColumns = $__namespace.prop($$props, "canMoveColumns", 8, void 0);
let trimmedRows = $__namespace.prop($$props, "trimmedRows", 8, void 0);
let exporting = $__namespace.prop($$props, "exporting", 8, void 0);
let grouping = $__namespace.prop($$props, "grouping", 8, void 0);
let stretch = $__namespace.prop($$props, "stretch", 8, void 0);
let additionalData = $__namespace.prop($$props, "additionalData", 8, void 0);
let disableVirtualX = $__namespace.prop($$props, "disableVirtualX", 8, void 0);
let disableVirtualY = $__namespace.prop($$props, "disableVirtualY", 8, void 0);
let hideAttribution = $__namespace.prop($$props, "hideAttribution", 8, void 0);
let jobsBeforeRender = $__namespace.prop($$props, "jobsBeforeRender", 8, void 0);
let registerVNode = $__namespace.prop($$props, "registerVNode", 8, void 0);
let accessible = $__namespace.prop($$props, "accessible", 8, void 0);
let rtl = $__namespace.prop($$props, "rtl", 8, void 0);
let canDrag = $__namespace.prop($$props, "canDrag", 8, void 0);
const refresh = (...args) => $__namespace.get(__ref).refresh(...args);
const setDataAt = (...args) => $__namespace.get(__ref).setDataAt(...args);
const scrollToRow = (...args) => $__namespace.get(__ref).scrollToRow(...args);
const scrollToColumnIndex = (...args) => $__namespace.get(__ref).scrollToColumnIndex(...args);
const scrollToColumnProp = (...args) => $__namespace.get(__ref).scrollToColumnProp(...args);
const updateColumns = (...args) => $__namespace.get(__ref).updateColumns(...args);
const addTrimmed = (...args) => $__namespace.get(__ref).addTrimmed(...args);
const scrollToCoordinate = (...args) => $__namespace.get(__ref).scrollToCoordinate(...args);
const setCellEdit = (...args) => $__namespace.get(__ref).setCellEdit(...args);
const setCellsFocus = (...args) => $__namespace.get(__ref).setCellsFocus(...args);
const getSource = (...args) => $__namespace.get(__ref).getSource(...args);
const getVisibleSource = (...args) => $__namespace.get(__ref).getVisibleSource(...args);
const getSourceStore = (...args) => $__namespace.get(__ref).getSourceStore(...args);
const getColumnStore = (...args) => $__namespace.get(__ref).getColumnStore(...args);
const updateColumnSorting = (...args) => $__namespace.get(__ref).updateColumnSorting(...args);
const clearSorting = (...args) => $__namespace.get(__ref).clearSorting(...args);
const getColumns = (...args) => $__namespace.get(__ref).getColumns(...args);
const clearFocus = (...args) => $__namespace.get(__ref).clearFocus(...args);
const getPlugins = (...args) => $__namespace.get(__ref).getPlugins(...args);
const getFocused = (...args) => $__namespace.get(__ref).getFocused(...args);
const getContentSize = (...args) => $__namespace.get(__ref).getContentSize(...args);
const getSelectedRange = (...args) => $__namespace.get(__ref).getSelectedRange(...args);
const refreshExtraElements = (...args) => $__namespace.get(__ref).refreshExtraElements(...args);
const getProviders = (...args) => $__namespace.get(__ref).getProviders(...args);
const getWebComponent = () => $__namespace.get(__ref);
svelte.onMount(() => {
});
const onEvent = (e) => {
e.stopPropagation();
dispatch(e.type, e.detail);
};
$__namespace.init();
var revo_grid = root();
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "row-headers", rowHeaders()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "frame-size", frameSize()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "row-size", rowSize()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "col-size", colSize()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "range", range()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "readonly", readonly()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "resize", resize()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "can-focus", canFocus()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "use-clipboard", useClipboard()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "columns", columns()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "source", source()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "pinned-top-source", pinnedTopSource()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "pinned-bottom-source", pinnedBottomSource()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "row-definitions", rowDefinitions()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "editors", editors()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "apply-on-close", applyOnClose()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "plugins", plugins()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "column-types", columnTypes()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "theme", theme()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "row-class", rowClass()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "auto-size-column", autoSizeColumn()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "filter", filter()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "sorting", sorting()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "focus-template", focusTemplate()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "can-move-columns", canMoveColumns()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "trimmed-rows", trimmedRows()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "exporting", exporting()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "grouping", grouping()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "stretch", stretch()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "additional-data", additionalData()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "disable-virtual-x", disableVirtualX()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "disable-virtual-y", disableVirtualY()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "hide-attribution", hideAttribution()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "jobs-before-render", jobsBeforeRender()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "register-v-node", registerVNode()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "accessible", accessible()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "rtl", rtl()));
$__namespace.template_effect(() => $__namespace.set_custom_element_data(revo_grid, "can-drag", canDrag()));
var node = $__namespace.child(revo_grid);
$__namespace.slot(node, $$props, "default", {}, null);
$__namespace.reset(revo_grid);
$__namespace.bind_this(revo_grid, ($$value) => $__namespace.set(__ref, $$value), () => $__namespace.get(__ref));
$__namespace.event("contentsizechanged", revo_grid, onEvent);
$__namespace.event("beforeedit", revo_grid, onEvent);
$__namespace.event("beforerangeedit", revo_grid, onEvent);
$__namespace.event("afteredit", revo_grid, onEvent);
$__namespace.event("beforeautofill", revo_grid, onEvent);
$__namespace.event("beforerange", revo_grid, onEvent);
$__namespace.event("afterfocus", revo_grid, onEvent);
$__namespace.event("roworderchanged", revo_grid, onEvent);
$__namespace.event("beforesorting", revo_grid, onEvent);
$__namespace.event("beforesourcesortingapply", revo_grid, onEvent);
$__namespace.event("beforesortingapply", revo_grid, onEvent);
$__namespace.event("rowdragstart", revo_grid, onEvent);
$__namespace.event("headerclick", revo_grid, onEvent);
$__namespace.event("beforecellfocus", revo_grid, onEvent);
$__namespace.event("beforefocuslost", revo_grid, onEvent);
$__namespace.event("beforesourceset", revo_grid, onEvent);
$__namespace.event("beforeanysource", revo_grid, onEvent);
$__namespace.event("aftersourceset", revo_grid, onEvent);
$__namespace.event("afteranysource", revo_grid, onEvent);
$__namespace.event("beforecolumnsset", revo_grid, onEvent);
$__namespace.event("beforecolumnapplied", revo_grid, onEvent);
$__namespace.event("aftercolumnsset", revo_grid, onEvent);
$__namespace.event("beforefilterapply", revo_grid, onEvent);
$__namespace.event("beforefiltertrimmed", revo_grid, onEvent);
$__namespace.event("beforetrimmed", revo_grid, onEvent);
$__namespace.event("aftertrimmed", revo_grid, onEvent);
$__namespace.event("viewportscroll", revo_grid, onEvent);
$__namespace.event("beforeexport", revo_grid, onEvent);
$__namespace.event("beforeeditstart", revo_grid, onEvent);
$__namespace.event("aftercolumnresize", revo_grid, onEvent);
$__namespace.event("beforerowdefinition", revo_grid, onEvent);
$__namespace.event("filterconfigchanged", revo_grid, onEvent);
$__namespace.event("sortingconfigchanged", revo_grid, onEvent);
$__namespace.event("rowheaderschanged", revo_grid, onEvent);
$__namespace.event("beforegridrender", revo_grid, onEvent);
$__namespace.event("aftergridrender", revo_grid, onEvent);
$__namespace.event("aftergridinit", revo_grid, onEvent);
$__namespace.event("additionaldatachanged", revo_grid, onEvent);
$__namespace.event("afterthemechanged", revo_grid, onEvent);
$__namespace.event("created", revo_grid, onEvent);
$__namespace.append($$anchor, revo_grid);
$__namespace.bind_prop($$props, "refresh", refresh);
$__namespace.bind_prop($$props, "setDataAt", setDataAt);
$__namespace.bind_prop($$props, "scrollToRow", scrollToRow);
$__namespace.bind_prop($$props, "scrollToColumnIndex", scrollToColumnIndex);
$__namespace.bind_prop($$props, "scrollToColumnProp", scrollToColumnProp);
$__namespace.bind_prop($$props, "updateColumns", updateColumns);
$__namespace.bind_prop($$props, "addTrimmed", addTrimmed);
$__namespace.bind_prop($$props, "scrollToCoordinate", scrollToCoordinate);
$__namespace.bind_prop($$props, "setCellEdit", setCellEdit);
$__namespace.bind_prop($$props, "setCellsFocus", setCellsFocus);
$__namespace.bind_prop($$props, "getSource", getSource);
$__namespace.bind_prop($$props, "getVisibleSource", getVisibleSource);
$__namespace.bind_prop($$props, "getSourceStore", getSourceStore);
$__namespace.bind_prop($$props, "getColumnStore", getColumnStore);
$__namespace.bind_prop($$props, "updateColumnSorting", updateColumnSorting);
$__namespace.bind_prop($$props, "clearSorting", clearSorting);
$__namespace.bind_prop($$props, "getColumns", getColumns);
$__namespace.bind_prop($$props, "clearFocus", clearFocus);
$__namespace.bind_prop($$props, "getPlugins", getPlugins);
$__namespace.bind_prop($$props, "getFocused", getFocused);
$__namespace.bind_prop($$props, "getContentSize", getContentSize);
$__namespace.bind_prop($$props, "getSelectedRange", getSelectedRange);
$__namespace.bind_prop($$props, "refreshExtraElements", refreshExtraElements);
$__namespace.bind_prop($$props, "getProviders", getProviders);
$__namespace.bind_prop($$props, "getWebComponent", getWebComponent);
return $__namespace.pop({
refresh,
setDataAt,
scrollToRow,
scrollToColumnIndex,
scrollToColumnProp,
updateColumns,
addTrimmed,
scrollToCoordinate,
setCellEdit,
setCellsFocus,
getSource,
getVisibleSource,
getSourceStore,
getColumnStore,
updateColumnSorting,
clearSorting,
getColumns,
clearFocus,
getPlugins,
getFocused,
getContentSize,
getSelectedRange,
refreshExtraElements,
getProviders,
getWebComponent
});
}
loader.defineCustomElements();
exports2.RevoGrid = RevoGrid;
Object.keys(loader).forEach((k) => {
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports2, k)) Object.defineProperty(exports2, k, {
enumerable: true,
get: () => loader[k]
});
});
Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
}));