Files
archived-tauri/examples/api/src-tauri/tauri-plugin-sample/ios/Sources/ExamplePlugin.swift
2023-10-23 14:09:42 -03:00

27 lines
590 B
Swift

// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
import SwiftRs
import Tauri
import UIKit
import WebKit
class PingArgs: Decodable {
let value: String?
let onEvent: Channel?
}
class ExamplePlugin: Plugin {
@objc public func ping(_ invoke: Invoke) throws {
let args = try invoke.parseArgs(PingArgs.self)
args.onEvent?.send(["kind": "ping"])
invoke.resolve(["value": args.value ?? ""])
}
}
@_cdecl("init_plugin_sample")
func initPlugin() -> Plugin {
return ExamplePlugin()
}