easc-cli 1.1.30 → 1.1.33
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.
- package/charity-website/README.md +252 -0
- package/charity-website/admin/index.html +299 -0
- package/charity-website/package.json +40 -0
- package/charity-website/public/index.html +265 -0
- package/charity-website/src/css/admin.css +710 -0
- package/charity-website/src/css/style.css +741 -0
- package/charity-website/src/js/admin.js +743 -0
- package/charity-website/src/js/app.js +444 -0
- package/package.json +9 -10
- package/script/build.ts +2 -2
- package/script/deploy.ts +23 -2
- package/src/cli/cmd/tui/routes/session/index.tsx +12 -12
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>CharityHub - Make a Difference Today</title>
|
|
7
|
+
<link rel="stylesheet" href="src/css/style.css" />
|
|
8
|
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet" />
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<header class="header">
|
|
12
|
+
<nav class="nav">
|
|
13
|
+
<div class="nav-brand">
|
|
14
|
+
<i class="fas fa-heart"></i>
|
|
15
|
+
<span>CharityHub</span>
|
|
16
|
+
</div>
|
|
17
|
+
<ul class="nav-menu">
|
|
18
|
+
<li><a href="#home" class="nav-link">Home</a></li>
|
|
19
|
+
<li><a href="#charities" class="nav-link">Charities</a></li>
|
|
20
|
+
<li><a href="#about" class="nav-link">About</a></li>
|
|
21
|
+
<li><a href="#contact" class="nav-link">Contact</a></li>
|
|
22
|
+
</ul>
|
|
23
|
+
<button class="nav-toggle" id="navToggle">
|
|
24
|
+
<i class="fas fa-bars"></i>
|
|
25
|
+
</button>
|
|
26
|
+
</nav>
|
|
27
|
+
</header>
|
|
28
|
+
|
|
29
|
+
<main>
|
|
30
|
+
<section id="home" class="hero">
|
|
31
|
+
<div class="hero-content">
|
|
32
|
+
<h1 class="hero-title">Make a Difference Today</h1>
|
|
33
|
+
<p class="hero-subtitle">Support trusted charities and help create positive change in the world</p>
|
|
34
|
+
<div class="hero-stats">
|
|
35
|
+
<div class="stat">
|
|
36
|
+
<span class="stat-number" id="totalCharities">0</span>
|
|
37
|
+
<span class="stat-label">Charities</span>
|
|
38
|
+
</div>
|
|
39
|
+
<div class="stat">
|
|
40
|
+
<span class="stat-number" id="totalRaised">$0</span>
|
|
41
|
+
<span class="stat-label">Raised</span>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="stat">
|
|
44
|
+
<span class="stat-number" id="totalDonors">0</span>
|
|
45
|
+
<span class="stat-label">Donors</span>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
<button class="btn btn-primary" onclick="scrollToCharities()">Explore Charities</button>
|
|
49
|
+
</div>
|
|
50
|
+
</section>
|
|
51
|
+
|
|
52
|
+
<section id="charities" class="charities">
|
|
53
|
+
<div class="container">
|
|
54
|
+
<div class="section-header">
|
|
55
|
+
<h2 class="section-title">Featured Charities</h2>
|
|
56
|
+
<p class="section-subtitle">Support causes that matter to you</p>
|
|
57
|
+
</div>
|
|
58
|
+
|
|
59
|
+
<div class="filters">
|
|
60
|
+
<div class="filter-group">
|
|
61
|
+
<label for="categoryFilter">Category:</label>
|
|
62
|
+
<select id="categoryFilter" class="filter-select">
|
|
63
|
+
<option value="">All Categories</option>
|
|
64
|
+
</select>
|
|
65
|
+
</div>
|
|
66
|
+
<div class="filter-group">
|
|
67
|
+
<label for="sortFilter">Sort by:</label>
|
|
68
|
+
<select id="sortFilter" class="filter-select">
|
|
69
|
+
<option value="name">Name</option>
|
|
70
|
+
<option value="goal">Goal Amount</option>
|
|
71
|
+
<option value="progress">Progress</option>
|
|
72
|
+
</select>
|
|
73
|
+
</div>
|
|
74
|
+
<div class="search-group">
|
|
75
|
+
<input type="text" id="searchInput" placeholder="Search charities..." class="search-input" />
|
|
76
|
+
<button class="search-btn" onclick="searchCharities()">
|
|
77
|
+
<i class="fas fa-search"></i>
|
|
78
|
+
</button>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
|
|
82
|
+
<div class="charities-grid" id="charitiesGrid">
|
|
83
|
+
<!-- Charity cards will be dynamically inserted here -->
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<div class="load-more-container">
|
|
87
|
+
<button class="btn btn-secondary" id="loadMoreBtn" onclick="loadMoreCharities()">Load More</button>
|
|
88
|
+
</div>
|
|
89
|
+
</div>
|
|
90
|
+
</section>
|
|
91
|
+
|
|
92
|
+
<section id="about" class="about">
|
|
93
|
+
<div class="container">
|
|
94
|
+
<div class="section-header">
|
|
95
|
+
<h2 class="section-title">About CharityHub</h2>
|
|
96
|
+
<p class="section-subtitle">Connecting generous donors with trusted charities</p>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="about-content">
|
|
99
|
+
<div class="about-text">
|
|
100
|
+
<p>
|
|
101
|
+
CharityHub is a platform dedicated to making charitable giving simple, transparent, and impactful. We
|
|
102
|
+
partner with verified charities across various causes to ensure your donations make a real difference.
|
|
103
|
+
</p>
|
|
104
|
+
<div class="features">
|
|
105
|
+
<div class="feature">
|
|
106
|
+
<i class="fas fa-shield-alt"></i>
|
|
107
|
+
<h3>Verified Charities</h3>
|
|
108
|
+
<p>All charities are thoroughly vetted and verified</p>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="feature">
|
|
111
|
+
<i class="fas fa-chart-line"></i>
|
|
112
|
+
<h3>Transparent Impact</h3>
|
|
113
|
+
<p>Track how your donations are making a difference</p>
|
|
114
|
+
</div>
|
|
115
|
+
<div class="feature">
|
|
116
|
+
<i class="fas fa-lock"></i>
|
|
117
|
+
<h3>Secure Payments</h3>
|
|
118
|
+
<p>Your transactions are safe and protected</p>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
</div>
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
</section>
|
|
125
|
+
|
|
126
|
+
<section id="contact" class="contact">
|
|
127
|
+
<div class="container">
|
|
128
|
+
<div class="section-header">
|
|
129
|
+
<h2 class="section-title">Get in Touch</h2>
|
|
130
|
+
<p class="section-subtitle">Have questions? We're here to help</p>
|
|
131
|
+
</div>
|
|
132
|
+
<div class="contact-content">
|
|
133
|
+
<div class="contact-info">
|
|
134
|
+
<div class="contact-item">
|
|
135
|
+
<i class="fas fa-envelope"></i>
|
|
136
|
+
<div>
|
|
137
|
+
<h3>Email</h3>
|
|
138
|
+
<p>support@charityhub.org</p>
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
<div class="contact-item">
|
|
142
|
+
<i class="fas fa-phone"></i>
|
|
143
|
+
<div>
|
|
144
|
+
<h3>Phone</h3>
|
|
145
|
+
<p>1-800-CHARITY</p>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
<div class="contact-item">
|
|
149
|
+
<i class="fas fa-map-marker-alt"></i>
|
|
150
|
+
<div>
|
|
151
|
+
<h3>Address</h3>
|
|
152
|
+
<p>123 Hope Street, Charity City, CC 12345</p>
|
|
153
|
+
</div>
|
|
154
|
+
</div>
|
|
155
|
+
</div>
|
|
156
|
+
<form class="contact-form" id="contactForm">
|
|
157
|
+
<div class="form-group">
|
|
158
|
+
<input type="text" id="contactName" placeholder="Your Name" required />
|
|
159
|
+
</div>
|
|
160
|
+
<div class="form-group">
|
|
161
|
+
<input type="email" id="contactEmail" placeholder="Your Email" required />
|
|
162
|
+
</div>
|
|
163
|
+
<div class="form-group">
|
|
164
|
+
<textarea id="contactMessage" placeholder="Your Message" rows="5" required></textarea>
|
|
165
|
+
</div>
|
|
166
|
+
<button type="submit" class="btn btn-primary">Send Message</button>
|
|
167
|
+
</form>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</section>
|
|
171
|
+
</main>
|
|
172
|
+
|
|
173
|
+
<footer class="footer">
|
|
174
|
+
<div class="container">
|
|
175
|
+
<div class="footer-content">
|
|
176
|
+
<div class="footer-brand">
|
|
177
|
+
<i class="fas fa-heart"></i>
|
|
178
|
+
<span>CharityHub</span>
|
|
179
|
+
<p>Making the world a better place, one donation at a time.</p>
|
|
180
|
+
</div>
|
|
181
|
+
<div class="footer-links">
|
|
182
|
+
<div class="footer-section">
|
|
183
|
+
<h4>Quick Links</h4>
|
|
184
|
+
<ul>
|
|
185
|
+
<li><a href="#home">Home</a></li>
|
|
186
|
+
<li><a href="#charities">Charities</a></li>
|
|
187
|
+
<li><a href="#about">About</a></li>
|
|
188
|
+
<li><a href="#contact">Contact</a></li>
|
|
189
|
+
</ul>
|
|
190
|
+
</div>
|
|
191
|
+
<div class="footer-section">
|
|
192
|
+
<h4>Categories</h4>
|
|
193
|
+
<ul id="footerCategories">
|
|
194
|
+
<!-- Categories will be dynamically inserted -->
|
|
195
|
+
</ul>
|
|
196
|
+
</div>
|
|
197
|
+
<div class="footer-section">
|
|
198
|
+
<h4>Follow Us</h4>
|
|
199
|
+
<div class="social-links">
|
|
200
|
+
<a href="#" class="social-link"><i class="fab fa-facebook"></i></a>
|
|
201
|
+
<a href="#" class="social-link"><i class="fab fa-twitter"></i></a>
|
|
202
|
+
<a href="#" class="social-link"><i class="fab fa-instagram"></i></a>
|
|
203
|
+
<a href="#" class="social-link"><i class="fab fa-linkedin"></i></a>
|
|
204
|
+
</div>
|
|
205
|
+
</div>
|
|
206
|
+
</div>
|
|
207
|
+
</div>
|
|
208
|
+
<div class="footer-bottom">
|
|
209
|
+
<p>© 2024 CharityHub. All rights reserved.</p>
|
|
210
|
+
</div>
|
|
211
|
+
</div>
|
|
212
|
+
</footer>
|
|
213
|
+
|
|
214
|
+
<!-- Donation Modal -->
|
|
215
|
+
<div class="modal" id="donationModal">
|
|
216
|
+
<div class="modal-content">
|
|
217
|
+
<div class="modal-header">
|
|
218
|
+
<h3>Make a Donation</h3>
|
|
219
|
+
<button class="modal-close" onclick="closeDonationModal()">
|
|
220
|
+
<i class="fas fa-times"></i>
|
|
221
|
+
</button>
|
|
222
|
+
</div>
|
|
223
|
+
<div class="modal-body">
|
|
224
|
+
<div class="charity-info" id="modalCharityInfo">
|
|
225
|
+
<!-- Charity info will be dynamically inserted -->
|
|
226
|
+
</div>
|
|
227
|
+
<form id="donationForm">
|
|
228
|
+
<div class="form-group">
|
|
229
|
+
<label for="donorName">Your Name</label>
|
|
230
|
+
<input type="text" id="donorName" required />
|
|
231
|
+
</div>
|
|
232
|
+
<div class="form-group">
|
|
233
|
+
<label for="donorEmail">Your Email</label>
|
|
234
|
+
<input type="email" id="donorEmail" required />
|
|
235
|
+
</div>
|
|
236
|
+
<div class="form-group">
|
|
237
|
+
<label for="donationAmount">Donation Amount ($)</label>
|
|
238
|
+
<div class="amount-options">
|
|
239
|
+
<button type="button" class="amount-btn" data-amount="10">$10</button>
|
|
240
|
+
<button type="button" class="amount-btn" data-amount="25">$25</button>
|
|
241
|
+
<button type="button" class="amount-btn" data-amount="50">$50</button>
|
|
242
|
+
<button type="button" class="amount-btn" data-amount="100">$100</button>
|
|
243
|
+
<input type="number" id="donationAmount" placeholder="Other" min="1" step="0.01" />
|
|
244
|
+
</div>
|
|
245
|
+
</div>
|
|
246
|
+
<div class="form-group">
|
|
247
|
+
<label for="donationMessage">Message (Optional)</label>
|
|
248
|
+
<textarea id="donationMessage" placeholder="Leave a message of support..."></textarea>
|
|
249
|
+
</div>
|
|
250
|
+
<div class="form-group checkbox-group">
|
|
251
|
+
<label>
|
|
252
|
+
<input type="checkbox" id="anonymousDonation" />
|
|
253
|
+
<span>Make this donation anonymous</span>
|
|
254
|
+
</label>
|
|
255
|
+
</div>
|
|
256
|
+
<button type="submit" class="btn btn-primary btn-full">Donate Now</button>
|
|
257
|
+
</form>
|
|
258
|
+
</div>
|
|
259
|
+
</div>
|
|
260
|
+
</div>
|
|
261
|
+
|
|
262
|
+
<script src="https://cdn.jsdelivr.net/npm/@supabase/supabase-js@2"></script>
|
|
263
|
+
<script src="src/js/app.js"></script>
|
|
264
|
+
</body>
|
|
265
|
+
</html>
|