mnfst 0.5.213 → 0.5.214

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.
@@ -2,7 +2,7 @@
2
2
 
3
3
  (function () {
4
4
 
5
- const MANIFEST_BUILD_VERSION = '0.5.213';
5
+ const MANIFEST_BUILD_VERSION = '0.5.214';
6
6
 
7
7
  /* Manifest Data Sources - Appwrite Integration */
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  (function () {
4
4
 
5
- const MANIFEST_BUILD_VERSION = '0.5.213';
5
+ const MANIFEST_BUILD_VERSION = '0.5.214';
6
6
 
7
7
  /* Manifest Data Sources - Configuration */
8
8
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "manifest.appwrite.auth.js": "sha384-HMJmRXnvdDBWyuteXL+DTxWM2llSCdjl4EDamEI7iHNAVlqeOCE4GDTm8ZHipPRj",
3
- "manifest.appwrite.data.js": "sha384-Qs+BZTiBnMjU9p5AZ2wZ0Dv7nJII4PtCnzrhu2h9QF3/7S/ULMOa4Gh7tpsagJz8",
3
+ "manifest.appwrite.data.js": "sha384-toiWoD71kvFPTWmSPNs+ip2iy3TI8lWE1oNQGeUxJFWDaoOuBY47dCrovzNBsUZH",
4
4
  "manifest.appwrite.presences.js": "sha384-JyVDWFT69b7Svq8J8p9tNWe2v9PZNQBY5UyhtOl1vnuHFAX0CRQ3MA9SiKq5wzNh",
5
5
  "manifest.bindings.js": "sha384-lPtMf8Ykaic9gNVZKq8Scia1881ZeMAyxer3WCIkUNwwrgzGBWto1OXADUwjvORF",
6
6
  "manifest.charts.js": "sha384-WE0pnHK4LBAkFyTw4+R6gheB9NFVJg81ZAG9GwMnbKI5gY3zlJIKM5neMlBUhTso",
@@ -11,7 +11,7 @@
11
11
  "manifest.combobox.js": "sha384-5DaKDWkWF7zxS80h7G1AcZG9hr+uGqJ1+B09aaVIVF+z0Qn4j8+9KEg7gys/ABQG",
12
12
  "manifest.components.js": "sha384-458gCDrUIZts3WE1WZ/UA8Y1XcV6PaF+5k3Wf/Jr2iIY5EM/FisjwbLzpON8I25s",
13
13
  "manifest.computed.js": "sha384-GYML/e81gQfN+iDbqhPUgny8bINCyL+SrbTofoGk4hlCnLLjv51mCv42JMqq+ku5",
14
- "manifest.data.js": "sha384-qGsyOceU+J0j0gQB804fp4PIw0fEn2FsMuKCWEaPYKZ13gb7RIaGK1kY/jJO089E",
14
+ "manifest.data.js": "sha384-La5wZy/YDyHgA/Hr/PS6rZLI9dUSIpyF9nNWFkter6on5GBxx9j+SfkrflCZLVgs",
15
15
  "manifest.datepicker.js": "sha384-8vTJYkLqqvgXgm1w1becuaRR/jUEpiLBjBJ6RsRbUr+ZkypvspD6EsssuDrX4SQq",
16
16
  "manifest.defer.js": "sha384-wXa60M2OHigi5rBurXQ7Oa8eyr5WTKs7EUn2GOru62KMdfs/LDyNegxCc9MNJFSe",
17
17
  "manifest.device.js": "sha384-g+txmrEszYtuOvRelTp/c1wSNR2AtllVI9rx5NPPD7DzhVUnMNughonZykv2xlBW",
@@ -20,7 +20,7 @@
20
20
  "manifest.export.js": "sha384-HCy3n6ifrcAGIyzTRgZ5JIRvSX9q9/8ykMKRSbt1QTnhXz6PgYlV0AE2N2Yi2re+",
21
21
  "manifest.icons.js": "sha384-kKOINpX70YzNO3FvkV6umrmO3f0KIu0DNbwB+ej55a7y/lhU7v/myQtXL0bwCTbt",
22
22
  "manifest.localization.js": "sha384-EImsIw8Z3l13V5eH9ZJF/yfsOfIvR1oPRNSArANkPji7V8O3IRf6zMwsNiAGj3Hk",
23
- "manifest.markdown.js": "sha384-HFE2VwBRX5vhDGQ3c8XgZ10Y5ENkXxHzgX9DjmIEffqLoUDbnJYNk3TFWT9k3e+f",
23
+ "manifest.markdown.js": "sha384-fzyRaD7LwPOYcUeJZCMh6aWgk1ChxIVgy3eUTEjSwZ3DvAHrsl5EMvfxlvOKXD5U",
24
24
  "manifest.native.js": "sha384-g+txmrEszYtuOvRelTp/c1wSNR2AtllVI9rx5NPPD7DzhVUnMNughonZykv2xlBW",
25
25
  "manifest.payments.js": "sha384-8pofk2zhxtapPMpwnFyTelPMrYhShNhDCE722uQh/EYFvZFuPLmSdgunqsarVQjv",
26
26
  "manifest.resize.js": "sha384-+0IsyrGP/4gZmNbD6oU8dCgEyhpBsXMm74NIenYeUGuGRWyJDurcG27xE/CA0/aA",
@@ -28,7 +28,7 @@
28
28
  "manifest.slides.js": "sha384-3uRTkyK9XPLmnxI2+igZlpi4EyPlU/7IHj5j3BZJJ2KN455vXyk99fiXV3feO/XY",
29
29
  "manifest.status.js": "sha384-nwvUSbT+gpRMqhYx6MeBYswUMH72rY92mjgxv0vrSG7Ht7l83XYpEB6fCTbXjjfK",
30
30
  "manifest.svg.js": "sha384-qr/8H9+2cIhSXNbRWRtIdrDlTOxKlNJqwEefHvCYoiBNW/kKhPTFa109Orv/EBnb",
31
- "manifest.sw.js": "sha384-qbDoL97nOZnBUklWe6gAESKBUOL8EAR2qWzVw2TqBn7laSoPHnkXqVBc7kFS7HCG",
31
+ "manifest.sw.js": "sha384-7CAISs703hbP8I8hw46xibMiT3RG6bUGaUiASk0eQvHktozHGqKXcMhwNCdcIKVY",
32
32
  "manifest.tabs.js": "sha384-OIIcyaQnGS0eNYk4zgAFEDboNYect7THvUd9D0V6nqCeDOxQcoiqLrBEmmWVTTet",
33
33
  "manifest.tailwind.js": "sha384-r/Jvqb+Piz21jUts10BbVAJoKkShOdJRVFpywyi4HPIi/OfOJq5CtPyWAPbdkMgt",
34
34
  "manifest.text.edit.js": "sha384-pfhc4IPKNJokj6ldlgD+KwGLN4UoM21CNeVf2sVq/34X1Un2PUhEuyTg5itmtsXS",
@@ -463,16 +463,17 @@ async function initializeMarkdownPlugin() {
463
463
  };
464
464
 
465
465
  Alpine.directive('markdown', (el, { expression, modifiers }, { effect, evaluateLater }) => {
466
+ // `.safe` runs parsed HTML through DOMPurify before injection. Default
467
+ // is unsanitized (raw HTML + custom-element extensions); use .safe for
468
+ // untrusted source (Appwrite, API responses, crowdsourced translations).
469
+ const safe = Array.isArray(modifiers) && modifiers.includes('safe');
470
+
466
471
 
467
472
  // Handle null/undefined expressions gracefully
468
473
  if (!expression) {
469
474
  return;
470
475
  }
471
476
 
472
- // `.safe` runs parsed HTML through DOMPurify before injection. Default
473
- // is unsanitized (raw HTML + custom-element extensions); use .safe for
474
- // untrusted source (Appwrite, API responses, crowdsourced translations).
475
- const safe = Array.isArray(modifiers) && modifiers.includes('safe');
476
477
 
477
478
  // Prerender idempotency: baked HTML children are build-time authoritative
478
479
  // — skip the initial hide-and-re-render, but still register the effect
@@ -677,6 +678,10 @@ async function initializeMarkdownPlugin() {
677
678
  resolvedPath = (basePath ? basePath + '/' : '/') + pathOrContent;
678
679
  }
679
680
 
681
+ // Prerender classification signal: the resolved
682
+ // per-locale source, stamped before the fetch so the
683
+ // renderer sees it even if capture races the request.
684
+ try { el.setAttribute('data-mnfst-md-src', resolvedPath); } catch (_) { }
680
685
  // Check cache first
681
686
  if (markdownCache.has(resolvedPath)) {
682
687
  markdownContent = markdownCache.get(resolvedPath);
@@ -799,6 +804,9 @@ async function initializeMarkdownPlugin() {
799
804
  existingMarkdownElements.forEach(el => {
800
805
  const expression = el.getAttribute('x-markdown');
801
806
 
807
+ // Modifiers live in the attribute name in this pre-registration path.
808
+ const safe = el.getAttributeNames().some(n => n.startsWith('x-markdown.') && n.split('.').includes('safe'));
809
+
802
810
  // Create a temporary Alpine component context for this element
803
811
  const tempComponent = Alpine.$data(el) || {};
804
812
 
@@ -16,7 +16,7 @@
16
16
 
17
17
  // Build stamps the published version here; unstamped (dev) falls back to the
18
18
  // registration URL's `v`, then 'dev'.
19
- const BUILD_VERSION = '0.5.213';
19
+ const BUILD_VERSION = '0.5.214';
20
20
  const CACHE_PREFIX = 'mnfst-sw:';
21
21
  const META_CACHE = CACHE_PREFIX + 'meta';
22
22
  const SWR_CAP = 200;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mnfst",
3
- "version": "0.5.213",
3
+ "version": "0.5.214",
4
4
  "private": false,
5
5
  "workspaces": [
6
6
  "templates/starter",