@ayushsolanki29/payment-gateway 0.0.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.
package/styles.css ADDED
@@ -0,0 +1,320 @@
1
+ /* Base Styles */
2
+ :root {
3
+ --primary-blue: #005bf2;
4
+ --success-green: #0da800;
5
+ --error-red: #ff3333;
6
+ --white: #ffffff;
7
+ --light-gray: #ebebeb;
8
+ --medium-gray: #6d6d6d;
9
+ --dark-gray: #333333;
10
+ --border-gray: #f5f5f5;
11
+ --text-dark: #000000;
12
+ --text-light: #777777;
13
+ --shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
14
+
15
+ /* Spacing */
16
+ --space-xs: 0.25rem;
17
+ --space-sm: 0.5rem;
18
+ --space-md: 1rem;
19
+ --space-lg: 1.5rem;
20
+ --space-xl: 2rem;
21
+
22
+ /* Border Radius */
23
+ --radius-sm: 5px;
24
+ --radius-md: 10px;
25
+ --radius-lg: 15px;
26
+ --radius-xl: 20px;
27
+ }
28
+
29
+ * {
30
+ font-family: "Montserrat", sans-serif;
31
+ box-sizing: border-box;
32
+ margin: 0;
33
+ padding: 0;
34
+ }
35
+
36
+ body {
37
+ background-color: #f5f5f5;
38
+ padding: var(--space-lg);
39
+ }
40
+
41
+ /* Payment Trigger Button */
42
+ .payment-trigger-btn {
43
+ background-color: var(--primary-blue);
44
+ color: var(--white);
45
+ border: none;
46
+ padding: var(--space-md) var(--space-lg);
47
+ border-radius: var(--radius-md);
48
+ font-size: 1rem;
49
+ cursor: pointer;
50
+ display: inline-flex;
51
+ align-items: center;
52
+ gap: var(--space-sm);
53
+ box-shadow: var(--shadow);
54
+ transition: all 0.2s ease;
55
+ }
56
+
57
+ .payment-trigger-btn:hover {
58
+ background-color: #0048c4;
59
+ transform: translateY(-2px);
60
+ }
61
+
62
+ /* Modal Overlay */
63
+ .payment-modal {
64
+ position: fixed;
65
+ top: 0;
66
+ left: 0;
67
+ width: 100%;
68
+ height: 100%;
69
+ background-color: rgba(0, 0, 0, 0.4);
70
+ z-index: 1000;
71
+ display: none;
72
+ justify-content: center;
73
+ align-items: center;
74
+ }
75
+
76
+ /* Modal Content */
77
+ .modal-content {
78
+ background-color: var(--primary-blue);
79
+ border-radius: var(--radius-md);
80
+ width: 90%;
81
+ max-width: 400px;
82
+ color: var(--white);
83
+ position: relative;
84
+ padding: var(--space-lg);
85
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
86
+ }
87
+
88
+ .modal-header {
89
+ text-align: center;
90
+ margin-bottom: var(--space-lg);
91
+ position: relative;
92
+ }
93
+
94
+ .close-modal {
95
+ position: absolute;
96
+ top: 0;
97
+ right: 0;
98
+ font-size: 1.5rem;
99
+ cursor: pointer;
100
+ color: var(--white);
101
+ }
102
+
103
+ /* Payment Steps */
104
+ .payment-step {
105
+ display: none;
106
+ }
107
+
108
+ .payment-step.active {
109
+ display: block;
110
+ }
111
+
112
+ /* Amount Display */
113
+ .amount-display {
114
+ text-align: center;
115
+ margin: var(--space-xl) 0;
116
+ }
117
+
118
+ .amount-display span {
119
+ display: block;
120
+ font-size: 0.9rem;
121
+ margin-bottom: var(--space-xs);
122
+ }
123
+
124
+ .amount-display h2 {
125
+ font-size: 2rem;
126
+ font-weight: 700;
127
+ }
128
+
129
+ /* Message Box */
130
+ .message-box {
131
+ padding: var(--space-md);
132
+ border-radius: var(--radius-sm);
133
+ margin-bottom: var(--space-md);
134
+ display: none;
135
+ }
136
+
137
+ .message-box.error {
138
+ background-color: var(--error-red);
139
+ display: block;
140
+ }
141
+
142
+ .message-box.success {
143
+ background-color: var(--success-green);
144
+ display: block;
145
+ }
146
+
147
+ /* Form Elements */
148
+ .form-group {
149
+ margin-bottom: var(--space-md);
150
+ }
151
+
152
+ .form-group label {
153
+ display: block;
154
+ margin-bottom: var(--space-xs);
155
+ font-size: 0.9rem;
156
+ }
157
+
158
+ .input-with-icon {
159
+ position: relative;
160
+ }
161
+
162
+ .input-with-icon i {
163
+ position: absolute;
164
+ left: var(--space-md);
165
+ top: 50%;
166
+ transform: translateY(-50%);
167
+ color: var(--medium-gray);
168
+ }
169
+
170
+ .input-with-icon input {
171
+ width: 100%;
172
+ padding: var(--space-md) var(--space-md) var(--space-md) 2.5rem;
173
+ border: 1px solid var(--border-gray);
174
+ border-radius: var(--radius-lg);
175
+ background: var(--white);
176
+ font-size: 1rem;
177
+ color: var(--text-dark);
178
+ }
179
+
180
+ /* Buttons */
181
+ .primary-btn {
182
+ background-color: var(--success-green);
183
+ color: var(--white);
184
+ border: none;
185
+ width: 100%;
186
+ padding: var(--space-md);
187
+ border-radius: var(--radius-sm);
188
+ font-size: 1rem;
189
+ cursor: pointer;
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: center;
193
+ gap: var(--space-sm);
194
+ margin-top: var(--space-md);
195
+ transition: all 0.2s ease;
196
+ }
197
+
198
+ .primary-btn:hover {
199
+ background-color: #0b9200;
200
+ }
201
+
202
+ .primary-btn:disabled {
203
+ background-color: var(--medium-gray);
204
+ cursor: not-allowed;
205
+ }
206
+
207
+ /* Payment Options */
208
+ .payment-header {
209
+ text-align: center;
210
+ margin-bottom: var(--space-lg);
211
+ }
212
+
213
+ .payment-header h3 {
214
+ margin-bottom: var(--space-sm);
215
+ }
216
+
217
+ .timer {
218
+ font-size: 0.9rem;
219
+ }
220
+
221
+ .option-tabs {
222
+ display: flex;
223
+ border-bottom: 1px solid rgba(255, 255, 255, 0.2);
224
+ margin-bottom: var(--space-md);
225
+ }
226
+
227
+ .option-tab {
228
+ background: none;
229
+ border: none;
230
+ color: var(--white);
231
+ padding: var(--space-sm) var(--space-md);
232
+ cursor: pointer;
233
+ opacity: 0.7;
234
+ transition: all 0.2s ease;
235
+ border-bottom: 2px solid transparent;
236
+ }
237
+
238
+ .option-tab.active {
239
+ opacity: 1;
240
+ border-bottom-color: var(--white);
241
+ }
242
+
243
+ .option-content {
244
+ display: none;
245
+ }
246
+
247
+ .option-content.active {
248
+ display: block;
249
+ }
250
+
251
+ /* QR Code Section */
252
+ .qr-container {
253
+ text-align: center;
254
+ margin-bottom: var(--space-lg);
255
+ }
256
+
257
+ .qr-container img {
258
+ width: 150px;
259
+ height: 150px;
260
+ background: var(--white);
261
+ padding: var(--space-sm);
262
+ margin-bottom: var(--space-sm);
263
+ }
264
+
265
+ .qr-container p {
266
+ font-size: 0.9rem;
267
+ }
268
+
269
+ /* UPI App Section */
270
+ .upi-app-info {
271
+ background: rgba(255, 255, 255, 0.1);
272
+ padding: var(--space-md);
273
+ border-radius: var(--radius-sm);
274
+ margin-bottom: var(--space-md);
275
+ }
276
+
277
+ .merchant-upi,
278
+ .payment-amount {
279
+ display: flex;
280
+ align-items: center;
281
+ margin-bottom: var(--space-sm);
282
+ gap: var(--space-sm);
283
+ }
284
+
285
+ .copy-btn {
286
+ background: none;
287
+ border: none;
288
+ color: var(--white);
289
+ cursor: pointer;
290
+ margin-left: auto;
291
+ }
292
+
293
+ .upi-app-btn {
294
+ margin-top: var(--space-md);
295
+ }
296
+
297
+ /* Payment Note */
298
+ .payment-note {
299
+ display: flex;
300
+ align-items: center;
301
+ gap: var(--space-sm);
302
+ margin-top: var(--space-md);
303
+ font-size: 0.9rem;
304
+ opacity: 0.8;
305
+ }
306
+
307
+ /* Security Badge */
308
+ .security-badge {
309
+ display: flex;
310
+ align-items: center;
311
+ justify-content: center;
312
+ gap: var(--space-sm);
313
+ margin-top: var(--space-xl);
314
+ font-size: 0.8rem;
315
+ opacity: 0.8;
316
+ }
317
+
318
+ .security-badge img {
319
+ width: 20px;
320
+ }
package/thank-you.html ADDED
@@ -0,0 +1,61 @@
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>Payment Successful</title>
7
+ <style>
8
+ body {
9
+ font-family: 'Montserrat', sans-serif;
10
+ display: flex;
11
+ justify-content: center;
12
+ align-items: center;
13
+ height: 100vh;
14
+ background-color: #f5f5f5;
15
+ text-align: center;
16
+ }
17
+ .container {
18
+ background: white;
19
+ padding: 2rem;
20
+ border-radius: 10px;
21
+ box-shadow: 0 4px 12px rgba(0,0,0,0.1);
22
+ max-width: 500px;
23
+ }
24
+ .success-icon {
25
+ color: #0da800;
26
+ font-size: 4rem;
27
+ margin-bottom: 1rem;
28
+ }
29
+ h1 {
30
+ color: #333;
31
+ margin-bottom: 1rem;
32
+ }
33
+ p {
34
+ color: #666;
35
+ margin-bottom: 2rem;
36
+ }
37
+ .btn {
38
+ background: #005bf2;
39
+ color: white;
40
+ border: none;
41
+ padding: 0.75rem 1.5rem;
42
+ border-radius: 5px;
43
+ font-size: 1rem;
44
+ cursor: pointer;
45
+ text-decoration: none;
46
+ display: inline-block;
47
+ }
48
+ </style>
49
+ </head>
50
+ <body>
51
+ <div class="container">
52
+ <div class="success-icon">
53
+ <i class="fas fa-check-circle"></i>
54
+ </div>
55
+ <h1>Payment Successful!</h1>
56
+ <p>Thank you for your payment. Your transaction has been completed successfully.</p>
57
+ <a href="/" class="btn">Return to Home</a>
58
+ </div>
59
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/js/all.min.js"></script>
60
+ </body>
61
+ </html>