kotlin-node/karakum/src/jsMain/kotlin/node/karakum/injections/EventInjection.kt [436:488]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - val sourceFileName = ensureNotNull(node.getSourceFileOrNull()).fileName val moduleOpenEvents = openEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value val moduleOverriddenEvents = overriddenEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value val moduleIgnoredEvents = ignoredEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value symbolEvents.entries .map { (eventName, parameters) -> val isOpen = moduleOpenEvents?.get(name.text)?.contains(eventName) ?: false val isOverridden = moduleOverriddenEvents?.get(name.text)?.contains(eventName) ?: false val isIgnored = moduleIgnoredEvents?.get(name.text)?.contains(eventName) ?: false if (isIgnored) { "" } else { val modifier = when { isOpen -> "open " isOverridden -> "override " else -> "" } val payload = parameters.joinToString(", ") { parameter -> parameter.type?.let { render(it) } ?: "Any?" } val key = camelize( eventName.replace("\\W".toRegex(), "-") ) val tuple = if (parameters.isNotEmpty()) { "js.array.Tuple${parameters.size}<${payload}>" } else { "js.array.Tuple" } """ @web.events.JsEvent("$eventName") ${modifier}val ${key}Event: node.events.EventInstance<${tuple}> """.trimIndent() } } .toTypedArray() } override fun generate(context: Context, render: Render) = emptyArray() - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - kotlin-node/karakum/src/jsMain/kotlin/node/karakum/injections/EventMapInjection.kt [273:325]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - val sourceFileName = ensureNotNull(node.getSourceFileOrNull()).fileName val moduleOpenEvents = openEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value val moduleOverriddenEvents = overriddenEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value val moduleIgnoredEvents = ignoredEvents.entries .firstOrNull { (fileName) -> sourceFileName.endsWith(fileName) } ?.value symbolEvents.entries .map { (eventName, parameters) -> val isOpen = moduleOpenEvents?.get(name.text)?.contains(eventName) ?: false val isOverridden = moduleOverriddenEvents?.get(name.text)?.contains(eventName) ?: false val isIgnored = moduleIgnoredEvents?.get(name.text)?.contains(eventName) ?: false if (isIgnored) { "" } else { val modifier = when { isOpen -> "open " isOverridden -> "override " else -> "" } val payload = parameters.joinToString(", ") { parameter -> parameter.type?.let { render(it) } ?: "Any?" } val key = camelize( eventName.replace("\\W".toRegex(), "-") ) val tuple = if (parameters.isNotEmpty()) { "js.array.Tuple${parameters.size}<${payload}>" } else { "js.array.Tuple" } """ @web.events.JsEvent("$eventName") ${modifier}val ${key}Event: node.events.EventInstance<${tuple}> """.trimIndent() } } .toTypedArray() } override fun generate(context: Context, render: Render) = emptyArray() - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -