@campxdev/react-native-blueprint 0.1.23 → 0.1.24

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 (126) hide show
  1. package/global.css +3 -3
  2. package/lib/global.css +1 -1
  3. package/lib/module/assets/icons/Image.png +0 -0
  4. package/lib/module/components/DataDisplay/Avatar/Avatar.js +1 -1
  5. package/lib/module/components/DataDisplay/Avatar/Avatar.js.map +1 -1
  6. package/lib/module/components/DataDisplay/Banner/Banner.figma.js +17 -3
  7. package/lib/module/components/DataDisplay/Banner/Banner.figma.js.map +1 -1
  8. package/lib/module/components/DataDisplay/Banner/Banner.js +138 -34
  9. package/lib/module/components/DataDisplay/Banner/Banner.js.map +1 -1
  10. package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.js +2 -2
  11. package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.js.map +1 -1
  12. package/lib/module/components/DataDisplay/Card/Card.figma.js +11 -4
  13. package/lib/module/components/DataDisplay/Card/Card.figma.js.map +1 -1
  14. package/lib/module/components/DataDisplay/Card/Card.js +119 -65
  15. package/lib/module/components/DataDisplay/Card/Card.js.map +1 -1
  16. package/lib/module/components/DataDisplay/ChatBubble/ChatBubble.figma.js +54 -0
  17. package/lib/module/components/DataDisplay/ChatBubble/ChatBubble.figma.js.map +1 -0
  18. package/lib/module/components/DataDisplay/ChatBubble/ChatBubble.js +318 -0
  19. package/lib/module/components/DataDisplay/ChatBubble/ChatBubble.js.map +1 -0
  20. package/lib/module/components/DataDisplay/ChatBubble/index.js +4 -0
  21. package/lib/module/components/DataDisplay/ChatBubble/index.js.map +1 -0
  22. package/lib/module/components/DataDisplay/FeedCard/AttachmentDetails.js +69 -0
  23. package/lib/module/components/DataDisplay/FeedCard/AttachmentDetails.js.map +1 -0
  24. package/lib/module/components/DataDisplay/FeedCard/FeedCard.figma.js +19 -17
  25. package/lib/module/components/DataDisplay/FeedCard/FeedCard.figma.js.map +1 -1
  26. package/lib/module/components/DataDisplay/FeedCard/FeedCard.js +30 -19
  27. package/lib/module/components/DataDisplay/FeedCard/FeedCard.js.map +1 -1
  28. package/lib/module/components/DataDisplay/Greeting/Greeting.figma.js +5 -5
  29. package/lib/module/components/DataDisplay/Greeting/Greeting.figma.js.map +1 -1
  30. package/lib/module/components/DataDisplay/Greeting/Greeting.js +46 -70
  31. package/lib/module/components/DataDisplay/Greeting/Greeting.js.map +1 -1
  32. package/lib/module/components/DataDisplay/ProfileCard/ProfileCard.figma.js +16 -0
  33. package/lib/module/components/DataDisplay/ProfileCard/ProfileCard.figma.js.map +1 -0
  34. package/lib/module/components/DataDisplay/ProfileCard/ProfileCard.js +111 -0
  35. package/lib/module/components/DataDisplay/ProfileCard/ProfileCard.js.map +1 -0
  36. package/lib/module/components/DataDisplay/ProfileCard/index.js +4 -0
  37. package/lib/module/components/DataDisplay/ProfileCard/index.js.map +1 -0
  38. package/lib/module/components/Input/Button/Button.js +77 -129
  39. package/lib/module/components/Input/Button/Button.js.map +1 -1
  40. package/lib/module/components/Navigation/Appbar/AppBar.figma.js +18 -6
  41. package/lib/module/components/Navigation/Appbar/AppBar.figma.js.map +1 -1
  42. package/lib/module/components/Navigation/Appbar/AppBar.js +36 -9
  43. package/lib/module/components/Navigation/Appbar/AppBar.js.map +1 -1
  44. package/lib/module/components/Navigation/Popover/Popover.js +1 -1
  45. package/lib/module/components/Navigation/Popover/Popover.js.map +1 -1
  46. package/lib/module/components/ui/index.js +2 -0
  47. package/lib/module/components/ui/index.js.map +1 -1
  48. package/lib/module/lib/theme.js +2 -2
  49. package/lib/module/patterns/pattern-components/AccountPattern/AccountPattern.figma.js +196 -0
  50. package/lib/module/patterns/pattern-components/AccountPattern/AccountPattern.figma.js.map +1 -0
  51. package/lib/module/patterns/pattern-components/AccountPattern/AccountPattern.js +255 -0
  52. package/lib/module/patterns/pattern-components/AccountPattern/AccountPattern.js.map +1 -0
  53. package/lib/module/patterns/pattern-components/AccountPattern/index.js +4 -0
  54. package/lib/module/patterns/pattern-components/AccountPattern/index.js.map +1 -0
  55. package/lib/module/patterns/pattern-components/CalendarPattern/CalendarPattern.figma.js +1 -1
  56. package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.js +2 -4
  57. package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.js.map +1 -1
  58. package/lib/module/patterns/pattern-components/FeedPattern/FeedPattern.figma.js +144 -0
  59. package/lib/module/patterns/pattern-components/FeedPattern/FeedPattern.figma.js.map +1 -0
  60. package/lib/module/patterns/pattern-components/FeedPattern/FeedPattern.js +213 -0
  61. package/lib/module/patterns/pattern-components/FeedPattern/FeedPattern.js.map +1 -0
  62. package/lib/module/patterns/pattern-components/FeedPattern/index.js +4 -0
  63. package/lib/module/patterns/pattern-components/FeedPattern/index.js.map +1 -0
  64. package/lib/module/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.figma.js +70 -0
  65. package/lib/module/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.figma.js.map +1 -0
  66. package/lib/module/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.js +260 -0
  67. package/lib/module/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.js.map +1 -0
  68. package/lib/module/patterns/pattern-components/HomeFacultyPattern/index.js +4 -0
  69. package/lib/module/patterns/pattern-components/HomeFacultyPattern/index.js.map +1 -0
  70. package/lib/module/patterns/pattern-components/HomeParentPattern/HomeParentPattern.figma.js +82 -0
  71. package/lib/module/patterns/pattern-components/HomeParentPattern/HomeParentPattern.figma.js.map +1 -0
  72. package/lib/module/patterns/pattern-components/HomeParentPattern/HomeParentPattern.js +256 -0
  73. package/lib/module/patterns/pattern-components/HomeParentPattern/HomeParentPattern.js.map +1 -0
  74. package/lib/module/patterns/pattern-components/HomeParentPattern/index.js +4 -0
  75. package/lib/module/patterns/pattern-components/HomeParentPattern/index.js.map +1 -0
  76. package/lib/module/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.figma.js +73 -0
  77. package/lib/module/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.figma.js.map +1 -0
  78. package/lib/module/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.js +283 -0
  79. package/lib/module/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.js.map +1 -0
  80. package/lib/module/patterns/pattern-components/HomeStudentPattern/index.js +4 -0
  81. package/lib/module/patterns/pattern-components/HomeStudentPattern/index.js.map +1 -0
  82. package/lib/module/patterns/pattern-components/index.js +5 -0
  83. package/lib/module/patterns/pattern-components/index.js.map +1 -1
  84. package/package.json +27 -1
  85. package/src/assets/icons/Image.png +0 -0
  86. package/src/components/DataDisplay/Avatar/Avatar.tsx +24 -21
  87. package/src/components/DataDisplay/Banner/Banner.figma.tsx +18 -3
  88. package/src/components/DataDisplay/Banner/Banner.tsx +153 -26
  89. package/src/components/DataDisplay/CalendarItem/CalendarItem.tsx +2 -2
  90. package/src/components/DataDisplay/Card/Card.figma.tsx +7 -3
  91. package/src/components/DataDisplay/Card/Card.tsx +152 -101
  92. package/src/components/DataDisplay/ChatBubble/ChatBubble.figma.tsx +54 -0
  93. package/src/components/DataDisplay/ChatBubble/ChatBubble.tsx +404 -0
  94. package/src/components/DataDisplay/ChatBubble/index.ts +8 -0
  95. package/src/components/DataDisplay/FeedCard/AttachmentDetails.tsx +96 -0
  96. package/src/components/DataDisplay/FeedCard/FeedCard.figma.tsx +17 -15
  97. package/src/components/DataDisplay/FeedCard/FeedCard.tsx +66 -35
  98. package/src/components/DataDisplay/Greeting/Greeting.figma.tsx +5 -5
  99. package/src/components/DataDisplay/Greeting/Greeting.tsx +58 -96
  100. package/src/components/DataDisplay/ProfileCard/ProfileCard.figma.tsx +17 -0
  101. package/src/components/DataDisplay/ProfileCard/ProfileCard.tsx +173 -0
  102. package/src/components/DataDisplay/ProfileCard/index.ts +1 -0
  103. package/src/components/Input/Button/Button.tsx +71 -157
  104. package/src/components/Navigation/Appbar/AppBar.figma.tsx +18 -6
  105. package/src/components/Navigation/Appbar/AppBar.tsx +58 -13
  106. package/src/components/Navigation/Popover/Popover.tsx +3 -3
  107. package/src/components/ui/index.ts +2 -0
  108. package/src/lib/theme.ts +2 -2
  109. package/src/patterns/pattern-components/AccountPattern/AccountPattern.figma.tsx +193 -0
  110. package/src/patterns/pattern-components/AccountPattern/AccountPattern.tsx +301 -0
  111. package/src/patterns/pattern-components/AccountPattern/index.ts +1 -0
  112. package/src/patterns/pattern-components/CalendarPattern/CalendarPattern.figma.tsx +1 -1
  113. package/src/patterns/pattern-components/CardListPattern/CardListPattern.tsx +4 -9
  114. package/src/patterns/pattern-components/FeedPattern/FeedPattern.figma.tsx +146 -0
  115. package/src/patterns/pattern-components/FeedPattern/FeedPattern.tsx +264 -0
  116. package/src/patterns/pattern-components/FeedPattern/index.ts +2 -0
  117. package/src/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.figma.tsx +66 -0
  118. package/src/patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.tsx +326 -0
  119. package/src/patterns/pattern-components/HomeFacultyPattern/index.ts +2 -0
  120. package/src/patterns/pattern-components/HomeParentPattern/HomeParentPattern.figma.tsx +75 -0
  121. package/src/patterns/pattern-components/HomeParentPattern/HomeParentPattern.tsx +328 -0
  122. package/src/patterns/pattern-components/HomeParentPattern/index.ts +2 -0
  123. package/src/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.figma.tsx +66 -0
  124. package/src/patterns/pattern-components/HomeStudentPattern/HomeStudentPattern.tsx +355 -0
  125. package/src/patterns/pattern-components/HomeStudentPattern/index.ts +2 -0
  126. package/src/patterns/pattern-components/index.ts +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["figma","FeedPattern","jsx","_jsx","FIGMA_URL","connect","example","showChipsFilter","chips","id","label","state","showFloatingActionButton","feedItems","type","authorName","postTitle","subtitle","postContent","showHeader","showPostContent","showBody","showBadges","showFooterActions","showLeading","showSubtitle","showSecondaryButton","showMedia"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/FeedPattern/FeedPattern.figma.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+
3
+ // @ts-nocheck
4
+ import { View, ScrollView } from 'react-native';
5
+ import { FeedCard } from "../../../components/DataDisplay/FeedCard/FeedCard.js";
6
+ import { FloatingActionButton } from "../../../components/Navigation/FloatingAction/Floating-Action.js";
7
+ import { ChipsRow } from "../../../components/DataDisplay/ChipsRow/ChipsRow.js";
8
+
9
+ /* ============================================================================
10
+ * Types
11
+ * ============================================================================ */
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ /* ============================================================================
14
+ * Component
15
+ * ============================================================================ */
16
+
17
+ /**
18
+ * FeedPattern Component
19
+ *
20
+ * A comprehensive feed layout pattern that displays:
21
+ * - Horizontal scrollable chips for filtering
22
+ * - Vertical scrollable feed of posts and announcements
23
+ * - Multiple FeedCard variations (with/without media, badges, footer actions)
24
+ * - Floating action button for creating new posts
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * <FeedPattern
29
+ * showChipsFilter={true}
30
+ * showFloatingActionButton={true}
31
+ * feedItems={[...]}
32
+ * />
33
+ * ```
34
+ */
35
+ export function FeedPattern({
36
+ // Chips filter section
37
+ showChipsFilter = true,
38
+ chips = [{
39
+ id: '1',
40
+ label: 'Announcements',
41
+ state: 'selected'
42
+ }, {
43
+ id: '2',
44
+ label: 'Posts',
45
+ state: 'default'
46
+ }, {
47
+ id: '3',
48
+ label: 'Events',
49
+ state: 'default'
50
+ }, {
51
+ id: '4',
52
+ label: 'Updates',
53
+ state: 'default'
54
+ }],
55
+ onChipSelect,
56
+ // Feed items section
57
+ feedItems = [{
58
+ id: '1',
59
+ type: 'announcement',
60
+ authorName: 'Author Name',
61
+ postTitle: 'Post Title',
62
+ subtitle: 'Subtitle of the card goes here',
63
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
64
+ showHeader: true,
65
+ showPostContent: true,
66
+ showBody: true,
67
+ showBadges: true,
68
+ showFooterActions: true,
69
+ showLeading: true,
70
+ showSubtitle: true,
71
+ showSecondaryButton: true
72
+ }, {
73
+ id: '2',
74
+ type: 'post',
75
+ authorName: 'Author Name',
76
+ postTitle: 'Post Title',
77
+ subtitle: 'Subtitle of the card goes here',
78
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
79
+ showMedia: true,
80
+ showHeader: true,
81
+ showPostContent: true,
82
+ showBadges: true,
83
+ showLeading: true,
84
+ showSubtitle: true,
85
+ showSecondaryButton: true
86
+ }, {
87
+ id: '3',
88
+ type: 'announcement',
89
+ authorName: 'Author Name',
90
+ postTitle: 'Post Title',
91
+ subtitle: 'Subtitle of the card goes here',
92
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
93
+ showPostContent: true,
94
+ showBody: true,
95
+ showLeading: true,
96
+ showSubtitle: true,
97
+ showSecondaryButton: true
98
+ }, {
99
+ id: '4',
100
+ type: 'post',
101
+ authorName: 'Author Name',
102
+ postTitle: 'Post Title',
103
+ subtitle: 'Subtitle of the card goes here',
104
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
105
+ showMedia: true,
106
+ showHeader: true,
107
+ showBadges: true,
108
+ showLeading: true,
109
+ showSubtitle: true,
110
+ showSecondaryButton: true
111
+ }, {
112
+ id: '5',
113
+ type: 'announcement',
114
+ authorName: 'Author Name',
115
+ postTitle: 'Post Title',
116
+ subtitle: 'Subtitle of the card goes here',
117
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
118
+ showHeader: true,
119
+ showPostContent: true,
120
+ showBody: true,
121
+ showBadges: true,
122
+ showFooterActions: true,
123
+ showLeading: true,
124
+ showSubtitle: true,
125
+ showSecondaryButton: true
126
+ }, {
127
+ id: '6',
128
+ type: 'post',
129
+ authorName: 'Author Name',
130
+ postTitle: 'Post Title',
131
+ subtitle: 'Subtitle of the card goes here',
132
+ postContent: 'The card may contain body content which can be truncated to 1-2 lines. Swap Content in Props.',
133
+ showMedia: true,
134
+ showHeader: true,
135
+ showPostContent: true,
136
+ showBody: true,
137
+ showBadges: true,
138
+ showFooterActions: true,
139
+ showLeading: true,
140
+ showSubtitle: true,
141
+ showSecondaryButton: true
142
+ }],
143
+ onFeedItemPress,
144
+ // Floating Action Button
145
+ showFloatingActionButton = true,
146
+ onFloatingActionPress,
147
+ // Styling
148
+ style,
149
+ testID
150
+ }) {
151
+ return /*#__PURE__*/_jsxs(View, {
152
+ testID: testID ?? 'feed-pattern',
153
+ style: [{
154
+ flex: 1,
155
+ backgroundColor: '#f7f8fa'
156
+ }, style],
157
+ children: [showFloatingActionButton && /*#__PURE__*/_jsx(View, {
158
+ className: "absolute bottom-8 right-5 z-50",
159
+ children: /*#__PURE__*/_jsx(FloatingActionButton, {
160
+ variant: "default",
161
+ size: "md",
162
+ onPress: onFloatingActionPress
163
+ })
164
+ }), /*#__PURE__*/_jsxs(ScrollView, {
165
+ showsVerticalScrollIndicator: false,
166
+ contentContainerStyle: {
167
+ paddingVertical: 20
168
+ },
169
+ children: [showChipsFilter && chips.length > 0 && /*#__PURE__*/_jsx(View, {
170
+ style: {
171
+ marginBottom: 16
172
+ },
173
+ children: /*#__PURE__*/_jsx(ChipsRow, {
174
+ chips: chips,
175
+ gap: 8,
176
+ contentPadding: 20,
177
+ showsScrollIndicator: false,
178
+ onChipPress: chip => onChipSelect?.(chip.id)
179
+ })
180
+ }), /*#__PURE__*/_jsx(View, {
181
+ style: {
182
+ gap: 16,
183
+ paddingHorizontal: 20
184
+ },
185
+ children: feedItems.map(item => /*#__PURE__*/_jsx(View, {
186
+ onTouchEnd: () => onFeedItemPress?.(item.id),
187
+ children: /*#__PURE__*/_jsx(FeedCard, {
188
+ type: item.type,
189
+ authorName: item.authorName,
190
+ postTitle: item.postTitle,
191
+ subtitle: item.subtitle,
192
+ postContent: item.postContent,
193
+ showMedia: item.showMedia,
194
+ showHeader: item.showHeader,
195
+ showPostContent: item.showPostContent,
196
+ showBody: item.showBody,
197
+ showBadges: item.showBadges,
198
+ showFooterActions: item.showFooterActions,
199
+ showLeading: item.showLeading,
200
+ showSubtitle: item.showSubtitle,
201
+ showSecondaryButton: item.showSecondaryButton
202
+ })
203
+ }, item.id))
204
+ }), /*#__PURE__*/_jsx(View, {
205
+ style: {
206
+ height: 150
207
+ }
208
+ })]
209
+ })]
210
+ });
211
+ }
212
+ FeedPattern.displayName = 'FeedPattern';
213
+ //# sourceMappingURL=FeedPattern.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","ScrollView","FeedCard","FloatingActionButton","ChipsRow","jsx","_jsx","jsxs","_jsxs","FeedPattern","showChipsFilter","chips","id","label","state","onChipSelect","feedItems","type","authorName","postTitle","subtitle","postContent","showHeader","showPostContent","showBody","showBadges","showFooterActions","showLeading","showSubtitle","showSecondaryButton","showMedia","onFeedItemPress","showFloatingActionButton","onFloatingActionPress","style","testID","flex","backgroundColor","children","className","variant","size","onPress","showsVerticalScrollIndicator","contentContainerStyle","paddingVertical","length","marginBottom","gap","contentPadding","showsScrollIndicator","onChipPress","chip","paddingHorizontal","map","item","onTouchEnd","height","displayName"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/FeedPattern/FeedPattern.tsx"],"mappings":";;AAAA;AACA,SAASA,IAAI,EAAEC,UAAU,QAAwC,cAAc;AAE/E,SAASC,QAAQ,QAAQ,sDAAmD;AAC5E,SAASC,oBAAoB,QAAQ,kEAA+D;AACpG,SACEC,QAAQ,QAEH,sDAAmD;;AAE1D;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AA4CA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAC;EAC1B;EACAC,eAAe,GAAG,IAAI;EACtBC,KAAK,GAAG,CACN;IAAEC,EAAE,EAAE,GAAG;IAAEC,KAAK,EAAE,eAAe;IAAEC,KAAK,EAAE;EAAoB,CAAC,EAC/D;IAAEF,EAAE,EAAE,GAAG;IAAEC,KAAK,EAAE,OAAO;IAAEC,KAAK,EAAE;EAAmB,CAAC,EACtD;IAAEF,EAAE,EAAE,GAAG;IAAEC,KAAK,EAAE,QAAQ;IAAEC,KAAK,EAAE;EAAmB,CAAC,EACvD;IAAEF,EAAE,EAAE,GAAG;IAAEC,KAAK,EAAE,SAAS;IAAEC,KAAK,EAAE;EAAmB,CAAC,CACzD;EACDC,YAAY;EAEZ;EACAC,SAAS,GAAG,CACV;IACEJ,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,cAAc;IACpBC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGC,UAAU,EAAE,IAAI;IAChBC,eAAe,EAAE,IAAI;IACrBC,QAAQ,EAAE,IAAI;IACdC,UAAU,EAAE,IAAI;IAChBC,iBAAiB,EAAE,IAAI;IACvBC,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,EACD;IACEjB,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,MAAM;IACZC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGS,SAAS,EAAE,IAAI;IACfR,UAAU,EAAE,IAAI;IAChBC,eAAe,EAAE,IAAI;IACrBE,UAAU,EAAE,IAAI;IAChBE,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,EACD;IACEjB,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,cAAc;IACpBC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGE,eAAe,EAAE,IAAI;IACrBC,QAAQ,EAAE,IAAI;IACdG,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,EACD;IACEjB,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,MAAM;IACZC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGS,SAAS,EAAE,IAAI;IACfR,UAAU,EAAE,IAAI;IAChBG,UAAU,EAAE,IAAI;IAChBE,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,EACD;IACEjB,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,cAAc;IACpBC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGC,UAAU,EAAE,IAAI;IAChBC,eAAe,EAAE,IAAI;IACrBC,QAAQ,EAAE,IAAI;IACdC,UAAU,EAAE,IAAI;IAChBC,iBAAiB,EAAE,IAAI;IACvBC,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,EACD;IACEjB,EAAE,EAAE,GAAG;IACPK,IAAI,EAAE,MAAM;IACZC,UAAU,EAAE,aAAa;IACzBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,gCAAgC;IAC1CC,WAAW,EACT,+FAA+F;IACjGS,SAAS,EAAE,IAAI;IACfR,UAAU,EAAE,IAAI;IAChBC,eAAe,EAAE,IAAI;IACrBC,QAAQ,EAAE,IAAI;IACdC,UAAU,EAAE,IAAI;IAChBC,iBAAiB,EAAE,IAAI;IACvBC,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE,IAAI;IAClBC,mBAAmB,EAAE;EACvB,CAAC,CACF;EACDE,eAAe;EAEf;EACAC,wBAAwB,GAAG,IAAI;EAC/BC,qBAAqB;EAErB;EACAC,KAAK;EACLC;AACgB,CAAC,EAAE;EACnB,oBACE3B,KAAA,CAACR,IAAI;IACHmC,MAAM,EAAEA,MAAM,IAAI,cAAe;IACjCD,KAAK,EAAE,CAAC;MAAEE,IAAI,EAAE,CAAC;MAAEC,eAAe,EAAE;IAAU,CAAC,EAAEH,KAAK,CAAE;IAAAI,QAAA,GAGvDN,wBAAwB,iBACvB1B,IAAA,CAACN,IAAI;MAACuC,SAAS,EAAC,gCAAgC;MAAAD,QAAA,eAC9ChC,IAAA,CAACH,oBAAoB;QACnBqC,OAAO,EAAC,SAAS;QACjBC,IAAI,EAAC,IAAI;QACTC,OAAO,EAAET;MAAsB,CAChC;IAAC,CACE,CACP,eAEDzB,KAAA,CAACP,UAAU;MACT0C,4BAA4B,EAAE,KAAM;MACpCC,qBAAqB,EAAE;QAAEC,eAAe,EAAE;MAAG,CAAE;MAAAP,QAAA,GAG9C5B,eAAe,IAAIC,KAAK,CAACmC,MAAM,GAAG,CAAC,iBAClCxC,IAAA,CAACN,IAAI;QAACkC,KAAK,EAAE;UAAEa,YAAY,EAAE;QAAG,CAAE;QAAAT,QAAA,eAChChC,IAAA,CAACF,QAAQ;UACPO,KAAK,EAAEA,KAAM;UACbqC,GAAG,EAAE,CAAE;UACPC,cAAc,EAAE,EAAG;UACnBC,oBAAoB,EAAE,KAAM;UAC5BC,WAAW,EAAGC,IAAI,IAAKrC,YAAY,GAAGqC,IAAI,CAACxC,EAAE;QAAE,CAChD;MAAC,CACE,CACP,eAGDN,IAAA,CAACN,IAAI;QAACkC,KAAK,EAAE;UAAEc,GAAG,EAAE,EAAE;UAAEK,iBAAiB,EAAE;QAAG,CAAE;QAAAf,QAAA,EAC7CtB,SAAS,CAACsC,GAAG,CAAEC,IAAI,iBAClBjD,IAAA,CAACN,IAAI;UAAewD,UAAU,EAAEA,CAAA,KAAMzB,eAAe,GAAGwB,IAAI,CAAC3C,EAAE,CAAE;UAAA0B,QAAA,eAC/DhC,IAAA,CAACJ,QAAQ;YACPe,IAAI,EAAEsC,IAAI,CAACtC,IAAK;YAChBC,UAAU,EAAEqC,IAAI,CAACrC,UAAW;YAC5BC,SAAS,EAAEoC,IAAI,CAACpC,SAAU;YAC1BC,QAAQ,EAAEmC,IAAI,CAACnC,QAAS;YACxBC,WAAW,EAAEkC,IAAI,CAAClC,WAAY;YAC9BS,SAAS,EAAEyB,IAAI,CAACzB,SAAU;YAC1BR,UAAU,EAAEiC,IAAI,CAACjC,UAAW;YAC5BC,eAAe,EAAEgC,IAAI,CAAChC,eAAgB;YACtCC,QAAQ,EAAE+B,IAAI,CAAC/B,QAAS;YACxBC,UAAU,EAAE8B,IAAI,CAAC9B,UAAW;YAC5BC,iBAAiB,EAAE6B,IAAI,CAAC7B,iBAAkB;YAC1CC,WAAW,EAAE4B,IAAI,CAAC5B,WAAY;YAC9BC,YAAY,EAAE2B,IAAI,CAAC3B,YAAa;YAChCC,mBAAmB,EAAE0B,IAAI,CAAC1B;UAAoB,CAC/C;QAAC,GAhBO0B,IAAI,CAAC3C,EAiBV,CACP;MAAC,CACE,CAAC,eAGPN,IAAA,CAACN,IAAI;QAACkC,KAAK,EAAE;UAAEuB,MAAM,EAAE;QAAI;MAAE,CAAE,CAAC;IAAA,CACtB,CAAC;EAAA,CACT,CAAC;AAEX;AAEAhD,WAAW,CAACiD,WAAW,GAAG,aAAa","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { FeedPattern } from "./FeedPattern.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["FeedPattern"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/FeedPattern/index.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,kBAAe","ignoreList":[]}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ import figma from '@figma/code-connect';
4
+ import { HomeFacultyPattern } from "./HomeFacultyPattern.js";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const FIGMA_URL = 'https://www.figma.com/design/YTb27Onq7Zk8OV16fHptxJ/Campx-App?node-id=231-5885';
7
+
8
+ /**
9
+ * HomeFacultyPattern - Faculty home screen layout pattern
10
+ *
11
+ * Use cases:
12
+ * - Faculty dashboard home screens
13
+ * - Educational app faculty portals
14
+ * - Instructor management interfaces
15
+ * - Faculty resource discovery screens
16
+ *
17
+ * Features:
18
+ * - Personalized greeting with schedule quick access
19
+ * - Action center for pending items, requests, and feedback
20
+ * - Next class preparation section with attendance marking
21
+ * - Quick access dashboard (Requests, My Kiosk, Mentees, New Post)
22
+ * - Campus life shortcuts (Clubs, Events)
23
+ * - Faculty announcements and updates feed
24
+ * - All sections are independently configurable
25
+ *
26
+ * Customization:
27
+ * - Show/hide individual sections
28
+ * - Customize titles, subtitles, and content
29
+ * - Configure button callbacks
30
+ * - Adapt data based on backend responses
31
+ */
32
+ figma.connect(HomeFacultyPattern, FIGMA_URL, {
33
+ example: () => /*#__PURE__*/_jsx(HomeFacultyPattern, {
34
+ showGreeting: true,
35
+ greetingUserName: "Mathers",
36
+ greetingText: "Good Morning",
37
+ greetingSubtitle: "You have 3 Classes today",
38
+ showScheduleButton: true,
39
+ showActionCenter: true,
40
+ actionCenterTitle: "Action Center",
41
+ actionCenterSubtitle: "Actions that need your attention",
42
+ actionCenterItems: ['Class Reassignment Request', 'Pending Feedback Submission'],
43
+ showNextClass: true,
44
+ nextClassTitle: "Microprocessors Lab",
45
+ nextClassTime: "10:00 AM - 11:00 AM",
46
+ showMarkAttendanceButton: true,
47
+ showResourcesButton: true,
48
+ showQuickAccess: true,
49
+ quickAccessItems: [{
50
+ title: 'Requests',
51
+ subtitle: '1 Request Pending'
52
+ }, {
53
+ title: 'My Kiosk',
54
+ subtitle: 'Employee Portal'
55
+ }, {
56
+ title: 'Mentees',
57
+ subtitle: '12 Students'
58
+ }, {
59
+ title: 'New Post',
60
+ subtitle: 'Notice Board'
61
+ }],
62
+ showCampusLife: true,
63
+ showAnnouncements: true,
64
+ announcementTitle: "Faculty Development Program",
65
+ announcementAuthor: "Admin",
66
+ announcementSubtitle: "23 March, 2026 from 02:00 PM to 03:00 PM",
67
+ announcementContent: "Examination Timetable has been updated and Published. Students are requested to register before 24th of this Month."
68
+ })
69
+ });
70
+ //# sourceMappingURL=HomeFacultyPattern.figma.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["figma","HomeFacultyPattern","jsx","_jsx","FIGMA_URL","connect","example","showGreeting","greetingUserName","greetingText","greetingSubtitle","showScheduleButton","showActionCenter","actionCenterTitle","actionCenterSubtitle","actionCenterItems","showNextClass","nextClassTitle","nextClassTime","showMarkAttendanceButton","showResourcesButton","showQuickAccess","quickAccessItems","title","subtitle","showCampusLife","showAnnouncements","announcementTitle","announcementAuthor","announcementSubtitle","announcementContent"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.figma.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,qBAAqB;AACvC,SAASC,kBAAkB,QAAQ,yBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE1D,MAAMC,SAAS,GACb,gFAAgF;;AAElF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAJ,KAAK,CAACK,OAAO,CAACJ,kBAAkB,EAAEG,SAAS,EAAE;EAC3CE,OAAO,EAAEA,CAAA,kBACPH,IAAA,CAACF,kBAAkB;IACjBM,YAAY,EAAE,IAAK;IACnBC,gBAAgB,EAAC,SAAS;IAC1BC,YAAY,EAAC,cAAc;IAC3BC,gBAAgB,EAAC,0BAA0B;IAC3CC,kBAAkB,EAAE,IAAK;IACzBC,gBAAgB,EAAE,IAAK;IACvBC,iBAAiB,EAAC,eAAe;IACjCC,oBAAoB,EAAC,kCAAkC;IACvDC,iBAAiB,EAAE,CACjB,4BAA4B,EAC5B,6BAA6B,CAC7B;IACFC,aAAa,EAAE,IAAK;IACpBC,cAAc,EAAC,qBAAqB;IACpCC,aAAa,EAAC,qBAAqB;IACnCC,wBAAwB,EAAE,IAAK;IAC/BC,mBAAmB,EAAE,IAAK;IAC1BC,eAAe,EAAE,IAAK;IACtBC,gBAAgB,EAAE,CAChB;MAAEC,KAAK,EAAE,UAAU;MAAEC,QAAQ,EAAE;IAAoB,CAAC,EACpD;MAAED,KAAK,EAAE,UAAU;MAAEC,QAAQ,EAAE;IAAkB,CAAC,EAClD;MAAED,KAAK,EAAE,SAAS;MAAEC,QAAQ,EAAE;IAAc,CAAC,EAC7C;MAAED,KAAK,EAAE,UAAU;MAAEC,QAAQ,EAAE;IAAe,CAAC,CAC/C;IACFC,cAAc,EAAE,IAAK;IACrBC,iBAAiB,EAAE,IAAK;IACxBC,iBAAiB,EAAC,6BAA6B;IAC/CC,kBAAkB,EAAC,OAAO;IAC1BC,oBAAoB,EAAC,0CAA0C;IAC/DC,mBAAmB,EAAC;EAAqH,CAC1I;AAEL,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,260 @@
1
+ "use strict";
2
+
3
+ // @ts-nocheck
4
+ import { View, ScrollView } from 'react-native';
5
+ import { Greeting } from "../../../components/DataDisplay/Greeting/Greeting.js";
6
+ import { Banner } from "../../../components/DataDisplay/Banner/Banner.js";
7
+ import { Card } from "../../../components/DataDisplay/Card/Card.js";
8
+ import { FeedCard } from "../../../components/DataDisplay/FeedCard/FeedCard.js";
9
+ import { Text } from "../../../components/Input/Text/Text.js";
10
+ import { Button } from "../../../components/Input/Button/Button.js";
11
+
12
+ /* ============================================================================
13
+ * Types
14
+ * ============================================================================ */
15
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
+ /* ============================================================================
17
+ * Component
18
+ * ============================================================================ */
19
+
20
+ /**
21
+ * HomeFacultyPattern Component
22
+ *
23
+ * A comprehensive faculty home screen layout pattern that displays:
24
+ * - Personalized greeting with schedule quick access
25
+ * - Action center for pending items and requests
26
+ * - Next class preparation section with attendance marking
27
+ * - Quick access dashboard (Requests, My Kiosk, Mentees, New Post)
28
+ * - Campus life shortcuts (Clubs, Events)
29
+ * - Announcements feed for faculty updates
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * <HomeFacultyPattern
34
+ * showGreeting={true}
35
+ * showActionCenter={true}
36
+ * showNextClass={true}
37
+ * showQuickAccess={true}
38
+ * showAnnouncements={true}
39
+ * />
40
+ * ```
41
+ */
42
+ export function HomeFacultyPattern({
43
+ // Header section
44
+ showGreeting = true,
45
+ greetingUserName = 'Mathers',
46
+ greetingText = 'Good Morning',
47
+ greetingSubtitle = 'You have 3 Classes today',
48
+ _showScheduleButton = true,
49
+ onSchedulePress,
50
+ // Action Center section
51
+ showActionCenter = true,
52
+ actionCenterTitle = 'Action Center',
53
+ actionCenterSubtitle = 'Actions that need your attention',
54
+ actionCenterItems = ['Class Reassignment Request', 'Pending Feedback Submission'],
55
+ // Next Class section
56
+ showNextClass = true,
57
+ nextClassTitle = 'Microprocessors Lab',
58
+ nextClassTime = '10:00 AM - 11:00 AM',
59
+ showMarkAttendanceButton = true,
60
+ showResourcesButton = true,
61
+ // Quick Access section
62
+ showQuickAccess = true,
63
+ quickAccessItems = [{
64
+ title: 'Requests',
65
+ subtitle: '1 Request Pending'
66
+ }, {
67
+ title: 'My Kiosk',
68
+ subtitle: 'Employee Portal'
69
+ }, {
70
+ title: 'Mentees',
71
+ subtitle: '12 Students'
72
+ }, {
73
+ title: 'New Post',
74
+ subtitle: 'Notice Board'
75
+ }],
76
+ // Campus Life section
77
+ showCampusLife = true,
78
+ // Announcements section
79
+ showAnnouncements = true,
80
+ announcementTitle = 'Faculty Development Program',
81
+ announcementAuthor = 'Admin',
82
+ announcementSubtitle = '23 March, 2026 from 02:00 PM to 03:00 PM',
83
+ announcementContent = 'Examination Timetable has been updated and Published. Students are requested to register before 24th of this Month.',
84
+ // Styling
85
+ style,
86
+ testID
87
+ }) {
88
+ return /*#__PURE__*/_jsx(ScrollView, {
89
+ testID: testID ?? 'home-faculty-pattern',
90
+ style: style,
91
+ className: "flex-1 bg-surface-page",
92
+ showsVerticalScrollIndicator: false,
93
+ children: /*#__PURE__*/_jsxs(View, {
94
+ className: "gap-8 py-5 px-5",
95
+ children: [showGreeting && /*#__PURE__*/_jsx(View, {
96
+ className: "gap-4",
97
+ children: /*#__PURE__*/_jsx(Greeting, {
98
+ userName: greetingUserName,
99
+ greetingText: greetingText,
100
+ subtitle: greetingSubtitle,
101
+ ctaLayout: "icon",
102
+ showNextUp: false,
103
+ onSchedulePress: onSchedulePress
104
+ })
105
+ }), showActionCenter && /*#__PURE__*/_jsx(View, {
106
+ className: "gap-4",
107
+ children: /*#__PURE__*/_jsx(Banner, {
108
+ style: "solid",
109
+ title: actionCenterTitle,
110
+ subtitle: actionCenterSubtitle,
111
+ showBadge: true,
112
+ badge1Text: `${actionCenterItems.length}`,
113
+ actionItem1: actionCenterItems[0] || 'Class Reassignment Request',
114
+ showActionItem2: actionCenterItems.length > 1,
115
+ actionItem2: actionCenterItems[1] || 'Pending Feedback Submission',
116
+ showMoreLabel: actionCenterItems.length > 2,
117
+ moreLabel: `+ ${actionCenterItems.length - 2} more`,
118
+ showActionItems: true,
119
+ showTrailing: true
120
+ })
121
+ }), showNextClass && /*#__PURE__*/_jsxs(View, {
122
+ className: "gap-2",
123
+ children: [/*#__PURE__*/_jsx(Text, {
124
+ className: "text-sm font-semibold text-text-secondary px-5",
125
+ children: "Your Next Class"
126
+ }), /*#__PURE__*/_jsxs(View, {
127
+ className: "gap-2 px-5",
128
+ children: [/*#__PURE__*/_jsx(Card, {
129
+ size: "lg",
130
+ title: nextClassTitle,
131
+ subtitle: nextClassTime,
132
+ showSubtitle: true,
133
+ showMedia: false,
134
+ showLeading: false,
135
+ showBadges: false,
136
+ showFooterActions: false
137
+ }), /*#__PURE__*/_jsxs(View, {
138
+ className: "flex-row gap-2",
139
+ children: [showMarkAttendanceButton && /*#__PURE__*/_jsx(Button, {
140
+ variant: "default",
141
+ size: "default",
142
+ className: "flex-1",
143
+ children: "Mark Attendance"
144
+ }), showResourcesButton && /*#__PURE__*/_jsx(Button, {
145
+ variant: "secondary",
146
+ size: "default",
147
+ className: "flex-1",
148
+ children: "Resources"
149
+ })]
150
+ }), /*#__PURE__*/_jsx(Text, {
151
+ className: "text-center text-sm font-semibold text-text-primary py-3",
152
+ children: "View All Classes \u2192"
153
+ })]
154
+ })]
155
+ }), showQuickAccess && /*#__PURE__*/_jsxs(View, {
156
+ className: "gap-2",
157
+ children: [/*#__PURE__*/_jsx(Text, {
158
+ className: "text-sm font-semibold text-text-secondary px-5",
159
+ children: "Quick Access"
160
+ }), /*#__PURE__*/_jsx(View, {
161
+ className: "flex-row flex-wrap gap-2 px-5 justify-between",
162
+ children: quickAccessItems.map((item, index) => /*#__PURE__*/_jsx(View, {
163
+ style: {
164
+ width: '48%'
165
+ },
166
+ children: /*#__PURE__*/_jsx(Card, {
167
+ size: "sm",
168
+ title: item.title,
169
+ subtitle: item.subtitle,
170
+ showSubtitle: true,
171
+ showMedia: false,
172
+ showLeading: true,
173
+ showBadges: false,
174
+ showFooterActions: false,
175
+ leadingType: "avatar",
176
+ avatarInitials: item.title.slice(0, 2).toUpperCase()
177
+ })
178
+ }, index))
179
+ })]
180
+ }), showCampusLife && /*#__PURE__*/_jsxs(View, {
181
+ className: "gap-2",
182
+ children: [/*#__PURE__*/_jsx(Text, {
183
+ className: "text-sm font-semibold text-text-secondary px-5",
184
+ children: "Campus Life"
185
+ }), /*#__PURE__*/_jsxs(View, {
186
+ className: "flex-row gap-2 px-5",
187
+ children: [/*#__PURE__*/_jsx(View, {
188
+ style: {
189
+ flex: 1
190
+ },
191
+ children: /*#__PURE__*/_jsx(Card, {
192
+ size: "sm",
193
+ title: "Clubs",
194
+ subtitle: "22 Clubs Available",
195
+ showSubtitle: true,
196
+ showMedia: false,
197
+ showLeading: true,
198
+ showBadges: false,
199
+ showFooterActions: false,
200
+ leadingType: "avatar",
201
+ avatarInitials: "CL"
202
+ })
203
+ }), /*#__PURE__*/_jsx(View, {
204
+ style: {
205
+ flex: 1
206
+ },
207
+ children: /*#__PURE__*/_jsx(Card, {
208
+ size: "sm",
209
+ title: "Events",
210
+ subtitle: "2 New Events",
211
+ showSubtitle: true,
212
+ showMedia: false,
213
+ showLeading: true,
214
+ showBadges: false,
215
+ showFooterActions: false,
216
+ leadingType: "avatar",
217
+ avatarInitials: "EV"
218
+ })
219
+ })]
220
+ })]
221
+ }), showAnnouncements && /*#__PURE__*/_jsxs(View, {
222
+ className: "gap-2",
223
+ children: [/*#__PURE__*/_jsxs(View, {
224
+ className: "flex-row justify-between items-center px-5",
225
+ children: [/*#__PURE__*/_jsx(Text, {
226
+ className: "text-sm font-semibold text-text-secondary",
227
+ children: "Announcements"
228
+ }), /*#__PURE__*/_jsx(Text, {
229
+ className: "text-xs",
230
+ children: "\u2192"
231
+ })]
232
+ }), /*#__PURE__*/_jsx(View, {
233
+ className: "px-5",
234
+ children: /*#__PURE__*/_jsx(FeedCard, {
235
+ type: "announcement",
236
+ authorName: announcementAuthor,
237
+ postTitle: announcementTitle,
238
+ subtitle: announcementSubtitle,
239
+ postContent: announcementContent,
240
+ showMedia: true,
241
+ showHeader: true,
242
+ showPostContent: true,
243
+ showBody: true,
244
+ showFooterActions: true,
245
+ showLeading: true,
246
+ showSubtitle: true,
247
+ showBadges: false,
248
+ showSecondaryButton: false
249
+ })
250
+ })]
251
+ }), /*#__PURE__*/_jsx(View, {
252
+ style: {
253
+ height: 96
254
+ }
255
+ })]
256
+ })
257
+ });
258
+ }
259
+ HomeFacultyPattern.displayName = 'HomeFacultyPattern';
260
+ //# sourceMappingURL=HomeFacultyPattern.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","ScrollView","Greeting","Banner","Card","FeedCard","Text","Button","jsx","_jsx","jsxs","_jsxs","HomeFacultyPattern","showGreeting","greetingUserName","greetingText","greetingSubtitle","_showScheduleButton","onSchedulePress","showActionCenter","actionCenterTitle","actionCenterSubtitle","actionCenterItems","showNextClass","nextClassTitle","nextClassTime","showMarkAttendanceButton","showResourcesButton","showQuickAccess","quickAccessItems","title","subtitle","showCampusLife","showAnnouncements","announcementTitle","announcementAuthor","announcementSubtitle","announcementContent","style","testID","className","showsVerticalScrollIndicator","children","userName","ctaLayout","showNextUp","showBadge","badge1Text","length","actionItem1","showActionItem2","actionItem2","showMoreLabel","moreLabel","showActionItems","showTrailing","size","showSubtitle","showMedia","showLeading","showBadges","showFooterActions","variant","map","item","index","width","leadingType","avatarInitials","slice","toUpperCase","flex","type","authorName","postTitle","postContent","showHeader","showPostContent","showBody","showSecondaryButton","height","displayName"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/HomeFacultyPattern/HomeFacultyPattern.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { HomeFacultyPattern } from "./HomeFacultyPattern.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["HomeFacultyPattern"],"sourceRoot":"../../../../../src","sources":["patterns/pattern-components/HomeFacultyPattern/index.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,yBAAsB","ignoreList":[]}