@webmate-studio/builder 0.2.174 → 0.2.176

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webmate-studio/builder",
3
- "version": "0.2.174",
3
+ "version": "0.2.176",
4
4
  "type": "module",
5
5
  "description": "Webmate Studio Component Builder",
6
6
  "keywords": [
@@ -243,6 +243,8 @@ function generateColorUtilities(t) {
243
243
 
244
244
  for (const { cls, prop, varRef } of surfaceUtils) {
245
245
  css += `\n.${cls} { ${prop}: var(${varRef}); }`;
246
+ css += `\n.hover\\:${cls}:hover { ${prop}: var(${varRef}); }`;
247
+ css += `\n.focus\\:${cls}:focus { ${prop}: var(${varRef}); }`;
246
248
  }
247
249
 
248
250
  // Text Utilities: text-default, text-subtle, text-muted
@@ -91,8 +91,10 @@ function transformIslandsToDataAttributes(html, availableIslands = [], component
91
91
  while ((attrMatch = attrPattern.exec(attrsString)) !== null) {
92
92
  const propName = attrMatch[1];
93
93
  const propValue = attrMatch[2] || attrMatch[3] || attrMatch[4];
94
- // For {expression} values, wrap in braces to signal runtime evaluation
95
- props[propName] = attrMatch[2] ? `{${propValue}}` : propValue;
94
+ // For {expression} values, use __WM_EXPR:name__ marker instead of {name}
95
+ // to prevent the template processor from evaluating them.
96
+ // ComponentLoader resolves these markers at runtime.
97
+ props[propName] = attrMatch[2] ? `__WM_EXPR:${propValue}__` : propValue;
96
98
  }
97
99
  if (Object.keys(props).length === 0) return '';
98
100
  // Encode as JSON in data-island-props (preserves camelCase)