diff --git a/Examples/ActorOnWebWorker/Sources/MyApp.swift b/Examples/ActorOnWebWorker/Sources/MyApp.swift index 771915d4..357956a7 100644 --- a/Examples/ActorOnWebWorker/Sources/MyApp.swift +++ b/Examples/ActorOnWebWorker/Sources/MyApp.swift @@ -120,13 +120,13 @@ final class App { private let alert = JSObject.global.alert.function! // UI elements - private var container: JSValue - private var urlInput: JSValue - private var indexButton: JSValue - private var searchInput: JSValue - private var searchButton: JSValue - private var statusElement: JSValue - private var resultsElement: JSValue + private let container: JSValue + private let urlInput: JSValue + private let indexButton: JSValue + private let searchInput: JSValue + private let searchButton: JSValue + private let statusElement: JSValue + private let resultsElement: JSValue // Search service private let service: SearchService @@ -214,13 +214,13 @@ final class App { resultsElement.innerHTML = .string("") if results.isEmpty { - var noResults = document.createElement("p") + let noResults = document.createElement("p") noResults.innerText = .string("No results found.") _ = resultsElement.appendChild(noResults) } else { // Display up to 10 results for (index, result) in results.prefix(10).enumerated() { - var resultItem = document.createElement("div") + let resultItem = document.createElement("div") resultItem.style = .string( "padding: 10px; margin: 5px 0; background: #f5f5f5; border-left: 3px solid blue;" ) diff --git a/Examples/Basic/Sources/main.swift b/Examples/Basic/Sources/main.swift index 8fa9c956..7ea9231e 100644 --- a/Examples/Basic/Sources/main.swift +++ b/Examples/Basic/Sources/main.swift @@ -4,11 +4,11 @@ import JavaScriptKit let alert = JSObject.global.alert.function! let document = JSObject.global.document -var divElement = document.createElement("div") +let divElement = document.createElement("div") divElement.innerText = "Hello, world" _ = document.body.appendChild(divElement) -var buttonElement = document.createElement("button") +let buttonElement = document.createElement("button") buttonElement.innerText = "Alert demo" buttonElement.onclick = .object( JSClosure { _ in @@ -30,7 +30,7 @@ struct Response: Decodable { let uuid: String } -var asyncButtonElement = document.createElement("button") +let asyncButtonElement = document.createElement("button") asyncButtonElement.innerText = "Fetch UUID demo" asyncButtonElement.onclick = .object( JSClosure { _ in diff --git a/Examples/Embedded/Sources/EmbeddedApp/main.swift b/Examples/Embedded/Sources/EmbeddedApp/main.swift index 37b2334b..61047132 100644 --- a/Examples/Embedded/Sources/EmbeddedApp/main.swift +++ b/Examples/Embedded/Sources/EmbeddedApp/main.swift @@ -7,11 +7,11 @@ print("Hello from WASM, document title: \(document.title.string ?? "")") var count = 0 -var divElement = document.createElement("div") +let divElement = document.createElement("div") divElement.innerText = .string("Count \(count)") _ = document.body.appendChild(divElement) -var clickMeElement = document.createElement("button") +let clickMeElement = document.createElement("button") clickMeElement.innerText = "Click me" clickMeElement.onclick = JSValue.object( JSClosure { _ in @@ -22,8 +22,8 @@ clickMeElement.onclick = JSValue.object( ) _ = document.body.appendChild(clickMeElement) -var encodeResultElement = document.createElement("pre") -var textInputElement = document.createElement("input") +let encodeResultElement = document.createElement("pre") +let textInputElement = document.createElement("input") textInputElement.type = "text" textInputElement.placeholder = "Enter text to encode to UTF-8" textInputElement.oninput = JSValue.object( diff --git a/Sources/JavaScriptKit/JSValue.swift b/Sources/JavaScriptKit/JSValue.swift index 8c605530..b9f8dd4a 100644 --- a/Sources/JavaScriptKit/JSValue.swift +++ b/Sources/JavaScriptKit/JSValue.swift @@ -120,14 +120,14 @@ extension JSValue { /// - Precondition: `self` must be a JavaScript Object. public subscript(dynamicMember name: String) -> JSValue { get { self.object![name] } - set { self.object![name] = newValue } + nonmutating set { self.object![name] = newValue } } /// An unsafe convenience method of `JSObject.subscript(_ index: Int) -> JSValue` /// - Precondition: `self` must be a JavaScript Object. public subscript(_ index: Int) -> JSValue { get { object![index] } - set { object![index] = newValue } + nonmutating set { object![index] = newValue } } } diff --git a/Tests/JavaScriptKitTests/JavaScriptKitTests.swift b/Tests/JavaScriptKitTests/JavaScriptKitTests.swift index d7911feb..246df522 100644 --- a/Tests/JavaScriptKitTests/JavaScriptKitTests.swift +++ b/Tests/JavaScriptKitTests/JavaScriptKitTests.swift @@ -494,7 +494,7 @@ class JavaScriptKitTests: XCTestCase { } func testJSValueAccessor() { - var globalObject1 = JSObject.global.globalObject1 + let globalObject1 = JSObject.global.globalObject1 XCTAssertEqual(globalObject1.prop_1.nested_prop, .number(1)) XCTAssertEqual(globalObject1.object!.prop_1.object!.nested_prop, .number(1))