sveld 0.15.1 → 0.15.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.
- package/CHANGELOG.md +4 -0
- package/lib/ComponentParser.js +19 -7
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
10
10
|
- add isAccessor field to API
|
|
11
11
|
- update Markdown writer to generate a separate table for accessors -->
|
|
12
12
|
|
|
13
|
+
## [0.15.2](https://github.com/carbon-design-system/sveld/releases/tag/v0.15.2) - 2022-05-13
|
|
14
|
+
|
|
15
|
+
- dispatched event type without detail should default to `null`, not `any`
|
|
16
|
+
|
|
13
17
|
## [0.15.1](https://github.com/carbon-design-system/sveld/releases/tag/v0.15.1) - 2022-05-01
|
|
14
18
|
|
|
15
19
|
- function exported from `<script context="module">` should be typed as functions, not types
|
package/lib/ComponentParser.js
CHANGED
|
@@ -138,18 +138,25 @@ var ComponentParser = /** @class */ (function () {
|
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
};
|
|
141
|
-
ComponentParser.prototype.addDispatchedEvent = function (
|
|
141
|
+
ComponentParser.prototype.addDispatchedEvent = function (_a) {
|
|
142
|
+
var name = _a.name, detail = _a.detail, has_argument = _a.has_argument;
|
|
142
143
|
if (name === undefined)
|
|
143
144
|
return;
|
|
145
|
+
/**
|
|
146
|
+
* `e.detail` should be `null` if the dispatcher
|
|
147
|
+
* is not provided a second argument and if
|
|
148
|
+
* `@event` is not specified.
|
|
149
|
+
*/
|
|
150
|
+
var default_detail = !has_argument && !detail ? "null" : ComponentParser.assignValue(detail);
|
|
144
151
|
if (this.events.has(name)) {
|
|
145
152
|
var existing_event = this.events.get(name);
|
|
146
|
-
this.events.set(name, __assign(__assign({}, existing_event), { detail: existing_event.detail === undefined ?
|
|
153
|
+
this.events.set(name, __assign(__assign({}, existing_event), { detail: existing_event.detail === undefined ? default_detail : existing_event.detail }));
|
|
147
154
|
}
|
|
148
155
|
else {
|
|
149
156
|
this.events.set(name, {
|
|
150
157
|
type: "dispatched",
|
|
151
158
|
name: name,
|
|
152
|
-
detail:
|
|
159
|
+
detail: default_detail
|
|
153
160
|
});
|
|
154
161
|
}
|
|
155
162
|
};
|
|
@@ -177,7 +184,7 @@ var ComponentParser = /** @class */ (function () {
|
|
|
177
184
|
_this.addSlot(name, type);
|
|
178
185
|
break;
|
|
179
186
|
case "event":
|
|
180
|
-
_this.addDispatchedEvent(name, type);
|
|
187
|
+
_this.addDispatchedEvent({ name: name, detail: type, has_argument: false });
|
|
181
188
|
break;
|
|
182
189
|
case "typedef":
|
|
183
190
|
_this.typedefs.set(name, {
|
|
@@ -476,11 +483,16 @@ var ComponentParser = /** @class */ (function () {
|
|
|
476
483
|
});
|
|
477
484
|
if (dispatcher_name !== undefined) {
|
|
478
485
|
callees.forEach(function (callee) {
|
|
479
|
-
var _a
|
|
486
|
+
var _a;
|
|
480
487
|
if (callee.name === dispatcher_name) {
|
|
481
488
|
var event_name = (_a = callee.arguments[0]) === null || _a === void 0 ? void 0 : _a.value;
|
|
482
|
-
var
|
|
483
|
-
|
|
489
|
+
var event_argument = callee.arguments[1];
|
|
490
|
+
var event_detail = event_argument === null || event_argument === void 0 ? void 0 : event_argument.value;
|
|
491
|
+
_this.addDispatchedEvent({
|
|
492
|
+
name: event_name,
|
|
493
|
+
detail: event_detail,
|
|
494
|
+
has_argument: Boolean(event_argument)
|
|
495
|
+
});
|
|
484
496
|
}
|
|
485
497
|
});
|
|
486
498
|
}
|