@prenta/core 8.17.0 → 8.18.0

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +13 -0
  4. package/dist/actions.js.map +1 -1
  5. package/dist/api/route-helpers/forms.d.ts.map +1 -1
  6. package/dist/api/route-helpers/forms.js +16 -1
  7. package/dist/api/route-helpers/forms.js.map +1 -1
  8. package/dist/api/route-helpers/media.d.ts.map +1 -1
  9. package/dist/api/route-helpers/media.js +2 -1
  10. package/dist/api/route-helpers/media.js.map +1 -1
  11. package/dist/api/routes/ai-authoring.d.ts.map +1 -1
  12. package/dist/api/routes/ai-authoring.js +6 -1
  13. package/dist/api/routes/ai-authoring.js.map +1 -1
  14. package/dist/api/routes/folders.d.ts.map +1 -1
  15. package/dist/api/routes/folders.js +4 -1
  16. package/dist/api/routes/folders.js.map +1 -1
  17. package/dist/api/routes/forms.d.ts.map +1 -1
  18. package/dist/api/routes/forms.js +37 -5
  19. package/dist/api/routes/forms.js.map +1 -1
  20. package/dist/api/routes/media.d.ts.map +1 -1
  21. package/dist/api/routes/media.js +92 -118
  22. package/dist/api/routes/media.js.map +1 -1
  23. package/dist/api/routes/sections.d.ts.map +1 -1
  24. package/dist/api/routes/sections.js +29 -0
  25. package/dist/api/routes/sections.js.map +1 -1
  26. package/dist/api/validate-body.d.ts +1 -0
  27. package/dist/api/validate-body.d.ts.map +1 -1
  28. package/dist/api/validate-body.js +2 -0
  29. package/dist/api/validate-body.js.map +1 -1
  30. package/dist/config/types.d.ts +8 -0
  31. package/dist/config/types.d.ts.map +1 -1
  32. package/dist/cron/index.d.ts.map +1 -1
  33. package/dist/cron/index.js +42 -0
  34. package/dist/cron/index.js.map +1 -1
  35. package/dist/forms/attribution.d.ts.map +1 -1
  36. package/dist/forms/attribution.js +4 -0
  37. package/dist/forms/attribution.js.map +1 -1
  38. package/dist/forms/entries.d.ts +16 -3
  39. package/dist/forms/entries.d.ts.map +1 -1
  40. package/dist/forms/entries.js +376 -26
  41. package/dist/forms/entries.js.map +1 -1
  42. package/dist/forms/submission.d.ts.map +1 -1
  43. package/dist/forms/submission.js +4 -1
  44. package/dist/forms/submission.js.map +1 -1
  45. package/dist/forms/types.d.ts +40 -0
  46. package/dist/forms/types.d.ts.map +1 -1
  47. package/dist/generated/internal/class.js +1 -1
  48. package/dist/index.d.ts +1 -0
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +1 -0
  51. package/dist/index.js.map +1 -1
  52. package/dist/media/library-membership.d.ts +46 -0
  53. package/dist/media/library-membership.d.ts.map +1 -0
  54. package/dist/media/library-membership.js +168 -0
  55. package/dist/media/library-membership.js.map +1 -0
  56. package/dist/media/public-url.d.ts +7 -0
  57. package/dist/media/public-url.d.ts.map +1 -0
  58. package/dist/media/public-url.js +12 -0
  59. package/dist/media/public-url.js.map +1 -0
  60. package/dist/media/reoptimize.d.ts.map +1 -1
  61. package/dist/media/reoptimize.js +3 -18
  62. package/dist/media/reoptimize.js.map +1 -1
  63. package/dist/media/storage-delete.d.ts +8 -0
  64. package/dist/media/storage-delete.d.ts.map +1 -0
  65. package/dist/media/storage-delete.js +41 -0
  66. package/dist/media/storage-delete.js.map +1 -0
  67. package/dist/media/storage-key.d.ts +43 -0
  68. package/dist/media/storage-key.d.ts.map +1 -0
  69. package/dist/media/storage-key.js +52 -0
  70. package/dist/media/storage-key.js.map +1 -0
  71. package/dist/sections/validate.d.ts.map +1 -1
  72. package/dist/sections/validate.js +6 -25
  73. package/dist/sections/validate.js.map +1 -1
  74. package/dist/security/sanitize.d.ts +5 -0
  75. package/dist/security/sanitize.d.ts.map +1 -1
  76. package/dist/security/sanitize.js +109 -0
  77. package/dist/security/sanitize.js.map +1 -1
  78. package/dist/security/upload.d.ts.map +1 -1
  79. package/dist/security/upload.js +19 -3
  80. package/dist/security/upload.js.map +1 -1
  81. package/dist/server-site.d.ts.map +1 -1
  82. package/dist/server-site.js +2 -1
  83. package/dist/server-site.js.map +1 -1
  84. package/package.json +1 -1
  85. package/prisma/schema.prisma +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,gBAAgB,GACjB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAGxE,MAAM,MAAM,GAAG,mCAAmC,CAAA;AAElD,SAAS,OAAO,CAAC,CAAU;IACzB,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;AACpF,CAAC;AAED,gFAAgF;AAChF,MAAM,YAAY,GAAG;IACnB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;IAC1C,CAAC,sBAAsB,EAAE,oBAAoB,CAAC;IAC9C,CAAC,aAAa,EAAE,WAAW,CAAC;CACpB,CAAA;AAEV;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,WAAmB,EACnB,OAAgC,EAChC,SAA2B;IAE3B,MAAM,MAAM,GAAsC,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAwC,EAAE,CAAA;IAExD,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,CAAC,CAAA;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC;YACV,WAAW;YACX,OAAO,EAAE,yBAAyB,WAAW,mCAAmC;SACjF,CAAC,CAAA;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC3C,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,IAAI,EAAE,CAAA;IAE1B,sEAAsE;IACtE,2EAA2E;IAC3E,iBAAiB;IACjB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,QAAQ,EAAE,CAAC;YACb,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;YACrF,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,KAAK,CAAC,KAAK,gBAAgB,EAAE,CAAC,CAAA;QAC1F,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;QACxB,IAAI,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACrF,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,uBAAuB,EAAE,CAAC,CAAA;QACtF,CAAC;QACD,4EAA4E;QAC5E,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACxC,QAAQ,CAAC,IAAI,CAAC;gBACZ,WAAW;gBACX,KAAK,EAAE,QAAQ;gBACf,OAAO,EAAE,qBAAqB,MAAM,iEAAiE;aACtG,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC;YACV,WAAW;YACX,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,yCAAyC;SACnD,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QACpF,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IAChF,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,0EAA0E;IAC1E,qDAAqD;IACrD,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAA;QACxF,IAAI,MAAM,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzE,MAAM,CAAC,IAAI,CAAC;gBACV,WAAW;gBACX,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,8CAA8C;aACxD,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACxF,MAAM,CAAC,IAAI,CAAC;gBACV,WAAW;gBACX,KAAK,EAAE,WAAW;gBAClB,OAAO,EACL,2HAA2H;aAC9H,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,WAAW,KAAK,cAAc,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC;YACV,WAAW;YACX,KAAK,EAAE,WAAW;YAClB,OAAO,EACL,6SAA6S;SAChT,CAAC,CAAA;IACJ,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,sEAAsE;IACtE,IAAI,WAAW,KAAK,cAAc,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC;gBACZ,WAAW;gBACX,KAAK,EAAE,WAAW;gBAClB,OAAO,EAAE,2CAA2C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,+FAA+F;aACtK,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,WAAW,KAAK,cAAc,EAAE,CAAC;QACnC,MAAM,SAAS,GACb,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACpC,IAAI,CAAC,iBAAiB,KAAK,IAAI;YAC/B,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAA;QAC9C,MAAM,QAAQ,GACZ,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACpC,IAAI,CAAC,iBAAiB,KAAK,IAAI;YAC/B,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAA;QAC9C,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC;gBACZ,WAAW;gBACX,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB;gBAC5D,OAAO,EAAE,gFAAgF;aAC1F,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;AACzD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CACvB,WAAmB,EACnB,GAAW,EACX,QAA8D,EAC9D,KAAc,EACd,MAAyC,EACzC,QAA6C;IAE7C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAA;IAClE,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAExF,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAM;QAC3C,MAAM,GAAG,GAAG,GAA8B,CAAA;QAC1C,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC;oBACV,WAAW;oBACX,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE;oBAChC,OAAO,EAAE,IAAI,GAAG,CAAC,KAAK,oBAAoB,QAAQ,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG;iBACxE,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,yEAAyE;QACzE,IAAI,UAAU,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAClF,QAAQ,CAAC,IAAI,CAAC;gBACZ,WAAW;gBACX,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,KAAK,MAAM,EAAE;gBAC/B,OAAO,EAAE,GAAG,QAAQ,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,yCAAyC;aAChF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC3E,QAAQ,CAAC,IAAI,CAAC;YACZ,WAAW;YACX,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,gBAAgB,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM;SACnF,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC;YACV,WAAW;YACX,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,gBAAgB,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,kBAAkB;SAC/F,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
@@ -3,6 +3,11 @@ export interface SanitizeOptions {
3
3
  allowedAttributes?: Record<string, string[]>;
4
4
  stripAll?: boolean;
5
5
  }
6
+ /**
7
+ * Sanitize an uploaded SVG. Attribute case is preserved (`viewBox` is
8
+ * case-sensitive XML). `href` and `xlink:href` may only be http(s).
9
+ */
10
+ export declare function sanitizeSvg(xml: string): string;
6
11
  /** Sanitize HTML content. Strips dangerous tags/attributes while preserving safe content. */
7
12
  export declare function sanitizeHtml(html: string, options?: SanitizeOptions): string;
8
13
  /** Strip all HTML tags, returning plain text. */
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/security/sanitize.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAgDD,6FAA6F;AAC7F,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAa5E;AAED,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/security/sanitize.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AA6ID;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAa/C;AAED,6FAA6F;AAC7F,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAa5E;AAED,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C"}
@@ -43,6 +43,115 @@ const DEFAULT_ALLOWED_ATTRS = {
43
43
  td: ['colspan', 'rowspan'],
44
44
  th: ['colspan', 'rowspan', 'scope'],
45
45
  };
46
+ const SVG_TAGS = [
47
+ 'svg',
48
+ 'g',
49
+ 'path',
50
+ 'circle',
51
+ 'ellipse',
52
+ 'line',
53
+ 'polygon',
54
+ 'polyline',
55
+ 'rect',
56
+ 'text',
57
+ 'tspan',
58
+ 'defs',
59
+ 'use',
60
+ 'symbol',
61
+ 'title',
62
+ 'desc',
63
+ 'linearGradient',
64
+ 'radialGradient',
65
+ 'stop',
66
+ 'mask',
67
+ 'clipPath',
68
+ 'pattern',
69
+ 'filter',
70
+ 'feGaussianBlur',
71
+ 'feColorMatrix',
72
+ 'feOffset',
73
+ 'feBlend',
74
+ 'feFlood',
75
+ 'feComposite',
76
+ 'feMerge',
77
+ 'feMergeNode',
78
+ 'a',
79
+ ];
80
+ const SVG_ATTRS = [
81
+ 'id',
82
+ 'class',
83
+ 'fill',
84
+ 'stroke',
85
+ 'stroke-width',
86
+ 'stroke-linecap',
87
+ 'stroke-linejoin',
88
+ 'opacity',
89
+ 'transform',
90
+ 'd',
91
+ 'cx',
92
+ 'cy',
93
+ 'r',
94
+ 'rx',
95
+ 'ry',
96
+ 'x',
97
+ 'y',
98
+ 'x1',
99
+ 'y1',
100
+ 'x2',
101
+ 'y2',
102
+ 'width',
103
+ 'height',
104
+ 'viewBox',
105
+ 'viewbox',
106
+ 'xmlns',
107
+ 'xmlns:xlink',
108
+ 'preserveAspectRatio',
109
+ 'preserveaspectratio',
110
+ 'points',
111
+ 'offset',
112
+ 'stop-color',
113
+ 'stop-opacity',
114
+ 'gradientUnits',
115
+ 'gradientunits',
116
+ 'gradientTransform',
117
+ 'href',
118
+ 'xlink:href',
119
+ 'fill-rule',
120
+ 'clip-rule',
121
+ 'mask',
122
+ 'clip-path',
123
+ 'filter',
124
+ 'patternUnits',
125
+ 'patternContentUnits',
126
+ 'in',
127
+ 'in2',
128
+ 'result',
129
+ 'mode',
130
+ 'values',
131
+ 'type',
132
+ 'stdDeviation',
133
+ 'stddeviation',
134
+ 'dx',
135
+ 'dy',
136
+ ];
137
+ /**
138
+ * Sanitize an uploaded SVG. Attribute case is preserved (`viewBox` is
139
+ * case-sensitive XML). `href` and `xlink:href` may only be http(s).
140
+ */
141
+ export function sanitizeSvg(xml) {
142
+ return sanitize(xml, {
143
+ allowedTags: SVG_TAGS,
144
+ allowedAttributes: { '*': SVG_ATTRS },
145
+ disallowedTagsMode: 'discard',
146
+ allowedSchemes: ['http', 'https'],
147
+ allowedSchemesAppliedToAttributes: ['href', 'xlink:href'],
148
+ allowProtocolRelative: false,
149
+ parser: {
150
+ lowerCaseTags: false,
151
+ lowerCaseAttributeNames: false,
152
+ },
153
+ });
154
+ }
46
155
  /** Sanitize HTML content. Strips dangerous tags/attributes while preserving safe content. */
47
156
  export function sanitizeHtml(html, options) {
48
157
  if (options?.stripAll) {
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/security/sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,eAAe,CAAA;AAQpC,MAAM,oBAAoB,GAAG;IAC3B,GAAG;IACH,IAAI;IACJ,GAAG;IACH,GAAG;IACH,IAAI;IACJ,QAAQ;IACR,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,YAAY;IACZ,MAAM;IACN,KAAK;IACL,KAAK;IACL,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;IACL,GAAG;IACH,GAAG;IACH,MAAM;CACP,CAAA;AAED,MAAM,qBAAqB,GAA6B;IACtD,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC;IACrC,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;IAC1D,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC1B,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC;CACpC,CAAA;AAED,6FAA6F;AAC7F,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,OAAyB;IAClE,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,EAAE,WAAW,IAAI,oBAAoB,CAAA;IACzD,MAAM,KAAK,GAAG,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,CAAA;IAEjE,OAAO,QAAQ,CAAC,IAAI,EAAE;QACpB,WAAW,EAAE,IAAI;QACjB,iBAAiB,EAAE,KAAK;QACxB,kBAAkB,EAAE,SAAS;KAC9B,CAAC,CAAA;AACJ,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,QAAQ,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AAC1E,CAAC"}
1
+ {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/security/sanitize.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/security/upload.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AA2BD;;;GAGG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,MAAM,EAI5D,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,8BAA8B,EAAE,SAAS,MAAM,EAW3D,CAAA;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GACzD,OAAO,CAOT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,EACxC,gBAAgB,EAAE,MAAM,GACvB,oBAAoB,CA6BtB"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/security/upload.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AA2BD;;;GAGG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,MAAM,EAI5D,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,8BAA8B,EAAE,SAAS,MAAM,EAW3D,CAAA;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GACzD,OAAO,CAOT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,EACxC,gBAAgB,EAAE,MAAM,GACvB,oBAAoB,CAoCtB"}
@@ -77,9 +77,16 @@ export function validateMimeType(mimeType, allowedTypes) {
77
77
  export function checkMagicBytes(input, declaredMimeType) {
78
78
  const bytes = toUint8(input);
79
79
  const detected = detectMimeType(bytes);
80
- // No signature for the declared type — accept (caller is expected to have
81
- // already checked the allowlist).
80
+ // Image and video declarations must match a known signature. An HTML file
81
+ // or executable labelled image/png used to pass here. Audio and documents
82
+ // still pass when we have no signature for them.
82
83
  if (detected === null) {
84
+ if (declaredMimeType.startsWith('image/') || declaredMimeType.startsWith('video/')) {
85
+ return {
86
+ valid: false,
87
+ error: `No recognised file signature for declared type "${declaredMimeType}"`,
88
+ };
89
+ }
83
90
  return { valid: true };
84
91
  }
85
92
  if (detected === declaredMimeType) {
@@ -131,7 +138,16 @@ function detectMimeType(b) {
131
138
  const brand = String.fromCharCode(b[8] ?? 0, b[9] ?? 0, b[10] ?? 0, b[11] ?? 0);
132
139
  if (brand === 'avif' || brand === 'avis')
133
140
  return 'image/avif';
134
- if (brand === 'mp42' || brand === 'isom' || brand === 'iso2')
141
+ if (brand === 'mp41' ||
142
+ brand === 'mp42' ||
143
+ brand === 'isom' ||
144
+ brand === 'iso2' ||
145
+ brand === 'iso5' ||
146
+ brand === 'iso6' ||
147
+ brand === 'avc1' ||
148
+ brand === 'dash' ||
149
+ brand === 'MSNV' ||
150
+ brand === 'M4V ')
135
151
  return 'video/mp4';
136
152
  }
137
153
  // PDF
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/security/upload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/security/upload.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server-site.d.ts","sourceRoot":"","sources":["../src/server-site.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,aAAa,EACb,UAAU,EAGX,MAAM,WAAW,CAAA;AAElB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAUpD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,aAAa;IAC5B,gGAAgG;IAChG,OAAO,CAAC,EAAE,MAAM,CACd,MAAM,EACN;QAAE,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE;gBAAE,IAAI,EAAE,IAAI,CAAC;gBAAC,GAAG,EAAE,GAAG,CAAA;aAAE,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CACtF,CAAA;IACD,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,sGAAsG;IACtG,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;CAC/D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAE,aAAkB,GAAG,gBAAgB,CAgMjG"}
1
+ {"version":3,"file":"server-site.d.ts","sourceRoot":"","sources":["../src/server-site.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,aAAa,EACb,UAAU,EAGX,MAAM,WAAW,CAAA;AAElB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAWpD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,aAAa;IAC5B,gGAAgG;IAChG,OAAO,CAAC,EAAE,MAAM,CACd,MAAM,EACN;QAAE,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE;gBAAE,IAAI,EAAE,IAAI,CAAC;gBAAC,GAAG,EAAE,GAAG,CAAA;aAAE,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CACtF,CAAA;IACD,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,sGAAsG;IACtG,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;CAC/D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAE,aAAkB,GAAG,gBAAgB,CAgMjG"}
@@ -5,6 +5,7 @@ import { getFormBySlug } from './forms/service.js';
5
5
  import { buildPublicForm, resolveSubmissionFields } from './forms/submission.js';
6
6
  import { readStoredFormsSettings } from './forms/site-settings.js';
7
7
  import { resolveCaptchaForForm } from './forms/captcha-settings.js';
8
+ import { resolveMediaPublicUrl } from './media/public-url.js';
8
9
  /**
9
10
  * Build the server-side Site client. The supplied `db` only needs a tiny
10
11
  * subset of the Prisma surface (`document`, `media`) — that lets us accept
@@ -164,7 +165,7 @@ export function createServerSiteClient(db, config = {}) {
164
165
  return null;
165
166
  return {
166
167
  id: row.id,
167
- url: row.storageKey,
168
+ url: resolveMediaPublicUrl(row),
168
169
  alt: row.altText ?? null,
169
170
  title: row.title ?? null,
170
171
  width: row.width ?? null,
@@ -1 +1 @@
1
- {"version":3,"file":"server-site.js","sourceRoot":"","sources":["../src/server-site.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-site.js","sourceRoot":"","sources":["../src/server-site.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prenta/core",
3
- "version": "8.17.0",
3
+ "version": "8.18.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -333,9 +333,9 @@ model Media {
333
333
  // stays inert for them — until `prenta migrate:content-hash` fills them
334
334
  // in (#730). Nullable so the migration itself does not download every asset.
335
335
  contentHash String?
336
- // `storageKey` historically held the public URL; `publicUrl` splits
337
- // that concern out. New uploads populate both; legacy rows keep the
338
- // URL in `storageKey` and `mediaUrl()` still resolves it.
336
+ // `storageKey` is the object key (`prenta/media/…`). `publicUrl` is what
337
+ // browsers fetch. Rows from before this split keep the URL in `storageKey`
338
+ // until `backfillMediaStorageKeys` moves it. Readers use `publicUrl` first.
339
339
  publicUrl String?
340
340
  storageProvider String?
341
341
  durationSeconds Float?