michangarrito/apps/backend/node_modules/react-native/Libraries/Wrapper/Example/RCTWrapperExampleView.m
rckrdmrd 48dea7a5d0 feat: Initial commit - michangarrito
Marketplace móvil para negocios locales mexicanos.

Estructura inicial:
- apps/backend (NestJS API)
- apps/frontend (React Web)
- apps/mobile (Expo/React Native)
- apps/mcp-server (Claude MCP Server)
- apps/whatsapp-service (WhatsApp Business API)
- database/ (PostgreSQL DDL)
- docs/ (Documentación)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 04:41:02 -06:00

58 lines
1.5 KiB
Objective-C

/*
* 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 "RCTWrapperExampleView.h"
#ifndef RCT_REMOVE_LEGACY_ARCH
#import <RCTWrapper/RCTWrapper.h>
@implementation RCTWrapperExampleView {
NSTimer *_timer;
CGSize _intrinsicContentSize;
}
- (instancetype)initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame]) {
self.backgroundColor = [UIColor whiteColor];
_intrinsicContentSize = CGSizeMake(64, 64);
_timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(tick) userInfo:nil repeats:YES];
UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(tick)];
[self addGestureRecognizer:gestureRecognizer];
}
return self;
}
- (void)tick
{
_intrinsicContentSize.width = 32 + arc4random() % 128;
_intrinsicContentSize.height = 32 + arc4random() % 128;
[self invalidateIntrinsicContentSize];
[self.superview setNeedsLayout];
}
- (CGSize)intrinsicContentSize
{
return _intrinsicContentSize;
}
- (CGSize)sizeThatFits:(CGSize)size
{
return CGSizeMake(MIN(size.width, _intrinsicContentSize.width), MIN(size.height, _intrinsicContentSize.height));
}
@end
RCT_WRAPPER_FOR_VIEW(RCTWrapperExampleView)
#endif // RCT_REMOVE_LEGACY_ARCH