Files
flipper/iOS/Plugins/FlipperKitLayoutPlugin/FlipperKitLayoutComponentKitSupport/SKComponentLayoutWrapper.h
Kevin Lin 5ca8b6dc30 Make rootNode a weak reference in SKComponentLayoutWrapper
Summary: In some cases this can cause a retain cycle.

Reviewed By: priteshrnandgaonkar

Differential Revision: D18297780

fbshipit-source-id: c60abdcaad9fd94c457647509aec0519042801e4
2019-11-05 09:58:04 -08:00

30 lines
1014 B
Objective-C

/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#import <Foundation/Foundation.h>
#import <ComponentKit/CKComponentLayout.h>
#import <ComponentKit/CKFlexboxComponent.h>
@protocol CKInspectableView;
@interface SKComponentLayoutWrapper : NSObject
@property (nonatomic, weak, readonly) CKComponent *component;
@property (nonatomic, readonly) NSString *identifier;
@property (nonatomic, readonly) CGSize size;
@property (nonatomic, readonly) CGPoint position;
@property (nonatomic, readonly) std::vector<SKComponentLayoutWrapper *> children;
@property (nonatomic, weak, readonly) id<CKInspectableView> rootNode;
// Null for layouts which are not direct children of a CKFlexboxComponent
@property (nonatomic, readonly) BOOL isFlexboxChild;
@property (nonatomic, readonly) CKFlexboxComponentChild flexboxChild;
+ (instancetype)newFromRoot:(id<CKInspectableView>)root;
@end