@xaendar/compiler 0.6.18 → 0.6.19

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.
@@ -384,12 +384,19 @@ function consumeEventParameter(cursor, _context) {
384
384
  parts: [eventParameter]
385
385
  });
386
386
  cursor.advance();
387
+ cursor.skipSpaces();
387
388
  eventParameter = "";
388
389
  } else eventParameter = addCharacter$2(cursor, eventParameter);
389
390
  break;
390
391
  case 41:
391
392
  cursor.advance();
392
- read = false;
393
+ if (!charDelimiter) {
394
+ retVal.tokens.push({
395
+ type: TokenType.EVENT_PAREMETER,
396
+ parts: [eventParameter]
397
+ });
398
+ read = false;
399
+ }
393
400
  default: eventParameter = addCharacter$2(cursor, eventParameter);
394
401
  }
395
402
  return retVal;
@@ -2327,7 +2334,14 @@ function mapAttributes(attributes, compilerContext) {
2327
2334
  function mapEvents(events, compilerContext) {
2328
2335
  compilerContext.addIdentifier("$event");
2329
2336
  const mappedEvents = events?.map((event) => {
2330
- const parameters = event.parameters.map((parameter) => `() => ${resolveExpression(parameter, compilerContext)},`);
2337
+ let parsedEventParameter = false;
2338
+ const parameters = event.parameters.map((parameter) => {
2339
+ const resolvedParameter = resolveExpression(parameter, compilerContext);
2340
+ if (!parsedEventParameter && resolvedParameter === "$event") {
2341
+ parsedEventParameter = true;
2342
+ return `($event) => ${resolvedParameter},`;
2343
+ } else return `() => ${resolvedParameter},`;
2344
+ });
2331
2345
  return [
2332
2346
  "{",
2333
2347
  ...indent([
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xaendar/compiler",
3
- "version": "0.6.18",
3
+ "version": "0.6.19",
4
4
  "description": "A library for transpiling Xaendar Templates into JavaScript code",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -16,8 +16,8 @@
16
16
  }
17
17
  },
18
18
  "dependencies": {
19
- "@xaendar/common": "0.6.18",
20
- "@xaendar/types": "0.6.18",
19
+ "@xaendar/common": "0.6.19",
20
+ "@xaendar/types": "0.6.19",
21
21
  "typescript": "^6.0.3"
22
22
  }
23
23
  }