@pilotiq/pilotiq 0.6.0 → 0.6.2

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.
@@ -38,11 +38,11 @@ export declare class Html extends Element {
38
38
  /** Sugar — opt out of the default-secure sanitizer entirely. */
39
39
  allowRaw(): this;
40
40
  getType(): string;
41
- toMeta(): {
41
+ toMeta(): Promise<{
42
42
  size?: MarkdownProseSize;
43
43
  type: "html";
44
44
  html: string;
45
45
  prose: boolean;
46
- };
46
+ }>;
47
47
  }
48
48
  //# sourceMappingURL=Html.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Html.d.ts","sourceRoot":"","sources":["../../src/schema/Html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,IAAK,SAAQ,OAAO;IAKX,OAAO,CAAC,IAAI;IAJhC,OAAO,CAAC,MAAM,CAAO;IACrB,OAAO,CAAC,KAAK,CAAC,CAAmB;IACjC,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,8EAA8E;IAC9E,KAAK,CAAC,CAAC,UAAO,GAAG,IAAI;IAErB,yEAAyE;IACzE,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAEhC;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,GAAE,OAAO,GAAG,cAAqB,GAAG,IAAI;IAKlD,gEAAgE;IAChE,QAAQ,IAAI,IAAI;IAEhB,OAAO,IAAI,MAAM;IAEjB,MAAM;;;;;;CAWP"}
1
+ {"version":3,"file":"Html.d.ts","sourceRoot":"","sources":["../../src/schema/Html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,IAAK,SAAQ,OAAO;IAKX,OAAO,CAAC,IAAI;IAJhC,OAAO,CAAC,MAAM,CAAO;IACrB,OAAO,CAAC,KAAK,CAAC,CAAmB;IACjC,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,8EAA8E;IAC9E,KAAK,CAAC,CAAC,UAAO,GAAG,IAAI;IAErB,yEAAyE;IACzE,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAEhC;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,GAAE,OAAO,GAAG,cAAqB,GAAG,IAAI;IAKlD,gEAAgE;IAChE,QAAQ,IAAI,IAAI;IAEhB,OAAO,IAAI,MAAM;IAEX,MAAM;;;;;;CAWb"}
@@ -45,10 +45,10 @@ export class Html extends Element {
45
45
  /** Sugar — opt out of the default-secure sanitizer entirely. */
46
46
  allowRaw() { this._sanitize = false; return this; }
47
47
  getType() { return 'html'; }
48
- toMeta() {
48
+ async toMeta() {
49
49
  const html = this._sanitize === false
50
50
  ? this.html
51
- : sanitizeHtml(this.html, this._sanitize === true ? undefined : this._sanitize);
51
+ : await sanitizeHtml(this.html, this._sanitize === true ? undefined : this._sanitize);
52
52
  return {
53
53
  type: 'html',
54
54
  html,
@@ -1 +1 @@
1
- {"version":3,"file":"Html.js","sourceRoot":"","sources":["../../src/schema/Html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAuB,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,IAAK,SAAQ,OAAO;IAKH;IAJpB,MAAM,GAAG,IAAI,CAAA;IACb,KAAK,CAAoB;IACzB,SAAS,GAA6B,IAAI,CAAA;IAElD,YAA4B,IAAY;QACtC,KAAK,EAAE,CAAA;QADmB,SAAI,GAAJ,IAAI,CAAQ;IAExC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,IAAY;QACtB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEtD,yEAAyE;IACzE,IAAI,CAAC,CAAoB,IAAU,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEhE;;;;;;OAMG;IACH,QAAQ,CAAC,IAA8B,IAAI;QACzC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gEAAgE;IAChE,QAAQ,KAAW,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD,OAAO,KAAa,OAAO,MAAM,CAAA,CAAC,CAAC;IAEnC,MAAM;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK;YACnC,CAAC,CAAC,IAAI,CAAC,IAAI;YACX,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACjF,OAAO;YACL,IAAI,EAAG,MAAe;YACtB,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Html.js","sourceRoot":"","sources":["../../src/schema/Html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAuB,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,IAAK,SAAQ,OAAO;IAKH;IAJpB,MAAM,GAAG,IAAI,CAAA;IACb,KAAK,CAAoB;IACzB,SAAS,GAA6B,IAAI,CAAA;IAElD,YAA4B,IAAY;QACtC,KAAK,EAAE,CAAA;QADmB,SAAI,GAAJ,IAAI,CAAQ;IAExC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,IAAY;QACtB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEtD,yEAAyE;IACzE,IAAI,CAAC,CAAoB,IAAU,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEhE;;;;;;OAMG;IACH,QAAQ,CAAC,IAA8B,IAAI;QACzC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gEAAgE;IAChE,QAAQ,KAAW,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD,OAAO,KAAa,OAAO,MAAM,CAAA,CAAC,CAAC;IAEnC,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK;YACnC,CAAC,CAAC,IAAI,CAAC,IAAI;YACX,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACvF,OAAO;YACL,IAAI,EAAG,MAAe;YACtB,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAA;IACH,CAAC;CACF"}
@@ -47,11 +47,11 @@ export declare class Markdown extends Element {
47
47
  /** Sugar — opt out of the default-secure sanitizer entirely. */
48
48
  allowRaw(): this;
49
49
  getType(): string;
50
- toMeta(): {
50
+ toMeta(): Promise<{
51
51
  size?: MarkdownProseSize;
52
52
  type: "markdown";
53
53
  html: string;
54
54
  prose: boolean;
55
- };
55
+ }>;
56
56
  }
57
57
  //# sourceMappingURL=Markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../src/schema/Markdown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEjE,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AAEpD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,QAAS,SAAQ,OAAO;IAOf,OAAO,CAAC,MAAM;IANlC,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAC,CAAoB;IAClC,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAIrC,gDAAgD;IAChD,GAAG,CAAC,CAAC,UAAO,GAAG,IAAI;IAEnB,kEAAkE;IAClE,MAAM,CAAC,CAAC,UAAO,GAAG,IAAI;IAEtB;wEACoE;IACpE,KAAK,CAAC,CAAC,UAAO,GAAG,IAAI;IAErB,yEAAyE;IACzE,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAEhC;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,GAAE,OAAO,GAAG,cAAqB,GAAG,IAAI;IAKlD,gEAAgE;IAChE,QAAQ,IAAI,IAAI;IAEhB,OAAO,IAAI,MAAM;IAEjB,MAAM;;;;;;CAgBP"}
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../src/schema/Markdown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEjE,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AAEpD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,QAAS,SAAQ,OAAO;IAOf,OAAO,CAAC,MAAM;IANlC,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAC,CAAoB;IAClC,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAIrC,gDAAgD;IAChD,GAAG,CAAC,CAAC,UAAO,GAAG,IAAI;IAEnB,kEAAkE;IAClE,MAAM,CAAC,CAAC,UAAO,GAAG,IAAI;IAEtB;wEACoE;IACpE,KAAK,CAAC,CAAC,UAAO,GAAG,IAAI;IAErB,yEAAyE;IACzE,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAEhC;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,GAAE,OAAO,GAAG,cAAqB,GAAG,IAAI;IAKlD,gEAAgE;IAChE,QAAQ,IAAI,IAAI;IAEhB,OAAO,IAAI,MAAM;IAEX,MAAM;;;;;;CAgBb"}
@@ -55,7 +55,7 @@ export class Markdown extends Element {
55
55
  /** Sugar — opt out of the default-secure sanitizer entirely. */
56
56
  allowRaw() { this._sanitize = false; return this; }
57
57
  getType() { return 'markdown'; }
58
- toMeta() {
58
+ async toMeta() {
59
59
  const html = marked.parse(this.source, {
60
60
  gfm: this._gfm,
61
61
  breaks: this._breaks,
@@ -63,7 +63,7 @@ export class Markdown extends Element {
63
63
  });
64
64
  const finalHtml = this._sanitize === false
65
65
  ? html
66
- : sanitizeHtml(html, this._sanitize === true ? undefined : this._sanitize);
66
+ : await sanitizeHtml(html, this._sanitize === true ? undefined : this._sanitize);
67
67
  return {
68
68
  type: 'markdown',
69
69
  html: finalHtml,
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../src/schema/Markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,YAAY,EAAuB,MAAM,eAAe,CAAA;AAIjE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,QAAS,SAAQ,OAAO;IAOP;IANpB,IAAI,GAAM,IAAI,CAAA;IACd,OAAO,GAAG,KAAK,CAAA;IACf,MAAM,GAAI,IAAI,CAAA;IACd,KAAK,CAAqB;IAC1B,SAAS,GAA6B,IAAI,CAAA;IAElD,YAA4B,MAAc;QACxC,KAAK,EAAE,CAAA;QADmB,WAAM,GAAN,MAAM,CAAQ;IAE1C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAc;QACxB,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IAED,gDAAgD;IAChD,GAAG,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAElD,kEAAkE;IAClE,MAAM,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD;wEACoE;IACpE,KAAK,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEtD,yEAAyE;IACzE,IAAI,CAAC,CAAoB,IAAU,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEhE;;;;;;OAMG;IACH,QAAQ,CAAC,IAA8B,IAAI;QACzC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gEAAgE;IAChE,QAAQ,KAAW,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD,OAAO,KAAa,OAAO,UAAU,CAAA,CAAC,CAAC;IAEvC,MAAM;QACJ,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;YACrC,GAAG,EAAK,IAAI,CAAC,IAAI;YACjB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,KAAK,EAAG,KAAK;SACd,CAAW,CAAA;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK;YACxC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC5E,OAAO;YACL,IAAI,EAAG,UAAmB;YAC1B,IAAI,EAAG,SAAS;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../src/schema/Markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,YAAY,EAAuB,MAAM,eAAe,CAAA;AAIjE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,QAAS,SAAQ,OAAO;IAOP;IANpB,IAAI,GAAM,IAAI,CAAA;IACd,OAAO,GAAG,KAAK,CAAA;IACf,MAAM,GAAI,IAAI,CAAA;IACd,KAAK,CAAqB;IAC1B,SAAS,GAA6B,IAAI,CAAA;IAElD,YAA4B,MAAc;QACxC,KAAK,EAAE,CAAA;QADmB,WAAM,GAAN,MAAM,CAAQ;IAE1C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAc;QACxB,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IAED,gDAAgD;IAChD,GAAG,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAElD,kEAAkE;IAClE,MAAM,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD;wEACoE;IACpE,KAAK,CAAC,CAAC,GAAG,IAAI,IAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEtD,yEAAyE;IACzE,IAAI,CAAC,CAAoB,IAAU,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEhE;;;;;;OAMG;IACH,QAAQ,CAAC,IAA8B,IAAI;QACzC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gEAAgE;IAChE,QAAQ,KAAW,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAExD,OAAO,KAAa,OAAO,UAAU,CAAA,CAAC,CAAC;IAEvC,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;YACrC,GAAG,EAAK,IAAI,CAAC,IAAI;YACjB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,KAAK,EAAG,KAAK;SACd,CAAW,CAAA;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK;YACxC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAClF,OAAO;YACL,IAAI,EAAG,UAAmB;YAC1B,IAAI,EAAG,SAAS;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAA;IACH,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
- import sanitizeHtmlLib from 'sanitize-html';
2
- export type SanitizeConfig = sanitizeHtmlLib.IOptions;
1
+ import type sanitizeHtmlNs from 'sanitize-html';
2
+ export type SanitizeConfig = sanitizeHtmlNs.IOptions;
3
3
  /**
4
4
  * Default-secure allowlist for `Markdown` and `Html` primes — covers prose
5
5
  * content (headings, lists, code, links, images, tables) while blocking
@@ -17,5 +17,5 @@ export declare const DEFAULT_SANITIZE_CONFIG: SanitizeConfig;
17
17
  * caller-supplied config). Server-side only — never call from a renderer,
18
18
  * since the wire shape ships pre-rendered HTML.
19
19
  */
20
- export declare function sanitizeHtml(html: string, config?: SanitizeConfig): string;
20
+ export declare function sanitizeHtml(html: string, config?: SanitizeConfig): Promise<string>;
21
21
  //# sourceMappingURL=sanitize.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/schema/sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,eAAe,CAAA;AAE3C,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAA;AAErD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAwBrC,CAAA;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,CAE1E"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/schema/sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,cAAc,MAAM,eAAe,CAAA;AAE/C,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAA;AAEpD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAwBrC,CAAA;AAUD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAGzF"}
@@ -1,4 +1,3 @@
1
- import sanitizeHtmlLib from 'sanitize-html';
2
1
  /**
3
2
  * Default-secure allowlist for `Markdown` and `Html` primes — covers prose
4
3
  * content (headings, lists, code, links, images, tables) while blocking
@@ -35,12 +34,20 @@ export const DEFAULT_SANITIZE_CONFIG = {
35
34
  allowProtocolRelative: false,
36
35
  disallowedTagsMode: 'discard',
37
36
  };
37
+ // Lazy import — keeps `sanitize-html` (and its transitive `postcss` chain that
38
+ // reaches into Node built-ins) out of the client bundle. Cached after first
39
+ // resolve so per-call overhead is just the `sanitize-html` invocation itself.
40
+ let sanitizerPromise = null;
41
+ function loadSanitizer() {
42
+ return sanitizerPromise ??= import('sanitize-html').then(m => m.default ?? m);
43
+ }
38
44
  /**
39
45
  * Sanitizes an HTML string against `DEFAULT_SANITIZE_CONFIG` (or a
40
46
  * caller-supplied config). Server-side only — never call from a renderer,
41
47
  * since the wire shape ships pre-rendered HTML.
42
48
  */
43
- export function sanitizeHtml(html, config) {
44
- return sanitizeHtmlLib(html, config ?? DEFAULT_SANITIZE_CONFIG);
49
+ export async function sanitizeHtml(html, config) {
50
+ const sanitizer = await loadSanitizer();
51
+ return sanitizer(html, config ?? DEFAULT_SANITIZE_CONFIG);
45
52
  }
46
53
  //# sourceMappingURL=sanitize.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/schema/sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,eAAe,CAAA;AAI3C;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,WAAW,EAAE;QACX,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;QAC9B,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;QACxD,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;QACpC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QAClC,IAAI,EAAE,IAAI,EAAE,IAAI;QAChB,YAAY,EAAE,KAAK,EAAE,MAAM;QAC3B,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS;KAChE;IACD,iBAAiB,EAAE;QACjB,CAAC,EAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;QAChD,GAAG,EAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAChD,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,EAAE,EAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC;QACrC,EAAE,EAAI,CAAC,SAAS,EAAE,SAAS,CAAC;QAC5B,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,GAAG,EAAG,CAAC,OAAO,CAAC;KAChB;IACD,cAAc,EAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC;IACzD,mBAAmB,EAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE;IACzD,qBAAqB,EAAE,KAAK;IAC5B,kBAAkB,EAAK,SAAS;CACjC,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,MAAuB;IAChE,OAAO,eAAe,CAAC,IAAI,EAAE,MAAM,IAAI,uBAAuB,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/schema/sanitize.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,WAAW,EAAE;QACX,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;QAC9B,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;QACxD,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;QACpC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QAClC,IAAI,EAAE,IAAI,EAAE,IAAI;QAChB,YAAY,EAAE,KAAK,EAAE,MAAM;QAC3B,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS;KAChE;IACD,iBAAiB,EAAE;QACjB,CAAC,EAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;QAChD,GAAG,EAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAChD,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,EAAE,EAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC;QACrC,EAAE,EAAI,CAAC,SAAS,EAAE,SAAS,CAAC;QAC5B,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,GAAG,EAAG,CAAC,OAAO,CAAC;KAChB;IACD,cAAc,EAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC;IACzD,mBAAmB,EAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE;IACzD,qBAAqB,EAAE,KAAK;IAC5B,kBAAkB,EAAK,SAAS;CACjC,CAAA;AAED,+EAA+E;AAC/E,4EAA4E;AAC5E,8EAA8E;AAC9E,IAAI,gBAAgB,GAA0C,IAAI,CAAA;AAClE,SAAS,aAAa;IACpB,OAAO,gBAAgB,KAAK,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,MAAuB;IACtE,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAA;IACvC,OAAO,SAAS,CAAC,IAAI,EAAE,MAAM,IAAI,uBAAuB,CAAC,CAAA;AAC3D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pilotiq/pilotiq",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "description": "View-based admin panel for RudderJS",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -419,7 +419,7 @@ export async function loadTableRecords(
419
419
  const sanitizeOpt = col.getSanitize()
420
420
  const finalHtml = sanitizeOpt === false
421
421
  ? html
422
- : sanitizeHtml(html, sanitizeOpt === true ? undefined : sanitizeOpt)
422
+ : await sanitizeHtml(html, sanitizeOpt === true ? undefined : sanitizeOpt)
423
423
  formatted[col.name] = finalHtml
424
424
  rich[col.name] = true
425
425
  }
@@ -93,20 +93,43 @@ export function RightSidebarProvider({ meta, basePath, children }: RightSidebarP
93
93
 
94
94
  const fallbackId = meta.panels[0]?.id ?? null
95
95
 
96
- const [open, setOpenState] = useState<boolean>(() => readBool(openKey, false))
97
- const [activeId, setActiveIdState] = useState<string | null>(() => {
98
- const stored = readString(activeKey)
99
- if (stored && meta.panels.some(p => p.id === stored)) return stored
100
- return fallbackId
101
- })
102
- const [width, setWidthState] = useState<number>(() => {
103
- const stored = readString(widthKey)
104
- return clampPanelWidth(stored ?? meta.defaultWidth, {
96
+ // SSR-safety: initialise to closed / fallback / default-width so the
97
+ // server-rendered tree matches a fresh client (no localStorage). The
98
+ // useEffect below rehydrates from localStorage AFTER mount, avoiding a
99
+ // hydration mismatch warning every time a returning user reloads with
100
+ // the panel previously open. Brief closed→open flash is acceptable and
101
+ // identical to first-visit behaviour.
102
+ const [open, setOpenState] = useState<boolean>(false)
103
+ const [activeId, setActiveIdState] = useState<string | null>(fallbackId)
104
+ const [width, setWidthState] = useState<number>(() =>
105
+ clampPanelWidth(meta.defaultWidth, {
105
106
  min: meta.minWidth,
106
107
  max: meta.maxWidth,
107
108
  defaultWidth: meta.defaultWidth,
108
- })
109
- })
109
+ }),
110
+ )
111
+
112
+ useEffect(() => {
113
+ if (typeof window === 'undefined') return
114
+ const storedOpen = readBool(openKey, false)
115
+ setOpenState(storedOpen)
116
+ const storedActive = readString(activeKey)
117
+ if (storedActive && meta.panels.some(p => p.id === storedActive)) {
118
+ setActiveIdState(storedActive)
119
+ }
120
+ const storedWidth = readString(widthKey)
121
+ if (storedWidth !== null) {
122
+ setWidthState(clampPanelWidth(storedWidth, {
123
+ min: meta.minWidth,
124
+ max: meta.maxWidth,
125
+ defaultWidth: meta.defaultWidth,
126
+ }))
127
+ }
128
+ // Run once on mount per basePath. Width / activeId / open keys are
129
+ // basePath-derived, so the dependency list is effectively static for
130
+ // a given panel — no stale-closure risk on subsequent renders.
131
+ // eslint-disable-next-line react-hooks/exhaustive-deps
132
+ }, [basePath])
110
133
 
111
134
  // Re-validate `activeId` when the contribution set changes (e.g.,
112
135
  // canAccess gating flipped after a route nav). If the stored id has
package/src/routes.ts CHANGED
@@ -556,7 +556,10 @@ async function handleUploadRequest(
556
556
  }
557
557
  }
558
558
 
559
- // Server-side resize via @rudderjs/image (optional peer dep)
559
+ // Server-side resize via @rudderjs/image (optional peer dep). Variable-
560
+ // string `import(name)` keeps Vite's static import-analysis from trying
561
+ // to pre-resolve the module on host apps that don't have @rudderjs/image
562
+ // installed — same pattern as `notifications/database.ts` for `@rudderjs/orm`.
560
563
  const resizeWidthStr = typeof body['resize_width'] === 'string' ? body['resize_width'] : ''
561
564
  const resizeHeightStr = typeof body['resize_height'] === 'string' ? body['resize_height'] : ''
562
565
  let uploadFile: File = file
@@ -565,8 +568,9 @@ async function handleUploadRequest(
565
568
  const h = Number(resizeHeightStr)
566
569
  if (Number.isFinite(w) && w > 0 && Number.isFinite(h) && h > 0) {
567
570
  try {
571
+ const imageModuleName = '@rudderjs/image'
568
572
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
569
- const pkg = await import('@rudderjs/image' as string) as { image: (input: unknown) => { resize(w: number, h: number): { format(f: string): { toBuffer(): Promise<Buffer> } } } }
573
+ const pkg = await import(/* @vite-ignore */ imageModuleName) as { image: (input: unknown) => { resize(w: number, h: number): { format(f: string): { toBuffer(): Promise<Buffer> } } } }
570
574
  const buf = await pkg.image(file).resize(w, h).format('webp').toBuffer()
571
575
  const baseName = file.name.replace(/\.[^.]+$/, '')
572
576
  uploadFile = new File([buf.buffer as ArrayBuffer], `${baseName}.webp`, { type: 'image/webp' })
@@ -53,10 +53,10 @@ export class Html extends Element {
53
53
 
54
54
  getType(): string { return 'html' }
55
55
 
56
- toMeta() {
56
+ async toMeta() {
57
57
  const html = this._sanitize === false
58
58
  ? this.html
59
- : sanitizeHtml(this.html, this._sanitize === true ? undefined : this._sanitize)
59
+ : await sanitizeHtml(this.html, this._sanitize === true ? undefined : this._sanitize)
60
60
  return {
61
61
  type: 'html' as const,
62
62
  html,
@@ -66,7 +66,7 @@ export class Markdown extends Element {
66
66
 
67
67
  getType(): string { return 'markdown' }
68
68
 
69
- toMeta() {
69
+ async toMeta() {
70
70
  const html = marked.parse(this.source, {
71
71
  gfm: this._gfm,
72
72
  breaks: this._breaks,
@@ -74,7 +74,7 @@ export class Markdown extends Element {
74
74
  }) as string
75
75
  const finalHtml = this._sanitize === false
76
76
  ? html
77
- : sanitizeHtml(html, this._sanitize === true ? undefined : this._sanitize)
77
+ : await sanitizeHtml(html, this._sanitize === true ? undefined : this._sanitize)
78
78
  return {
79
79
  type: 'markdown' as const,
80
80
  html: finalHtml,
@@ -1,6 +1,6 @@
1
- import sanitizeHtmlLib from 'sanitize-html'
1
+ import type sanitizeHtmlNs from 'sanitize-html'
2
2
 
3
- export type SanitizeConfig = sanitizeHtmlLib.IOptions
3
+ export type SanitizeConfig = sanitizeHtmlNs.IOptions
4
4
 
5
5
  /**
6
6
  * Default-secure allowlist for `Markdown` and `Html` primes — covers prose
@@ -39,11 +39,20 @@ export const DEFAULT_SANITIZE_CONFIG: SanitizeConfig = {
39
39
  disallowedTagsMode: 'discard',
40
40
  }
41
41
 
42
+ // Lazy import — keeps `sanitize-html` (and its transitive `postcss` chain that
43
+ // reaches into Node built-ins) out of the client bundle. Cached after first
44
+ // resolve so per-call overhead is just the `sanitize-html` invocation itself.
45
+ let sanitizerPromise: Promise<typeof sanitizeHtmlNs> | null = null
46
+ function loadSanitizer(): Promise<typeof sanitizeHtmlNs> {
47
+ return sanitizerPromise ??= import('sanitize-html').then(m => m.default ?? m)
48
+ }
49
+
42
50
  /**
43
51
  * Sanitizes an HTML string against `DEFAULT_SANITIZE_CONFIG` (or a
44
52
  * caller-supplied config). Server-side only — never call from a renderer,
45
53
  * since the wire shape ships pre-rendered HTML.
46
54
  */
47
- export function sanitizeHtml(html: string, config?: SanitizeConfig): string {
48
- return sanitizeHtmlLib(html, config ?? DEFAULT_SANITIZE_CONFIG)
55
+ export async function sanitizeHtml(html: string, config?: SanitizeConfig): Promise<string> {
56
+ const sanitizer = await loadSanitizer()
57
+ return sanitizer(html, config ?? DEFAULT_SANITIZE_CONFIG)
49
58
  }