@edc4it/reveal.js-railroad
Version:
[](#)
111 lines (110 loc) • 5.32 kB
JavaScript
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode("svg.railroad-diagram{background-color:#f5f2f0}svg.railroad-diagram path{stroke-width:3;stroke:#000;fill:#0000}svg.railroad-diagram text{font:700 14px monospace;text-anchor:middle;white-space:pre}svg.railroad-diagram text.diagram-text{font-size:12px}svg.railroad-diagram text.diagram-arrow{font-size:16px}svg.railroad-diagram text.label{text-anchor:start}svg.railroad-diagram text.comment{font:italic 12px monospace}svg.railroad-diagram rect{stroke-width:3;stroke:#000;fill:#cfc}svg.railroad-diagram rect.group-box{stroke:gray;stroke-dasharray:10 5;fill:none}svg.railroad-diagram path.diagram-text{stroke-width:3;stroke:#000;fill:#fff;cursor:help}svg.railroad-diagram g.diagram-text:hover path.diagram-text{fill:#eee}:root{--rr-bg: ;--rr-textFill: ;--rr-pathStroke: ;--rr-rectFill: ;--rr-rectStroke: }svg.railroad-diagram{background-color:var(--rr-bg);width:100%;height:100%;max-height:100%}svg.railroad-diagram path{stroke:var(--rr-pathStroke)}svg.railroad-diagram rect{stroke-width:2;stroke:var(--rr-rectStroke);fill:var(--rr-rectFill)}svg.railroad-diagram text{fill:var(--rr-textFill)}")),document.head.appendChild(r)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
function applyStyle(e, t) {
e.style.setProperty("--rr-bg", t.bg), e.style.setProperty("--rr-textFill", t.textFill), e.style.setProperty("--rr-pathStroke", t.pathStroke), e.style.setProperty("--rr-rectFill", t.rectFill), e.style.setProperty("--rr-rectStroke", t.rectStroke);
}
async function run(revealElement, options) {
applyStyle(revealElement, options);
const rr = await import("./railroad-D1NexFHb.mjs");
Object.assign(window, rr.default), document.querySelectorAll("script[type='application/railroad']").forEach((s) => {
try {
const r = eval(s.innerHTML), div = document.createElement("div");
div.classList.add("railroad-diagram"), r.addTo(div), s.replaceWith(div);
} catch (e) {
console.error("error with railroad diagrams: ", e);
}
});
}
function getDefaultExportFromCjs(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var isMergeableObject = function e(t) {
return isNonNullObject(t) && !isSpecial(t);
};
function isNonNullObject(e) {
return !!e && typeof e == "object";
}
function isSpecial(e) {
var t = Object.prototype.toString.call(e);
return t === "[object RegExp]" || t === "[object Date]" || isReactElement(e);
}
var canUseSymbol = typeof Symbol == "function" && Symbol.for, REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for("react.element") : 60103;
function isReactElement(e) {
return e.$$typeof === REACT_ELEMENT_TYPE;
}
function emptyTarget(e) {
return Array.isArray(e) ? [] : {};
}
function cloneUnlessOtherwiseSpecified(e, t) {
return t.clone !== !1 && t.isMergeableObject(e) ? deepmerge(emptyTarget(e), e, t) : e;
}
function defaultArrayMerge(e, t, n) {
return e.concat(t).map(function(l) {
return cloneUnlessOtherwiseSpecified(l, n);
});
}
function getMergeFunction(e, t) {
if (!t.customMerge)
return deepmerge;
var n = t.customMerge(e);
return typeof n == "function" ? n : deepmerge;
}
function getEnumerableOwnPropertySymbols(e) {
return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(e).filter(function(t) {
return Object.propertyIsEnumerable.call(e, t);
}) : [];
}
function getKeys(e) {
return Object.keys(e).concat(getEnumerableOwnPropertySymbols(e));
}
function propertyIsOnObject(e, t) {
try {
return t in e;
} catch {
return !1;
}
}
function propertyIsUnsafe(e, t) {
return propertyIsOnObject(e, t) && !(Object.hasOwnProperty.call(e, t) && Object.propertyIsEnumerable.call(e, t));
}
function mergeObject(e, t, n) {
var l = {};
return n.isMergeableObject(e) && getKeys(e).forEach(function(c) {
l[c] = cloneUnlessOtherwiseSpecified(e[c], n);
}), getKeys(t).forEach(function(c) {
propertyIsUnsafe(e, c) || (propertyIsOnObject(e, c) && n.isMergeableObject(t[c]) ? l[c] = getMergeFunction(c, n)(e[c], t[c], n) : l[c] = cloneUnlessOtherwiseSpecified(t[c], n));
}), l;
}
function deepmerge(e, t, n) {
n = n || {}, n.arrayMerge = n.arrayMerge || defaultArrayMerge, n.isMergeableObject = n.isMergeableObject || isMergeableObject, n.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;
var l = Array.isArray(t), c = Array.isArray(e), a = l === c;
return a ? l ? n.arrayMerge(e, t, n) : mergeObject(e, t, n) : cloneUnlessOtherwiseSpecified(t, n);
}
deepmerge.all = function e(t, n) {
if (!Array.isArray(t))
throw new Error("first argument should be an array");
return t.reduce(function(l, c) {
return deepmerge(l, c, n);
}, {});
};
var deepmerge_1 = deepmerge, cjs = deepmerge_1;
const merge = /* @__PURE__ */ getDefaultExportFromCjs(cjs), defaultOptions = {
bg: "unset",
pathStroke: "#82e4ff",
rectFill: "#00a6ff",
rectStroke: "white",
textFill: "white"
}, plugin = () => ({
id: "railroad",
init: (e) => {
const t = e.getRevealElement();
if (!t)
console.error("Cannot find reveal element");
else {
const l = e.getConfig().railroad ?? {}, c = merge(defaultOptions, l);
run(t, c);
}
}
});
export {
plugin as default
};