@diagrammo/dgmo-standalone 0.64.0 → 0.64.1
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.
- package/README.md +82 -0
- package/dist/auto.js +1 -1
- package/dist/element.js +1 -1
- package/package.json +2 -1
package/README.md
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# @diagrammo/dgmo-standalone
|
|
2
|
+
|
|
3
|
+
**Diagrams in a plain web page. One `<script>` tag, no build step.**
|
|
4
|
+
|
|
5
|
+
Write a diagram as text, get an SVG. No npm install, no bundler, no framework —
|
|
6
|
+
paste a script tag into a page you already have.
|
|
7
|
+
|
|
8
|
+
```html
|
|
9
|
+
<script src="https://cdn.jsdelivr.net/npm/@diagrammo/dgmo-standalone/dist/element.js"></script>
|
|
10
|
+
|
|
11
|
+
<dgmo-diagram palette="slate">pie Crew Rations
|
|
12
|
+
|
|
13
|
+
Salt Pork: 34
|
|
14
|
+
Hardtack: 28
|
|
15
|
+
Rum: 17
|
|
16
|
+
Limes: 21</dgmo-diagram>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
That is the whole install.
|
|
20
|
+
|
|
21
|
+
## Two ways in
|
|
22
|
+
|
|
23
|
+
**`element.js`** gives you a `<dgmo-diagram>` element to write in your own
|
|
24
|
+
markup — use it when you control the HTML.
|
|
25
|
+
|
|
26
|
+
**`auto.js`** scans the page for `<pre class="dgmo">` blocks and draws them —
|
|
27
|
+
use it when you *don't* control the HTML, which is the usual case with markdown,
|
|
28
|
+
a CMS, or a static-site generator emitting ```` ```dgmo ```` fences.
|
|
29
|
+
|
|
30
|
+
```html
|
|
31
|
+
<script src="https://cdn.jsdelivr.net/npm/@diagrammo/dgmo-standalone/dist/auto.js"></script>
|
|
32
|
+
|
|
33
|
+
<pre class="dgmo">bar Ship Stores
|
|
34
|
+
|
|
35
|
+
Salt Pork 34
|
|
36
|
+
Hardtack 28
|
|
37
|
+
Rum 17</pre>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Load one or the other, not both — each carries a complete copy of the renderer.
|
|
41
|
+
|
|
42
|
+
Optional styling for the auto-scanner lives at `dist/auto.css`; the element
|
|
43
|
+
brings its own.
|
|
44
|
+
|
|
45
|
+
## Pinning a version
|
|
46
|
+
|
|
47
|
+
The examples above float to the latest release, which is fine for a demo and a
|
|
48
|
+
poor idea for a page you will not revisit. Pin it:
|
|
49
|
+
|
|
50
|
+
```html
|
|
51
|
+
<!-- replace VERSION with the number shown at the top of this npm page -->
|
|
52
|
+
<script src="https://cdn.jsdelivr.net/npm/@diagrammo/dgmo-standalone@VERSION/dist/element.js"></script>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
unpkg works the same way — swap the host for `unpkg.com/`.
|
|
56
|
+
|
|
57
|
+
## What you get
|
|
58
|
+
|
|
59
|
+
40+ chart types from one text format: flowcharts, sequence diagrams,
|
|
60
|
+
timelines, org charts, gantt, maps, and the usual bar/line/pie family. The
|
|
61
|
+
renderer infers the chart type from what you wrote, so there is one syntax to
|
|
62
|
+
learn rather than one per chart.
|
|
63
|
+
|
|
64
|
+
Themes and palettes are attributes — `palette="slate"`, `theme="dark"`. Maps
|
|
65
|
+
fetch their basemaps on demand from `@diagrammo/dgmo` on the same CDN, so a page
|
|
66
|
+
with no map downloads no map data.
|
|
67
|
+
|
|
68
|
+
## When you want a different package
|
|
69
|
+
|
|
70
|
+
This one exists for the no-build case. Reach for a sibling instead when:
|
|
71
|
+
|
|
72
|
+
- **You are using npm and a bundler** → [`@diagrammo/dgmo`](https://www.npmjs.com/package/@diagrammo/dgmo), the library. It does not contain these two files, deliberately: they are a complete renderer twice over, and shipping them to every `npm install` meant 39% of the tarball for something no `import` could reach.
|
|
73
|
+
- **You are rendering markdown at build time** → [`remark-dgmo`](https://www.npmjs.com/package/remark-dgmo) and its wrappers for Astro, Docusaurus, Fumadocs, Nextra and VitePress. They draw the SVG during the build, so the reader downloads a picture and no renderer at all.
|
|
74
|
+
- **You want it on the command line** → [`@diagrammo/dgmo-cli`](https://www.npmjs.com/package/@diagrammo/dgmo-cli), or `brew install dgmo`.
|
|
75
|
+
|
|
76
|
+
## Links
|
|
77
|
+
|
|
78
|
+
- **Language reference and gallery** — <https://diagrammo.app>
|
|
79
|
+
- **Try it in the browser** — <https://online.diagrammo.app>
|
|
80
|
+
- **Issues** — <https://github.com/diagrammo/dgmo/issues>
|
|
81
|
+
|
|
82
|
+
MIT licensed. Bundles [Inter](https://rsms.me/inter/) (SIL Open Font License).
|
package/dist/auto.js
CHANGED
|
@@ -876,7 +876,7 @@ pre.dgmo, code.language-dgmo, pre > code.language-dgmo,
|
|
|
876
876
|
`)}var JY=h5t+`
|
|
877
877
|
`+WE+`
|
|
878
878
|
`+g5t(WE)+`
|
|
879
|
-
`;n1();var Ry="0.64.
|
|
879
|
+
`;n1();var Ry="0.64.1",y5t=200,b5t=1500,x5t="[dgmo]",w5t=/[\x00-\x1F--]/g,zE="dgmoAutoStyles";function E5t(...t){typeof console<"u"&&console.warn&&console.warn(x5t,...t)}function eV(t){t.querySelectorAll("script, foreignObject").forEach(r=>r.remove());let n=[t,...Array.from(t.querySelectorAll("*"))];for(let r of n){for(let o of Array.from(r.attributes))o.name.toLowerCase().startsWith("on")&&r.removeAttribute(o.name);if(r.hasAttribute("href")&&qi(r.getAttribute("href"))===null&&r.removeAttribute("href"),r.hasAttributeNS("http://www.w3.org/1999/xlink","href")){let o=r.getAttributeNS("http://www.w3.org/1999/xlink","href");qi(o)===null&&r.removeAttributeNS("http://www.w3.org/1999/xlink","href")}}}function YE(t){if(t==="light"||t==="dark"||t==="transparent")return t;if(typeof document>"u")return"light";let e=document.documentElement,n=e.getAttribute("data-theme");return n==="dark"?"dark":n==="light"?"light":e.classList.contains("dark")?"dark":e.classList.contains("light")?"light":typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function VE(){if(typeof document>"u")return;let t=document.documentElement;if(t?.dataset?.[zE]==="1")return;if(document.querySelector('link[rel="stylesheet"][href*="auto.css"]')){t&&t.dataset&&(t.dataset[zE]="1");return}let n=document.createElement("style");n.setAttribute("data-dgmo-auto",""),n.textContent=JY,document.head.appendChild(n),t&&t.dataset&&(t.dataset[zE]="1")}function nV(t){let e=t.split(`
|
|
880
880
|
`).map(n=>n.trim()).find(n=>n.length>0);return e?e.replace(w5t,"").slice(0,y5t):"DGMO diagram"}function rV(t){let e=t.showSource||t.showCopy||t.showExpand||t.showEditorLink,n=ZY(t.source,'<div class="dgmo-svg"></div>',{mode:e?"showcase":"diagram",showSource:t.showSource,showCopy:t.showCopy,showExpand:t.showExpand,showOpenInEditor:t.showEditorLink,legacyClassNames:["dgmo-rendered",t.themeClass]}),r=document.createElement("div");r.innerHTML=n;let o=r.firstElementChild;o.querySelector(".dgmo-svg")?.appendChild(t.svgEl);let a=o.querySelector("a.dgmo-open");return a&&(t.shareUrl?a.href=t.shareUrl:a.remove()),k5t(o),o}function k5t(t){t.addEventListener("click",n=>{S5t(n)});let e=()=>{t.querySelectorAll("details.dgmo-source-wrap[open]").forEach(n=>{n.open=!1})};t.addEventListener("mouseleave",()=>{t.contains(document.activeElement)||e()}),t.addEventListener("focusout",n=>{let r=n.relatedTarget;r&&t.contains(r)||t.matches(":hover")||e()})}async function S5t(t){let e=t.target;if(!e||typeof e.closest!="function")return;let n=e.closest(".dgmo-toolbar-btn");if(!n)return;let r=!!n.closest("summary");if(r&&t.preventDefault(),n.matches("button.dgmo-expand")){T5t(n);return}if(n.matches("button.dgmo-copy")){await M5t(n.dataset.dgmoSource??"")?(n.classList.add("dgmo-copy--success"),setTimeout(()=>n.classList.remove("dgmo-copy--success"),b5t)):E5t("clipboard write failed");return}if(r&&n.matches("a.dgmo-open")){let o=n;o.href&&window.open(o.href,o.target||"_blank","noopener,noreferrer")}}async function M5t(t){try{if(navigator?.clipboard?.writeText)return await navigator.clipboard.writeText(t),!0}catch{}if(typeof document<"u")try{let e=document.createElement("textarea");e.value=t,e.setAttribute("readonly",""),e.style.position="absolute",e.style.left="-9999px",document.body.appendChild(e),e.select();let n=document.execCommand("copy");return document.body.removeChild(e),n}catch{return!1}return!1}var tV="http://www.w3.org/1999/xlink",v5t=["clip-path","mask","filter","fill","stroke","marker-start","marker-mid","marker-end"],L5t=0,C5t='<svg width="20" height="20" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m4 4 8 8"/><path d="m12 4-8 8"/></svg>';function N5t(t,e){let n=new Map;if(t.querySelectorAll("[id]").forEach(o=>{let a=o.getAttribute("id");if(!a)return;let i=e+a;n.set(a,i),o.setAttribute("id",i)}),n.size===0)return;let r=o=>o.replace(/url\(#([^)]+)\)/g,(a,i)=>{let s=n.get(i);return s?`url(#${s})`:a});t.querySelectorAll("*").forEach(o=>{for(let l of v5t){let c=o.getAttribute(l);c&&c.includes("url(#")&&o.setAttribute(l,r(c))}let a=o.getAttribute("style");a&&a.includes("url(#")&&o.setAttribute("style",r(a));let i=o.getAttribute("href");i&&i.startsWith("#")&&n.has(i.slice(1))&&o.setAttribute("href","#"+n.get(i.slice(1)));let s=o.getAttributeNS(tV,"href");s&&s.startsWith("#")&&n.has(s.slice(1))&&o.setAttributeNS(tV,"href","#"+n.get(s.slice(1)))})}function T5t(t){if(typeof document>"u")return;let e=t.closest(".dgmo");if(!e)return;let n=e.querySelectorAll(".dgmo-light, .dgmo-dark, .dgmo-svg"),r=null;for(let c of Array.from(n)){if(window.getComputedStyle(c).display==="none")continue;let d=c.querySelector("svg");if(d){r=d;break}}if(r||(r=e.querySelector("svg")),!r)return;let o=r.cloneNode(!0);N5t(o,`dgmo-lb-${++L5t}-`);let a=document.createElement("dialog");a.className="dgmo-lightbox",a.setAttribute("aria-label","Diagram, full screen");let i=document.createElement("button");i.type="button",i.className="dgmo-lightbox-close",i.setAttribute("aria-label","Close full screen"),i.innerHTML=C5t;let s=document.createElement("div");s.className="dgmo-lightbox-svg",s.appendChild(o),a.appendChild(i),a.appendChild(s),document.body.appendChild(a);let l=()=>{a.open&&a.close()};i.addEventListener("click",l),a.addEventListener("click",c=>{c.target===a&&l()}),a.addEventListener("close",()=>a.remove()),a.showModal()}function oV(t){let e=t.severity&&t.severity!=="error"?`${t.severity}: ${t.message}`:t.message;t.line!==void 0&&t.line>0&&(e+=t.column!==void 0?` (at ${t.line}:${t.column})`:` (at line ${t.line})`);let n=document.createElement("div");n.innerHTML=QY(new Error(e),t.source);let r=n.firstElementChild;return r.setAttribute("data-dgmo-processed","true"),r}function aV(t,e){let n=cy(t,{baseUrl:e.editorBase,palette:e.palette,theme:e.theme});if(!n.url)return null;let r=`utm_source=${encodeURIComponent(e.utmSource)}&utm_medium=html&utm_campaign=${encodeURIComponent(e.campaign)}`,o=n.url.indexOf("#"),a;if(o===-1){let i=n.url.includes("?")?"&":"?";a=n.url+i+r}else{let i=n.url.slice(0,o),s=n.url.slice(o+1),l=i.includes("?")?"&":"?",c=s.length>0?"&":"";a=i+l+r+"#"+s+c+r}return qi(a)?a:null}var _5t={theme:"auto",palette:"slate",showSource:!0,showCopy:!0,showExpand:!0,showEditorLink:!0},Py={..._5t},gp=new Set,iV=256*1024,A5t="[dgmo:auto]";function No(...t){typeof console<"u"&&console.warn&&console.warn(A5t,...t)}function lV(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Iy(t,e,n){let r=t.dataset[e];return r==="true"?!0:r==="false"?!1:(r!==void 0&&No(`${n}: invalid value`,r,'\u2014 expected "true" or "false"'),null)}function cV(t){try{return Wp().some(e=>e.id===t)}catch{return!1}}function dV(){if(typeof document>"u")return null;let t=document.currentScript;if(t&&t instanceof HTMLScriptElement)return t;let e=document.querySelectorAll('script[src*="auto.js"], script[src*="auto.min.js"]');return e.length===0?null:e[e.length-1]}var R5t=["theme","palette","showSource","showCopy","showExpand","showEditorLink"],uV=["__proto__","constructor","prototype"],I5t=["auto","light","dark","transparent"];function fV(t){return typeof t=="string"&&I5t.includes(t)}function mV(t){if(!t)return{};let e;try{e=JSON.parse(t)}catch(r){return No("data-config: invalid JSON",r),{}}if(!lV(e))return No("data-config: not an object"),{};for(let r of uV)if(Object.prototype.hasOwnProperty.call(e,r))return No("data-config: rejected (prototype-pollution key:",r,")"),{};let n={};for(let[r,o]of Object.entries(e)){if(!R5t.includes(r)){No("data-config: dropping unknown key",r);continue}if(r==="theme"){if(!fV(o)){No("data-config: rejected theme",o);continue}n.theme=o}else if(r==="palette"){if(typeof o!="string"||!cV(o)){No("data-config: rejected palette",o);continue}n.palette=o}else if(r==="showSource"){if(typeof o!="boolean"){No("data-config: rejected showSource",o);continue}n.showSource=o}else if(r==="showCopy"){if(typeof o!="boolean"){No("data-config: rejected showCopy",o);continue}n.showCopy=o}else if(r==="showExpand"){if(typeof o!="boolean"){No("data-config: rejected showExpand",o);continue}n.showExpand=o}else if(r==="showEditorLink"){if(typeof o!="boolean"){No("data-config: rejected showEditorLink",o);continue}n.showEditorLink=o}}return n}function pV(t=document){let e=t.querySelectorAll(".dgmo:not([data-dgmo-processed]), .language-dgmo:not([data-dgmo-processed])");return Array.from(e).filter(n=>!n.closest(".dgmo-rendered"))}function hV(t){if(t.tagName==="CODE"){let e=t.parentElement;if(e?.tagName==="PRE"){let n=Array.from(e.childNodes).filter(r=>r.nodeType===1||r.nodeType===3&&(r.textContent||"").trim().length>0);if(n.length===1&&n[0]===t)return e}}return t}function hp(t,e,n){let r=oV({...n,source:e});hV(t).replaceWith(r)}async function gV(t){if(!(t instanceof HTMLElement))return{};if(t.dataset.dgmoProcessed==="true")return{};t.dataset.dgmoProcessed="true";let e=t.textContent||"";if(new TextEncoder().encode(e).byteLength>iV)return hp(t,e,{message:`DGMO source too large to render \u2014 ${iV/1024} KB max`,severity:"error"}),No("source exceeds 256 KB cap"),{};let r=Py,o=r.theme==="transparent"?"transparent":YE(r.theme),a=o==="transparent"?"transparent":o,i=nV(e),s={showSource:Iy(t,"showSource","data-show-source"),showCopy:Iy(t,"showCopy","data-show-copy"),showExpand:Iy(t,"showExpand","data-show-expand"),showEditorLink:Iy(t,"showEditorLink","data-show-editor-link")},l=s.showSource??r.showSource,c=s.showCopy??r.showCopy,d=s.showExpand??r.showExpand,u=s.showEditorLink??r.showEditorLink,f;try{f=await EY(e,{theme:a,palette:r.palette})}catch(E){let k=E instanceof Error?E.message:"Render failed unexpectedly";return hp(t,e,{message:k,severity:"error"}),No("render() rejected:",E),{}}if(f.diagnostics&&f.diagnostics.length>0){let E=f.diagnostics[0];return hp(t,e,{message:E.message,severity:E.severity,line:E.line,...E.column!==void 0&&{column:E.column}}),No("diagnostic:",E.message,E.line,E.column),{}}if(!f.svg)return hp(t,e,{message:"Empty SVG returned from renderer",severity:"error"}),{};let m=o==="dark"?"dgmo-theme-dark":o==="transparent"?"dgmo-theme-transparent":"dgmo-theme-light",p=document.createElement("div");p.innerHTML=f.svg;let g=p.querySelector("svg");if(!g)return hp(t,e,{message:"Empty SVG returned from renderer",severity:"error"}),{};eV(g),g.setAttribute("role","img"),g.setAttribute("aria-label",i);let h=null;u&&(h=aV(e,{palette:r.palette,theme:o==="dark"?"dark":"light",editorBase:Ay,campaign:Ry,utmSource:"auto-embed"}));let x=rV({source:e,svgEl:g,themeClass:m,showSource:l,showCopy:c,showExpand:d,showEditorLink:u,shareUrl:h});x.dataset.dgmoProcessed="true";let y={wrapper:x,source:e,overrides:s};return gp.add(y),hV(t).replaceWith(x),LY(x),TY(x),{wrapper:x}}function XE(t={}){if(!lV(t))return;for(let n of uV)if(Object.prototype.hasOwnProperty.call(t,n)){No("initialize: rejected (prototype-pollution key:",n,")");return}let e={...Py};fV(t.theme)&&(e.theme=t.theme),typeof t.palette=="string"&&cV(t.palette)&&(e.palette=t.palette),typeof t.showSource=="boolean"&&(e.showSource=t.showSource),typeof t.showEditorLink=="boolean"&&(e.showEditorLink=t.showEditorLink),Py=e}async function jE(t={}){VE();for(let n of Array.from(gp))document.contains(n.wrapper)||gp.delete(n);let e;if(t.nodes){e=("length"in t.nodes&&typeof t.nodes!="string"?Array.from(t.nodes):[]).filter(o=>o instanceof Element&&(o.matches(".dgmo, .language-dgmo")||o.querySelector(".dgmo, .language-dgmo")!==null));let r=[];for(let o of e)o.matches(".dgmo, .language-dgmo")&&r.push(o),o.querySelectorAll(".dgmo:not([data-dgmo-processed]), .language-dgmo:not([data-dgmo-processed])").forEach(i=>r.push(i));e=Array.from(new Set(r)).filter(o=>!o.closest(".dgmo-rendered"))}else e=pV();await Promise.all(e.map(n=>gV(n).catch(()=>({}))))}function P5t(){if(Py.theme==="auto")for(let t of Array.from(gp)){let e=document.createElement("pre");e.className="dgmo",e.textContent=t.source,t.overrides.showSource!==null&&(e.dataset.showSource=String(t.overrides.showSource)),t.overrides.showCopy!==null&&(e.dataset.showCopy=String(t.overrides.showCopy)),t.overrides.showExpand!==null&&(e.dataset.showExpand=String(t.overrides.showExpand)),t.overrides.showEditorLink!==null&&(e.dataset.showEditorLink=String(t.overrides.showEditorLink)),t.wrapper.replaceWith(e),gp.delete(t),gV(e)}}function D5t(){if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia("(prefers-color-scheme: dark)"),e=()=>P5t();t.addEventListener?t.addEventListener("change",e):"addListener"in t&&typeof t.addListener=="function"&&t.addListener(e)}function UE(){if(typeof document>"u")return;document.querySelectorAll(".dgmo:not(.dgmo-rendered), .language-dgmo").forEach(e=>{e.closest(".dgmo-rendered")||(e.style.visibility="visible")}),document.documentElement&&document.documentElement.dataset&&(document.documentElement.dataset.dgmoAutoFailed="1")}function O5t(){try{VE();let t=dV(),e=t?.getAttribute("data-auto"),n=t?.getAttribute("data-config");if(n){let o=mV(n);XE(o)}if(D5t(),typeof window<"u"&&window.setTimeout(()=>{document.querySelectorAll(".dgmo:not(.dgmo-rendered):not([data-dgmo-processed])").length>0&&(No("safety timeout: un-hiding unrendered sources"),UE())},3e4),e==="false")return;let r=()=>{jE().catch(o=>{No("run() crashed:",o),UE()})};typeof document<"u"&&document.readyState!=="loading"?r():typeof document<"u"&&document.addEventListener("DOMContentLoaded",r,{once:!0})}catch(t){No("bootstrap failed:",t),UE()}}var yV=Object.freeze({initialize:XE,run:jE,version:Ry});function sV(t,e){try{Object.defineProperty(t,e,{value:yV,writable:!1,configurable:!1,enumerable:!0})}catch{}}typeof window<"u"&&(sV(window,"dgmo"),sV(window,"diagrammo"),O5t());var $5t=yV;return tk(G5t);})();
|
|
881
881
|
/*! Bundled license information:
|
|
882
882
|
|
package/dist/element.js
CHANGED
|
@@ -876,7 +876,7 @@ pre.dgmo, code.language-dgmo, pre > code.language-dgmo,
|
|
|
876
876
|
`)}var jY=n5t+`
|
|
877
877
|
`+Bk+`
|
|
878
878
|
`+r5t(Bk)+`
|
|
879
|
-
`;n1();var Fk="0.64.
|
|
879
|
+
`;n1();var Fk="0.64.1",o5t=200,a5t=1500,i5t="[dgmo]",s5t=/[\x00-\x1F--]/g,Hk="dgmoAutoStyles";function _y(...t){typeof console<"u"&&console.warn&&console.warn(i5t,...t)}function ZY(t){t.querySelectorAll("script, foreignObject").forEach(r=>r.remove());let n=[t,...Array.from(t.querySelectorAll("*"))];for(let r of n){for(let o of Array.from(r.attributes))o.name.toLowerCase().startsWith("on")&&r.removeAttribute(o.name);if(r.hasAttribute("href")&&Gi(r.getAttribute("href"))===null&&r.removeAttribute("href"),r.hasAttributeNS("http://www.w3.org/1999/xlink","href")){let o=r.getAttributeNS("http://www.w3.org/1999/xlink","href");Gi(o)===null&&r.removeAttributeNS("http://www.w3.org/1999/xlink","href")}}}function QY(t){if(t==="light"||t==="dark"||t==="transparent")return t;if(typeof document>"u")return"light";let e=document.documentElement,n=e.getAttribute("data-theme");return n==="dark"?"dark":n==="light"?"light":e.classList.contains("dark")?"dark":e.classList.contains("light")?"light":typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function JY(){if(typeof document>"u")return;let t=document.documentElement;if(t?.dataset?.[Hk]==="1")return;if(document.querySelector('link[rel="stylesheet"][href*="auto.css"]')){t&&t.dataset&&(t.dataset[Hk]="1");return}let n=document.createElement("style");n.setAttribute("data-dgmo-auto",""),n.textContent=jY,document.head.appendChild(n),t&&t.dataset&&(t.dataset[Hk]="1")}function tV(t){let e=t.split(`
|
|
880
880
|
`).map(n=>n.trim()).find(n=>n.length>0);return e?e.replace(s5t,"").slice(0,o5t):"DGMO diagram"}function eV(t){let e=t.showSource||t.showCopy||t.showExpand||t.showEditorLink,n=UY(t.source,'<div class="dgmo-svg"></div>',{mode:e?"showcase":"diagram",showSource:t.showSource,showCopy:t.showCopy,showExpand:t.showExpand,showOpenInEditor:t.showEditorLink,legacyClassNames:["dgmo-rendered",t.themeClass]}),r=document.createElement("div");r.innerHTML=n;let o=r.firstElementChild;o.querySelector(".dgmo-svg")?.appendChild(t.svgEl);let a=o.querySelector("a.dgmo-open");return a&&(t.shareUrl?a.href=t.shareUrl:a.remove()),l5t(o),o}function l5t(t){t.addEventListener("click",n=>{c5t(n)});let e=()=>{t.querySelectorAll("details.dgmo-source-wrap[open]").forEach(n=>{n.open=!1})};t.addEventListener("mouseleave",()=>{t.contains(document.activeElement)||e()}),t.addEventListener("focusout",n=>{let r=n.relatedTarget;r&&t.contains(r)||t.matches(":hover")||e()})}async function c5t(t){let e=t.target;if(!e||typeof e.closest!="function")return;let n=e.closest(".dgmo-toolbar-btn");if(!n)return;let r=!!n.closest("summary");if(r&&t.preventDefault(),n.matches("button.dgmo-expand")){h5t(n);return}if(n.matches("button.dgmo-copy")){await d5t(n.dataset.dgmoSource??"")?(n.classList.add("dgmo-copy--success"),setTimeout(()=>n.classList.remove("dgmo-copy--success"),a5t)):_y("clipboard write failed");return}if(r&&n.matches("a.dgmo-open")){let o=n;o.href&&window.open(o.href,o.target||"_blank","noopener,noreferrer")}}async function d5t(t){try{if(navigator?.clipboard?.writeText)return await navigator.clipboard.writeText(t),!0}catch{}if(typeof document<"u")try{let e=document.createElement("textarea");e.value=t,e.setAttribute("readonly",""),e.style.position="absolute",e.style.left="-9999px",document.body.appendChild(e),e.select();let n=document.execCommand("copy");return document.body.removeChild(e),n}catch{return!1}return!1}var KY="http://www.w3.org/1999/xlink",u5t=["clip-path","mask","filter","fill","stroke","marker-start","marker-mid","marker-end"],f5t=0,m5t='<svg width="20" height="20" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m4 4 8 8"/><path d="m12 4-8 8"/></svg>';function p5t(t,e){let n=new Map;if(t.querySelectorAll("[id]").forEach(o=>{let a=o.getAttribute("id");if(!a)return;let i=e+a;n.set(a,i),o.setAttribute("id",i)}),n.size===0)return;let r=o=>o.replace(/url\(#([^)]+)\)/g,(a,i)=>{let s=n.get(i);return s?`url(#${s})`:a});t.querySelectorAll("*").forEach(o=>{for(let l of u5t){let c=o.getAttribute(l);c&&c.includes("url(#")&&o.setAttribute(l,r(c))}let a=o.getAttribute("style");a&&a.includes("url(#")&&o.setAttribute("style",r(a));let i=o.getAttribute("href");i&&i.startsWith("#")&&n.has(i.slice(1))&&o.setAttribute("href","#"+n.get(i.slice(1)));let s=o.getAttributeNS(KY,"href");s&&s.startsWith("#")&&n.has(s.slice(1))&&o.setAttributeNS(KY,"href","#"+n.get(s.slice(1)))})}function h5t(t){if(typeof document>"u")return;let e=t.closest(".dgmo");if(!e)return;let n=e.querySelectorAll(".dgmo-light, .dgmo-dark, .dgmo-svg"),r=null;for(let c of Array.from(n)){if(window.getComputedStyle(c).display==="none")continue;let d=c.querySelector("svg");if(d){r=d;break}}if(r||(r=e.querySelector("svg")),!r)return;let o=r.cloneNode(!0);p5t(o,`dgmo-lb-${++f5t}-`);let a=document.createElement("dialog");a.className="dgmo-lightbox",a.setAttribute("aria-label","Diagram, full screen");let i=document.createElement("button");i.type="button",i.className="dgmo-lightbox-close",i.setAttribute("aria-label","Close full screen"),i.innerHTML=m5t;let s=document.createElement("div");s.className="dgmo-lightbox-svg",s.appendChild(o),a.appendChild(i),a.appendChild(s),document.body.appendChild(a);let l=()=>{a.open&&a.close()};i.addEventListener("click",l),a.addEventListener("click",c=>{c.target===a&&l()}),a.addEventListener("close",()=>a.remove()),a.showModal()}function nV(t){let e=t.severity&&t.severity!=="error"?`${t.severity}: ${t.message}`:t.message;t.line!==void 0&&t.line>0&&(e+=t.column!==void 0?` (at ${t.line}:${t.column})`:` (at line ${t.line})`);let n=document.createElement("div");n.innerHTML=XY(new Error(e),t.source);let r=n.firstElementChild;return r.setAttribute("data-dgmo-processed","true"),r}function rV(t,e){let n=sy(t,{baseUrl:e.editorBase,palette:e.palette,theme:e.theme});if(!n.url)return null;let r=`utm_source=${encodeURIComponent(e.utmSource)}&utm_medium=html&utm_campaign=${encodeURIComponent(e.campaign)}`,o=n.url.indexOf("#"),a;if(o===-1){let i=n.url.includes("?")?"&":"?";a=n.url+i+r}else{let i=n.url.slice(0,o),s=n.url.slice(o+1),l=i.includes("?")?"&":"?",c=s.length>0?"&":"";a=i+l+r+"#"+s+c+r}return Gi(a)?a:null}var g5t=`https://unpkg.com/@diagrammo/dgmo@${Fk}/dist/map-data/`,Ay={worldCoarse:"world-coarse.json",worldDetail:"world-detail.json",usStates:"us-states.json",gazetteer:"gazetteer.json"},y5t={lakes:"lakes.json",rivers:"rivers.json",mountainRanges:"mountain-ranges.json",naLand:"na-land.json",naLakes:"na-lakes.json",waterBodies:"water-bodies.json",airports:"airports.json"},Wk=new Map;function b5t(t){return t.endsWith("/")?t:t+"/"}async function gp(t,e){let n=await fetch(t+e);if(!n.ok)throw new Error(`map asset ${e} \u2192 HTTP ${n.status}`);return await n.json()}async function x5t(t){let e=b5t(t),n=Wk.get(e);if(n)return n;let r=(async()=>{let[o,a,i,s]=await Promise.all([gp(e,Ay.worldCoarse),gp(e,Ay.worldDetail),gp(e,Ay.usStates),gp(e,Ay.gazetteer)]),l=await Promise.all(Object.entries(y5t).map(async([d,u])=>{try{return[d,await gp(e,u)]}catch{return[d,void 0]}})),c={};for(let[d,u]of l)u!==void 0&&(c[d]=u);return{worldCoarse:o,worldDetail:a,usStates:i,gazetteer:s,...c}})().catch(o=>{throw Wk.delete(e),o});return Wk.set(e,r),r}function zk(t){let e=t.replace(/\t/g," ").split(`
|
|
881
881
|
`);for(;e.length&&e[0].trim()==="";)e.shift();for(;e.length&&e[e.length-1].trim()==="";)e.pop();if(e.length===0)return"";let n=1/0;for(let r of e){if(r.trim()==="")continue;let o=r.length-r.trimStart().length;o<n&&(n=o)}return!Number.isFinite(n)||n===0?e.join(`
|
|
882
882
|
`):e.map(r=>r.slice(n)).join(`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@diagrammo/dgmo-standalone",
|
|
3
|
-
"version": "0.64.
|
|
3
|
+
"version": "0.64.1",
|
|
4
4
|
"description": "DGMO diagrams in a plain web page — one <script> tag, no build step",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"diagram",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"bugs": "https://github.com/diagrammo/dgmo/issues",
|
|
22
22
|
"type": "module",
|
|
23
23
|
"files": [
|
|
24
|
+
"README.md",
|
|
24
25
|
"dist/auto.js",
|
|
25
26
|
"dist/element.js",
|
|
26
27
|
"dist/auto.css"
|