d
This commit is contained in:
@@ -3,5 +3,6 @@ public extension Mic {
|
||||
public static let activityDate = "Mic.activityDate"
|
||||
public static let isActive = "Mic.isActive"
|
||||
public static let MI = "Mic.Model.Item"
|
||||
public static let timeout = "Mic.timeout"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,4 +10,17 @@ public extension MicItem {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
static func shouldResetTimeout(_ c: MicItemContext) -> (delay: Int, value: Bool)? {
|
||||
if
|
||||
c.activityDate.isRecent,
|
||||
let end = c.activityDate.value
|
||||
{
|
||||
let now = Date()
|
||||
let timeout = now < end
|
||||
return (timeout, true)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,12 @@ extension MicItem {
|
||||
public struct V: View {
|
||||
var id: String?
|
||||
@StateObject var isActive = BusUI.Value(K.isActive, false)
|
||||
let processors: [Any]
|
||||
let proc: [Any]
|
||||
|
||||
public init(_ id: String? = nil) {
|
||||
self.id = id
|
||||
self.processors = [
|
||||
self.proc = [
|
||||
Bus.DelayV(shouldResetTimeout, K.MI, K.timeout)
|
||||
Bus.Sync(shouldResetActivity, K.MI, K.isActive),
|
||||
MicItem.Controller()
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user