mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-26 10:12:54 +02:00
feat: integrate uload and picture, unify package naming
- Add uload project with apps/web structure
- Reorganize from flat to monorepo structure
- Remove PocketBase binary and local data
- Update to pnpm and @uload/web namespace
- Add picture project to monorepo
- Remove embedded git repository
- Unify all package names to @{project}/{app} schema:
- @maerchenzauber/* (was @storyteller/*)
- @manacore/* (was manacore-*, manacore)
- @manadeck/* (was web, backend, manadeck)
- @memoro/* (was memoro-web, landing, memoro)
- @picture/* (already unified)
- @uload/web
- Add convenient dev scripts for all apps:
- pnpm dev:{project}:web
- pnpm dev:{project}:landing
- pnpm dev:{project}:mobile
- pnpm dev:{project}:backend
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
c6c4c5a552
commit
c712a2504a
1031 changed files with 189301 additions and 290 deletions
|
|
@ -0,0 +1,47 @@
|
|||
import React from 'react';
|
||||
import { Pressable, ViewStyle, PressableProps } from 'react-native';
|
||||
import { Icon } from '../../ui/Icon';
|
||||
|
||||
export type HeaderButtonProps = {
|
||||
/** Icon name */
|
||||
icon: string;
|
||||
/** Press handler */
|
||||
onPress: () => void;
|
||||
/** Icon size */
|
||||
size?: number;
|
||||
/** Icon color */
|
||||
iconColor?: string;
|
||||
/** Button is disabled */
|
||||
disabled?: boolean;
|
||||
/** Additional styles */
|
||||
style?: ViewStyle;
|
||||
/** Hit slop for better touch target */
|
||||
hitSlop?: PressableProps['hitSlop'];
|
||||
};
|
||||
|
||||
export function HeaderButton({
|
||||
icon,
|
||||
onPress,
|
||||
size = 24,
|
||||
iconColor = '#6B7280',
|
||||
disabled = false,
|
||||
style,
|
||||
hitSlop = { top: 10, bottom: 10, left: 10, right: 10 },
|
||||
}: HeaderButtonProps) {
|
||||
return (
|
||||
<Pressable
|
||||
onPress={onPress}
|
||||
disabled={disabled}
|
||||
hitSlop={hitSlop}
|
||||
style={({ pressed }) => [
|
||||
{
|
||||
padding: 8,
|
||||
opacity: disabled ? 0.4 : pressed ? 0.7 : 1,
|
||||
},
|
||||
style,
|
||||
]}
|
||||
>
|
||||
<Icon name={icon} size={size} color={iconColor} />
|
||||
</Pressable>
|
||||
);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue