pacem 0.60.2-weber → 0.60.2-weierstrass
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/dist/css/pacem-dark-content.min.css +1 -1
- package/dist/css/pacem-dark-shell.min.css +1 -1
- package/dist/css/pacem-dark.min.css +1 -1
- package/dist/css/pacem-light-content.min.css +1 -1
- package/dist/css/pacem-light-shell.min.css +1 -1
- package/dist/css/pacem-light.min.css +1 -1
- package/dist/css/pacem-phousys-content.min.css +1 -1
- package/dist/css/pacem-phousys-shell.min.css +1 -1
- package/dist/css/pacem-phousys.min.css +1 -1
- package/dist/js/azure-maps.d.ts +1 -1
- package/dist/js/pacem-2d.d.ts +1 -1
- package/dist/js/pacem-2d.js +1 -1
- package/dist/js/pacem-2d.min.js +1 -1
- package/dist/js/pacem-3d.d.ts +1 -1
- package/dist/js/pacem-3d.js +1 -1
- package/dist/js/pacem-3d.min.js +1 -1
- package/dist/js/pacem-charts.d.ts +1 -1
- package/dist/js/pacem-charts.js +1 -1
- package/dist/js/pacem-charts.min.js +1 -1
- package/dist/js/pacem-cms.d.ts +1 -1
- package/dist/js/pacem-cms.js +1 -1
- package/dist/js/pacem-cms.min.js +1 -1
- package/dist/js/pacem-core.d.ts +1 -1
- package/dist/js/pacem-core.js +1 -1
- package/dist/js/pacem-core.min.js +1 -1
- package/dist/js/pacem-foundation.d.ts +8 -3
- package/dist/js/pacem-foundation.js +63 -14
- package/dist/js/pacem-foundation.min.js +2 -2
- package/dist/js/pacem-fx.d.ts +1 -1
- package/dist/js/pacem-fx.js +1 -1
- package/dist/js/pacem-fx.min.js +1 -1
- package/dist/js/pacem-logging.d.ts +1 -1
- package/dist/js/pacem-logging.js +1 -1
- package/dist/js/pacem-logging.min.js +1 -1
- package/dist/js/pacem-maps.d.ts +1 -1
- package/dist/js/pacem-maps.js +1 -1
- package/dist/js/pacem-maps.min.js +1 -1
- package/dist/js/pacem-media.d.ts +1 -1
- package/dist/js/pacem-media.js +1 -1
- package/dist/js/pacem-media.min.js +1 -1
- package/dist/js/pacem-networking.d.ts +1 -1
- package/dist/js/pacem-networking.js +1 -1
- package/dist/js/pacem-networking.min.js +1 -1
- package/dist/js/pacem-numerical.d.ts +1 -1
- package/dist/js/pacem-numerical.js +1 -1
- package/dist/js/pacem-numerical.min.js +1 -1
- package/dist/js/pacem-plus.d.ts +1 -1
- package/dist/js/pacem-plus.js +1 -1
- package/dist/js/pacem-plus.min.js +1 -1
- package/dist/js/pacem-scaffolding.d.ts +1 -1
- package/dist/js/pacem-scaffolding.js +1 -1
- package/dist/js/pacem-scaffolding.min.js +1 -1
- package/dist/js/pacem-ui.d.ts +1 -1
- package/dist/js/pacem-ui.js +1 -1
- package/dist/js/pacem-ui.min.js +1 -1
- package/dist/js/swagger-types.d.ts +1 -1
- package/package.json +1 -1
package/dist/js/azure-maps.d.ts
CHANGED
package/dist/js/pacem-2d.d.ts
CHANGED
package/dist/js/pacem-2d.js
CHANGED
package/dist/js/pacem-2d.min.js
CHANGED
package/dist/js/pacem-3d.d.ts
CHANGED
package/dist/js/pacem-3d.js
CHANGED
package/dist/js/pacem-3d.min.js
CHANGED
package/dist/js/pacem-charts.js
CHANGED
package/dist/js/pacem-cms.d.ts
CHANGED
package/dist/js/pacem-cms.js
CHANGED
package/dist/js/pacem-cms.min.js
CHANGED
package/dist/js/pacem-core.d.ts
CHANGED
package/dist/js/pacem-core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* pacem v0.60.2-
|
|
2
|
+
* pacem v0.60.2-weierstrass (https://js.pacem.it)
|
|
3
3
|
* Copyright 2026 Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
@@ -11,14 +11,19 @@ declare namespace Pacem {
|
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
declare namespace Pacem {
|
|
14
|
-
|
|
14
|
+
type BlobTextEncoding = 'utf-8' | 'utf-16' | 'utf-16be' | 'utf-16le' | 'iso-8859-1' | 'ascii';
|
|
15
|
+
export class Blobs {
|
|
15
16
|
static blobToDataURL(blob: Blob): Promise<string>;
|
|
16
17
|
private static _b64ToUint8Array;
|
|
17
18
|
static base64ToBlob(bstr: string, options?: BlobPropertyBag): Blob;
|
|
18
19
|
static dataURLToBlob(dataurl: string): Blob;
|
|
19
20
|
static blobToText(blob: Blob, encoding?: string): Promise<string>;
|
|
20
|
-
static textToBlob(content: string
|
|
21
|
+
static textToBlob(content: string): Blob;
|
|
22
|
+
static textToBlob(content: string, type: string): Blob;
|
|
23
|
+
static textToBlob(content: string, type: string, charset: BlobTextEncoding): Blob;
|
|
24
|
+
static textToBlob(content: string, type: string, charset: BlobTextEncoding, bom: boolean, lossyChar: number): Blob;
|
|
21
25
|
}
|
|
26
|
+
export {};
|
|
22
27
|
}
|
|
23
28
|
declare namespace Pacem.Browsers {
|
|
24
29
|
function detect(userAgent?: string): {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* pacem v0.60.2-
|
|
2
|
+
* pacem v0.60.2-weierstrass (https://js.pacem.it)
|
|
3
3
|
* Copyright 2026 Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
@@ -72,19 +72,68 @@ var Pacem;
|
|
|
72
72
|
return Blobs.base64ToBlob(bstr, { type: mime });
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
static blobToText(blob, encoding) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
75
|
+
static async blobToText(blob, encoding) {
|
|
76
|
+
const buffer = await blob.arrayBuffer();
|
|
77
|
+
const decoder = new TextDecoder(encoding, { fatal: false });
|
|
78
|
+
return decoder.decode(buffer);
|
|
79
|
+
}
|
|
80
|
+
static textToBlob(content, type = 'text/plain', charset = 'utf-8', bom, lossyChar = 0x3F) {
|
|
81
|
+
let charsetLower = charset.toLowerCase();
|
|
82
|
+
const fullType = () => `${type};charset=${charsetLower}`;
|
|
83
|
+
switch (charsetLower) {
|
|
84
|
+
case 'utf-8': {
|
|
85
|
+
const encoder = new TextEncoder();
|
|
86
|
+
const bytes = encoder.encode(content);
|
|
87
|
+
const parts = bom
|
|
88
|
+
? [new Uint8Array([0xEF, 0xBB, 0xBF]), bytes]
|
|
89
|
+
: [bytes];
|
|
90
|
+
return new Blob(parts, { type: fullType() });
|
|
91
|
+
}
|
|
92
|
+
case 'utf-16':
|
|
93
|
+
charsetLower = 'utf-16le';
|
|
94
|
+
bom ??= true;
|
|
95
|
+
case 'utf-16le':
|
|
96
|
+
case 'utf-16be': {
|
|
97
|
+
const littleEndian = charsetLower !== 'utf-16be';
|
|
98
|
+
const offset = bom ? 1 : 0;
|
|
99
|
+
const buffer = new ArrayBuffer((content.length + offset) * 2);
|
|
100
|
+
const view = new DataView(buffer);
|
|
101
|
+
if (bom) {
|
|
102
|
+
view.setUint16(0, 0xFEFF, littleEndian);
|
|
103
|
+
}
|
|
104
|
+
for (let i = 0; i < content.length; i++) {
|
|
105
|
+
view.setUint16((i + offset) * 2, content.charCodeAt(i), littleEndian);
|
|
106
|
+
}
|
|
107
|
+
return new Blob([buffer], {
|
|
108
|
+
type: fullType()
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
case 'ascii':
|
|
112
|
+
case 'iso-8859-1':
|
|
113
|
+
case 'latin1': {
|
|
114
|
+
const boundary = charsetLower === 'ascii' ? 0x7F : 0xFF;
|
|
115
|
+
const buffer = new Uint8Array(content.length);
|
|
116
|
+
const lossy = lossyChar > 0;
|
|
117
|
+
for (let i = 0; i < content.length; i++) {
|
|
118
|
+
const code = content.charCodeAt(i);
|
|
119
|
+
if (code > boundary) {
|
|
120
|
+
if (lossy) {
|
|
121
|
+
buffer[i] = lossyChar;
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
throw new Error(`Character "${content[i]}" cannot be encoded in ${charset}.`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
buffer[i] = code;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return new Blob([buffer], { type: fullType() });
|
|
132
|
+
}
|
|
133
|
+
default:
|
|
134
|
+
throw new Error(`Encoding "${charset}" is not supported safely in the browser. ` +
|
|
135
|
+
`Use UTF-8 or any supported encoding.`);
|
|
136
|
+
}
|
|
88
137
|
}
|
|
89
138
|
}
|
|
90
139
|
Pacem.Blobs = Blobs;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* pacem v0.60.2-
|
|
2
|
+
* pacem v0.60.2-weierstrass (https://js.pacem.it)
|
|
3
3
|
* Copyright 2026 Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
"use strict";var Pacem;!function(e){e.Arrays=class Arrays{static range(t,r,n=2){let a=t;e.NullChecker.isNull(r)&&(r=n=t,t=1);const s=(r-t)/(n-1),i=[];if(s>0)for(;i.length<n;)i.push(a.roundoff()),a+=s;return i}static chunkify(t,r){if(e.NullChecker.isNullOrEmpty(t))return[];if(r<=0||r%1!=0)throw new Error("Provide a positive integer number.");const n=Math.ceil(t.length/r);return Array.from({length:n},(e,n)=>{const a=n*r,s=a+r;return t.slice(a,s)})}}}(Pacem||(Pacem={})),function(e){class Blobs{static blobToDataURL(e){return new Promise((t,r)=>{const n=new FileReader;n.onload=e=>{t(e.target.result)},n.readAsDataURL(e)})}static _b64ToUint8Array(e){let t=e.length;const r=new Uint8Array(t);for(;t--;)r[t]=e.charCodeAt(t);return r}static base64ToBlob(e,t){const r=Blobs._b64ToUint8Array(atob(e));return new Blob([r],t)}static dataURLToBlob(e){const t=e.indexOf(",");if(-1===t)return Blobs.base64ToBlob(e);{const r=e.substring(t+1),n=e.substring(0,t).match(/:(.*?);/)[1];return Blobs.base64ToBlob(r,{type:n})}}static blobToText(e,t){return new Promise((r,n)=>{e.arrayBuffer().then(e=>{const n=new TextDecoder(t).decode(e);r(n)})})}static textToBlob(e,t="text/plain"){const r=(new TextEncoder).encode(e);return new Blob([r],{type:t})}}e.Blobs=Blobs}(Pacem||(Pacem={})),function(e){!function(e){const t=(e,t)=>{const r=e.match(t);return r?r[2]:null};e.detect=function(e=navigator.userAgent){let r="unknown",n=null;switch(/ucbrowser/i.test(e)?r="UCBrowser":/edg/i.test(e)?r="Edge":/googlebot/i.test(e)?r="GoogleBot":/chromium/i.test(e)?r="Chromium":/firefox|fxios/i.test(e)&&!/seamonkey/i.test(e)?r="Firefox":/; msie|trident/i.test(e)&&!/ucbrowser/i.test(e)?r="IE":/chrome|crios/i.test(e)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(e)?r="Chrome":/safari/i.test(e)&&!/chromium|edg|ucbrowser|chrome|crios|opr|opera|fxios|firefox/i.test(e)?r="Safari":/opr|opera/i.test(e)&&(r="Opera"),r){case"UCBrowser":n=t(e,/(ucbrowser)\/([\d\.]+)/i);break;case"Edge":n=t(e,/(edge|edga|edgios|edg)\/([\d\.]+)/i);break;case"GoogleBot":n=t(e,/(googlebot)\/([\d\.]+)/i);break;case"Chromium":n=t(e,/(chromium)\/([\d\.]+)/i);break;case"Firefox":n=t(e,/(firefox|fxios)\/([\d\.]+)/i);break;case"Chrome":n=t(e,/(chrome|crios)\/([\d\.]+)/i);break;case"Safari":n=t(e,/(safari)\/([\d\.]+)/i);break;case"Opera":n=t(e,/(opera|opr)\/([\d\.]+)/i);break;case"IE":{const r=t(e,/(trident)\/([\d\.]+)/i);n=r?`${parseFloat(r)+4}`:"7.0";break}default:n="0.0.0.0"}return{name:r,version:n}}}(e.Browsers||(e.Browsers={}))}(Pacem||(Pacem={})),function(e){const t=/^hsl\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*\)$/,r=/^hsla\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)\)$/,n=/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/,a=/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\)$/,s=/^#[a-f0-9]{6}$/,i=/^#[a-f0-9]{3}$/;function o(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"r"in t&&"g"in t&&"b"in t&&"number"==typeof t.r&&"number"==typeof t.b&&"number"==typeof t.g&&(t.a??=1,t.r>=0&&t.r<=1&&t.g>=0&&t.g<=1&&t.b>=0&&t.b<=1&&t.a>=0&&t.a<=1)}function c(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"h"in t&&"s"in t&&"l"in t&&"number"==typeof t.h&&"number"==typeof t.s&&"number"==typeof t.l&&(t.a??=1,t.h>=0&&t.h<=360&&t.s>=0&&t.s<=1&&t.l>=0&&t.l<=1&&t.a>=0&&t.a<=1)}const l={adjustRgbChannel:e=>e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4),adjustRgbChannelInv:e=>e<=.00304?12.92*e:1.055*(Math.pow(e,1/2.4)-.055),adjustRgb:e=>({r:l.adjustRgbChannel(e.r),g:l.adjustRgbChannel(e.g),b:l.adjustRgbChannel(e.b),a:e.a}),adjustRgbInv:e=>({r:l.adjustRgbChannelInv(e.r),g:l.adjustRgbChannelInv(e.g),b:l.adjustRgbChannelInv(e.b),a:e.a}),X:e=>.4125*e.r+.3576*e.g+.1804*e.b,Y:e=>.2126*e.r+.7152*e.g+.0722*e.b,Z:e=>.0193*e.r+.1191*e.g+.9503*e.b,relativeLuminance:e=>{const t=l.adjustRgb(e);return l.Y(t)},rgbToCieXYZ:e=>{const t=l.adjustRgb(e);return{x:l.X(t),y:l.Y(t),z:l.Z(t),a:e.a}},cieXYZToRgb:e=>{const t=3.241*e.x-1.5374*e.y-.4986*e.z,r=-.9692*e.x+1.876*e.y+.0416*e.z,n=.0556*e.x-.204*e.y+1.057*e.z;return l.adjustRgbInv({r:t,g:r,b:n,a:e.a})},contrastRatio:(e,t)=>{const r=l.relativeLuminance(e)+.05,n=l.relativeLuminance(t)+.05;return r>n?r/n:n/r}};function u(e){return e.toString(16).padStart(2,"0")}class Colors{static WCAG_MINIMUM_CONTRAST=3;static WCAG_NORMAL_TEXT_CONTRAST=4.5;static WCAG_SAFE_CONTRAST=7;static _clampRGB(e){const t=e=>Math.min(1,Math.max(0,e));return null==e[3]&&(e[3]=1),{r:t(e[0]),g:t(e[1]),b:t(e[2]),a:Math.min(1,Math.max(0,e[3]))}}static _normalize(e){return[e[0]/255,e[1]/255,e[2]/255,e[3]]}static parse(e){if(e=(e||"").toLowerCase(),n.test(e)){let t=n.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),1]))}if(a.test(e)){let t=a.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]))}if(s.test(e)){let t=s.exec(e)[0];return this._clampRGB(this._normalize([parseInt("0x"+t.substr(1,2)),parseInt("0x"+t.substr(3,2)),parseInt("0x"+t.substr(5,2)),1]))}if(i.test(e)){let t=i.exec(e)[0],r=t.substr(1,1),n=t.substr(2,1),a=t.substr(3,1);return this._clampRGB(this._normalize([parseInt("0x"+r+r),parseInt("0x"+n+n),parseInt("0x"+a+a),1]))}if(t.test(e)){let r=t.exec(e);const n={h:parseFloat(r[1]),s:.01*parseFloat(r[2]),l:.01*parseFloat(r[3])};return this.rgb(n)}if(r.test(e)){let t=r.exec(e);const n={h:parseFloat(t[1]),s:.01*parseFloat(t[2]),l:.01*parseFloat(t[3]),a:parseFloat(t[4])};return this.rgb(n)}}static hsl(e){const t=function(e){const t=e.r,r=e.g,n=e.b;return(.5*(Math.max(t,r,n)+Math.min(t,r,n))).clamp(0,1)}(e),r=function(e,t){const r=e.r,n=e.g,a=e.b,s=Math.max(r,n,a),i=Math.min(r,n,a);return(0===t||1===t?0:(s-i)/(1-Math.abs(2*t-1))).clamp(0,1)}(e,t),n=function(e){const t=e.r,r=e.g,n=e.b,a=Math.max(t,r,n),s=Math.min(t,r,n);let i=0;return a!==s&&(i=a===t?((r-n)/(a-s)*60+360)%360:a===r?((n-t)/(a-s)*60+120)%360:((t-r)/(a-s)*60+240)%360),i.clamp(0,360)}(e);return{h:n,s:r,l:t,a:e.a}}static cieXYZ(e){return c(e)&&(e=this.rgb(e)),l.rgbToCieXYZ(e)}static rgb(e){if(!c(e)){const t=l.cieXYZToRgb(e);return this._clampRGB([t.r,t.g,t.b,t.a])}{const t=e.h,r=e.s,n=e.l,a=t/60,s=(1-Math.abs(2*n-1))*r,i=s*(1-Math.abs(a%2-1)),o=n-s/2,c=(t,r,n)=>this._clampRGB([t+o,r+o,n+o,e.a]);if(a<=1)return c(s,i,0);if(a<=2)return c(i,s,0);if(a<=3)return c(0,s,i);if(a<=4)return c(0,i,s);if(a<=5)return c(i,0,s);if(a<=6)return c(s,0,i)}}static stringify(e,t=1){if(c(e)){t??=1,e.a??=1;const r="number"==typeof t?t:1;return`hsla(${e.h.roundoff(r)},${(100*e.s).roundoff(r)}%,${(100*e.l).roundoff(r)}%,${e.a.roundoff()})`}if(o(e)){t??=!0,e.a??=1;const r="boolean"==typeof t?t:!!t,n=Math.round(255*e.r),a=Math.round(255*e.g),s=Math.round(255*e.b),i=e.a.roundoff();return 1===i?r?("#"+u(n)+u(a)+u(s)).toUpperCase():`rgb(${n},${a},${s})`:`rgba(${n},${a},${s},${i})`}}static contrastRatio(e,t){return c(e)&&(e=this.rgb(e)),c(t)&&(t=this.rgb(t)),l.contrastRatio(e,t)}static luminance(e){return c(e)&&(e=Colors.rgb(e)),l.relativeLuminance(e)}static lighten(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.l+t));return Object.assign({},e,{l:r})}if(o(e)){const r=this.lighten(this.hsl(e),t);return this.rgb(r)}return e}static darken(e,t=.1){return this.lighten(e,-t)}static saturate(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.s+t));return Object.assign({},e,{s:r})}if(o(e)){const r=this.saturate(this.hsl(e),t);return this.rgb(r)}return e}static desaturate(e,t=.1){return this.saturate(e,-t)}static interpolate(e,t,r,n){r??=.5,n??=r;const a=(r+n).roundoff(),s=(r/a).roundoff(),i=(n/a).roundoff(),l=o(e),u=c(e),h=e=>o(e)||c(e)?Colors.cieXYZ(e):e;e=h(e),t=h(t);const d={x:(e.x*s+t.x*i).roundoff(),y:(e.y*s+t.y*i).roundoff(),z:(e.z*s+t.z*i).roundoff(),a:(e.a*s+t.a*i).roundoff()};return l?Colors.rgb(d):u?Colors.hsl(Colors.rgb(d)):d}}e.Colors=Colors}(Pacem||(Pacem={})),function(e){const t=/^\/Date\([\d]+\)\/$/i;class Dates{static parse(e){let r;return"string"==typeof e?(r=t.test(e)?parseInt(e.substring(6)):Date.parse(e),new Date(r)):"number"==typeof e?new Date(e):e}static isLeapYear(e){return e%4==0&&e%100!=0||e%400==0}static daysInMonth(e,t){return[31,Dates.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}static isDate(e){return e instanceof Date&&!isNaN(e.valueOf())}static dateOnly(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}static addMonths(e,t){let r=e.getDate(),n=new Date(e),a=n.getMonth()+t,s=0;for(;a<0;)a+=12,s--;return n.setDate(1),n.setMonth(a%12),n.setFullYear(n.getFullYear()+s+Math.floor(a/12)),n.setDate(Math.min(r,Dates.daysInMonth(n.getFullYear(),n.getMonth()))),n}static addDays(e,t){return new Date(e.valueOf()+864e5*t)}static daysBetween(e,t){return(t.valueOf()-e.valueOf())/864e5}}e.Dates=Dates}(Pacem||(Pacem={})),function(e){const t=/[-+]?([\d]+(\.[\d]+(e-[\d]+)?)?|[\d]*(\.[\d]+(e-[\d]+)?))/g;function r(e){const r=[];let n=e.match(t);return n&&n.length>0&&n.forEach(e=>r.push(parseFloat(e))),r}e.parseAsNumericalArray=r;class Angle{static isAngle(e){return"object"==typeof e&&"vertex"in e&&Point.isPoint(e.vertex)&&"start"in e&&Point.isPoint(e.start)&&"end"in e&&Point.isPoint(e.end)}static value(t){if(e.NullChecker.isNullOrEmpty(t)||!Angle.isAngle(t))return Number.NaN;const{vertex:r,start:n,end:a}=t;return Angle.angleBetween(r,n,a)}static angleBetween(e,t,r){const n=t.x-e.x,a=t.y-e.y,s=r.x-e.x,i=r.y-e.y,o=n*s+a*i,c=n*i-a*s;return-Math.atan2(c,o)}}e.Angle=Angle;class Size{static parse(e){let t=r(e);if(t&&2===t.length)return{width:t[0],height:t[1]};throw new Error(`Cannot parse "${e}" as a valid Size.`)}static isSize(e){return"object"==typeof e&&"width"in e&&"number"==typeof e.width&&"height"in e&&"number"==typeof e.height}}e.Size=Size;class Point{static parse(e){let t=r(e);if(t&&2===t.length)return{x:t[0],y:t[1]};throw new Error(`Cannot parse "${e}" as a valid Point.`)}static isPoint(e){return"object"==typeof e&&"x"in e&&"number"==typeof e.x&&"y"in e&&"number"==typeof e.y}static distance(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}static subtract(e,t){return{x:t.x-e.x,y:t.y-e.y}}static add(...e){var t={x:0,y:0};for(var r of e)t.x+=r.x,t.y+=r.y;return t}static multiply(e,t){return{x:e.x*t,y:e.y*t}}}e.Point=Point;class Rect{static parse(e){let t=r(e);if(t&&4===t.length)return{x:t[0],y:t[1],width:t[2],height:t[3]};throw new Error(`Cannot parse "${e}" as a valid Rect.`)}static isRect(e){return Point.isPoint(e)&&Size.isSize(e)}static _stretch(e,t){return{a:t.width/e.width,b:0,c:0,d:t.height/e.height,e:t.x-e.x,f:t.y-e.y}}static _contain(t,r,n,a){let s=1;s=t.width/t.height>=r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _cover(t,r,n,a){let s=1;s=t.width/t.height<r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _align(e,t,r,n){let a=0,s=0;switch(r){case"left":a=t.x-e.x;break;case"right":a=t.x+t.width-e.width-e.x;break;default:a=t.x+.5*t.width-.5*e.width-e.x}switch(n){case"top":s=t.y-e.y;break;case"bottom":s=t.y+t.height-e.height-e.y;break;default:s=t.y+.5*t.height-.5*e.height-e.y}return{x:a,y:s}}static findTransform(e,t,r="stretch",n="center",a="middle"){switch(r){case"contain":return this._contain(e,t,n,a);case"cover":return this._cover(e,t,n,a);default:return this._stretch(e,t)}}static intersect(...e){const t={x:0,y:0,height:0,width:0},r=Array.from(e||[]);if(r.length<=0)return t;for(var n=r[0],a=1;a<r.length;a++){const e=r[a],s=Math.max(e.x,n.x),i=Math.max(e.y,n.y),o=Math.min(e.x+e.width,n.x+n.width)-s,c=Math.min(e.y+e.height,n.y+n.height)-i;if(o<0||c<=0)return t;n={x:s,y:i,width:o,height:c}}return n}static expand(e,...t){const r=Array.from(t||[]);let n=e.x,a=e.y,s=n,i=a;Rect.isRect(e)&&(s+=e.width,i+=e.height);for(let e of r)n=Math.min(e.x,n),a=Math.min(e.y,a),s=Math.max(e.x,s),i=Math.max(e.y,i);return{x:n,y:a,width:s-n,height:i-a}}}e.Rect=Rect}(Pacem||(Pacem={})),function(e){e.HistoryService=class HistoryService{constructor(e,t){this.#e=e,this.#t=t}#r=[];#n=[];#t;#e;get current(){return this.#e}get canUndo(){return this.#r.length>0}get canRedo(){return this.#n.length>0}set maxlength(e){this.#t=e}undo(){if(this.canUndo){const e=this.#r,t=this.#n,r=this.#e;t.unshift(r),this.#e=e.pop()}}redo(){if(this.canRedo){const e=this.#r,t=this.#n,r=this.#e;e.push(r),this.#e=t.shift()}}push(e){this.#n.splice(0),this.#r.push(this.#e),this.#e=e;const t=this.#t,r=this.#r;t>0&&r.length>t&&r.splice(0,r.length-t)}reset(){this.#n.splice(0),this.#r.splice(0)}}}(Pacem||(Pacem={})),function(e){const t={mode:"stretch",align:"center",valign:"middle",quality:1,type:"image/jpeg"};class Imaging{static async loadImage(e){const t=await fetch(e);if(!t.ok)return null;return await t.blob()}static async resizeImage(r,n,a,s){if(n<=0||a<=0||isNaN(n)||isNaN(a))throw new Error("Invalid target size");"string"==typeof r&&(r=await Imaging.loadImage(r));const i=await self.createImageBitmap(r),o=i.width,c=i.height,l=new OffscreenCanvas(o,c),u=l.getContext("2d");u.imageSmoothingEnabled=u.mozImageSmoothingEnabled=u.oImageSmoothingEnabled=u.webkitImageSmoothingEnabled=!0;const{quality:h,type:d,mode:f,align:g,valign:p,background:m}=Object.assign({},t,s??{}),y={width:o,height:c,x:0,y:0},x={x:0,y:0,width:n,height:a},b=e.Rect.findTransform(y,x,f,g,p);l.width=n,l.height=a,m&&(u.fillStyle=m,u.fillRect(0,0,l.width,l.height)),u.setTransform(b),u.drawImage(i,0,0);return await l.convertToBlob({quality:h,type:d})}}e.Imaging=Imaging}(Pacem||(Pacem={})),function(e){class Keys{static#a;static uniqueId(){let e=Keys.#a||Date.now();return Keys.#a=++e}static uniqueCode(){return Keys.uniqueId().toBase62()}static randomString(e){let t="";do{t+=(62*Math.random()).toBase62()}while(t.length<e);return t}}e.Keys=Keys}(Pacem||(Pacem={})),function(e){class Matrix2D{static isIdentity(e){return 1===e.a&&1===e.d&&0===e.b&&0===e.f&&0===e.c&&0===e.e}static get identity(){return{a:1,b:0,c:0,d:1,e:0,f:0}}static copy(e){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}}static scale(e,t,r=t){return{a:e.a*t,b:e.b,c:e.c,d:e.d*r,e:e.e,f:e.f}}static translate(e,t){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e+t.x,f:e.f+t.y}}static rotate(e,t){const r=Math.cos(t),n=Math.sin(t);return Matrix2D.multiply(e,{a:r,b:n,c:-n,d:r,e:0,f:0})}static multiply(e,t){return"x"in e&&"y"in e?"number"==typeof t?{x:e.x*t,y:e.y*t}:{x:e.x*t.a+e.y*t.c+t.e,y:e.x*t.b+e.y*t.d+t.f}:"number"==typeof t?{a:e.a*t,b:e.b*t,c:e.c*t,d:e.d*t,e:e.e*t,f:e.f*t}:{a:e.a*t.a+e.b*t.c,b:e.a*t.b+e.b*t.d,c:e.c*t.a+e.d*t.c,d:e.c*t.b+e.d*t.d,e:e.e*t.a+e.f*t.c+t.e,f:e.e*t.b+e.f*t.d+t.f}}static det(e){return e.a*e.d-e.c*e.b}static invert(e){const t=this.det(e);if(0===t)return null;const r=1/t;return this.multiply({a:e.d,b:-e.b,c:-e.c,d:e.a,e:-e.e*e.d+e.c*e.f,f:e.e*e.b-e.a*e.f},r)}static toComponents(e,t={x:0,y:0}){const r=Math.sqrt(e.a*e.a+e.c*e.c),n=Math.sqrt(e.b*e.b+e.d*e.d),a=0!=r?e.a/r:0,s=0!=r?e.c/r:0,i=Math.atan2(s,a),{x:o,y:c}=t;return{scaleX:r,scaleY:n,rotation:i,translation:{x:e.e-o*(r*a-1)+c*r*s,y:e.f-c*(n*a-1)-o*n*s}}}static fromTransform([e,t,r],[n,a,s]){const i=e.x*(t.y-r.y)-e.y*(t.x-r.x)+(t.x*r.y-r.x*t.y);if(Math.abs(i)<1e-10)throw new Error("Points are collinear; matrix is singular and cannot be solved.");const o=1/i;return{a:o*(n.x*(t.y-r.y)+a.x*(r.y-e.y)+s.x*(e.y-t.y)),b:o*(n.y*(t.y-r.y)+a.y*(r.y-e.y)+s.y*(e.y-t.y)),c:o*(n.x*(r.x-t.x)+a.x*(e.x-r.x)+s.x*(t.x-e.x)),d:o*(n.y*(r.x-t.x)+a.y*(e.x-r.x)+s.y*(t.x-e.x)),e:o*(n.x*(t.x*r.y-r.x*t.y)+a.x*(r.x*e.y-e.x*r.y)+s.x*(e.x*t.y-t.x*e.y)),f:o*(n.y*(t.x*r.y-r.x*t.y)+a.y*(r.x*e.y-e.x*r.y)+s.y*(e.x*t.y-t.x*e.y))}}static areClose(e,t,r=12){return e.a.isCloseTo(t.a,r)&&e.b.isCloseTo(t.b,r)&&e.c.isCloseTo(t.c,r)&&e.d.isCloseTo(t.d,r)&&e.e.isCloseTo(t.e,r)&&e.f.isCloseTo(t.f,r)}}e.Matrix2D=Matrix2D}(Pacem||(Pacem={})),function(e){class NullChecker{static isNull(e){return null==e}static isEmpty(t){try{return Array.isArray(t)&&0===t.length||"string"==typeof t&&""===t||"object"==typeof t&&0===Object.keys(t).length&&!e.Dates.isDate(t)&&!(t instanceof RegExp)&&!(t instanceof FileSystemDirectoryHandle)&&!(t instanceof FileSystemFileHandle)}catch(e){return!1}}static isNullOrEmpty(e){return NullChecker.isNull(e)||NullChecker.isEmpty(e)}}e.NullChecker=NullChecker}(Pacem||(Pacem={})),Number.prototype.isCloseTo=function(e,t=14){const r=Number(`1e-${t}`);return this>e-r&&this<e+r},Number.prototype.roundoff=function(e=14){return parseFloat(this.toFixed(e))},Number.prototype.clamp=function(e,t){let r=this;return null==e||isNaN(e)||(r=Math.max(r,e)),null==t||isNaN(t)||(r=Math.min(r,t)),r},Number.prototype.toBase62=function(){for(var e=this,t="";0!=e;){t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(e%62)+t,e=Math.floor(e/62)}return t},Number.prototype.toBase36=function(){return this.toString(36)},function(e){e.Numbers=class Numbers{static round(e,t=1){return Math.round(e/t)*t}static log(e,t){return Math.log10(e)/Math.log10(t)}static rebase(e,t,r){const n=e.toString(),a=parseInt(n,t);return n.endsWith(a.toString(t))?parseInt(e.toString(),t).toString(r):Number.NaN.toString()}}}(Pacem||(Pacem={})),function(e){function t(e,t){const r=e.length,n=t.length,a=Array.from({length:r+1},()=>Array(n+1).fill(0));for(let s=1;s<=r;s++)for(let r=1;r<=n;r++)e[s-1]===t[r-1]?a[s][r]=a[s-1][r-1]+1:a[s][r]=Math.max(a[s-1][r],a[s][r-1]);return a}function r(e,t,r,n=""){const a=e.length,s=t.length,i=[];let o=a,c=s,l=null;const u=()=>{l&&(i.push(l),l=null)};for(;o>0||c>0;){var h=null;let a=null;o>0&&c>0&&e[o-1]===t[c-1]?(h="=",a=e[o-1],o--,c--):c>0&&(0===o||r[o][c-1]>=r[o-1][c])?(h="+",a=t[c-1],c--):o>0&&(0===c||r[o-1][c]>r[o][c-1])&&(h="-",a=e[o-1],o--),h&&null!==a?l&&l.type===h?l.value=a+(l.value?n:"")+l.value:(u(),l={type:h,value:a}):u()}return u(),i.reverse()}e.Strings=class Strings{static leftPad(e,t,r){return e.toString().padStart(t,r)}static format(t,...r){const n=Array.from(r);let a=t;for(let e=0;e<n.length;e++){const t=new RegExp("(^|[^\\{])\\{"+e+"\\}($|[^\\}])","g");a=a.replaceAll(t,(t,...r)=>t.replace("{"+e+"}",n[e]))}const s=/(^|[^\{}])\{(\d+)\}($|[^\}])/.exec(a);if(!e.NullChecker.isNullOrEmpty(s))throw new Error(`Missing argument at index ${s[2]}.`);return a}static diff(e,n,a="char"){switch(a){case"line":return function(e,n){const a=/\r?\n/,s=e.split(a),i=n.split(a);return r(s,i,t(s,i),"\n")}(e,n);case"word":return function(e,n){const a=/(\S+|\s+)/g,s=e.match(a)||[],i=n.match(a)||[];return r(s,i,t(s,i),"")}(e,n);default:return function(e,n){const a=e.split(""),s=n.split("");return r(a,s,t(a,s),"")}(e,n)}}static async hash(e,t="SHA-256"){const r=await crypto.subtle.digest(t,(new TextEncoder).encode(e));return Array.from(new Uint8Array(r)).map(e=>e.toString(16).padStart(2,"0")).join("")}}}(Pacem||(Pacem={})),function(e){!function(e){class LexerClass{tokenize(e,t){const r=[];for(;e;){const n=e.length;for(let n of t){const t=n.exec(e,this),a=t?.length;if(a>0){Array.prototype.push.apply(r,t);const n=t[a-1];e=e.substr((n.index||0)+n.raw.length);break}}if(e.length>=n)throw new Error(`Cannot parse\n"${e}"\n using the provided grammar.`)}return r}}e.Parser=class Parser{_lexer;constructor(e=new LexerClass){this._lexer=e}parse(e,t,r){const n=this._lexer.tokenize(e,t);return r.render(n)}}}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={})),function(e){!function(t){!function(t){function r(e){return(e??"").replace(/</g,"<")}function n(e){return e?.index||void 0}function a(e){return e?.replace(/[^\w]+/g," ").trim().replace(/ +/g,"-").toLowerCase()}function s(e,t,r){const n=t.exec(e);return n&&n.length?r(n):null}const i=/(<!--)([\s\S]*?)(-->|$)/,o=/^ {0,3}(={3,}|_{3,}|-{3,})(\r?\n|$)/,c=/^ {0,3}(#{1,6})\s+([^\n]+)(\r?\n|$)+/,l=/^ {0,3}([^\n]+)(\r?\n=+(\r?\n|$))+/,u=/^ {0,3}([^\n]+)(\r?\n-+(\r?\n|$))+/,h=/^ {4,}.+(\r?\n {4,}.+)*(\r?\n|$)+/,d=/^ {0,3}``` *([^\n]*)\r?\n(([\s\S](?!\r?\n {0,3}```))*.(\r?\n)+) {0,3}```(\r?\n|$)+/,f=/^ {0,3}> *([^\n]+)(\r?\n {0,3}> *([^\n]*))*(\r?\n|$)+/,g=/^( {0,3}([-+]).*\r?\n|$)((?!(?: {0,3}(?:\d+[.\)]|\r?\n\S))).*(\r?\n|$))*/,p=/^( {0,3}(\d+[.\)]).*\r?\n|$)((?!(?: {0,3}(?:[+-]|\r?\n\S))).*(\r?\n|$))*/,m=/^(?:[-+*]|\d+[.\)])/m,y=/^(?! {4,})(.+(\n(?! {0,3}```)(?! {0,3}([-+]|\d+[.\)]))(?! {4,})(?! {0,3}>).+)*)/,x=/^ {0,3}(!?)\[([^\]]+)\]: +(\S+)(?: +['"\(](.+)['"\)])?(\r?\n|$)+/,b=/!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?(\[[^\[\]]*\]|\([^\(\)]*\))?/,w=/(\*\*?|__?)(\[[^\]]*]\([^\)]+\))\1/,k=/(?:(?<!\\)`)(.+?)(?:(?<!\\)`)/,C=/(\*\*?|__?)((?!\1\s?)(?:(?!\1)[\S\s])*[^\s])\1/,$=/(~~?|__?)(?!\1\s?)([^\s][\s\S]*?(?!\1)[^\s])\1/,N=/(:")(?!":\s?)([^\s][\s\S]*?(?!":)[^\s])":/,M=/^\s+/,R=/ {2,}\r?\n/,S=/^[^\r\n]+/;let I,P;function L(t=[]){const L={[P.Comment]:{exec:(e,t)=>s(e,i,r=>{const a=n(r),s=[{type:I.Html,index:a,raw:r[0],text:r[2]}];if(a>0){const r=e.substr(0,a),n=t.tokenize(r,U);Array.prototype.unshift.apply(s,n)}return s})},[P.Reference]:{exec:e=>s(e,x,e=>{const t=n(e),r=e[0],a=r,s="!"===e[1],i=e[2],o=e[3],c=e[4];return[{type:I.Reference,index:t,raw:r,text:a,id:i,image:s,url:o,title:c}]})}},B=[],v=[],z={};for(let e of t){let t,r="inline";switch("type"in e?(r=e.type,t=e.rule):t=e,r){case"block":B.push(t);break;case"code":if("lang"in e){const r=e.lang.toLowerCase();(z[r]=z[r]||[]).push(t)}break;default:const r={exec:(e,r)=>{const n=t.exec(e,r);return E(e,n,r),n}};v.push(r)}}const T={[P.Text]:{exec:e=>s(e,S,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:I.Text}]})},[P.Space]:{exec:e=>s(e,M,e=>{const t=e[0];return[{type:I.Space,raw:t,text:t}]})}},_={[P.ImageOrLink]:{exec:(t,r)=>O(t,b,r,t=>{const s=n(t),i=t[0],o="!"===i.charAt(0),c=t[1],l=function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\[/.test(t)&&/\]$/.test(t)))return/^\(/.test(t)&&/\)$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2]),u=a(function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\(/.test(t)&&/\)$/.test(t)))return/^\[/.test(t)&&/\]$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2])??c);return o?[{index:s,type:l?I.Image:I.ImageLike,raw:i,text:c,src:l,ref:u,tokens:r.tokenize(c,A)}]:[{index:s,type:l?I.Link:I.LinkLike,raw:i,text:c,href:l,ref:u,tokens:r.tokenize(c,A)}]})},[P.Code]:{exec:(e,t)=>O(e,k,t,e=>{const t=r(e[1]);return[{type:I.Code,raw:e[0],text:t,index:n(e)}]})},[P.EmphasizedLink]:{exec:(t,r)=>O(t,w,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?I.Bold:I.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[P.Emphasize]:{exec:(t,r)=>O(t,C,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?I.Bold:I.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[P.StrikeThrough]:{exec:(t,r)=>O(t,$,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=I.StrikeThrough,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[P.Quote]:{exec:(t,r)=>O(t,N,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=I.Quote,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[P.LineBreak]:{exec:(e,t)=>O(e,R,t,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:I.LineBreak}]})}},E=(e,t,r)=>{const n=t?.length>0&&t[0].index;if(n>0){const a=e.substr(0,n),s=r.tokenize(a,A)||[];Array.prototype.unshift.apply(t,s)}},O=(e,t,r,n)=>{const a=s(e,t,r=>{if(t!=k){const t=k.exec(e);if(t&&t.length&&t.index<r.index)return null}return n(r)});return E(e,a,r),a},A=Object.values(_);Array.prototype.push.apply(A,v),A.push(T[P.Text],T[P.Space]);const D=e=>{const t=[T[P.Text],T[P.Space]],r=e?.toLowerCase()||"";return r&&r in z&&Array.prototype.unshift.apply(t,z[r]),t},H={[P.Paragraph]:{exec:(e,t)=>s(e,y,e=>{const r=e[0],n=r;return[{type:I.Paragraph,raw:r,text:n,tokens:t.tokenize(n,A)}]})},[P.Space]:T[P.Space]},j=(e,t)=>{const r=/^ {0,3}(`{3,}|$|>|[+-]\s|\d+[.\)])/m.test(e)?U:A;return t.tokenize(e,r)},F={[P.HorizontalRule]:{exec:(e,t)=>s(e,o,e=>{const t=e[0],r=t;return[{type:I.HorizontalRule,raw:t,text:r}]})},[P.Heading]:{exec:(e,t)=>s(e,c,e=>{const r=e[2];return[{type:I.Heading,raw:e[0],text:r,level:e[1].length,ref:a(r),tokens:t.tokenize(r,A)}]})},[P.Heading1]:{exec:(e,t)=>s(e,l,e=>{const r=e[1];return[{type:I.Heading,raw:e[0],text:r,level:1,ref:a(r),tokens:t.tokenize(r,A)}]})},[P.Heading2]:{exec:(e,t)=>s(e,u,e=>{const r=e[1];return[{type:I.Heading,raw:e[0],text:r,level:2,ref:a(r),tokens:t.tokenize(r,A)}]})},[P.CodeBlock]:{exec:(e,t)=>s(e,h,e=>{const n=e[0],a=r(n);return[{type:I.CodeBlock,raw:n,text:a,tokens:t.tokenize(a,[])}]})},[P.Fences]:{exec:(e,t)=>s(e,d,e=>{const n=r(e[2]),a=e[1]?.toLowerCase();return[{type:I.CodeBlock,raw:e[0],text:n,lang:a,tokens:t.tokenize(n,D(a))}]})},[P.BlockQuote]:{exec:(e,t)=>s(e,f,e=>{const r=e[0],n=r.replace(/^ {0,3}> */gm,"");return[{type:I.BlockQuote,raw:r,text:n,tokens:t.tokenize(n,[H[P.Paragraph],H[P.Space]])}]})},[P.OrderedList]:{exec:(t,r)=>s(t,p,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:I.OrderedList,start:parseInt(/\d/.exec(t[0])[0]),raw:n,text:n,tokens:a.map(e=>({type:I.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})},[P.UnorderedList]:{exec:(t,r)=>s(t,g,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:I.UnorderedList,raw:n,text:n,tokens:a.map(e=>({type:I.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})}},U=Object.values(F);return Array.prototype.push.apply(U,B),U.push(H[P.Paragraph],H[P.Space]),[L[P.Comment],L[P.Reference]].concat(U)}!function(e){e.Html="html",e.Text="text",e.Paragraph="paragraph",e.BlockQuote="blockquote",e.Space="space",e.Heading="heading",e.Bold="bold",e.Italic="italic",e.CodeBlock="codeblock",e.Code="code",e.Image="img",e.ImageLike="imglike",e.Link="link",e.LinkLike="linklike",e.LineBreak="br",e.StrikeThrough="strike",e.Quote="quote",e.HorizontalRule="hr",e.OrderedList="ol",e.UnorderedList="ul",e.ListItem="listitem",e.Reference="ref"}(I||(I={})),function(e){e[e.Comment=0]="Comment",e[e.Reference=1]="Reference",e[e.HorizontalRule=2]="HorizontalRule",e[e.Heading=3]="Heading",e[e.Heading1=4]="Heading1",e[e.Heading2=5]="Heading2",e[e.CodeBlock=6]="CodeBlock",e[e.Fences=7]="Fences",e[e.BlockQuote=8]="BlockQuote",e[e.OrderedList=9]="OrderedList",e[e.UnorderedList=10]="UnorderedList",e[e.Paragraph=11]="Paragraph",e[e.EmphasizedLink=12]="EmphasizedLink",e[e.ImageOrLink=13]="ImageOrLink",e[e.Emphasize=14]="Emphasize",e[e.StrikeThrough=15]="StrikeThrough",e[e.Quote=16]="Quote",e[e.Code=17]="Code",e[e.LineBreak=18]="LineBreak",e[e.Text=254]="Text",e[e.Space=255]="Space"}(P||(P={}));const B=/[ \r\n]*\0+[ \r\n]*/g;class HtmlRenderer{_extraItemRender;constructor(e=(e,t)=>e?.text||""){this._extraItemRender=e}_renderContent=t=>{const r=t.tokens;return e.NullChecker.isNullOrEmpty(r)?t.text:this._render(r)};_rendeItem(e,t){const r=this._renderContent,n="\0";switch(e?.type){case I.Reference:return"";case I.Html:return e.raw;case I.BlockQuote:return`<blockquote>\n${r(e)}</blockquote>${n}`;case I.Bold:return`<b>${r(e)}</b>`;case I.CodeBlock:const a=e.lang;return`<pre>${n}<code${a?' class="'+a+'"':""}>${r(e)}</code>${n}</pre>${n}`;case I.Code:return`<code>${r(e)}</code>`;case I.HorizontalRule:return`<hr />${n}`;case I.Heading:const s=e.level;return`<h${s} id="${e.ref}">${r(e)}</h${s}>${n}`;case I.Image:case I.ImageLike:const i=e;let o=i.src,c="";const l=i.text,u=i.ref;if(!o&&u){const e=t.find(e=>e.type===I.Reference&&!0===e.image&&e.id?.toLowerCase()===u.toLowerCase());e&&(o=e.url,c=e.title??"")}return o?`<img src="${o}" alt="${l}"${c?' title="'+c+'"':""} />`:`![${r(e)}]`;case I.Italic:return`<i>${r(e)}</i>`;case I.StrikeThrough:return`<s>${r(e)}</s>`;case I.Quote:return`<q>${r(e)}</q>`;case I.LineBreak:return"<br />\0";case I.OrderedList:return`<ol start="${e.start}">\n${r(e)}</ol>${n}`;case I.UnorderedList:return`<ul>\n${r(e)}</ul>${n}`;case I.ListItem:return`\t<li>${r(e)}</li>${n}`;case I.Link:case I.LinkLike:const h=e;let d=h.href,f="";const g=h.ref;if(!d&&g){const e=t.find(e=>e.type===I.Reference&&!0!==e.image&&e.id?.toLowerCase()===g.toLowerCase());e&&(d=e.url,f=e.title??"")}return d?`<a href="${d}"${f?' title="'+f+'"':""}>${r(e)}</a>`:`[${r(e)}]`;case I.Paragraph:return`<p>${r(e)}</p>${n}`;case I.Text:case I.Space:return e.text}return this._extraItemRender(e,t)}_render(e){let t="";for(let r of e||[])t+=this._rendeItem(r,e);return t}render(e){return t=this._render(e),t?.replace(B,"\n").trim();var t}}class TokenRenderer{_render(t){return e.NullChecker.isNullOrEmpty(t)?"":JSON.stringify(t)}render(t){return"["+t.filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(this._render).join(",")+"]"}}class Parser extends e.Compile.Parser{toHtml(t,r,n){const a=new HtmlRenderer(n);return e.NullChecker.isNullOrEmpty(r)?this.parse(t,a):this.parse(t,L(r),a)}tokenize(e,t){const r=this.parse(e,L(t),new TokenRenderer);return JSON.parse(r)}parse(e,t=L(),r=new HtmlRenderer){return(n=t)&&"object"==typeof n&&"function"==typeof n.render?super.parse(e,L(),t):super.parse(e,t,r);var n}}t.Parser=Parser}(t.Markdown||(t.Markdown={}))}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={}));
|
|
6
|
+
"use strict";var Pacem;!function(e){e.Arrays=class Arrays{static range(t,r,n=2){let a=t;e.NullChecker.isNull(r)&&(r=n=t,t=1);const s=(r-t)/(n-1),i=[];if(s>0)for(;i.length<n;)i.push(a.roundoff()),a+=s;return i}static chunkify(t,r){if(e.NullChecker.isNullOrEmpty(t))return[];if(r<=0||r%1!=0)throw new Error("Provide a positive integer number.");const n=Math.ceil(t.length/r);return Array.from({length:n},(e,n)=>{const a=n*r,s=a+r;return t.slice(a,s)})}}}(Pacem||(Pacem={})),function(e){class Blobs{static blobToDataURL(e){return new Promise((t,r)=>{const n=new FileReader;n.onload=e=>{t(e.target.result)},n.readAsDataURL(e)})}static _b64ToUint8Array(e){let t=e.length;const r=new Uint8Array(t);for(;t--;)r[t]=e.charCodeAt(t);return r}static base64ToBlob(e,t){const r=Blobs._b64ToUint8Array(atob(e));return new Blob([r],t)}static dataURLToBlob(e){const t=e.indexOf(",");if(-1===t)return Blobs.base64ToBlob(e);{const r=e.substring(t+1),n=e.substring(0,t).match(/:(.*?);/)[1];return Blobs.base64ToBlob(r,{type:n})}}static async blobToText(e,t){const r=await e.arrayBuffer();return new TextDecoder(t,{fatal:!1}).decode(r)}static textToBlob(e,t="text/plain",r="utf-8",n,a=63){let s=r.toLowerCase();const i=()=>`${t};charset=${s}`;switch(s){case"utf-8":{const t=(new TextEncoder).encode(e),r=n?[new Uint8Array([239,187,191]),t]:[t];return new Blob(r,{type:i()})}case"utf-16":s="utf-16le",n??=!0;case"utf-16le":case"utf-16be":{const t="utf-16be"!==s,r=n?1:0,a=new ArrayBuffer(2*(e.length+r)),o=new DataView(a);n&&o.setUint16(0,65279,t);for(let n=0;n<e.length;n++)o.setUint16(2*(n+r),e.charCodeAt(n),t);return new Blob([a],{type:i()})}case"ascii":case"iso-8859-1":case"latin1":{const t="ascii"===s?127:255,n=new Uint8Array(e.length),o=a>0;for(let s=0;s<e.length;s++){const i=e.charCodeAt(s);if(i>t){if(!o)throw new Error(`Character "${e[s]}" cannot be encoded in ${r}.`);n[s]=a}else n[s]=i}return new Blob([n],{type:i()})}default:throw new Error(`Encoding "${r}" is not supported safely in the browser. Use UTF-8 or any supported encoding.`)}}}e.Blobs=Blobs}(Pacem||(Pacem={})),function(e){!function(e){const t=(e,t)=>{const r=e.match(t);return r?r[2]:null};e.detect=function(e=navigator.userAgent){let r="unknown",n=null;switch(/ucbrowser/i.test(e)?r="UCBrowser":/edg/i.test(e)?r="Edge":/googlebot/i.test(e)?r="GoogleBot":/chromium/i.test(e)?r="Chromium":/firefox|fxios/i.test(e)&&!/seamonkey/i.test(e)?r="Firefox":/; msie|trident/i.test(e)&&!/ucbrowser/i.test(e)?r="IE":/chrome|crios/i.test(e)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(e)?r="Chrome":/safari/i.test(e)&&!/chromium|edg|ucbrowser|chrome|crios|opr|opera|fxios|firefox/i.test(e)?r="Safari":/opr|opera/i.test(e)&&(r="Opera"),r){case"UCBrowser":n=t(e,/(ucbrowser)\/([\d\.]+)/i);break;case"Edge":n=t(e,/(edge|edga|edgios|edg)\/([\d\.]+)/i);break;case"GoogleBot":n=t(e,/(googlebot)\/([\d\.]+)/i);break;case"Chromium":n=t(e,/(chromium)\/([\d\.]+)/i);break;case"Firefox":n=t(e,/(firefox|fxios)\/([\d\.]+)/i);break;case"Chrome":n=t(e,/(chrome|crios)\/([\d\.]+)/i);break;case"Safari":n=t(e,/(safari)\/([\d\.]+)/i);break;case"Opera":n=t(e,/(opera|opr)\/([\d\.]+)/i);break;case"IE":{const r=t(e,/(trident)\/([\d\.]+)/i);n=r?`${parseFloat(r)+4}`:"7.0";break}default:n="0.0.0.0"}return{name:r,version:n}}}(e.Browsers||(e.Browsers={}))}(Pacem||(Pacem={})),function(e){const t=/^hsl\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*\)$/,r=/^hsla\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)\)$/,n=/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/,a=/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\)$/,s=/^#[a-f0-9]{6}$/,i=/^#[a-f0-9]{3}$/;function o(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"r"in t&&"g"in t&&"b"in t&&"number"==typeof t.r&&"number"==typeof t.b&&"number"==typeof t.g&&(t.a??=1,t.r>=0&&t.r<=1&&t.g>=0&&t.g<=1&&t.b>=0&&t.b<=1&&t.a>=0&&t.a<=1)}function c(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"h"in t&&"s"in t&&"l"in t&&"number"==typeof t.h&&"number"==typeof t.s&&"number"==typeof t.l&&(t.a??=1,t.h>=0&&t.h<=360&&t.s>=0&&t.s<=1&&t.l>=0&&t.l<=1&&t.a>=0&&t.a<=1)}const l={adjustRgbChannel:e=>e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4),adjustRgbChannelInv:e=>e<=.00304?12.92*e:1.055*(Math.pow(e,1/2.4)-.055),adjustRgb:e=>({r:l.adjustRgbChannel(e.r),g:l.adjustRgbChannel(e.g),b:l.adjustRgbChannel(e.b),a:e.a}),adjustRgbInv:e=>({r:l.adjustRgbChannelInv(e.r),g:l.adjustRgbChannelInv(e.g),b:l.adjustRgbChannelInv(e.b),a:e.a}),X:e=>.4125*e.r+.3576*e.g+.1804*e.b,Y:e=>.2126*e.r+.7152*e.g+.0722*e.b,Z:e=>.0193*e.r+.1191*e.g+.9503*e.b,relativeLuminance:e=>{const t=l.adjustRgb(e);return l.Y(t)},rgbToCieXYZ:e=>{const t=l.adjustRgb(e);return{x:l.X(t),y:l.Y(t),z:l.Z(t),a:e.a}},cieXYZToRgb:e=>{const t=3.241*e.x-1.5374*e.y-.4986*e.z,r=-.9692*e.x+1.876*e.y+.0416*e.z,n=.0556*e.x-.204*e.y+1.057*e.z;return l.adjustRgbInv({r:t,g:r,b:n,a:e.a})},contrastRatio:(e,t)=>{const r=l.relativeLuminance(e)+.05,n=l.relativeLuminance(t)+.05;return r>n?r/n:n/r}};function u(e){return e.toString(16).padStart(2,"0")}class Colors{static WCAG_MINIMUM_CONTRAST=3;static WCAG_NORMAL_TEXT_CONTRAST=4.5;static WCAG_SAFE_CONTRAST=7;static _clampRGB(e){const t=e=>Math.min(1,Math.max(0,e));return null==e[3]&&(e[3]=1),{r:t(e[0]),g:t(e[1]),b:t(e[2]),a:Math.min(1,Math.max(0,e[3]))}}static _normalize(e){return[e[0]/255,e[1]/255,e[2]/255,e[3]]}static parse(e){if(e=(e||"").toLowerCase(),n.test(e)){let t=n.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),1]))}if(a.test(e)){let t=a.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]))}if(s.test(e)){let t=s.exec(e)[0];return this._clampRGB(this._normalize([parseInt("0x"+t.substr(1,2)),parseInt("0x"+t.substr(3,2)),parseInt("0x"+t.substr(5,2)),1]))}if(i.test(e)){let t=i.exec(e)[0],r=t.substr(1,1),n=t.substr(2,1),a=t.substr(3,1);return this._clampRGB(this._normalize([parseInt("0x"+r+r),parseInt("0x"+n+n),parseInt("0x"+a+a),1]))}if(t.test(e)){let r=t.exec(e);const n={h:parseFloat(r[1]),s:.01*parseFloat(r[2]),l:.01*parseFloat(r[3])};return this.rgb(n)}if(r.test(e)){let t=r.exec(e);const n={h:parseFloat(t[1]),s:.01*parseFloat(t[2]),l:.01*parseFloat(t[3]),a:parseFloat(t[4])};return this.rgb(n)}}static hsl(e){const t=function(e){const t=e.r,r=e.g,n=e.b;return(.5*(Math.max(t,r,n)+Math.min(t,r,n))).clamp(0,1)}(e),r=function(e,t){const r=e.r,n=e.g,a=e.b,s=Math.max(r,n,a),i=Math.min(r,n,a);return(0===t||1===t?0:(s-i)/(1-Math.abs(2*t-1))).clamp(0,1)}(e,t),n=function(e){const t=e.r,r=e.g,n=e.b,a=Math.max(t,r,n),s=Math.min(t,r,n);let i=0;return a!==s&&(i=a===t?((r-n)/(a-s)*60+360)%360:a===r?((n-t)/(a-s)*60+120)%360:((t-r)/(a-s)*60+240)%360),i.clamp(0,360)}(e);return{h:n,s:r,l:t,a:e.a}}static cieXYZ(e){return c(e)&&(e=this.rgb(e)),l.rgbToCieXYZ(e)}static rgb(e){if(!c(e)){const t=l.cieXYZToRgb(e);return this._clampRGB([t.r,t.g,t.b,t.a])}{const t=e.h,r=e.s,n=e.l,a=t/60,s=(1-Math.abs(2*n-1))*r,i=s*(1-Math.abs(a%2-1)),o=n-s/2,c=(t,r,n)=>this._clampRGB([t+o,r+o,n+o,e.a]);if(a<=1)return c(s,i,0);if(a<=2)return c(i,s,0);if(a<=3)return c(0,s,i);if(a<=4)return c(0,i,s);if(a<=5)return c(i,0,s);if(a<=6)return c(s,0,i)}}static stringify(e,t=1){if(c(e)){t??=1,e.a??=1;const r="number"==typeof t?t:1;return`hsla(${e.h.roundoff(r)},${(100*e.s).roundoff(r)}%,${(100*e.l).roundoff(r)}%,${e.a.roundoff()})`}if(o(e)){t??=!0,e.a??=1;const r="boolean"==typeof t?t:!!t,n=Math.round(255*e.r),a=Math.round(255*e.g),s=Math.round(255*e.b),i=e.a.roundoff();return 1===i?r?("#"+u(n)+u(a)+u(s)).toUpperCase():`rgb(${n},${a},${s})`:`rgba(${n},${a},${s},${i})`}}static contrastRatio(e,t){return c(e)&&(e=this.rgb(e)),c(t)&&(t=this.rgb(t)),l.contrastRatio(e,t)}static luminance(e){return c(e)&&(e=Colors.rgb(e)),l.relativeLuminance(e)}static lighten(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.l+t));return Object.assign({},e,{l:r})}if(o(e)){const r=this.lighten(this.hsl(e),t);return this.rgb(r)}return e}static darken(e,t=.1){return this.lighten(e,-t)}static saturate(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.s+t));return Object.assign({},e,{s:r})}if(o(e)){const r=this.saturate(this.hsl(e),t);return this.rgb(r)}return e}static desaturate(e,t=.1){return this.saturate(e,-t)}static interpolate(e,t,r,n){r??=.5,n??=r;const a=(r+n).roundoff(),s=(r/a).roundoff(),i=(n/a).roundoff(),l=o(e),u=c(e),h=e=>o(e)||c(e)?Colors.cieXYZ(e):e;e=h(e),t=h(t);const d={x:(e.x*s+t.x*i).roundoff(),y:(e.y*s+t.y*i).roundoff(),z:(e.z*s+t.z*i).roundoff(),a:(e.a*s+t.a*i).roundoff()};return l?Colors.rgb(d):u?Colors.hsl(Colors.rgb(d)):d}}e.Colors=Colors}(Pacem||(Pacem={})),function(e){const t=/^\/Date\([\d]+\)\/$/i;class Dates{static parse(e){let r;return"string"==typeof e?(r=t.test(e)?parseInt(e.substring(6)):Date.parse(e),new Date(r)):"number"==typeof e?new Date(e):e}static isLeapYear(e){return e%4==0&&e%100!=0||e%400==0}static daysInMonth(e,t){return[31,Dates.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}static isDate(e){return e instanceof Date&&!isNaN(e.valueOf())}static dateOnly(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}static addMonths(e,t){let r=e.getDate(),n=new Date(e),a=n.getMonth()+t,s=0;for(;a<0;)a+=12,s--;return n.setDate(1),n.setMonth(a%12),n.setFullYear(n.getFullYear()+s+Math.floor(a/12)),n.setDate(Math.min(r,Dates.daysInMonth(n.getFullYear(),n.getMonth()))),n}static addDays(e,t){return new Date(e.valueOf()+864e5*t)}static daysBetween(e,t){return(t.valueOf()-e.valueOf())/864e5}}e.Dates=Dates}(Pacem||(Pacem={})),function(e){const t=/[-+]?([\d]+(\.[\d]+(e-[\d]+)?)?|[\d]*(\.[\d]+(e-[\d]+)?))/g;function r(e){const r=[];let n=e.match(t);return n&&n.length>0&&n.forEach(e=>r.push(parseFloat(e))),r}e.parseAsNumericalArray=r;class Angle{static isAngle(e){return"object"==typeof e&&"vertex"in e&&Point.isPoint(e.vertex)&&"start"in e&&Point.isPoint(e.start)&&"end"in e&&Point.isPoint(e.end)}static value(t){if(e.NullChecker.isNullOrEmpty(t)||!Angle.isAngle(t))return Number.NaN;const{vertex:r,start:n,end:a}=t;return Angle.angleBetween(r,n,a)}static angleBetween(e,t,r){const n=t.x-e.x,a=t.y-e.y,s=r.x-e.x,i=r.y-e.y,o=n*s+a*i,c=n*i-a*s;return-Math.atan2(c,o)}}e.Angle=Angle;class Size{static parse(e){let t=r(e);if(t&&2===t.length)return{width:t[0],height:t[1]};throw new Error(`Cannot parse "${e}" as a valid Size.`)}static isSize(e){return"object"==typeof e&&"width"in e&&"number"==typeof e.width&&"height"in e&&"number"==typeof e.height}}e.Size=Size;class Point{static parse(e){let t=r(e);if(t&&2===t.length)return{x:t[0],y:t[1]};throw new Error(`Cannot parse "${e}" as a valid Point.`)}static isPoint(e){return"object"==typeof e&&"x"in e&&"number"==typeof e.x&&"y"in e&&"number"==typeof e.y}static distance(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}static subtract(e,t){return{x:t.x-e.x,y:t.y-e.y}}static add(...e){var t={x:0,y:0};for(var r of e)t.x+=r.x,t.y+=r.y;return t}static multiply(e,t){return{x:e.x*t,y:e.y*t}}}e.Point=Point;class Rect{static parse(e){let t=r(e);if(t&&4===t.length)return{x:t[0],y:t[1],width:t[2],height:t[3]};throw new Error(`Cannot parse "${e}" as a valid Rect.`)}static isRect(e){return Point.isPoint(e)&&Size.isSize(e)}static _stretch(e,t){return{a:t.width/e.width,b:0,c:0,d:t.height/e.height,e:t.x-e.x,f:t.y-e.y}}static _contain(t,r,n,a){let s=1;s=t.width/t.height>=r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _cover(t,r,n,a){let s=1;s=t.width/t.height<r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _align(e,t,r,n){let a=0,s=0;switch(r){case"left":a=t.x-e.x;break;case"right":a=t.x+t.width-e.width-e.x;break;default:a=t.x+.5*t.width-.5*e.width-e.x}switch(n){case"top":s=t.y-e.y;break;case"bottom":s=t.y+t.height-e.height-e.y;break;default:s=t.y+.5*t.height-.5*e.height-e.y}return{x:a,y:s}}static findTransform(e,t,r="stretch",n="center",a="middle"){switch(r){case"contain":return this._contain(e,t,n,a);case"cover":return this._cover(e,t,n,a);default:return this._stretch(e,t)}}static intersect(...e){const t={x:0,y:0,height:0,width:0},r=Array.from(e||[]);if(r.length<=0)return t;for(var n=r[0],a=1;a<r.length;a++){const e=r[a],s=Math.max(e.x,n.x),i=Math.max(e.y,n.y),o=Math.min(e.x+e.width,n.x+n.width)-s,c=Math.min(e.y+e.height,n.y+n.height)-i;if(o<0||c<=0)return t;n={x:s,y:i,width:o,height:c}}return n}static expand(e,...t){const r=Array.from(t||[]);let n=e.x,a=e.y,s=n,i=a;Rect.isRect(e)&&(s+=e.width,i+=e.height);for(let e of r)n=Math.min(e.x,n),a=Math.min(e.y,a),s=Math.max(e.x,s),i=Math.max(e.y,i);return{x:n,y:a,width:s-n,height:i-a}}}e.Rect=Rect}(Pacem||(Pacem={})),function(e){e.HistoryService=class HistoryService{constructor(e,t){this.#e=e,this.#t=t}#r=[];#n=[];#t;#e;get current(){return this.#e}get canUndo(){return this.#r.length>0}get canRedo(){return this.#n.length>0}set maxlength(e){this.#t=e}undo(){if(this.canUndo){const e=this.#r,t=this.#n,r=this.#e;t.unshift(r),this.#e=e.pop()}}redo(){if(this.canRedo){const e=this.#r,t=this.#n,r=this.#e;e.push(r),this.#e=t.shift()}}push(e){this.#n.splice(0),this.#r.push(this.#e),this.#e=e;const t=this.#t,r=this.#r;t>0&&r.length>t&&r.splice(0,r.length-t)}reset(){this.#n.splice(0),this.#r.splice(0)}}}(Pacem||(Pacem={})),function(e){const t={mode:"stretch",align:"center",valign:"middle",quality:1,type:"image/jpeg"};class Imaging{static async loadImage(e){const t=await fetch(e);if(!t.ok)return null;return await t.blob()}static async resizeImage(r,n,a,s){if(n<=0||a<=0||isNaN(n)||isNaN(a))throw new Error("Invalid target size");"string"==typeof r&&(r=await Imaging.loadImage(r));const i=await self.createImageBitmap(r),o=i.width,c=i.height,l=new OffscreenCanvas(o,c),u=l.getContext("2d");u.imageSmoothingEnabled=u.mozImageSmoothingEnabled=u.oImageSmoothingEnabled=u.webkitImageSmoothingEnabled=!0;const{quality:h,type:d,mode:f,align:g,valign:p,background:m}=Object.assign({},t,s??{}),y={width:o,height:c,x:0,y:0},x={x:0,y:0,width:n,height:a},b=e.Rect.findTransform(y,x,f,g,p);l.width=n,l.height=a,m&&(u.fillStyle=m,u.fillRect(0,0,l.width,l.height)),u.setTransform(b),u.drawImage(i,0,0);return await l.convertToBlob({quality:h,type:d})}}e.Imaging=Imaging}(Pacem||(Pacem={})),function(e){class Keys{static#a;static uniqueId(){let e=Keys.#a||Date.now();return Keys.#a=++e}static uniqueCode(){return Keys.uniqueId().toBase62()}static randomString(e){let t="";do{t+=(62*Math.random()).toBase62()}while(t.length<e);return t}}e.Keys=Keys}(Pacem||(Pacem={})),function(e){class Matrix2D{static isIdentity(e){return 1===e.a&&1===e.d&&0===e.b&&0===e.f&&0===e.c&&0===e.e}static get identity(){return{a:1,b:0,c:0,d:1,e:0,f:0}}static copy(e){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}}static scale(e,t,r=t){return{a:e.a*t,b:e.b,c:e.c,d:e.d*r,e:e.e,f:e.f}}static translate(e,t){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e+t.x,f:e.f+t.y}}static rotate(e,t){const r=Math.cos(t),n=Math.sin(t);return Matrix2D.multiply(e,{a:r,b:n,c:-n,d:r,e:0,f:0})}static multiply(e,t){return"x"in e&&"y"in e?"number"==typeof t?{x:e.x*t,y:e.y*t}:{x:e.x*t.a+e.y*t.c+t.e,y:e.x*t.b+e.y*t.d+t.f}:"number"==typeof t?{a:e.a*t,b:e.b*t,c:e.c*t,d:e.d*t,e:e.e*t,f:e.f*t}:{a:e.a*t.a+e.b*t.c,b:e.a*t.b+e.b*t.d,c:e.c*t.a+e.d*t.c,d:e.c*t.b+e.d*t.d,e:e.e*t.a+e.f*t.c+t.e,f:e.e*t.b+e.f*t.d+t.f}}static det(e){return e.a*e.d-e.c*e.b}static invert(e){const t=this.det(e);if(0===t)return null;const r=1/t;return this.multiply({a:e.d,b:-e.b,c:-e.c,d:e.a,e:-e.e*e.d+e.c*e.f,f:e.e*e.b-e.a*e.f},r)}static toComponents(e,t={x:0,y:0}){const r=Math.sqrt(e.a*e.a+e.c*e.c),n=Math.sqrt(e.b*e.b+e.d*e.d),a=0!=r?e.a/r:0,s=0!=r?e.c/r:0,i=Math.atan2(s,a),{x:o,y:c}=t;return{scaleX:r,scaleY:n,rotation:i,translation:{x:e.e-o*(r*a-1)+c*r*s,y:e.f-c*(n*a-1)-o*n*s}}}static fromTransform([e,t,r],[n,a,s]){const i=e.x*(t.y-r.y)-e.y*(t.x-r.x)+(t.x*r.y-r.x*t.y);if(Math.abs(i)<1e-10)throw new Error("Points are collinear; matrix is singular and cannot be solved.");const o=1/i;return{a:o*(n.x*(t.y-r.y)+a.x*(r.y-e.y)+s.x*(e.y-t.y)),b:o*(n.y*(t.y-r.y)+a.y*(r.y-e.y)+s.y*(e.y-t.y)),c:o*(n.x*(r.x-t.x)+a.x*(e.x-r.x)+s.x*(t.x-e.x)),d:o*(n.y*(r.x-t.x)+a.y*(e.x-r.x)+s.y*(t.x-e.x)),e:o*(n.x*(t.x*r.y-r.x*t.y)+a.x*(r.x*e.y-e.x*r.y)+s.x*(e.x*t.y-t.x*e.y)),f:o*(n.y*(t.x*r.y-r.x*t.y)+a.y*(r.x*e.y-e.x*r.y)+s.y*(e.x*t.y-t.x*e.y))}}static areClose(e,t,r=12){return e.a.isCloseTo(t.a,r)&&e.b.isCloseTo(t.b,r)&&e.c.isCloseTo(t.c,r)&&e.d.isCloseTo(t.d,r)&&e.e.isCloseTo(t.e,r)&&e.f.isCloseTo(t.f,r)}}e.Matrix2D=Matrix2D}(Pacem||(Pacem={})),function(e){class NullChecker{static isNull(e){return null==e}static isEmpty(t){try{return Array.isArray(t)&&0===t.length||"string"==typeof t&&""===t||"object"==typeof t&&0===Object.keys(t).length&&!e.Dates.isDate(t)&&!(t instanceof RegExp)&&!(t instanceof FileSystemDirectoryHandle)&&!(t instanceof FileSystemFileHandle)}catch(e){return!1}}static isNullOrEmpty(e){return NullChecker.isNull(e)||NullChecker.isEmpty(e)}}e.NullChecker=NullChecker}(Pacem||(Pacem={})),Number.prototype.isCloseTo=function(e,t=14){const r=Number(`1e-${t}`);return this>e-r&&this<e+r},Number.prototype.roundoff=function(e=14){return parseFloat(this.toFixed(e))},Number.prototype.clamp=function(e,t){let r=this;return null==e||isNaN(e)||(r=Math.max(r,e)),null==t||isNaN(t)||(r=Math.min(r,t)),r},Number.prototype.toBase62=function(){for(var e=this,t="";0!=e;){t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(e%62)+t,e=Math.floor(e/62)}return t},Number.prototype.toBase36=function(){return this.toString(36)},function(e){e.Numbers=class Numbers{static round(e,t=1){return Math.round(e/t)*t}static log(e,t){return Math.log10(e)/Math.log10(t)}static rebase(e,t,r){const n=e.toString(),a=parseInt(n,t);return n.endsWith(a.toString(t))?parseInt(e.toString(),t).toString(r):Number.NaN.toString()}}}(Pacem||(Pacem={})),function(e){function t(e,t){const r=e.length,n=t.length,a=Array.from({length:r+1},()=>Array(n+1).fill(0));for(let s=1;s<=r;s++)for(let r=1;r<=n;r++)e[s-1]===t[r-1]?a[s][r]=a[s-1][r-1]+1:a[s][r]=Math.max(a[s-1][r],a[s][r-1]);return a}function r(e,t,r,n=""){const a=e.length,s=t.length,i=[];let o=a,c=s,l=null;const u=()=>{l&&(i.push(l),l=null)};for(;o>0||c>0;){var h=null;let a=null;o>0&&c>0&&e[o-1]===t[c-1]?(h="=",a=e[o-1],o--,c--):c>0&&(0===o||r[o][c-1]>=r[o-1][c])?(h="+",a=t[c-1],c--):o>0&&(0===c||r[o-1][c]>r[o][c-1])&&(h="-",a=e[o-1],o--),h&&null!==a?l&&l.type===h?l.value=a+(l.value?n:"")+l.value:(u(),l={type:h,value:a}):u()}return u(),i.reverse()}e.Strings=class Strings{static leftPad(e,t,r){return e.toString().padStart(t,r)}static format(t,...r){const n=Array.from(r);let a=t;for(let e=0;e<n.length;e++){const t=new RegExp("(^|[^\\{])\\{"+e+"\\}($|[^\\}])","g");a=a.replaceAll(t,(t,...r)=>t.replace("{"+e+"}",n[e]))}const s=/(^|[^\{}])\{(\d+)\}($|[^\}])/.exec(a);if(!e.NullChecker.isNullOrEmpty(s))throw new Error(`Missing argument at index ${s[2]}.`);return a}static diff(e,n,a="char"){switch(a){case"line":return function(e,n){const a=/\r?\n/,s=e.split(a),i=n.split(a);return r(s,i,t(s,i),"\n")}(e,n);case"word":return function(e,n){const a=/(\S+|\s+)/g,s=e.match(a)||[],i=n.match(a)||[];return r(s,i,t(s,i),"")}(e,n);default:return function(e,n){const a=e.split(""),s=n.split("");return r(a,s,t(a,s),"")}(e,n)}}static async hash(e,t="SHA-256"){const r=await crypto.subtle.digest(t,(new TextEncoder).encode(e));return Array.from(new Uint8Array(r)).map(e=>e.toString(16).padStart(2,"0")).join("")}}}(Pacem||(Pacem={})),function(e){!function(e){class LexerClass{tokenize(e,t){const r=[];for(;e;){const n=e.length;for(let n of t){const t=n.exec(e,this),a=t?.length;if(a>0){Array.prototype.push.apply(r,t);const n=t[a-1];e=e.substr((n.index||0)+n.raw.length);break}}if(e.length>=n)throw new Error(`Cannot parse\n"${e}"\n using the provided grammar.`)}return r}}e.Parser=class Parser{_lexer;constructor(e=new LexerClass){this._lexer=e}parse(e,t,r){const n=this._lexer.tokenize(e,t);return r.render(n)}}}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={})),function(e){!function(t){!function(t){function r(e){return(e??"").replace(/</g,"<")}function n(e){return e?.index||void 0}function a(e){return e?.replace(/[^\w]+/g," ").trim().replace(/ +/g,"-").toLowerCase()}function s(e,t,r){const n=t.exec(e);return n&&n.length?r(n):null}const i=/(<!--)([\s\S]*?)(-->|$)/,o=/^ {0,3}(={3,}|_{3,}|-{3,})(\r?\n|$)/,c=/^ {0,3}(#{1,6})\s+([^\n]+)(\r?\n|$)+/,l=/^ {0,3}([^\n]+)(\r?\n=+(\r?\n|$))+/,u=/^ {0,3}([^\n]+)(\r?\n-+(\r?\n|$))+/,h=/^ {4,}.+(\r?\n {4,}.+)*(\r?\n|$)+/,d=/^ {0,3}``` *([^\n]*)\r?\n(([\s\S](?!\r?\n {0,3}```))*.(\r?\n)+) {0,3}```(\r?\n|$)+/,f=/^ {0,3}> *([^\n]+)(\r?\n {0,3}> *([^\n]*))*(\r?\n|$)+/,g=/^( {0,3}([-+]).*\r?\n|$)((?!(?: {0,3}(?:\d+[.\)]|\r?\n\S))).*(\r?\n|$))*/,p=/^( {0,3}(\d+[.\)]).*\r?\n|$)((?!(?: {0,3}(?:[+-]|\r?\n\S))).*(\r?\n|$))*/,m=/^(?:[-+*]|\d+[.\)])/m,y=/^(?! {4,})(.+(\n(?! {0,3}```)(?! {0,3}([-+]|\d+[.\)]))(?! {4,})(?! {0,3}>).+)*)/,x=/^ {0,3}(!?)\[([^\]]+)\]: +(\S+)(?: +['"\(](.+)['"\)])?(\r?\n|$)+/,b=/!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?(\[[^\[\]]*\]|\([^\(\)]*\))?/,w=/(\*\*?|__?)(\[[^\]]*]\([^\)]+\))\1/,k=/(?:(?<!\\)`)(.+?)(?:(?<!\\)`)/,C=/(\*\*?|__?)((?!\1\s?)(?:(?!\1)[\S\s])*[^\s])\1/,$=/(~~?|__?)(?!\1\s?)([^\s][\s\S]*?(?!\1)[^\s])\1/,N=/(:")(?!":\s?)([^\s][\s\S]*?(?!":)[^\s])":/,M=/^\s+/,R=/ {2,}\r?\n/,S=/^[^\r\n]+/;let I,B;function L(t=[]){const L={[B.Comment]:{exec:(e,t)=>s(e,i,r=>{const a=n(r),s=[{type:I.Html,index:a,raw:r[0],text:r[2]}];if(a>0){const r=e.substr(0,a),n=t.tokenize(r,U);Array.prototype.unshift.apply(s,n)}return s})},[B.Reference]:{exec:e=>s(e,x,e=>{const t=n(e),r=e[0],a=r,s="!"===e[1],i=e[2],o=e[3],c=e[4];return[{type:I.Reference,index:t,raw:r,text:a,id:i,image:s,url:o,title:c}]})}},P=[],v=[],T={};for(let e of t){let t,r="inline";switch("type"in e?(r=e.type,t=e.rule):t=e,r){case"block":P.push(t);break;case"code":if("lang"in e){const r=e.lang.toLowerCase();(T[r]=T[r]||[]).push(t)}break;default:const r={exec:(e,r)=>{const n=t.exec(e,r);return _(e,n,r),n}};v.push(r)}}const z={[B.Text]:{exec:e=>s(e,S,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:I.Text}]})},[B.Space]:{exec:e=>s(e,M,e=>{const t=e[0];return[{type:I.Space,raw:t,text:t}]})}},E={[B.ImageOrLink]:{exec:(t,r)=>A(t,b,r,t=>{const s=n(t),i=t[0],o="!"===i.charAt(0),c=t[1],l=function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\[/.test(t)&&/\]$/.test(t)))return/^\(/.test(t)&&/\)$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2]),u=a(function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\(/.test(t)&&/\)$/.test(t)))return/^\[/.test(t)&&/\]$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2])??c);return o?[{index:s,type:l?I.Image:I.ImageLike,raw:i,text:c,src:l,ref:u,tokens:r.tokenize(c,O)}]:[{index:s,type:l?I.Link:I.LinkLike,raw:i,text:c,href:l,ref:u,tokens:r.tokenize(c,O)}]})},[B.Code]:{exec:(e,t)=>A(e,k,t,e=>{const t=r(e[1]);return[{type:I.Code,raw:e[0],text:t,index:n(e)}]})},[B.EmphasizedLink]:{exec:(t,r)=>A(t,w,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?I.Bold:I.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,O)}]})},[B.Emphasize]:{exec:(t,r)=>A(t,C,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?I.Bold:I.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,O)}]})},[B.StrikeThrough]:{exec:(t,r)=>A(t,$,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=I.StrikeThrough,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,O)}]})},[B.Quote]:{exec:(t,r)=>A(t,N,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=I.Quote,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,O)}]})},[B.LineBreak]:{exec:(e,t)=>A(e,R,t,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:I.LineBreak}]})}},_=(e,t,r)=>{const n=t?.length>0&&t[0].index;if(n>0){const a=e.substr(0,n),s=r.tokenize(a,O)||[];Array.prototype.unshift.apply(t,s)}},A=(e,t,r,n)=>{const a=s(e,t,r=>{if(t!=k){const t=k.exec(e);if(t&&t.length&&t.index<r.index)return null}return n(r)});return _(e,a,r),a},O=Object.values(E);Array.prototype.push.apply(O,v),O.push(z[B.Text],z[B.Space]);const D=e=>{const t=[z[B.Text],z[B.Space]],r=e?.toLowerCase()||"";return r&&r in T&&Array.prototype.unshift.apply(t,T[r]),t},H={[B.Paragraph]:{exec:(e,t)=>s(e,y,e=>{const r=e[0],n=r;return[{type:I.Paragraph,raw:r,text:n,tokens:t.tokenize(n,O)}]})},[B.Space]:z[B.Space]},j=(e,t)=>{const r=/^ {0,3}(`{3,}|$|>|[+-]\s|\d+[.\)])/m.test(e)?U:O;return t.tokenize(e,r)},F={[B.HorizontalRule]:{exec:(e,t)=>s(e,o,e=>{const t=e[0],r=t;return[{type:I.HorizontalRule,raw:t,text:r}]})},[B.Heading]:{exec:(e,t)=>s(e,c,e=>{const r=e[2];return[{type:I.Heading,raw:e[0],text:r,level:e[1].length,ref:a(r),tokens:t.tokenize(r,O)}]})},[B.Heading1]:{exec:(e,t)=>s(e,l,e=>{const r=e[1];return[{type:I.Heading,raw:e[0],text:r,level:1,ref:a(r),tokens:t.tokenize(r,O)}]})},[B.Heading2]:{exec:(e,t)=>s(e,u,e=>{const r=e[1];return[{type:I.Heading,raw:e[0],text:r,level:2,ref:a(r),tokens:t.tokenize(r,O)}]})},[B.CodeBlock]:{exec:(e,t)=>s(e,h,e=>{const n=e[0],a=r(n);return[{type:I.CodeBlock,raw:n,text:a,tokens:t.tokenize(a,[])}]})},[B.Fences]:{exec:(e,t)=>s(e,d,e=>{const n=r(e[2]),a=e[1]?.toLowerCase();return[{type:I.CodeBlock,raw:e[0],text:n,lang:a,tokens:t.tokenize(n,D(a))}]})},[B.BlockQuote]:{exec:(e,t)=>s(e,f,e=>{const r=e[0],n=r.replace(/^ {0,3}> */gm,"");return[{type:I.BlockQuote,raw:r,text:n,tokens:t.tokenize(n,[H[B.Paragraph],H[B.Space]])}]})},[B.OrderedList]:{exec:(t,r)=>s(t,p,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:I.OrderedList,start:parseInt(/\d/.exec(t[0])[0]),raw:n,text:n,tokens:a.map(e=>({type:I.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})},[B.UnorderedList]:{exec:(t,r)=>s(t,g,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:I.UnorderedList,raw:n,text:n,tokens:a.map(e=>({type:I.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})}},U=Object.values(F);return Array.prototype.push.apply(U,P),U.push(H[B.Paragraph],H[B.Space]),[L[B.Comment],L[B.Reference]].concat(U)}!function(e){e.Html="html",e.Text="text",e.Paragraph="paragraph",e.BlockQuote="blockquote",e.Space="space",e.Heading="heading",e.Bold="bold",e.Italic="italic",e.CodeBlock="codeblock",e.Code="code",e.Image="img",e.ImageLike="imglike",e.Link="link",e.LinkLike="linklike",e.LineBreak="br",e.StrikeThrough="strike",e.Quote="quote",e.HorizontalRule="hr",e.OrderedList="ol",e.UnorderedList="ul",e.ListItem="listitem",e.Reference="ref"}(I||(I={})),function(e){e[e.Comment=0]="Comment",e[e.Reference=1]="Reference",e[e.HorizontalRule=2]="HorizontalRule",e[e.Heading=3]="Heading",e[e.Heading1=4]="Heading1",e[e.Heading2=5]="Heading2",e[e.CodeBlock=6]="CodeBlock",e[e.Fences=7]="Fences",e[e.BlockQuote=8]="BlockQuote",e[e.OrderedList=9]="OrderedList",e[e.UnorderedList=10]="UnorderedList",e[e.Paragraph=11]="Paragraph",e[e.EmphasizedLink=12]="EmphasizedLink",e[e.ImageOrLink=13]="ImageOrLink",e[e.Emphasize=14]="Emphasize",e[e.StrikeThrough=15]="StrikeThrough",e[e.Quote=16]="Quote",e[e.Code=17]="Code",e[e.LineBreak=18]="LineBreak",e[e.Text=254]="Text",e[e.Space=255]="Space"}(B||(B={}));const P=/[ \r\n]*\0+[ \r\n]*/g;class HtmlRenderer{_extraItemRender;constructor(e=(e,t)=>e?.text||""){this._extraItemRender=e}_renderContent=t=>{const r=t.tokens;return e.NullChecker.isNullOrEmpty(r)?t.text:this._render(r)};_rendeItem(e,t){const r=this._renderContent,n="\0";switch(e?.type){case I.Reference:return"";case I.Html:return e.raw;case I.BlockQuote:return`<blockquote>\n${r(e)}</blockquote>${n}`;case I.Bold:return`<b>${r(e)}</b>`;case I.CodeBlock:const a=e.lang;return`<pre>${n}<code${a?' class="'+a+'"':""}>${r(e)}</code>${n}</pre>${n}`;case I.Code:return`<code>${r(e)}</code>`;case I.HorizontalRule:return`<hr />${n}`;case I.Heading:const s=e.level;return`<h${s} id="${e.ref}">${r(e)}</h${s}>${n}`;case I.Image:case I.ImageLike:const i=e;let o=i.src,c="";const l=i.text,u=i.ref;if(!o&&u){const e=t.find(e=>e.type===I.Reference&&!0===e.image&&e.id?.toLowerCase()===u.toLowerCase());e&&(o=e.url,c=e.title??"")}return o?`<img src="${o}" alt="${l}"${c?' title="'+c+'"':""} />`:`![${r(e)}]`;case I.Italic:return`<i>${r(e)}</i>`;case I.StrikeThrough:return`<s>${r(e)}</s>`;case I.Quote:return`<q>${r(e)}</q>`;case I.LineBreak:return"<br />\0";case I.OrderedList:return`<ol start="${e.start}">\n${r(e)}</ol>${n}`;case I.UnorderedList:return`<ul>\n${r(e)}</ul>${n}`;case I.ListItem:return`\t<li>${r(e)}</li>${n}`;case I.Link:case I.LinkLike:const h=e;let d=h.href,f="";const g=h.ref;if(!d&&g){const e=t.find(e=>e.type===I.Reference&&!0!==e.image&&e.id?.toLowerCase()===g.toLowerCase());e&&(d=e.url,f=e.title??"")}return d?`<a href="${d}"${f?' title="'+f+'"':""}>${r(e)}</a>`:`[${r(e)}]`;case I.Paragraph:return`<p>${r(e)}</p>${n}`;case I.Text:case I.Space:return e.text}return this._extraItemRender(e,t)}_render(e){let t="";for(let r of e||[])t+=this._rendeItem(r,e);return t}render(e){return t=this._render(e),t?.replace(P,"\n").trim();var t}}class TokenRenderer{_render(t){return e.NullChecker.isNullOrEmpty(t)?"":JSON.stringify(t)}render(t){return"["+t.filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(this._render).join(",")+"]"}}class Parser extends e.Compile.Parser{toHtml(t,r,n){const a=new HtmlRenderer(n);return e.NullChecker.isNullOrEmpty(r)?this.parse(t,a):this.parse(t,L(r),a)}tokenize(e,t){const r=this.parse(e,L(t),new TokenRenderer);return JSON.parse(r)}parse(e,t=L(),r=new HtmlRenderer){return(n=t)&&"object"==typeof n&&"function"==typeof n.render?super.parse(e,L(),t):super.parse(e,t,r);var n}}t.Parser=Parser}(t.Markdown||(t.Markdown={}))}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={}));
|
package/dist/js/pacem-fx.d.ts
CHANGED
package/dist/js/pacem-fx.js
CHANGED
package/dist/js/pacem-fx.min.js
CHANGED
package/dist/js/pacem-logging.js
CHANGED
package/dist/js/pacem-maps.d.ts
CHANGED
package/dist/js/pacem-maps.js
CHANGED
package/dist/js/pacem-media.d.ts
CHANGED
package/dist/js/pacem-media.js
CHANGED
package/dist/js/pacem-plus.d.ts
CHANGED
package/dist/js/pacem-plus.js
CHANGED
package/dist/js/pacem-ui.d.ts
CHANGED
package/dist/js/pacem-ui.js
CHANGED
package/dist/js/pacem-ui.min.js
CHANGED
package/package.json
CHANGED