You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Introduces and uses `Screen`-specific subtypes of the `Container` and `Wrapper` interfaces. This allows the inroduction of `Screen.deepMap()`, which allows us to apply a transformation to the "real" `Screen`s collected in a `Container`, no matter how deeply wrapped they are.
Copy file name to clipboardexpand all lines: workflow-ui/core-android/api/core-android.api
+17-1
Original file line number
Diff line number
Diff line change
@@ -205,6 +205,20 @@ public abstract interface class com/squareup/workflow1/ui/ViewStarter {
205
205
public abstract fun startView (Landroid/view/View;Lkotlin/jvm/functions/Function0;)V
206
206
}
207
207
208
+
public abstract interface class com/squareup/workflow1/ui/VisualFactory {
209
+
public abstract fun createOrNull (Ljava/lang/Object;Ljava/lang/Object;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/VisualHolder;
210
+
}
211
+
212
+
public abstract interface class com/squareup/workflow1/ui/VisualHolder {
213
+
public static final field Companion Lcom/squareup/workflow1/ui/VisualHolder$Companion;
214
+
public abstract fun getVisual ()Ljava/lang/Object;
215
+
public abstract fun update (Ljava/lang/Object;)Z
216
+
}
217
+
218
+
public final class com/squareup/workflow1/ui/VisualHolder$Companion {
219
+
public final fun invoke (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/VisualHolder;
220
+
}
221
+
208
222
public final class com/squareup/workflow1/ui/WorkflowLayout : android/widget/FrameLayout {
209
223
public fun <init> (Landroid/content/Context;Landroid/util/AttributeSet;)V
210
224
public synthetic fun <init> (Landroid/content/Context;Landroid/util/AttributeSet;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
@@ -339,7 +353,7 @@ public final class com/squareup/workflow1/ui/container/AsDialogHolderWithContent
339
353
public static final fun fixBackgroundAndDimming (Landroid/app/Dialog;)V
340
354
}
341
355
342
-
public final class com/squareup/workflow1/ui/container/BackButtonScreen : com/squareup/workflow1/ui/AndroidScreen, com/squareup/workflow1/ui/Wrapper {
356
+
public final class com/squareup/workflow1/ui/container/BackButtonScreen : com/squareup/workflow1/ui/AndroidScreen, com/squareup/workflow1/ui/ScreenWrapper {
343
357
public fun <init> (Lcom/squareup/workflow1/ui/Screen;ZLkotlin/jvm/functions/Function0;)V
344
358
public synthetic fun <init> (Lcom/squareup/workflow1/ui/Screen;ZLkotlin/jvm/functions/Function0;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
345
359
public fun asSequence ()Lkotlin/sequences/Sequence;
@@ -351,6 +365,8 @@ public final class com/squareup/workflow1/ui/container/BackButtonScreen : com/sq
351
365
public fun getViewFactory ()Lcom/squareup/workflow1/ui/ScreenViewFactory;
352
366
public final fun getWrapped ()Lcom/squareup/workflow1/ui/Screen;
353
367
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container;
368
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenContainer;
369
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenWrapper;
354
370
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper;
355
371
public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BackButtonScreen;
Copy file name to clipboardexpand all lines: workflow-ui/core-common/api/core-common.api
+25-3
Original file line number
Diff line number
Diff line change
@@ -46,7 +46,7 @@ public final class com/squareup/workflow1/ui/Named : com/squareup/workflow1/ui/C
46
46
public fun toString ()Ljava/lang/String;
47
47
}
48
48
49
-
public final class com/squareup/workflow1/ui/NamedScreen : com/squareup/workflow1/ui/Screen, com/squareup/workflow1/ui/Wrapper {
49
+
public final class com/squareup/workflow1/ui/NamedScreen : com/squareup/workflow1/ui/ScreenWrapper {
50
50
public fun <init> (Lcom/squareup/workflow1/ui/Screen;Ljava/lang/String;)V
51
51
public fun asSequence ()Lkotlin/sequences/Sequence;
52
52
public final fun component1 ()Lcom/squareup/workflow1/ui/Screen;
@@ -62,13 +62,32 @@ public final class com/squareup/workflow1/ui/NamedScreen : com/squareup/workflow
62
62
public fun hashCode ()I
63
63
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container;
64
64
public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/NamedScreen;
65
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenContainer;
66
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenWrapper;
65
67
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper;
66
68
public fun toString ()Ljava/lang/String;
67
69
}
68
70
69
71
public abstract interface class com/squareup/workflow1/ui/Screen {
70
72
}
71
73
74
+
public abstract interface class com/squareup/workflow1/ui/ScreenContainer : com/squareup/workflow1/ui/Container, com/squareup/workflow1/ui/Screen {
75
+
public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenContainer;
76
+
}
77
+
78
+
public final class com/squareup/workflow1/ui/ScreenContainerKt {
79
+
public static final fun deepMap (Lcom/squareup/workflow1/ui/Screen;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Screen;
80
+
}
81
+
82
+
public abstract interface class com/squareup/workflow1/ui/ScreenWrapper : com/squareup/workflow1/ui/Screen, com/squareup/workflow1/ui/ScreenContainer, com/squareup/workflow1/ui/Wrapper {
83
+
public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenWrapper;
84
+
}
85
+
86
+
public final class com/squareup/workflow1/ui/ScreenWrapper$DefaultImpls {
87
+
public static fun asSequence (Lcom/squareup/workflow1/ui/ScreenWrapper;)Lkotlin/sequences/Sequence;
88
+
public static fun getCompatibilityKey (Lcom/squareup/workflow1/ui/ScreenWrapper;)Ljava/lang/String;
89
+
}
90
+
72
91
public abstract interface class com/squareup/workflow1/ui/TextController {
73
92
public abstract fun getOnTextChanged ()Lkotlinx/coroutines/flow/Flow;
74
93
public abstract fun getTextValue ()Ljava/lang/String;
@@ -214,7 +233,7 @@ public final class com/squareup/workflow1/ui/container/BackStackConfigKt {
214
233
public static final fun plus (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/container/BackStackConfig;)Lcom/squareup/workflow1/ui/ViewEnvironment;
215
234
}
216
235
217
-
public final class com/squareup/workflow1/ui/container/BackStackScreen : com/squareup/workflow1/ui/Container, com/squareup/workflow1/ui/Screen {
236
+
public final class com/squareup/workflow1/ui/container/BackStackScreen : com/squareup/workflow1/ui/ScreenContainer {
218
237
public static final field Companion Lcom/squareup/workflow1/ui/container/BackStackScreen$Companion;
219
238
public fun <init> (Lcom/squareup/workflow1/ui/Screen;Ljava/util/List;)V
220
239
public fun <init> (Lcom/squareup/workflow1/ui/Screen;[Lcom/squareup/workflow1/ui/Screen;)V
@@ -226,6 +245,7 @@ public final class com/squareup/workflow1/ui/container/BackStackScreen : com/squ
226
245
public final fun getTop ()Lcom/squareup/workflow1/ui/Screen;
227
246
public fun hashCode ()I
228
247
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container;
248
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenContainer;
229
249
public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BackStackScreen;
230
250
public final fun mapIndexed (Lkotlin/jvm/functions/Function2;)Lcom/squareup/workflow1/ui/container/BackStackScreen;
231
251
public fun toString ()Ljava/lang/String;
@@ -255,7 +275,7 @@ public final class com/squareup/workflow1/ui/container/BodyAndOverlaysScreen : c
255
275
public final fun mapOverlays (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BodyAndOverlaysScreen;
256
276
}
257
277
258
-
public final class com/squareup/workflow1/ui/container/EnvironmentScreen : com/squareup/workflow1/ui/Screen, com/squareup/workflow1/ui/Wrapper {
278
+
public final class com/squareup/workflow1/ui/container/EnvironmentScreen : com/squareup/workflow1/ui/ScreenWrapper {
259
279
public fun <init> (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;)V
260
280
public synthetic fun <init> (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
261
281
public fun asSequence ()Lkotlin/sequences/Sequence;
@@ -265,6 +285,8 @@ public final class com/squareup/workflow1/ui/container/EnvironmentScreen : com/s
265
285
public final fun getEnvironment ()Lcom/squareup/workflow1/ui/ViewEnvironment;
266
286
public final fun getWrapped ()Lcom/squareup/workflow1/ui/Screen;
267
287
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container;
288
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenContainer;
289
+
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/ScreenWrapper;
268
290
public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper;
269
291
public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/EnvironmentScreen;
0 commit comments