/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
packages/react-native/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.mm
55 строк
2 KB
generatedunixname89002005287564
Fix CQS signal readability-implicit-bool-conversion in xplat/js/react-native-github/packages (#53596)
04 сен 2025, 13:56
04 сен 2025, 13:56
95b187b
Код
Авторство
О чём код?
/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #import <React/RCTTransformAnimatedNode.h> #import <React/RCTValueAnimatedNode.h> @implementation RCTTransformAnimatedNode { NSMutableDictionary<NSString *, NSObject *> *_propsDictionary; } - (instancetype)initWithTag:(NSNumber *)tag config:(NSDictionary<NSString *, id> *)config { if ((self = [super initWithTag:tag config:config]) != nullptr) { _propsDictionary = [NSMutableDictionary new]; } return self; } - (NSDictionary *)propsDictionary { return _propsDictionary; } - (void)performUpdate { [super performUpdate]; NSArray<NSDictionary *> *transformConfigs = self.config[@"transforms"]; NSMutableArray<NSDictionary *> *transform = [NSMutableArray arrayWithCapacity:transformConfigs.count]; for (NSDictionary *transformConfig in transformConfigs) { NSString *type = transformConfig[@"type"]; NSString *property = transformConfig[@"property"]; NSNumber *value; if ([type isEqualToString:@"animated"]) { NSNumber *nodeTag = transformConfig[@"nodeTag"]; RCTAnimatedNode *node = [self.parentNodes objectForKey:nodeTag]; if (![node isKindOfClass:[RCTValueAnimatedNode class]]) { continue; } RCTValueAnimatedNode *parentNode = (RCTValueAnimatedNode *)node; value = @(parentNode.value); } else { value = transformConfig[@"value"]; } [transform addObject:@{property : value}]; } _propsDictionary[@"transform"] = transform; } @end