linked-data-browser 0.0.7 → 0.0.8-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/.env +2 -0
  2. package/.eslintrc.js +1 -0
  3. package/{index.js → App.js} +1 -4
  4. package/README.md +6 -0
  5. package/app/index.tsx +4 -2
  6. package/app.json +1 -0
  7. package/babel.config.js +7 -8
  8. package/components/DataBrowser.tsx +9 -19
  9. package/components/DataBrowserContext.ts +23 -0
  10. package/components/TargetResourceProvider.tsx +1 -1
  11. package/components/ThemeProvider.tsx +2 -4
  12. package/components/common/LoadingBar.tsx +11 -1
  13. package/components/common/ProfileAvatar.tsx +4 -7
  14. package/components/nav/Layout.tsx +20 -4
  15. package/components/nav/header/AddressBox.tsx +104 -48
  16. package/components/nav/header/AvatarMenu.tsx +42 -10
  17. package/components/nav/header/Header.tsx +26 -19
  18. package/components/nav/header/SignInMenu.tsx +63 -36
  19. package/components/nav/header/ThemeToggleMenu.tsx +21 -9
  20. package/components/nav/header/ViewMenu.tsx +79 -71
  21. package/components/sharing/AccessDropdown.tsx +18 -7
  22. package/components/sharing/CopyLink.tsx +15 -3
  23. package/components/sharing/PermissionRow.tsx +17 -2
  24. package/components/sharing/SharingModal.tsx +30 -3
  25. package/components/sharing/WacRuleForm.tsx +12 -3
  26. package/components/sharing/agentPermissions/AgentInformation.tsx +16 -3
  27. package/components/sharing/agentPermissions/AgentInput.tsx +19 -4
  28. package/components/sharing/agentPermissions/AgentPermissionRow.tsx +24 -6
  29. package/components/ui/accordion.tsx +77 -33
  30. package/components/ui/alert.tsx +75 -42
  31. package/components/ui/avatar.tsx +38 -13
  32. package/components/ui/badge.tsx +76 -48
  33. package/components/ui/button.tsx +226 -108
  34. package/components/ui/card.tsx +60 -30
  35. package/components/ui/checkbox.tsx +53 -16
  36. package/components/ui/context-menu.tsx +238 -117
  37. package/components/ui/dialog.tsx +116 -65
  38. package/components/ui/dropdown-menu.tsx +304 -105
  39. package/components/ui/hover-card.tsx +36 -13
  40. package/components/ui/icon.tsx +23 -0
  41. package/components/ui/input-dropdown.tsx +42 -5
  42. package/components/ui/input.tsx +85 -22
  43. package/components/ui/label.tsx +16 -7
  44. package/components/ui/menubar.tsx +284 -136
  45. package/components/ui/navigation-menu.tsx +157 -90
  46. package/components/ui/popover.tsx +36 -9
  47. package/components/ui/progress.tsx +53 -27
  48. package/components/ui/radio-group.tsx +61 -17
  49. package/components/ui/select.tsx +139 -67
  50. package/components/ui/separator.tsx +22 -7
  51. package/components/ui/skeleton.tsx +16 -11
  52. package/components/ui/switch.tsx +83 -51
  53. package/components/ui/table.tsx +57 -35
  54. package/components/ui/tabs.tsx +66 -35
  55. package/components/ui/text.tsx +221 -30
  56. package/components/ui/textarea.tsx +34 -10
  57. package/components/ui/toggle-group.tsx +103 -46
  58. package/components/ui/toggle.tsx +97 -74
  59. package/components/ui/tooltip.tsx +38 -9
  60. package/components/ui/typography.tsx +94 -65
  61. package/components/useViewContext.tsx +8 -8
  62. package/global.css +93 -3
  63. package/lib/index.js +88 -0
  64. package/metro.config.js +1 -3
  65. package/package.json +14 -10
  66. package/resourceViews/Container/ContainerConfig.tsx +1 -1
  67. package/resourceViews/Container/ContainerView.tsx +63 -25
  68. package/resourceViews/Profile/ProfileConfig.tsx +1 -1
  69. package/resourceViews/Profile/ProfileKnows.tsx +17 -9
  70. package/resourceViews/Profile/ProfileView.tsx +21 -4
  71. package/resourceViews/RawCode/RawCodeConfig.tsx +1 -1
  72. package/resourceViews/RawCode/RawCodeView.tsx +20 -6
  73. package/components.json +0 -7
  74. package/lib/icons/ArrowRight.tsx +0 -4
  75. package/lib/icons/Check.tsx +0 -4
  76. package/lib/icons/ChevronDown.tsx +0 -4
  77. package/lib/icons/ChevronRight.tsx +0 -4
  78. package/lib/icons/ChevronUp.tsx +0 -4
  79. package/lib/icons/ChevronsRight.tsx +0 -4
  80. package/lib/icons/CircleSlash.tsx +0 -4
  81. package/lib/icons/CircleX.tsx +0 -4
  82. package/lib/icons/Code.tsx +0 -4
  83. package/lib/icons/EllipsisVertical.tsx +0 -4
  84. package/lib/icons/EyeOff.tsx +0 -4
  85. package/lib/icons/File.tsx +0 -4
  86. package/lib/icons/Fingerprint.tsx +0 -4
  87. package/lib/icons/Folder.tsx +0 -4
  88. package/lib/icons/Folders.tsx +0 -4
  89. package/lib/icons/Info.tsx +0 -4
  90. package/lib/icons/Link.tsx +0 -4
  91. package/lib/icons/Loader.tsx +0 -4
  92. package/lib/icons/LogOut.tsx +0 -4
  93. package/lib/icons/MonitorSmartphone.tsx +0 -4
  94. package/lib/icons/MoonStar.tsx +0 -4
  95. package/lib/icons/OctagonX.tsx +0 -4
  96. package/lib/icons/Plus.tsx +0 -4
  97. package/lib/icons/RefreshCw.tsx +0 -4
  98. package/lib/icons/Save.tsx +0 -4
  99. package/lib/icons/ShieldX.tsx +0 -4
  100. package/lib/icons/Sun.tsx +0 -4
  101. package/lib/icons/TextCursorInput.tsx +0 -4
  102. package/lib/icons/Trash.tsx +0 -4
  103. package/lib/icons/User.tsx +0 -4
  104. package/lib/icons/UserPlus.tsx +0 -4
  105. package/lib/icons/Users.tsx +0 -4
  106. package/lib/icons/ViewIcon.tsx +0 -4
  107. package/lib/icons/X.tsx +0 -4
  108. package/lib/icons/iconWithClassName.ts +0 -14
  109. package/lib/utils.ts +0 -6
  110. package/nativewind-env.d.ts +0 -1
  111. package/tailwind.config.js +0 -69
@@ -1,5 +1,5 @@
1
1
  import React, { FunctionComponent, useCallback } from 'react';
2
- import { View, FlatList, TouchableWithoutFeedback } from 'react-native';
2
+ import { View, FlatList, StyleSheet, Pressable } from 'react-native';
3
3
  import { Text } from '../../components/ui/text';
4
4
  import { Button } from '../../components/ui/button';
5
5
  import {
@@ -9,12 +9,12 @@ import {
9
9
  DropdownMenuItem,
10
10
  } from '../../components/ui/dropdown-menu';
11
11
  import { ErrorMessageResourceView } from '../../components/utilityResourceViews/ErrorMessageResourceView';
12
- import { CircleX } from '../../lib/icons/CircleX';
13
- import { Folder } from '../../lib/icons/Folder';
14
- import { Code } from '../../lib/icons/Code';
15
- import { File } from '../../lib/icons/File';
16
- import { Trash } from '../../lib/icons/Trash';
17
- import { Plus } from '../../lib/icons/Plus';
12
+ import { CircleX } from 'lucide-react-native';
13
+ import { Folder } from 'lucide-react-native';
14
+ import { Code } from 'lucide-react-native';
15
+ import { File } from 'lucide-react-native';
16
+ import { Trash } from 'lucide-react-native';
17
+ import { Plus } from 'lucide-react-native';
18
18
  import { Separator } from '../../components/ui/separator';
19
19
  import { useDialog } from '../../components/nav/DialogProvider';
20
20
  import {
@@ -24,10 +24,13 @@ import {
24
24
  } from '@ldo/connected-solid';
25
25
  import { Notifier } from 'react-native-notifier';
26
26
  import { useViewContext } from '../../components/useViewContext';
27
+ import { useTheme } from '@react-navigation/native';
28
+ import { Icon } from '../../components/ui/icon';
27
29
 
28
30
  export const ContainerView: FunctionComponent = () => {
29
31
  const { targetResource, navigateTo } = useViewContext();
30
32
  const { prompt } = useDialog();
33
+ const { colors } = useTheme();
31
34
 
32
35
  const onCreateContainer = useCallback(async () => {
33
36
  if (targetResource?.type !== 'SolidContainer') return;
@@ -83,12 +86,12 @@ export const ContainerView: FunctionComponent = () => {
83
86
  }
84
87
 
85
88
  return (
86
- <View className="flex-1 flex-row">
89
+ <View style={styles.mainContainer}>
87
90
  {/* Left Panel */}
88
- <View className="max-w-[200px] flex-1 p-4">
91
+ <View style={styles.leftPanel}>
89
92
  <DropdownMenu>
90
93
  <DropdownMenuTrigger asChild>
91
- <Button text='Create' iconLeft={<Plus />} />
94
+ <Button text="Create" iconLeft={Plus} />
92
95
  </DropdownMenuTrigger>
93
96
  <DropdownMenuContent>
94
97
  <DropdownMenuItem onPress={onCreateContainer}>
@@ -105,12 +108,12 @@ export const ContainerView: FunctionComponent = () => {
105
108
  </View>
106
109
 
107
110
  {/* Right Panel */}
108
- <View className="flex-[3] py-4 pr-4">
111
+ <View style={styles.rightPanel}>
109
112
  <FlatList
110
113
  data={targetResource.children()}
111
114
  keyExtractor={(item) => item.uri}
112
115
  renderItem={({ item, index }) => {
113
- const Icon =
116
+ const TypeIcon =
114
117
  item.type === 'SolidContainer'
115
118
  ? Folder
116
119
  : item.uri.endsWith('.ttl')
@@ -119,23 +122,25 @@ export const ContainerView: FunctionComponent = () => {
119
122
  return (
120
123
  <>
121
124
  {index === 0 && <Separator />}
122
- <TouchableWithoutFeedback onPress={() => navigateTo(item.uri)}>
123
- <View className="flex flex-row p-4 hover:bg-secondary rounded-sm cursor-pointer justify-between">
124
- <Text className="flex flex-row gap-3">
125
- <Icon />
126
- {item.uri.replace(targetResource.uri, '')}
127
- </Text>
125
+ <Pressable
126
+ onPress={() => navigateTo(item.uri)}
127
+ style={({ hovered }) => ({
128
+ backgroundColor: hovered ? colors.border : undefined,
129
+ })}
130
+ >
131
+ <View style={styles.listItem}>
132
+ <View style={styles.listItemText}>
133
+ <Icon icon={TypeIcon} />
134
+ <Text>{item.uri.replace(targetResource.uri, '')}</Text>
135
+ </View>
128
136
  <Button
129
137
  variant="ghost"
130
- className="h-6 p-0"
138
+ style={styles.deleteButton}
131
139
  onPress={() => onDelete(item)}
132
- >
133
- <Text>
134
- <Trash size={20} />
135
- </Text>
136
- </Button>
140
+ iconLeft={Trash}
141
+ />
137
142
  </View>
138
- </TouchableWithoutFeedback>
143
+ </Pressable>
139
144
  <Separator />
140
145
  </>
141
146
  );
@@ -145,3 +150,36 @@ export const ContainerView: FunctionComponent = () => {
145
150
  </View>
146
151
  );
147
152
  };
153
+
154
+ const styles = StyleSheet.create({
155
+ mainContainer: {
156
+ flex: 1,
157
+ flexDirection: 'row',
158
+ },
159
+ leftPanel: {
160
+ maxWidth: 200,
161
+ flex: 1,
162
+ padding: 16,
163
+ },
164
+ rightPanel: {
165
+ flex: 3,
166
+ paddingTop: 16,
167
+ paddingBottom: 16,
168
+ paddingRight: 16,
169
+ },
170
+ listItem: {
171
+ flexDirection: 'row',
172
+ padding: 16,
173
+ borderRadius: 4,
174
+ justifyContent: 'space-between',
175
+ alignItems: 'center',
176
+ },
177
+ listItemText: {
178
+ flexDirection: 'row',
179
+ gap: 12,
180
+ },
181
+ deleteButton: {
182
+ height: 24,
183
+ padding: 0,
184
+ },
185
+ });
@@ -1,6 +1,6 @@
1
1
  import { SolidProfileShapeType } from '../../.ldo/profile.shapeTypes';
2
2
  import { ResourceViewConfig } from '../../components/ResourceView';
3
- import { User } from '../../lib/icons/User';
3
+ import { User } from 'lucide-react-native';
4
4
  import { ProfileView } from './ProfileView';
5
5
 
6
6
  export const ProfileConfig: ResourceViewConfig = {
@@ -1,19 +1,22 @@
1
1
  import { Input } from '../../components/ui/input';
2
2
  import React, { FunctionComponent, useCallback, useState } from 'react';
3
- import { Plus } from '../../lib/icons/Plus';
3
+ import { Plus } from 'lucide-react-native';
4
4
  import { SolidProfile } from '../../.ldo/profile.typings';
5
5
  import { AgentInformation } from '../../components/sharing/agentPermissions/AgentInformation';
6
- import { View } from 'react-native';
6
+ import { View, StyleSheet } from 'react-native';
7
7
  import { useChangeSetData } from '@ldo/react';
8
8
  import { SolidLeaf } from '@ldo/connected-solid';
9
9
  import { Button } from '../../components/ui/button';
10
- import { Trash } from '../../lib/icons/Trash';
10
+ import { Trash } from 'lucide-react-native';
11
11
  import { ConnectedPlugin } from '@ldo/connected';
12
12
 
13
13
  export interface ProfileKnowsProps {
14
14
  resource: SolidLeaf;
15
15
  profile: SolidProfile;
16
- setProfile: useChangeSetData<SolidProfile, ConnectedPlugin<any, any, any, any, any>[]>;
16
+ setProfile: useChangeSetData<
17
+ SolidProfile,
18
+ ConnectedPlugin<any, any, any, any, any>[]
19
+ >;
17
20
  }
18
21
 
19
22
  export const ProfileKnows: FunctionComponent<ProfileKnowsProps> = ({
@@ -21,8 +24,6 @@ export const ProfileKnows: FunctionComponent<ProfileKnowsProps> = ({
21
24
  profile,
22
25
  setProfile,
23
26
  }) => {
24
- console.log(profile.knows?.size);
25
-
26
27
  const [newContact, setNewContact] = useState('');
27
28
  const addNewContact = useCallback(() => {
28
29
  setProfile(resource, (cProfile) => {
@@ -32,12 +33,12 @@ export const ProfileKnows: FunctionComponent<ProfileKnowsProps> = ({
32
33
  }, [newContact, resource, setProfile]);
33
34
 
34
35
  return (
35
- <View className="gap-4">
36
+ <View style={styles.container}>
36
37
  <Input
37
38
  placeholder="https://example.pod/john/profile/card#me"
38
39
  label="New Contact WebId"
39
40
  buttonRight={{
40
- iconRight: <Plus />,
41
+ iconRight: Plus,
41
42
  onPress: addNewContact,
42
43
  variant: 'secondary',
43
44
  }}
@@ -47,11 +48,12 @@ export const ProfileKnows: FunctionComponent<ProfileKnowsProps> = ({
47
48
  />
48
49
  {profile.knows?.map((friend) => (
49
50
  <AgentInformation
51
+ key={friend['@id']}
50
52
  webId={friend['@id']}
51
53
  accessoryRight={
52
54
  <Button
53
55
  variant="ghost"
54
- iconRight={<Trash />}
56
+ iconRight={Trash}
55
57
  onPress={() => {
56
58
  setProfile(resource, (cProfile) => {
57
59
  cProfile.knows?.delete(friend);
@@ -64,3 +66,9 @@ export const ProfileKnows: FunctionComponent<ProfileKnowsProps> = ({
64
66
  </View>
65
67
  );
66
68
  };
69
+
70
+ const styles = StyleSheet.create({
71
+ container: {
72
+ gap: 16, // gap-4 equivalent (4 * 4px = 16px)
73
+ },
74
+ });
@@ -1,4 +1,4 @@
1
- import { ScrollView, View } from 'react-native';
1
+ import { ScrollView, View, StyleSheet } from 'react-native';
2
2
  import { Text } from '../../components/ui/text';
3
3
  import React, { FunctionComponent } from 'react';
4
4
  import { Input } from '../../components/ui/input';
@@ -26,8 +26,8 @@ export const ProfileView: FunctionComponent = () => {
26
26
  return <></>;
27
27
 
28
28
  return (
29
- <ScrollView contentContainerClassName="flex-row justify-center p-4">
30
- <View className="max-w-[600px] flex-1 padding gap-4">
29
+ <ScrollView contentContainerStyle={styles.scrollContainer}>
30
+ <View style={styles.container}>
31
31
  <Text variant="h1">Profile</Text>
32
32
  <Input
33
33
  placeholder="John Doe"
@@ -49,7 +49,7 @@ export const ProfileView: FunctionComponent = () => {
49
49
  <Button
50
50
  disabled={!transactionDataset.hasChanges()}
51
51
  text="Update Profile"
52
- className="self-end"
52
+ style={styles.updateButton}
53
53
  onPress={commitProfile}
54
54
  isLoading={profileResource.isLoading()}
55
55
  />
@@ -57,3 +57,20 @@ export const ProfileView: FunctionComponent = () => {
57
57
  </ScrollView>
58
58
  );
59
59
  };
60
+
61
+ const styles = StyleSheet.create({
62
+ scrollContainer: {
63
+ flexDirection: 'row',
64
+ justifyContent: 'center',
65
+ padding: 16,
66
+ },
67
+ container: {
68
+ maxWidth: 600,
69
+ flex: 1,
70
+ padding: 16,
71
+ gap: 16,
72
+ },
73
+ updateButton: {
74
+ alignSelf: 'flex-end',
75
+ },
76
+ });
@@ -1,5 +1,5 @@
1
+ import { Code } from 'lucide-react-native';
1
2
  import { ResourceViewConfig } from '../../components/ResourceView';
2
- import { Code } from '../../lib/icons/Code';
3
3
  import { RawCodeView } from './RawCodeView';
4
4
 
5
5
  export const RawCodeConfig: ResourceViewConfig = {
@@ -6,16 +6,17 @@ import React, {
6
6
  useState,
7
7
  } from 'react';
8
8
  import { RawCodeEditor } from './RawCodeEditor';
9
- import { View } from 'react-native';
9
+ import { View, StyleSheet } from 'react-native';
10
10
  import { Button } from '../../components/ui/button';
11
- import { Text } from '../../components/ui/text';
12
11
  import { Notifier } from 'react-native-notifier';
13
12
  import { useViewContext } from '../../components/useViewContext';
14
13
  import { LoadingBar } from '../../components/common/LoadingBar';
15
- import { Save } from "../../lib/icons/Save";
14
+ import { Save } from 'lucide-react-native';
15
+ import { useTheme } from '@react-navigation/native';
16
16
 
17
17
  export const RawCodeView: FunctionComponent = () => {
18
18
  const { fetch } = useSolidAuth();
19
+ const { colors } = useTheme();
19
20
  const [content, setContent] = useState<string>('');
20
21
  const [contentType, setContentType] = useState<string>('');
21
22
  const [didEdit, setDidEdit] = useState(false);
@@ -71,7 +72,7 @@ export const RawCodeView: FunctionComponent = () => {
71
72
  }, [fetchContent]);
72
73
 
73
74
  return (
74
- <View className="flex-1 relative">
75
+ <View style={[styles.container, { backgroundColor: colors.background }]}>
75
76
  <LoadingBar isLoading={isFetching || isSaving} />
76
77
  <RawCodeEditor
77
78
  value={content}
@@ -81,13 +82,26 @@ export const RawCodeView: FunctionComponent = () => {
81
82
  }}
82
83
  />
83
84
  <Button
84
- className="absolute bottom-2 right-2 z-10"
85
+ style={styles.saveButton}
85
86
  onPress={submitChanges}
86
87
  text="Save Changes"
87
- iconLeft={<Save />}
88
+ iconLeft={Save}
88
89
  isLoading={isSaving}
89
90
  disabled={!didEdit || isSaving}
90
91
  />
91
92
  </View>
92
93
  );
93
94
  };
95
+
96
+ const styles = StyleSheet.create({
97
+ container: {
98
+ flex: 1,
99
+ position: 'relative',
100
+ },
101
+ saveButton: {
102
+ position: 'absolute',
103
+ bottom: 8,
104
+ right: 8,
105
+ zIndex: 10,
106
+ },
107
+ });
package/components.json DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "aliases": {
3
- "components": "./components",
4
- "lib": "./lib",
5
- "resourceViews": "./resourceViews"
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- import { ArrowRight } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ArrowRight);
4
- export { ArrowRight };
@@ -1,4 +0,0 @@
1
- import { Check } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Check);
4
- export { Check };
@@ -1,4 +0,0 @@
1
- import { ChevronDown } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ChevronDown);
4
- export { ChevronDown };
@@ -1,4 +0,0 @@
1
- import { ChevronRight } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ChevronRight);
4
- export { ChevronRight };
@@ -1,4 +0,0 @@
1
- import { ChevronUp } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ChevronUp);
4
- export { ChevronUp };
@@ -1,4 +0,0 @@
1
- import { ChevronsRight } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ChevronsRight);
4
- export { ChevronsRight };
@@ -1,4 +0,0 @@
1
- import { CircleSlash } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(CircleSlash);
4
- export { CircleSlash };
@@ -1,4 +0,0 @@
1
- import { CircleX } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(CircleX);
4
- export { CircleX };
@@ -1,4 +0,0 @@
1
- import { Code } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Code);
4
- export { Code };
@@ -1,4 +0,0 @@
1
- import { EllipsisVertical } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(EllipsisVertical);
4
- export { EllipsisVertical };
@@ -1,4 +0,0 @@
1
- import { EyeOff } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(EyeOff);
4
- export { EyeOff };
@@ -1,4 +0,0 @@
1
- import { File } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(File);
4
- export { File };
@@ -1,4 +0,0 @@
1
- import { Fingerprint } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Fingerprint);
4
- export { Fingerprint };
@@ -1,4 +0,0 @@
1
- import { Folder } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Folder);
4
- export { Folder };
@@ -1,4 +0,0 @@
1
- import { Folders } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Folders);
4
- export { Folders };
@@ -1,4 +0,0 @@
1
- import { Info } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Info);
4
- export { Info };
@@ -1,4 +0,0 @@
1
- import { Link } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Link);
4
- export { Link };
@@ -1,4 +0,0 @@
1
- import { Loader } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Loader);
4
- export { Loader };
@@ -1,4 +0,0 @@
1
- import { LogOut } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(LogOut);
4
- export { LogOut };
@@ -1,4 +0,0 @@
1
- import { MonitorSmartphone } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(MonitorSmartphone);
4
- export { MonitorSmartphone };
@@ -1,4 +0,0 @@
1
- import { MoonStar } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(MoonStar);
4
- export { MoonStar };
@@ -1,4 +0,0 @@
1
- import { OctagonX } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(OctagonX);
4
- export { OctagonX };
@@ -1,4 +0,0 @@
1
- import { Plus } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Plus);
4
- export { Plus };
@@ -1,4 +0,0 @@
1
- import { RefreshCw } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(RefreshCw);
4
- export { RefreshCw };
@@ -1,4 +0,0 @@
1
- import { Save } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Save);
4
- export { Save };
@@ -1,4 +0,0 @@
1
- import { ShieldX } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(ShieldX);
4
- export { ShieldX };
package/lib/icons/Sun.tsx DELETED
@@ -1,4 +0,0 @@
1
- import { Sun } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Sun);
4
- export { Sun };
@@ -1,4 +0,0 @@
1
- import { TextCursorInput } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(TextCursorInput);
4
- export { TextCursorInput };
@@ -1,4 +0,0 @@
1
- import { Trash } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Trash);
4
- export { Trash };
@@ -1,4 +0,0 @@
1
- import { User } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(User);
4
- export { User };
@@ -1,4 +0,0 @@
1
- import { UserPlus } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(UserPlus);
4
- export { UserPlus };
@@ -1,4 +0,0 @@
1
- import { Users } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(Users);
4
- export { Users };
@@ -1,4 +0,0 @@
1
- import { View } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(View);
4
- export const ViewIcon = View;
package/lib/icons/X.tsx DELETED
@@ -1,4 +0,0 @@
1
- import { X } from 'lucide-react-native';
2
- import { iconWithClassName } from './iconWithClassName';
3
- iconWithClassName(X);
4
- export { X };
@@ -1,14 +0,0 @@
1
- import type { LucideIcon } from 'lucide-react-native';
2
- import { cssInterop } from 'nativewind';
3
-
4
- export function iconWithClassName(icon: LucideIcon) {
5
- cssInterop(icon, {
6
- className: {
7
- target: 'style',
8
- nativeStyleToProp: {
9
- color: true,
10
- opacity: true,
11
- },
12
- },
13
- });
14
- }
package/lib/utils.ts DELETED
@@ -1,6 +0,0 @@
1
- import { clsx, type ClassValue } from 'clsx';
2
- import { twMerge } from 'tailwind-merge';
3
-
4
- export function cn(...inputs: ClassValue[]) {
5
- return twMerge(clsx(inputs));
6
- }
@@ -1 +0,0 @@
1
- /// <reference types="nativewind/types" />