├── README.md
├── Wallet address example.txt
├── package-lock.json
├── package.json
├── sendmessage
├── config.json
├── index.js
├── package-lock.json
├── package.json
└── test.js
├── server
├── package-lock.json
├── package.json
├── routes.js
└── server.js
└── view
├── README.md
├── babel.config.js
├── package-lock.json
├── package.json
├── public
├── css
│ ├── all.css
│ ├── grid.min.css
│ └── main.css
├── favicon.ico
└── index.html
├── src
├── App.vue
├── assets
│ └── logo.png
├── bootstrap.js
├── common.js
├── components
│ ├── DiscordBot.vue
│ └── VerifySingleAsset.vue
└── main.js
└── web3.js
/README.md:
--------------------------------------------------------------------------------
1 | # How to run the project?
2 |
3 | 1. run the command "npm install" in ./
4 | 2. run the command "npm install" in sendmessage folder
5 | 3. run the command "npm install" in server folder
6 | 4. run the command "npm install" in view folder
7 | So we need to install node_modules 3times
8 | 5. make the bot and get token ID for app
9 | 6. configure app setting from token ID in app's config.json files
10 |
11 | 
12 | 
13 | 
14 |
--------------------------------------------------------------------------------
/Wallet address example.txt:
--------------------------------------------------------------------------------
1 | 0x3a05aa124f70e6aba2c524594314637842102c75
2 | TURTLE TOWN NFT
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "package",
3 | "version": "1.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "package",
9 | "version": "1.0.0",
10 | "license": "ISC",
11 | "dependencies": {
12 | "concurrently": "^7.0.0",
13 | "vue-router": "^4.0.12"
14 | }
15 | },
16 | "node_modules/@babel/parser": {
17 | "version": "7.17.3",
18 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz",
19 | "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==",
20 | "peer": true,
21 | "bin": {
22 | "parser": "bin/babel-parser.js"
23 | },
24 | "engines": {
25 | "node": ">=6.0.0"
26 | }
27 | },
28 | "node_modules/@vue/compiler-core": {
29 | "version": "3.2.31",
30 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz",
31 | "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==",
32 | "peer": true,
33 | "dependencies": {
34 | "@babel/parser": "^7.16.4",
35 | "@vue/shared": "3.2.31",
36 | "estree-walker": "^2.0.2",
37 | "source-map": "^0.6.1"
38 | }
39 | },
40 | "node_modules/@vue/compiler-dom": {
41 | "version": "3.2.31",
42 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz",
43 | "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==",
44 | "peer": true,
45 | "dependencies": {
46 | "@vue/compiler-core": "3.2.31",
47 | "@vue/shared": "3.2.31"
48 | }
49 | },
50 | "node_modules/@vue/compiler-sfc": {
51 | "version": "3.2.31",
52 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz",
53 | "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==",
54 | "peer": true,
55 | "dependencies": {
56 | "@babel/parser": "^7.16.4",
57 | "@vue/compiler-core": "3.2.31",
58 | "@vue/compiler-dom": "3.2.31",
59 | "@vue/compiler-ssr": "3.2.31",
60 | "@vue/reactivity-transform": "3.2.31",
61 | "@vue/shared": "3.2.31",
62 | "estree-walker": "^2.0.2",
63 | "magic-string": "^0.25.7",
64 | "postcss": "^8.1.10",
65 | "source-map": "^0.6.1"
66 | }
67 | },
68 | "node_modules/@vue/compiler-ssr": {
69 | "version": "3.2.31",
70 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz",
71 | "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==",
72 | "peer": true,
73 | "dependencies": {
74 | "@vue/compiler-dom": "3.2.31",
75 | "@vue/shared": "3.2.31"
76 | }
77 | },
78 | "node_modules/@vue/devtools-api": {
79 | "version": "6.0.12",
80 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.0.12.tgz",
81 | "integrity": "sha512-iO/4FIezHKXhiDBdKySCvJVh8/mZPxHpiQrTy+PXVqJZgpTPTdHy4q8GXulaY+UKEagdkBb0onxNQZ0LNiqVhw=="
82 | },
83 | "node_modules/@vue/reactivity": {
84 | "version": "3.2.31",
85 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.31.tgz",
86 | "integrity": "sha512-HVr0l211gbhpEKYr2hYe7hRsV91uIVGFYNHj73njbARVGHQvIojkImKMaZNDdoDZOIkMsBc9a1sMqR+WZwfSCw==",
87 | "peer": true,
88 | "dependencies": {
89 | "@vue/shared": "3.2.31"
90 | }
91 | },
92 | "node_modules/@vue/reactivity-transform": {
93 | "version": "3.2.31",
94 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz",
95 | "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==",
96 | "peer": true,
97 | "dependencies": {
98 | "@babel/parser": "^7.16.4",
99 | "@vue/compiler-core": "3.2.31",
100 | "@vue/shared": "3.2.31",
101 | "estree-walker": "^2.0.2",
102 | "magic-string": "^0.25.7"
103 | }
104 | },
105 | "node_modules/@vue/runtime-core": {
106 | "version": "3.2.31",
107 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.31.tgz",
108 | "integrity": "sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==",
109 | "peer": true,
110 | "dependencies": {
111 | "@vue/reactivity": "3.2.31",
112 | "@vue/shared": "3.2.31"
113 | }
114 | },
115 | "node_modules/@vue/runtime-dom": {
116 | "version": "3.2.31",
117 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz",
118 | "integrity": "sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==",
119 | "peer": true,
120 | "dependencies": {
121 | "@vue/runtime-core": "3.2.31",
122 | "@vue/shared": "3.2.31",
123 | "csstype": "^2.6.8"
124 | }
125 | },
126 | "node_modules/@vue/server-renderer": {
127 | "version": "3.2.31",
128 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.31.tgz",
129 | "integrity": "sha512-8CN3Zj2HyR2LQQBHZ61HexF5NReqngLT3oahyiVRfSSvak+oAvVmu8iNLSu6XR77Ili2AOpnAt1y8ywjjqtmkg==",
130 | "peer": true,
131 | "dependencies": {
132 | "@vue/compiler-ssr": "3.2.31",
133 | "@vue/shared": "3.2.31"
134 | },
135 | "peerDependencies": {
136 | "vue": "3.2.31"
137 | }
138 | },
139 | "node_modules/@vue/shared": {
140 | "version": "3.2.31",
141 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz",
142 | "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==",
143 | "peer": true
144 | },
145 | "node_modules/ansi-regex": {
146 | "version": "5.0.1",
147 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
148 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
149 | "engines": {
150 | "node": ">=8"
151 | }
152 | },
153 | "node_modules/ansi-styles": {
154 | "version": "4.3.0",
155 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
156 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
157 | "dependencies": {
158 | "color-convert": "^2.0.1"
159 | },
160 | "engines": {
161 | "node": ">=8"
162 | },
163 | "funding": {
164 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
165 | }
166 | },
167 | "node_modules/chalk": {
168 | "version": "4.1.2",
169 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
170 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
171 | "dependencies": {
172 | "ansi-styles": "^4.1.0",
173 | "supports-color": "^7.1.0"
174 | },
175 | "engines": {
176 | "node": ">=10"
177 | },
178 | "funding": {
179 | "url": "https://github.com/chalk/chalk?sponsor=1"
180 | }
181 | },
182 | "node_modules/chalk/node_modules/supports-color": {
183 | "version": "7.2.0",
184 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
185 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
186 | "dependencies": {
187 | "has-flag": "^4.0.0"
188 | },
189 | "engines": {
190 | "node": ">=8"
191 | }
192 | },
193 | "node_modules/cliui": {
194 | "version": "7.0.4",
195 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
196 | "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
197 | "dependencies": {
198 | "string-width": "^4.2.0",
199 | "strip-ansi": "^6.0.0",
200 | "wrap-ansi": "^7.0.0"
201 | }
202 | },
203 | "node_modules/color-convert": {
204 | "version": "2.0.1",
205 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
206 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
207 | "dependencies": {
208 | "color-name": "~1.1.4"
209 | },
210 | "engines": {
211 | "node": ">=7.0.0"
212 | }
213 | },
214 | "node_modules/color-name": {
215 | "version": "1.1.4",
216 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
217 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
218 | },
219 | "node_modules/concurrently": {
220 | "version": "7.0.0",
221 | "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.0.0.tgz",
222 | "integrity": "sha512-WKM7PUsI8wyXpF80H+zjHP32fsgsHNQfPLw/e70Z5dYkV7hF+rf8q3D+ScWJIEr57CpkO3OWBko6hwhQLPR8Pw==",
223 | "dependencies": {
224 | "chalk": "^4.1.0",
225 | "date-fns": "^2.16.1",
226 | "lodash": "^4.17.21",
227 | "rxjs": "^6.6.3",
228 | "spawn-command": "^0.0.2-1",
229 | "supports-color": "^8.1.0",
230 | "tree-kill": "^1.2.2",
231 | "yargs": "^16.2.0"
232 | },
233 | "bin": {
234 | "concurrently": "dist/bin/concurrently.js"
235 | },
236 | "engines": {
237 | "node": "^12.20.0 || ^14.13.0 || >=16.0.0"
238 | }
239 | },
240 | "node_modules/csstype": {
241 | "version": "2.6.19",
242 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.19.tgz",
243 | "integrity": "sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==",
244 | "peer": true
245 | },
246 | "node_modules/date-fns": {
247 | "version": "2.28.0",
248 | "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz",
249 | "integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw==",
250 | "engines": {
251 | "node": ">=0.11"
252 | },
253 | "funding": {
254 | "type": "opencollective",
255 | "url": "https://opencollective.com/date-fns"
256 | }
257 | },
258 | "node_modules/emoji-regex": {
259 | "version": "8.0.0",
260 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
261 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
262 | },
263 | "node_modules/escalade": {
264 | "version": "3.1.1",
265 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
266 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
267 | "engines": {
268 | "node": ">=6"
269 | }
270 | },
271 | "node_modules/estree-walker": {
272 | "version": "2.0.2",
273 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
274 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
275 | "peer": true
276 | },
277 | "node_modules/get-caller-file": {
278 | "version": "2.0.5",
279 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
280 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
281 | "engines": {
282 | "node": "6.* || 8.* || >= 10.*"
283 | }
284 | },
285 | "node_modules/has-flag": {
286 | "version": "4.0.0",
287 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
288 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
289 | "engines": {
290 | "node": ">=8"
291 | }
292 | },
293 | "node_modules/is-fullwidth-code-point": {
294 | "version": "3.0.0",
295 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
296 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
297 | "engines": {
298 | "node": ">=8"
299 | }
300 | },
301 | "node_modules/lodash": {
302 | "version": "4.17.21",
303 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
304 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
305 | },
306 | "node_modules/magic-string": {
307 | "version": "0.25.7",
308 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
309 | "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
310 | "peer": true,
311 | "dependencies": {
312 | "sourcemap-codec": "^1.4.4"
313 | }
314 | },
315 | "node_modules/nanoid": {
316 | "version": "3.3.1",
317 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz",
318 | "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==",
319 | "peer": true,
320 | "bin": {
321 | "nanoid": "bin/nanoid.cjs"
322 | },
323 | "engines": {
324 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
325 | }
326 | },
327 | "node_modules/picocolors": {
328 | "version": "1.0.0",
329 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
330 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
331 | "peer": true
332 | },
333 | "node_modules/postcss": {
334 | "version": "8.4.6",
335 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
336 | "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
337 | "peer": true,
338 | "dependencies": {
339 | "nanoid": "^3.2.0",
340 | "picocolors": "^1.0.0",
341 | "source-map-js": "^1.0.2"
342 | },
343 | "engines": {
344 | "node": "^10 || ^12 || >=14"
345 | },
346 | "funding": {
347 | "type": "opencollective",
348 | "url": "https://opencollective.com/postcss/"
349 | }
350 | },
351 | "node_modules/require-directory": {
352 | "version": "2.1.1",
353 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
354 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
355 | "engines": {
356 | "node": ">=0.10.0"
357 | }
358 | },
359 | "node_modules/rxjs": {
360 | "version": "6.6.7",
361 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
362 | "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
363 | "dependencies": {
364 | "tslib": "^1.9.0"
365 | },
366 | "engines": {
367 | "npm": ">=2.0.0"
368 | }
369 | },
370 | "node_modules/source-map": {
371 | "version": "0.6.1",
372 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
373 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
374 | "peer": true,
375 | "engines": {
376 | "node": ">=0.10.0"
377 | }
378 | },
379 | "node_modules/source-map-js": {
380 | "version": "1.0.2",
381 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
382 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
383 | "peer": true,
384 | "engines": {
385 | "node": ">=0.10.0"
386 | }
387 | },
388 | "node_modules/sourcemap-codec": {
389 | "version": "1.4.8",
390 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
391 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
392 | "peer": true
393 | },
394 | "node_modules/spawn-command": {
395 | "version": "0.0.2-1",
396 | "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
397 | "integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A="
398 | },
399 | "node_modules/string-width": {
400 | "version": "4.2.3",
401 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
402 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
403 | "dependencies": {
404 | "emoji-regex": "^8.0.0",
405 | "is-fullwidth-code-point": "^3.0.0",
406 | "strip-ansi": "^6.0.1"
407 | },
408 | "engines": {
409 | "node": ">=8"
410 | }
411 | },
412 | "node_modules/strip-ansi": {
413 | "version": "6.0.1",
414 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
415 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
416 | "dependencies": {
417 | "ansi-regex": "^5.0.1"
418 | },
419 | "engines": {
420 | "node": ">=8"
421 | }
422 | },
423 | "node_modules/supports-color": {
424 | "version": "8.1.1",
425 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
426 | "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
427 | "dependencies": {
428 | "has-flag": "^4.0.0"
429 | },
430 | "engines": {
431 | "node": ">=10"
432 | },
433 | "funding": {
434 | "url": "https://github.com/chalk/supports-color?sponsor=1"
435 | }
436 | },
437 | "node_modules/tree-kill": {
438 | "version": "1.2.2",
439 | "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
440 | "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==",
441 | "bin": {
442 | "tree-kill": "cli.js"
443 | }
444 | },
445 | "node_modules/tslib": {
446 | "version": "1.14.1",
447 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
448 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
449 | },
450 | "node_modules/vue": {
451 | "version": "3.2.31",
452 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.31.tgz",
453 | "integrity": "sha512-odT3W2tcffTiQCy57nOT93INw1auq5lYLLYtWpPYQQYQOOdHiqFct9Xhna6GJ+pJQaF67yZABraH47oywkJgFw==",
454 | "peer": true,
455 | "dependencies": {
456 | "@vue/compiler-dom": "3.2.31",
457 | "@vue/compiler-sfc": "3.2.31",
458 | "@vue/runtime-dom": "3.2.31",
459 | "@vue/server-renderer": "3.2.31",
460 | "@vue/shared": "3.2.31"
461 | }
462 | },
463 | "node_modules/vue-router": {
464 | "version": "4.0.12",
465 | "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.0.12.tgz",
466 | "integrity": "sha512-CPXvfqe+mZLB1kBWssssTiWg4EQERyqJZes7USiqfW9B5N2x+nHlnsM1D3b5CaJ6qgCvMmYJnz+G0iWjNCvXrg==",
467 | "dependencies": {
468 | "@vue/devtools-api": "^6.0.0-beta.18"
469 | },
470 | "peerDependencies": {
471 | "vue": "^3.0.0"
472 | }
473 | },
474 | "node_modules/wrap-ansi": {
475 | "version": "7.0.0",
476 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
477 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
478 | "dependencies": {
479 | "ansi-styles": "^4.0.0",
480 | "string-width": "^4.1.0",
481 | "strip-ansi": "^6.0.0"
482 | },
483 | "engines": {
484 | "node": ">=10"
485 | },
486 | "funding": {
487 | "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
488 | }
489 | },
490 | "node_modules/y18n": {
491 | "version": "5.0.8",
492 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
493 | "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
494 | "engines": {
495 | "node": ">=10"
496 | }
497 | },
498 | "node_modules/yargs": {
499 | "version": "16.2.0",
500 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
501 | "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
502 | "dependencies": {
503 | "cliui": "^7.0.2",
504 | "escalade": "^3.1.1",
505 | "get-caller-file": "^2.0.5",
506 | "require-directory": "^2.1.1",
507 | "string-width": "^4.2.0",
508 | "y18n": "^5.0.5",
509 | "yargs-parser": "^20.2.2"
510 | },
511 | "engines": {
512 | "node": ">=10"
513 | }
514 | },
515 | "node_modules/yargs-parser": {
516 | "version": "20.2.9",
517 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
518 | "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
519 | "engines": {
520 | "node": ">=10"
521 | }
522 | }
523 | },
524 | "dependencies": {
525 | "@babel/parser": {
526 | "version": "7.17.3",
527 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz",
528 | "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==",
529 | "peer": true
530 | },
531 | "@vue/compiler-core": {
532 | "version": "3.2.31",
533 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz",
534 | "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==",
535 | "peer": true,
536 | "requires": {
537 | "@babel/parser": "^7.16.4",
538 | "@vue/shared": "3.2.31",
539 | "estree-walker": "^2.0.2",
540 | "source-map": "^0.6.1"
541 | }
542 | },
543 | "@vue/compiler-dom": {
544 | "version": "3.2.31",
545 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz",
546 | "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==",
547 | "peer": true,
548 | "requires": {
549 | "@vue/compiler-core": "3.2.31",
550 | "@vue/shared": "3.2.31"
551 | }
552 | },
553 | "@vue/compiler-sfc": {
554 | "version": "3.2.31",
555 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz",
556 | "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==",
557 | "peer": true,
558 | "requires": {
559 | "@babel/parser": "^7.16.4",
560 | "@vue/compiler-core": "3.2.31",
561 | "@vue/compiler-dom": "3.2.31",
562 | "@vue/compiler-ssr": "3.2.31",
563 | "@vue/reactivity-transform": "3.2.31",
564 | "@vue/shared": "3.2.31",
565 | "estree-walker": "^2.0.2",
566 | "magic-string": "^0.25.7",
567 | "postcss": "^8.1.10",
568 | "source-map": "^0.6.1"
569 | }
570 | },
571 | "@vue/compiler-ssr": {
572 | "version": "3.2.31",
573 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz",
574 | "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==",
575 | "peer": true,
576 | "requires": {
577 | "@vue/compiler-dom": "3.2.31",
578 | "@vue/shared": "3.2.31"
579 | }
580 | },
581 | "@vue/devtools-api": {
582 | "version": "6.0.12",
583 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.0.12.tgz",
584 | "integrity": "sha512-iO/4FIezHKXhiDBdKySCvJVh8/mZPxHpiQrTy+PXVqJZgpTPTdHy4q8GXulaY+UKEagdkBb0onxNQZ0LNiqVhw=="
585 | },
586 | "@vue/reactivity": {
587 | "version": "3.2.31",
588 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.31.tgz",
589 | "integrity": "sha512-HVr0l211gbhpEKYr2hYe7hRsV91uIVGFYNHj73njbARVGHQvIojkImKMaZNDdoDZOIkMsBc9a1sMqR+WZwfSCw==",
590 | "peer": true,
591 | "requires": {
592 | "@vue/shared": "3.2.31"
593 | }
594 | },
595 | "@vue/reactivity-transform": {
596 | "version": "3.2.31",
597 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz",
598 | "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==",
599 | "peer": true,
600 | "requires": {
601 | "@babel/parser": "^7.16.4",
602 | "@vue/compiler-core": "3.2.31",
603 | "@vue/shared": "3.2.31",
604 | "estree-walker": "^2.0.2",
605 | "magic-string": "^0.25.7"
606 | }
607 | },
608 | "@vue/runtime-core": {
609 | "version": "3.2.31",
610 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.31.tgz",
611 | "integrity": "sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==",
612 | "peer": true,
613 | "requires": {
614 | "@vue/reactivity": "3.2.31",
615 | "@vue/shared": "3.2.31"
616 | }
617 | },
618 | "@vue/runtime-dom": {
619 | "version": "3.2.31",
620 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz",
621 | "integrity": "sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==",
622 | "peer": true,
623 | "requires": {
624 | "@vue/runtime-core": "3.2.31",
625 | "@vue/shared": "3.2.31",
626 | "csstype": "^2.6.8"
627 | }
628 | },
629 | "@vue/server-renderer": {
630 | "version": "3.2.31",
631 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.31.tgz",
632 | "integrity": "sha512-8CN3Zj2HyR2LQQBHZ61HexF5NReqngLT3oahyiVRfSSvak+oAvVmu8iNLSu6XR77Ili2AOpnAt1y8ywjjqtmkg==",
633 | "peer": true,
634 | "requires": {
635 | "@vue/compiler-ssr": "3.2.31",
636 | "@vue/shared": "3.2.31"
637 | }
638 | },
639 | "@vue/shared": {
640 | "version": "3.2.31",
641 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz",
642 | "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==",
643 | "peer": true
644 | },
645 | "ansi-regex": {
646 | "version": "5.0.1",
647 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
648 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
649 | },
650 | "ansi-styles": {
651 | "version": "4.3.0",
652 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
653 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
654 | "requires": {
655 | "color-convert": "^2.0.1"
656 | }
657 | },
658 | "chalk": {
659 | "version": "4.1.2",
660 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
661 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
662 | "requires": {
663 | "ansi-styles": "^4.1.0",
664 | "supports-color": "^7.1.0"
665 | },
666 | "dependencies": {
667 | "supports-color": {
668 | "version": "7.2.0",
669 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
670 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
671 | "requires": {
672 | "has-flag": "^4.0.0"
673 | }
674 | }
675 | }
676 | },
677 | "cliui": {
678 | "version": "7.0.4",
679 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
680 | "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
681 | "requires": {
682 | "string-width": "^4.2.0",
683 | "strip-ansi": "^6.0.0",
684 | "wrap-ansi": "^7.0.0"
685 | }
686 | },
687 | "color-convert": {
688 | "version": "2.0.1",
689 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
690 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
691 | "requires": {
692 | "color-name": "~1.1.4"
693 | }
694 | },
695 | "color-name": {
696 | "version": "1.1.4",
697 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
698 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
699 | },
700 | "concurrently": {
701 | "version": "7.0.0",
702 | "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.0.0.tgz",
703 | "integrity": "sha512-WKM7PUsI8wyXpF80H+zjHP32fsgsHNQfPLw/e70Z5dYkV7hF+rf8q3D+ScWJIEr57CpkO3OWBko6hwhQLPR8Pw==",
704 | "requires": {
705 | "chalk": "^4.1.0",
706 | "date-fns": "^2.16.1",
707 | "lodash": "^4.17.21",
708 | "rxjs": "^6.6.3",
709 | "spawn-command": "^0.0.2-1",
710 | "supports-color": "^8.1.0",
711 | "tree-kill": "^1.2.2",
712 | "yargs": "^16.2.0"
713 | }
714 | },
715 | "csstype": {
716 | "version": "2.6.19",
717 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.19.tgz",
718 | "integrity": "sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==",
719 | "peer": true
720 | },
721 | "date-fns": {
722 | "version": "2.28.0",
723 | "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz",
724 | "integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw=="
725 | },
726 | "emoji-regex": {
727 | "version": "8.0.0",
728 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
729 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
730 | },
731 | "escalade": {
732 | "version": "3.1.1",
733 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
734 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
735 | },
736 | "estree-walker": {
737 | "version": "2.0.2",
738 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
739 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
740 | "peer": true
741 | },
742 | "get-caller-file": {
743 | "version": "2.0.5",
744 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
745 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
746 | },
747 | "has-flag": {
748 | "version": "4.0.0",
749 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
750 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
751 | },
752 | "is-fullwidth-code-point": {
753 | "version": "3.0.0",
754 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
755 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
756 | },
757 | "lodash": {
758 | "version": "4.17.21",
759 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
760 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
761 | },
762 | "magic-string": {
763 | "version": "0.25.7",
764 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
765 | "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
766 | "peer": true,
767 | "requires": {
768 | "sourcemap-codec": "^1.4.4"
769 | }
770 | },
771 | "nanoid": {
772 | "version": "3.3.1",
773 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz",
774 | "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==",
775 | "peer": true
776 | },
777 | "picocolors": {
778 | "version": "1.0.0",
779 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
780 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
781 | "peer": true
782 | },
783 | "postcss": {
784 | "version": "8.4.6",
785 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
786 | "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
787 | "peer": true,
788 | "requires": {
789 | "nanoid": "^3.2.0",
790 | "picocolors": "^1.0.0",
791 | "source-map-js": "^1.0.2"
792 | }
793 | },
794 | "require-directory": {
795 | "version": "2.1.1",
796 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
797 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
798 | },
799 | "rxjs": {
800 | "version": "6.6.7",
801 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
802 | "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
803 | "requires": {
804 | "tslib": "^1.9.0"
805 | }
806 | },
807 | "source-map": {
808 | "version": "0.6.1",
809 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
810 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
811 | "peer": true
812 | },
813 | "source-map-js": {
814 | "version": "1.0.2",
815 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
816 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
817 | "peer": true
818 | },
819 | "sourcemap-codec": {
820 | "version": "1.4.8",
821 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
822 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
823 | "peer": true
824 | },
825 | "spawn-command": {
826 | "version": "0.0.2-1",
827 | "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
828 | "integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A="
829 | },
830 | "string-width": {
831 | "version": "4.2.3",
832 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
833 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
834 | "requires": {
835 | "emoji-regex": "^8.0.0",
836 | "is-fullwidth-code-point": "^3.0.0",
837 | "strip-ansi": "^6.0.1"
838 | }
839 | },
840 | "strip-ansi": {
841 | "version": "6.0.1",
842 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
843 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
844 | "requires": {
845 | "ansi-regex": "^5.0.1"
846 | }
847 | },
848 | "supports-color": {
849 | "version": "8.1.1",
850 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
851 | "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
852 | "requires": {
853 | "has-flag": "^4.0.0"
854 | }
855 | },
856 | "tree-kill": {
857 | "version": "1.2.2",
858 | "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
859 | "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A=="
860 | },
861 | "tslib": {
862 | "version": "1.14.1",
863 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
864 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
865 | },
866 | "vue": {
867 | "version": "3.2.31",
868 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.31.tgz",
869 | "integrity": "sha512-odT3W2tcffTiQCy57nOT93INw1auq5lYLLYtWpPYQQYQOOdHiqFct9Xhna6GJ+pJQaF67yZABraH47oywkJgFw==",
870 | "peer": true,
871 | "requires": {
872 | "@vue/compiler-dom": "3.2.31",
873 | "@vue/compiler-sfc": "3.2.31",
874 | "@vue/runtime-dom": "3.2.31",
875 | "@vue/server-renderer": "3.2.31",
876 | "@vue/shared": "3.2.31"
877 | }
878 | },
879 | "vue-router": {
880 | "version": "4.0.12",
881 | "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.0.12.tgz",
882 | "integrity": "sha512-CPXvfqe+mZLB1kBWssssTiWg4EQERyqJZes7USiqfW9B5N2x+nHlnsM1D3b5CaJ6qgCvMmYJnz+G0iWjNCvXrg==",
883 | "requires": {
884 | "@vue/devtools-api": "^6.0.0-beta.18"
885 | }
886 | },
887 | "wrap-ansi": {
888 | "version": "7.0.0",
889 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
890 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
891 | "requires": {
892 | "ansi-styles": "^4.0.0",
893 | "string-width": "^4.1.0",
894 | "strip-ansi": "^6.0.0"
895 | }
896 | },
897 | "y18n": {
898 | "version": "5.0.8",
899 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
900 | "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA=="
901 | },
902 | "yargs": {
903 | "version": "16.2.0",
904 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
905 | "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
906 | "requires": {
907 | "cliui": "^7.0.2",
908 | "escalade": "^3.1.1",
909 | "get-caller-file": "^2.0.5",
910 | "require-directory": "^2.1.1",
911 | "string-width": "^4.2.0",
912 | "y18n": "^5.0.5",
913 | "yargs-parser": "^20.2.2"
914 | }
915 | },
916 | "yargs-parser": {
917 | "version": "20.2.9",
918 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
919 | "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w=="
920 | }
921 | }
922 | }
923 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "package",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "concurrently \"cd server && npm start\" \"cd view && npm start\" \"cd sendmessage && npm start\""
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "concurrently": "^7.0.0"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/sendmessage/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "BOT_TOKEN": "Input your bot token id."
3 | }
4 |
--------------------------------------------------------------------------------
/sendmessage/index.js:
--------------------------------------------------------------------------------
1 | const Discord = require("discord.js");
2 | const config = require("./config.json");
3 | const {
4 | Client,
5 | Intents,
6 | MessageEmbed,
7 | MessageActionRow,
8 | MessageButton,
9 | } = require("discord.js");
10 |
11 | const client = new Client({
12 | intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES],
13 | });
14 | const letsGo = new MessageActionRow().addComponents(
15 | new MessageButton()
16 | .setCustomId("letsgoButton")
17 | .setLabel("Let's go!")
18 | .setStyle("PRIMARY")
19 | );
20 |
21 | const RunApp = new MessageEmbed()
22 | .setColor("#0099ff")
23 | .setTitle("Assign role to your nft")
24 | .setURL("http://localhost:8080/")
25 | .setAuthor(
26 | "Love Tom",
27 | "https://i.imgur.com/AfFp7pu.png",
28 | "http://localhost:8080"
29 | )
30 | .setDescription(
31 | "This is a discord bot, assign role to user by nft's attribute."
32 | )
33 | .setThumbnail("https://i.imgur.com/AfFp7pu.png")
34 | .setTimestamp()
35 | .setFooter("Thanks for your using.", "https://i.imgur.com/AfFp7pu.png");
36 |
37 | client.on("ready", () => {
38 | client.user.setActivity(`on ${client.guilds.cache.size} servers`);
39 | console.log(
40 | `Ready to serve on ${client.guilds.cache.size} servers, for ${client.users.cache.size} users.`
41 | );
42 | });
43 |
44 | client.on("guildCreate", (guild) => {
45 | console.log("Joined a new guild: " + guild);
46 | //Your other stuff like adding to guildArray
47 | guild.channels
48 | .create("nft-checking", { reason: "Needed a cool new channel" })
49 | .then(function (res) {
50 | console.log(res);
51 | //res.send({ embeds: [RunApp] });
52 | res.send({ content: "NFT Checking", components: [letsGo] });
53 | })
54 | .catch(console.error);
55 | });
56 | client.on("guildMemberAdd", function (member) {
57 | console.log(`a user joins a guild: ${member.tag}`);
58 | });
59 |
60 | client.on("interactionCreate", async (interaction) => {
61 | if (!interaction.isButton()) return;
62 | console.log(interaction);
63 |
64 | if (interaction.customId == "letsgoButton") {
65 | // console.log("yes, it");
66 | // interaction.message.
67 | console.log("Guild => ", interaction.guildId);
68 | console.log("channel => ", interaction.channelId);
69 | console.log("User => ", interaction.user.id, interaction.user.username);
70 |
71 | var url =
72 | "http://localhost:8080/?guild=" +
73 | interaction.guildId +
74 | "&channel=" +
75 | interaction.channelId +
76 | "&user=" +
77 | interaction.user.id;
78 | RunApp.setURL(url);
79 |
80 | await interaction.reply({
81 | content:
82 | "Guild: " +
83 | interaction.guildId +
84 | ", Channel: " +
85 | interaction.channelId +
86 | " , " +
87 | "User: " +
88 | interaction.user.id,
89 | embeds: [RunApp],
90 | });
91 | }
92 | });
93 |
94 | // guildMemberAvailable
95 | /* Emitted whenever a member becomes available in a large guild.
96 | PARAMETER TYPE DESCRIPTION
97 | member GuildMember The member that became available */
98 | client.on("guildMemberAvailable", function (member) {
99 | console.log(`member becomes available in a large guild: ${member.tag}`);
100 | });
101 | client.on("guildUnavailable", function (guild) {
102 | console.error(
103 | `a guild becomes unavailable, likely due to a server outage: ${guild}`
104 | );
105 | });
106 |
107 | client.login(config.BOT_TOKEN);
108 | console.log("Discord server is running.");
109 |
110 | const prefix = "!";
111 | client.on("messageCreate", function (message) {
112 | let guild = message.guild;
113 | if (message.author.bot) return;
114 | if (!message.content.startsWith(prefix)) return;
115 |
116 | const commandBody = message.content.slice(prefix.length);
117 | const args = commandBody.split(" ");
118 | const command = args.shift().toLowerCase();
119 | let role = "";
120 | if (command === "ping") {
121 | const timeTaken = Date.now() - message.createdTimestamp;
122 | message.reply(`Pong! This message had a latency of ${timeTaken}ms.`);
123 | console.log("ping command is called.");
124 | } else if (command === "sum") {
125 | const numArgs = args.map((x) => parseFloat(x));
126 | const sum = numArgs.reduce((counter, x) => (counter += x));
127 | message.reply(`The sum of all the arguments you provided is ${sum}!`);
128 | } else if (command === "channel") {
129 | // Create a new text channel
130 | guild.channels
131 | .create("New channel", { reason: "Needed a cool new channel" })
132 | .then((channel) => {
133 | console.log;
134 | channel.send(channel.name + " channel created!");
135 | })
136 | .catch(console.error);
137 | } else if (command === "red") {
138 | role = message.member.guild.roles.cache.find(
139 | (role) => role.name === "Red"
140 | );
141 | } else if (command === "green") {
142 | role = message.member.guild.roles.cache.find(
143 | (role) => role.name === "Green"
144 | );
145 | } else if (command === "yellow") {
146 | role = message.member.guild.roles.cache.find(
147 | (role) => role.name === "Yellow"
148 | );
149 | } else if (command === "member") {
150 | role = message.member.guild.roles.cache.find(
151 | (role) => role.name === "member"
152 | );
153 | }
154 | if (role) {
155 | message.guild.members.cache.get(message.author.id).roles.add(role);
156 | message.reply(`${role} role added to ${message.author.username}!`);
157 | }
158 | });
159 |
--------------------------------------------------------------------------------
/sendmessage/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sendmessage",
3 | "version": "1.0.0",
4 | "description": "Sending message to discord bot",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "node index.js"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "api": "^4.2.0",
14 | "chalk": "^5.0.0",
15 | "discord-input": "^1.1.3",
16 | "discord-rpc": "^4.0.1",
17 | "discord.js": "^13.6.0",
18 | "message-button": "^1.2.4"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/sendmessage/test.js:
--------------------------------------------------------------------------------
1 | const { MessageActionRow, MessageButton } = require("discord.js");
2 | const Discord = require("discord.js");
3 | const { Client, Intents } = require("discord.js");
4 | const client = new Client({
5 | intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES],
6 | });
7 | client.on("interactionCreate", async (interaction) => {
8 | if (!interaction.isCommand()) return;
9 |
10 | if (interaction.commandName === "ping") {
11 | const row = new MessageActionRow().addComponents(
12 | new MessageButton()
13 | .setCustomId("primary")
14 | .setLabel("Primary")
15 | .setStyle("PRIMARY")
16 | );
17 |
18 | await interaction.reply({ content: "Pong!", components: [row] });
19 | }
20 | });
21 |
22 | client.login("OTQ2ODA1OTU2MjM3NDkyMjY0.YhkDwg.tO2BHkl8WOMabBBSs3w5L-t77m0");
23 |
--------------------------------------------------------------------------------
/server/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "package",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "nodemon server.js"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "api": "^4.2.0",
14 | "body-parser": "^1.19.1",
15 | "concurrently": "^7.0.0",
16 | "cors": "^2.8.5",
17 | "discord": "^0.8.2",
18 | "express": "^4.17.2",
19 | "nodemon": "^2.0.15"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/server/routes.js:
--------------------------------------------------------------------------------
1 | const express = require("express");
2 | const app = express();
3 | const sdk = require("api")("@opensea/v1.0#dyu8zkzh9hve9");
4 |
5 | var {
6 | Client,
7 | Intents,
8 | MessageEmbed,
9 | MessageAttachment,
10 | MessageActionRow,
11 | MessageButton,
12 | } = require("discord.js");
13 | var client = new Client({
14 | intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES],
15 | });
16 |
17 | app.post("/collection", async (request, response) => {
18 | console.log("ServerInfo:");
19 | // assign role to discord
20 | var guildID = request.body.guild;
21 | var userID = request.body.user;
22 | var property = request.body.properties;
23 | console.log("Guild id: " + guildID);
24 | console.log("User id: " + userID);
25 | // console.log(channel);
26 | console.log(property);
27 | for (var i = 0; i < property.length; i++) {
28 | var role = await client.guilds.cache
29 | .get(guildID)
30 | .roles.create({ name: property[i].value });
31 | // console.log("Role id: " + role.id);
32 | client.guilds.cache
33 | .get(guildID)
34 | .members.cache.get(userID)
35 | .roles.add(role);
36 | }
37 |
38 | // console.log(client.guilds.cache.get(guildID).members.cache);
39 | // for (var i = 0; i < property.length; i++) {}
40 | // client.guilds.cache
41 | // .get(guildID)
42 | // // .members.cache.get(userID)
43 | // .roles.add(role);
44 |
45 | response.status(200).send("res");
46 | // const role = client.guilds.cache
47 | // .get(request.body.guild)
48 | // .roles.create({ name: "RED", color: "RED" })
49 | // .then(async (res) => {
50 | // client.guilds.cache
51 | // .get(request.body.guild)
52 | // .members.cache.get(request.body.user)
53 | // .roles.add(role);
54 | // });
55 | // console.log(client.guilds.cache.get(guildID).roles);
56 | // sdk["retrieving-a-single-collection"]({
57 | // collection_slug: request.body.collectionname,
58 | // })
59 | // .then(async (res) => {
60 | // console.log(guildID);
61 | // console.log(userID);
62 | // // console.log(request.body.channel);
63 | // // assign role to discord
64 | // const role = await client.guilds.cache
65 | // .get(request.body.guild)
66 | // .roles.create({ name: "RED", color: "RED" });
67 | // client.guilds.cache
68 | // .get(guildID)
69 | // .members.cache.get(userID)
70 | // .roles.add(role);
71 | // response.status(200).send(res);
72 | // })
73 | // .catch((err) => response.status(500).send(err));
74 | });
75 | client.login("Your bot application id");
76 |
77 | module.exports = app;
78 |
--------------------------------------------------------------------------------
/server/server.js:
--------------------------------------------------------------------------------
1 | const express = require('express');
2 | const bodyParser = require('body-parser');
3 | const app = express();
4 | const Router = require("./routes");
5 | const port = 3001;
6 |
7 | app.use(bodyParser.json());
8 | app.use(bodyParser.urlencoded({ extended: true }));
9 | app.use(express.json());
10 |
11 | const cors = require('cors');
12 | const corsOptions = {
13 | origin: 'http://localhost:8080',
14 | credentials: true, //access-control-allow-credentials:true
15 | optionSuccessStatus: 200
16 | }
17 |
18 | app.use(cors(corsOptions));
19 | app.use("/api", Router);
20 |
21 | app.listen(port, () => console.log(`Server Listening on port ${port}`));
--------------------------------------------------------------------------------
/view/README.md:
--------------------------------------------------------------------------------
1 | # discord-bot
2 |
3 | ## Project setup
4 | ```
5 | npm install
6 | ```
7 |
8 | ### Compiles and hot-reloads for development
9 | ```
10 | npm run serve
11 | ```
12 |
13 | ### Compiles and minifies for production
14 | ```
15 | npm run build
16 | ```
17 |
18 | ### Lints and fixes files
19 | ```
20 | npm run lint
21 | ```
22 |
23 | ### Customize configuration
24 | See [Configuration Reference](https://cli.vuejs.org/config/).
25 |
--------------------------------------------------------------------------------
/view/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/view/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "discord-bot",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "serve": "vue-cli-service serve",
7 | "build": "vue-cli-service build",
8 | "lint": "vue-cli-service lint",
9 | "start": "npm run serve"
10 | },
11 | "dependencies": {
12 | "core-js": "^3.6.5",
13 | "view-design": "^4.7.0",
14 | "vue": "^2.6.11",
15 | "web3": "^1.7.1"
16 | },
17 | "devDependencies": {
18 | "@vue/cli-plugin-babel": "~4.5.0",
19 | "@vue/cli-plugin-eslint": "~4.5.0",
20 | "@vue/cli-service": "~4.5.0",
21 | "axios": "^0.25.0",
22 | "babel-eslint": "^10.1.0",
23 | "eslint": "^6.7.2",
24 | "eslint-plugin-vue": "^6.2.2",
25 | "lodash": "^4.17.21",
26 | "vue-template-compiler": "^2.6.11"
27 | },
28 | "eslintConfig": {
29 | "root": true,
30 | "env": {
31 | "node": true
32 | },
33 | "extends": [
34 | "plugin:vue/essential",
35 | "eslint:recommended"
36 | ],
37 | "parserOptions": {
38 | "parser": "babel-eslint"
39 | },
40 | "rules": {}
41 | },
42 | "browserslist": [
43 | "> 1%",
44 | "last 2 versions",
45 | "not dead"
46 | ]
47 | }
48 |
--------------------------------------------------------------------------------
/view/public/css/main.css:
--------------------------------------------------------------------------------
1 | /*=====================
2 | 1.COMMON
3 | 2.SIDEMENU
4 | 3.HEADER
5 | 4.HOME
6 | 5.ADD MONEY
7 | 6.INVOICE
8 | 7.AUDIT
9 | 8.FOOTER
10 | 9.LOGIN
11 | 10.REGISTRATION
12 | 11.USER PROFILE EDIT
13 | 12.DASHBOARD
14 | 13.ADMIN OVERVEIW
15 | 14.ADMIN
16 | 15.USER
17 | 16.NEW HOME
18 | 17.FOOTER
19 | 18.MENU
20 | =====================*/
21 |
22 |
23 |
24 |
25 | /*========= 1.COMMON ========*/
26 | p {
27 | font-size: 1rem;
28 | line-height: 24px;
29 | }
30 | section {
31 | position: relative;
32 | }
33 | h1, h2, h3, h4, h5, h6,
34 | .h1, .h2, .h3, .h4, .h5, .h5 {
35 | font-weight: bold;
36 | color: #33475c;
37 | margin: 0px;
38 | }
39 |
40 | h1, .h1 {
41 | line-height: 50px;
42 | }
43 |
44 | h2, .h2 {
45 | font-size: 34px;
46 | line-height: 1.3;
47 | }
48 |
49 | h3, .h3 {
50 | font-size: 22px;
51 | line-height: 1.36;
52 | }
53 | a, button {
54 | outline: none;
55 | border: 0;
56 | cursor: pointer;
57 | }
58 | a:hover, button:hover {
59 | text-decoration: none;
60 | }
61 | a:focus, a:active, button:focus, button:active {
62 | outline: 0;
63 | border: 0;
64 | }
65 |
66 | a {
67 | color: #0099ff;
68 | }
69 | a:hover {
70 | color: #0099ff !important;
71 | text-decoration: none;
72 | }
73 | button, input, select, textarea {
74 | font-family: "Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","\5FAE\8F6F\96C5\9ED1",Arial,sans-serif;
75 | }
76 | .l-v-center {
77 | position: absolute;
78 | left: 0;
79 | top: 30%;
80 | -webkit-transform: translateY(-30%);
81 | -ms-transform: translateY(-30%);
82 | transform: translateY(-30%);
83 | width: 100%;
84 | margin: auto;
85 | }
86 |
87 | .container {
88 | max-width: 1220px;
89 | }
90 |
91 | .main-container {
92 | min-height: 100vh;
93 | }
94 |
95 | section, .section-spacer {
96 | position: relative;
97 | }
98 |
99 | .section-spacer {
100 | padding: 83px 0;
101 | position: relative;
102 | }
103 |
104 | .section-header {
105 | margin-bottom: 60px;
106 | }
107 |
108 | .section-title {
109 | margin-bottom: 1rem;
110 | }
111 |
112 | .absolute-bottom {
113 | position: absolute;
114 | bottom: -10px;
115 | }
116 | h1, h2, h3, h4, h5, h6,
117 | .h1, .h2, .h3, .h4, .h5, .h5 {
118 | font-weight: bold;
119 | color: #33475c;
120 | margin: 0px;
121 | }
122 |
123 | h1, .h1 {
124 | line-height: 50px;
125 | }
126 |
127 | h2, .h2 {
128 | font-size: 34px;
129 | line-height: 1.3;
130 | }
131 |
132 | h3, .h3 {
133 | font-size: 22px;
134 | line-height: 1.36;
135 | }
136 | /*
137 | SELF HOSTED FONTS
138 |
139 | @font-face {
140 | font-family: 'HK Grotesk';
141 | src: url("/static/fonts/hk-grotesk/HKGrotesk-Light.woff2") format("woff2"), url("../fonts/hk-grotesk/HKGrotesk-Light.woff") format("woff");
142 | font-weight: 300;
143 | font-style: normal;
144 | }
145 | @font-face {
146 | font-family: 'HK Grotesk';
147 | src: url("/static/fonts/hk-grotesk/HKGrotesk-Bold.woff2") format("woff2"), url("../fonts/hk-grotesk/HKGrotesk-Bold.woff") format("woff");
148 | font-weight: bold;
149 | font-style: normal;
150 | }
151 | @font-face {
152 | font-family: 'HK Grotesk';
153 | src: url("/static/fonts/hk-grotesk/HKGrotesk-Regular.woff2") format("woff2"), url("../fonts/hk-grotesk/HKGrotesk-Regular.woff") format("woff");
154 | font-weight: normal;
155 | font-style: normal;
156 | }
157 | @font-face {
158 | font-family: 'HK Grotesk';
159 | src: url("/static/fonts/hk-grotesk/HKGrotesk-Medium.woff2") format("woff2"), url("../fonts/hk-grotesk/HKGrotesk-Medium.woff") format("woff");
160 | font-weight: 500;
161 | font-style: normal;
162 | }
163 | */
164 | /*
165 | GLOBAL SHARED STYLES
166 | */
167 | body {
168 | margin: 0 auto;
169 | padding: 0px;
170 | background: #f5f5f5;
171 | background: #f5f7fa;
172 | background-color: #f5f7fa !important;
173 | color: rgba(99, 114, 130, 0.9) !important;
174 | font-family: "HK Grotesk", Helvetica, arial, sans-serif !important;
175 | font-weight: 500;
176 | }
177 | img{
178 | display: block;
179 | width: 100%;
180 | }
181 | h1{
182 | font-size: 38px;
183 | }
184 | h2{
185 | font-size: 24px;
186 | }
187 | h3{
188 | font-size: 20px;
189 | }
190 | h4{
191 | font-size: 17px;
192 | }
193 | h1,h2,h3,h4{
194 | font-weight: bold;
195 | margin: 0px;
196 | }
197 | p{
198 | margin: 0px;
199 | }
200 | ul{
201 | padding: 0;
202 | margin: 0px;
203 | }
204 | input, select{
205 | /*border-radius: 0px !important;*/
206 | }
207 | button:focus, input:focus{
208 | outline: none;
209 | box-shadow: none;
210 | }
211 | textarea {
212 | resize: none !important;
213 | }
214 | ._box_shadow {
215 | background: #fff;
216 | /*box-shadow: 0px 2px 28px 0px rgba(48, 48, 48, 0.1);
217 | box-shadow: 0px 2px 18px 0px rgba(186, 212, 247, 0.43);*/
218 | -webkit-box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
219 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
220 | }
221 | ._flex_space{
222 | flex: 1 1;
223 | }
224 | ._bg {
225 | background: #0099ff;
226 | }
227 | ._btn:hover{
228 | background: #0551b7;
229 | }
230 | ._btn {
231 | border: none;
232 | font-size: 14px;
233 | background: #0266ed;
234 | color: #fff;
235 | border-radius: 3px;
236 | transition: .3s all ease;
237 | padding: 3px 11px;
238 | cursor: pointer;
239 | background: #0099ff;
240 | }
241 | ._btn:focus{
242 | outline: none;
243 | border: none;
244 | box-shadow: none;
245 | }
246 | ._con {
247 | padding: 0 80px;
248 | }
249 | ._dis_flex{
250 | display: flex;
251 | }
252 | ._text_overflow{
253 | text-overflow: ellipsis;
254 | white-space: nowrap;
255 | overflow: hidden;
256 | }
257 | ._overflow{
258 | overflow: auto;
259 | }
260 | ._text_right{
261 | text-align: right;
262 | }
263 | ._text {
264 | font-size: 16px;
265 | }
266 | ._title{
267 | font-size: 4rem;
268 | }
269 | ._title2 {
270 | font-size: 2rem;
271 | font-weight: 300;
272 | }
273 | ._title0 {
274 | color: #222;
275 | font-size: 17px;
276 | font-weight: 600;
277 | margin-bottom: 10px;
278 | }
279 | ._title3 {
280 | font-weight: 300;
281 | color: rgba(255,255,255,.7);
282 | font-family: unset;
283 | }
284 | ._text_center{
285 | text-align: center;
286 | }
287 | ._border_color{
288 | border-color:#f3f3f3 !important;
289 | }
290 | ._color {
291 | color: #0266ed;
292 | }
293 | ._border_radious{
294 | border-radius: 3px;
295 | }
296 | ._padd10 {
297 | padding-left: 10px;
298 | padding-right: 10px;
299 | }
300 | ._padd15 {
301 | padding-left: 15px;
302 | padding-right: 15px;
303 | }
304 | ._padd20 {
305 | padding-left: 20px;
306 | padding-right: 20px;
307 | }
308 | ._padd0{
309 | padding: 0px;
310 | }
311 | ._padd_b20{
312 | padding-bottom: 20px;
313 | }
314 | ._padd_b25{
315 | padding-bottom: 25px;
316 | }
317 |
318 | ._p20{
319 | padding: 18px 20px 25px;
320 | }
321 | ._mar_b30{
322 | margin-bottom: 30px;
323 | }
324 | ._mar_top{
325 | margin-top: 35px;
326 | margin-top: 22px;
327 | }
328 | ._row_mar10{
329 | margin-right: -10px;
330 | margin-left: -10px;
331 | }
332 | /*========= 1.COMMON ========*/
333 |
334 | /*========= 2.SIDEMENU ========*/
335 | ._1side_menu_content::-webkit-scrollbar {
336 | width: 5px;
337 | }
338 |
339 | ._1side_menu_content::-webkit-scrollbar-track {
340 | -webkit-box-shadow: inset 0 0 6px #e4f6ff;
341 | box-shadow: inset 0 0 6px #e4f6ff;
342 | }
343 | ._1side_menu_content::-webkit-scrollbar-thumb {
344 | background-color: #2d8cf0;
345 | outline: 1px solid #fff;
346 | }
347 | ._1side_menu {
348 | width: 248px;
349 | position: fixed;
350 | left: 0;
351 | top: 0;
352 | background: #fff;
353 | height: 100vh;
354 | overflow: hidden;
355 | color: #000;
356 | display: flex;
357 | flex-direction: column;
358 | box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
359 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
360 | }
361 | ._1side_menu_logo {
362 | text-align: center;
363 | border-bottom: 1px solid #f4f4f5;
364 | height: 56px;
365 | padding-top: 18px;
366 | }
367 | ._1side_menu_content {
368 | /*height: -moz-calc(100% - (20px + 30px));*/
369 | /* height: -webkit-calc(100% - (20px + 30px)); */
370 | /* height: calc(100% - (20px + 30px)); */
371 | flex: 1 1;
372 | overflow: auto;
373 | }
374 | ._1side_menu_img_name {
375 | margin: 15px 0 0;
376 | }
377 | ._1side_menu_img {
378 | height: 90px;
379 | width: 90px;
380 | border-radius: 50%;
381 | margin: 0 auto;
382 | border: 1px solid #223340;
383 | }
384 | ._1side_menu_name {
385 | font-weight: 600;
386 | text-align: center;
387 | font-size: 19px;
388 | margin: 15px 0 2px;
389 | color: #111113;
390 | }
391 | ._1side_menu_list {
392 | margin-top: 22px;
393 | margin-bottom: 16px;
394 | }
395 | ._1side_menu_list_ul{}
396 | ._1side_menu_list_ul li i {
397 | font-size: 19px;
398 | margin-right: 8px;
399 | }
400 | ._1side_menu_list_ul li a:hover{
401 | color: #dcdcdc;
402 | }
403 | ._1side_menu_list_ul li a {
404 | color: #000000 !important;
405 | display: flex;
406 | font-size: 14px;
407 | cursor: pointer;
408 | padding: 13px 25px;
409 | transition: .2s all ease;
410 | border-right: 2px solid transparent;
411 | }
412 | ._1side_menu_list_ul li {
413 | color: #dcdcdc;
414 | font-size: 14px;
415 | cursor: pointer;
416 | transition: .2s all ease;
417 | }
418 | ._1side_menu_list_ul li:hover{
419 | }
420 | ._1side_menu_list_ul_active {
421 | color: #2d8cf0;
422 | background: #ecf9ff;
423 | }
424 | ._1side_menu_list_ul_active a {
425 | color: #0099ff!important;
426 | border-right: 2px solid #0099ff !important;
427 | }
428 | /*========= 2.SIDEMENU ========*/
429 |
430 |
431 | /*========= 3.HEADER =======*/
432 | .header {
433 | display: flex;
434 | align-items: center;
435 | height: 55px;
436 | position: fixed;
437 | width: 100%;
438 | z-index: 1;
439 | padding-left: 248px;
440 | top: 0px;
441 | left: 0px;
442 | }
443 | ._2menu {
444 | display: flex;
445 | align-items: center;
446 | height: 55px;
447 | width: 100%;
448 | z-index: 11111;
449 | top: 0px;
450 | left: 0px;
451 | background: #fff;
452 | padding: 0 15px 0 2px;
453 | }
454 | ._2menu_logo {
455 | height: 100%;
456 | padding-top: 17px;
457 | border-right: 1px solid #ececec;
458 | padding-right: 3px;
459 | }
460 | ._2menu_logo_pic {
461 | width: 100px;
462 | }
463 | ._2menu_ceta {
464 | flex: 1 1;
465 | padding: 0 26px;
466 | height: 100%;
467 | }
468 | .open_button li{
469 | display: inline-block;
470 | margin:0 10px;
471 | }
472 | .open_button{}
473 | .open_button i {
474 | font-size: 25px;
475 | color: #444;
476 | font-weight: bold;
477 | cursor: pointer;
478 | }
479 | ._2menu_log {
480 | height: 100%;
481 | padding: 13px 0 0 0px;
482 | border-left: 1px solid #ececec;
483 | }
484 | ._2menu_profile_pic {
485 | height: 35px;
486 | width: 35px;
487 | border-radius: 50%;
488 | }
489 | ._2menu_profile {
490 | height: 35px;
491 | width: 35px;
492 | position: relative;
493 | }
494 | ._2menu_profile_active {
495 | background: #0099ff !important;
496 | }
497 | ._2menu_profile_on {
498 | position: absolute;
499 | height: 13px;
500 | width: 12px;
501 | border-radius: 50%;
502 | background: white;
503 | border: 2px solid #ddd;
504 | bottom: 0px;
505 | right: 0px;
506 | }
507 | ._2menu_mess {
508 | position: relative;
509 | width: 19px;
510 | display: inline-block;
511 | }
512 | ._2menu_mess i {
513 | font-size: 19px;
514 | color: #7d7d7d;
515 | }
516 | ._2menu_mess_num {
517 | position: absolute;
518 | top: -9px;
519 | right: -6px;
520 | font-weight: 700;
521 | height: 17px;
522 | width: 17px;
523 | line-height: 16px;
524 | text-align: center;
525 | color: #fff;
526 | font-size: 9px;
527 | border-radius: 50%;
528 | border: 1px solid #fff;
529 | }
530 | ._2menu_ul{}
531 | ._2menu_ul li {
532 | display: inline-block;
533 | vertical-align: middle;
534 | margin-left: 27px;
535 | cursor: pointer;
536 | }
537 | ._2menu_ceta_text i {
538 | position: absolute;
539 | right: 0;
540 | top: 6px;
541 | transition: .3s all ease;
542 | height: 12px;
543 | width: 8px;
544 | }
545 | ._2menu_ul_list {
546 | display: flex;
547 | align-items: center;
548 | }
549 | ._2menu_main_ul_list_ul {
550 | text-align: right;
551 | padding-top: 2px;
552 | }
553 | ._2menu_main_ul_list_ul li{
554 | display: inline-block;
555 | margin-left: 20px;
556 | }
557 | ._2menu_main_ul_list_ul li p:hover{
558 | color: #0099ff;
559 | }
560 | ._2menu_main_ul_list_ul li p {
561 | transition: 0.3s all ease;
562 | cursor: pointer;
563 | align-items: center;
564 | font-size: 14px;
565 | text-transform: uppercase;
566 | font-weight: 600;
567 | text-decoration: none;
568 | }
569 | li.activeclass {
570 | color: #0099ff;
571 | }
572 | /*========= 3.HEADER =======*/
573 |
574 | /*========= 4.HOME =======*/
575 | .content {
576 | padding-top: 80px;
577 | padding-bottom: 100px;
578 | padding-left: 20px;
579 | padding-right: 20px;
580 | }
581 | .home_header:before{
582 | position: absolute;
583 | content: '';
584 | }
585 | .home {
586 |
587 | }
588 | .home_header{
589 | background-position: center center;
590 | -webkit-background-size: cover;
591 | -moz-background-size: cover;
592 | -o-background-size: cover;
593 | background-size: cover;
594 | color: #fff;
595 | height: 100vh;
596 | min-height: 650px;
597 | }
598 | .home_header_main{}
599 | .home_header_logo {
600 | text-align: left;
601 | margin-left: 106px;
602 | padding: 24px 0 16px;
603 | }
604 | .home_header_title {
605 | margin-top: 43px;
606 | }
607 | .home_header_title ._title {
608 | padding: 0 0 13px;
609 | }
610 | .pay_line {
611 | width: 63px;
612 | height: 3px;
613 | background: #2d8cf0;
614 | margin: 0 auto;
615 | }
616 | .home_services_main {
617 | width: 50%;
618 | margin: 19px auto 0;
619 | }
620 | .sub_title{
621 | margin: 21px 0 32px;
622 | }
623 | .home_services_main p {
624 | display: inline-block;
625 | margin: 25px 4px;
626 | }
627 | .home_services_main_btn {
628 | font-weight: 700;
629 | text-transform: uppercase;
630 | border: none;
631 | border-radius: 300px;
632 | font-family: 'Open Sans','Helvetica Neue',Arial,sans-serif;
633 | font-size: 1rem;
634 | line-height: 1.5;
635 | transition: color .15s ease-in-out , background-color .15s ease-in-out , border-color .15s ease-in-out , box-shadow .15s ease-in-out;
636 | padding: 1rem 2rem;
637 | }
638 | .orange_bg:hover {
639 | background: #ee4b28;
640 | color: #fff;
641 | }
642 | .orange_bg {
643 | background-color: #f05f40;
644 | border-color: #f05f40;
645 | color: #fff;
646 | }
647 | .white_bg:hover{
648 | color: #212529;
649 | background-color: #e2e6ea;
650 | border-color: #dae0e5;
651 | }
652 | .white_bg{
653 | color: #212529;
654 | background-color: #fff;
655 | border-color: #fff;
656 | }
657 | .green_bg:hover{
658 | color: #fff;
659 | background-color: #5a6268;
660 | border-color: #545b62;
661 | }
662 | .green_bg{
663 | color: #fff;
664 | background-color: #6c757d;
665 | border-color: #6c757d;
666 | }
667 | .red_bg:hover{
668 | color: #fff;
669 | background-color: #c82333;
670 | border-color: #bd2130;
671 | }
672 | .red_bg{
673 | color: #fff;
674 | background-color: #dc3545;
675 | border-color: #dc3545;
676 | }
677 | .yellow_bg:hover{
678 | background: #d4d40c;
679 | color: #000;
680 | }
681 | .yellow_bg {
682 | background: yellow;
683 | color: #000;
684 | }
685 | .need_section {
686 | background: #f05f40;
687 | color: #fff;
688 | text-align: center;
689 | padding: 53px 0 85px;
690 | }
691 | .service_title {
692 | font-size: 21px;
693 | color: #111;
694 | margin: 7px 0 8px;
695 | }
696 | .need_section ._text {
697 | font-size: 16px;
698 | margin: 34px 0 50px;
699 | }
700 | .service {
701 | padding: 52px 0 17px;
702 | }
703 | .service .need_title {
704 | margin-bottom: 54px;
705 | }
706 | .service_main {
707 | margin-bottom: 35px;
708 | }
709 | .service_icons{}
710 | .service_icons i {
711 | color: #f05f40;
712 | font-size: 69px;
713 | }
714 | /*========= 4.HOME =======*/
715 |
716 | /*========= 5.ADD MONEY =======*/
717 | .addMoney{}
718 | .addMoney ._text {
719 | font-size: 16px;
720 | width: 305px;
721 | text-align: center;
722 | margin: 18px auto 8px;
723 | color: #666;
724 | font-size: 14px;
725 | line-height: 17px;
726 | }
727 | .addMoney_title {
728 | color: #383838;
729 | text-align: center;
730 | }
731 | .addMoney_main {
732 | padding-top: 27px;
733 | }
734 | .addMoney_check:hover {
735 | box-shadow: 0px 5px 51px 3px rgba(48, 48, 48, 0.16);
736 | }
737 | .addMoney_check {
738 | text-align: center;
739 | width: 198px;
740 | padding: 33px 8px;
741 | transition: .3s all ease;
742 | margin: 0 15px;
743 | cursor: pointer;
744 | }
745 | .addMoney_check_img {
746 | height: 92px;
747 | width: auto;
748 | margin: -4px auto 2px;
749 | }
750 | .addMoney_check_text {
751 | font-weight: 600;
752 | color: #333;
753 | }
754 | /*========= 5.ADD MONEY =======*/
755 |
756 | /*========= 6.INVOICE =======*/
757 | .invoice {
758 | padding-top: 25px;
759 | padding-bottom: 24px;
760 | }
761 | .invoice_upload {
762 | border-bottom: 1px solid;
763 | margin-bottom: 22px;
764 | padding-bottom: 16px;
765 | }
766 | .invoice_button {
767 | text-align: right;
768 | }
769 | .invoice_message_box {
770 | padding-bottom: 20px;
771 | }
772 | .invoice_btn {
773 | font-weight: 500;
774 | font-size: 11px;
775 | padding: 6px 19px;
776 | }
777 | /*========= 6.INVOICE =======*/
778 |
779 | /*========= 7.AUDIT =======*/
780 | .audit_list {
781 | padding-top: 15px;
782 | padding-bottom: 5px;
783 | margin-bottom: 25px;
784 | }
785 | .audit{
786 | margin-bottom: 25px;
787 | }
788 | .audit_table{
789 | padding-top: 15px;
790 | padding-bottom: 27px;
791 | overflow: auto;
792 | }
793 | .audit_list_ul_active {
794 | color: #0099ff !important;
795 | background: #ecf4ff;
796 | border-right: 2px solid #0099ff !important;
797 | }
798 | .audit_list_ul_active i {
799 | color: #73a8f1 !important;
800 | }
801 | .audit_list_ul{}
802 | .audit_list_ul li:last-child{
803 | border-bottom: 0px solid #e3edfbd1;
804 | }
805 | .audit_list_ul li:hover{
806 | color: #000;
807 | background: #ecf4ff;
808 | }
809 | .audit_list_ul li:hover i {
810 | color: #73a8f1;
811 | }
812 | .audit_list ._title0{
813 | padding: 0px 15px;
814 | }
815 | .audit_list_ul li {
816 | list-style: none;
817 | font-size: 14px;
818 | color: #444;
819 | border-bottom: 1px solid #e3edfbd1;
820 | padding: 16px 15px;
821 | transition: .2s all ease;
822 | cursor: pointer;
823 | border-right: 2px solid transparent;
824 | }
825 | .audit_list_ul li i {
826 | color: #a7ccff;
827 | font-size: 16px;
828 | transition: .2s all ease;
829 | margin-right: 5px;
830 | }
831 | /*TABLE*/
832 | ._table {
833 | border-collapse: collapse;
834 | width: 100%;
835 | }
836 | ._table tr{}
837 | ._table tr:first-child {
838 | background: #a7ccff;
839 | background: #0099ff;
840 | }
841 | ._table tr:first-child:hover{
842 | background: #0099ff;
843 | }
844 | ._table tr:hover, ._table tr:nth-child(even):hover {
845 | background: #ecf9ff;
846 | }
847 | ._table tr:nth-child(even) {
848 | background: #ececec8c;
849 | }
850 | ._table tr th {
851 | border: 1px solid transparent;
852 | text-align: left;
853 | padding: 8px 13px;
854 | color: #fff;
855 | font-size: 15px;
856 | }
857 | ._table tr td {
858 | border: 1px solid #f3f3f3;
859 | text-align: left;
860 | padding: 8px 13px;
861 | min-width: 103px;
862 | font-size: 15px;
863 | }
864 | /*TABLE*/
865 | /*========= 7.AUDIT =======*/
866 |
867 | /*========= 8.FOOTER =======*/
868 | .footer {
869 | background: #2d8cf0;
870 | color: #fff;
871 | padding: 32px 0 29px;
872 | }
873 | .footer_ul {
874 | text-align: right;
875 | }
876 | .footer_ul li {
877 | list-style: none;
878 | cursor: pointer;
879 | font-size: 14px;
880 | padding: 3px 0px;
881 | transition: .2s all ease;
882 | }
883 | .footer_ul li:hover {
884 | color: #d6d6d6;
885 | padding-right: 10px;
886 | }
887 | .footer_ul2 {
888 | padding-top: 21px;
889 | }
890 | .footer_ul2 li {
891 | display: inline-block;
892 | font-size: 22px;
893 | margin-right: 4px;
894 | cursor: pointer;
895 | }
896 | ._color_blue {
897 | color: blue;
898 | }
899 | ._color_ash {
900 | color: #7de7ff;
901 | }
902 | ._color_dark_blue {
903 | color: white;
904 | }
905 | /*========= 8.FOOTER =======*/
906 |
907 | /*========= 9.LOGIN =======*/
908 | ._3login {
909 | width: 450px;
910 | margin: 0 auto 20px;
911 | position: absolute;
912 | top: 50%;
913 | left: 50%;
914 | transform: translate(-50%, -50%);
915 | background: #fff;
916 | padding: 9px 33px 40px;
917 | }
918 | ._3login_logo {
919 | max-width: 374px;
920 | margin: 33px auto 11px;
921 | }
922 | ._3login_title span{
923 | background: #fff;
924 | padding:0px 10px;
925 | color: #333;
926 | }
927 | ._3login_title {
928 | text-align: center;
929 | border-bottom: 1px solid #ddd;
930 | margin: 0 0 27px;
931 | line-height: 0px;
932 | font-weight: 600;
933 | color: #888;
934 | font-size: 12px;
935 | }
936 | ._3login_form {
937 | margin-top: 63px;
938 | }
939 | ._3login_input_group {
940 | margin-bottom: 30px;
941 | }
942 | ._3login_input_group input{}
943 | ._3login_input_button {
944 | text-align: center;
945 | }
946 | ._3login_input_button button {
947 | padding: 10px 40px;
948 | }
949 | ._3login_forgot {
950 | text-align: right;
951 | padding: 3px 0 0;
952 | }
953 | ._3login_forgot span {
954 | font-size: 12px;
955 | color: #0266ed;
956 | cursor: pointer;
957 | }
958 | ._3login_forgot span:hover{
959 | text-decoration: underline;
960 | }
961 | /*========= 9.LOGIN =======*/
962 |
963 | /*========= 10.REGISTRATION =======*/
964 | .registration {
965 | width: 550px;
966 | margin: 60px auto 50px;
967 | background: #fff;
968 | padding: 9px 33px 40px;
969 | }
970 | .registration_title {
971 | font-weight: 600;
972 | color: #222;
973 | font-size: 13px;
974 | margin: 0 0 5px;
975 | }
976 | /*========= 10.REGISTRATION =======*/
977 | .paddingtopbottom{
978 | padding-top: 11px;
979 | padding-bottom: 11px;
980 | }
981 | .paddingtopbottom p{
982 | font-weight: bold;
983 | }
984 | .green{
985 | color: green;
986 | }
987 |
988 | /*========= 11.USER PROFILE EDIT =======*/
989 | ._2userproEdit{}
990 | ._2userproEdit_main{}
991 | ._2userproEdit_pic{}
992 | ._2userproEdit_img{}
993 | ._2userproEdit_edit{}
994 | ._2userproEdit_details{}
995 | ._2userproEdit_details_all{}
996 | /*========= 11.USER PROFILE EDIT =======*/
997 |
998 | /*========= 12.DASHBOARD =======*/
999 | ._1dashboard {
1000 | padding-top: 18px;
1001 | padding-bottom: 22px;
1002 | }
1003 | ._1dashboard_table {
1004 | padding-top: 16px;
1005 | padding-bottom: 20px;
1006 | }
1007 | ._1dashboard_graph {
1008 | margin-top: 37px;
1009 | }
1010 | ._1dashboard_graph {
1011 | margin-top: 37px;
1012 | padding-top: 17px;
1013 | padding-bottom: 16px;
1014 | }
1015 | ._1dashboard_slider{}
1016 | /*========= 12.DASHBOARD =======*/
1017 |
1018 | /*========= 13.ADMIN OVERVEIW =======*/
1019 | ._1adminOverveiw_card {
1020 | display: flex;
1021 | padding: 20px 14px;
1022 | color: #0099ff !important;
1023 | }
1024 | ._1adminOverveiw_card_left {
1025 | flex: 1 1;
1026 | }
1027 | ._1adminOverveiw_card_right{}
1028 | ._1adminOverveiw_card_right i {
1029 | font-size: 43px;
1030 | }
1031 | ._1adminOverveiw_card_left_num {
1032 | font-weight: 600;
1033 | font-size: 17px;
1034 | margin: 0 0 3px;
1035 | }
1036 | ._1adminOverveiw_bg_four {
1037 | color: #00BCD4;
1038 | }
1039 | ._1adminOverveiw_bg_three {
1040 | color: #FF5722;
1041 | }
1042 | ._1adminOverveiw_bg_two i{
1043 | font-weight: bold;
1044 | }
1045 | ._1adminOverveiw_bg_two {
1046 | color: #009688;
1047 | }
1048 | ._1adminOverveiw_bg_one{
1049 | color: #E91E63;
1050 | }
1051 | ._1adminOverveiw_card_left_title{
1052 | color: #222;
1053 | }
1054 | ._1adminOverveiw_table_recent{}
1055 | ._table_div{}
1056 | ._due {
1057 | background: red;
1058 | color: #fff;
1059 | padding: 3px 7px;
1060 | border-radius: 20px;
1061 | font-size: 11px;
1062 | font-weight: 600;
1063 | cursor: pointer;
1064 | }
1065 | ._action_btn {
1066 | padding: 2px 8px;
1067 | font-weight: bold;
1068 | font-size: 12px;
1069 | }
1070 | .table_pro_img{
1071 | height: 30px;
1072 | width: 30px;
1073 | border-radius: 50%;
1074 | margin-right: 8px;
1075 | }
1076 | ._table_name {
1077 | font-weight: 600;
1078 | color: #383737;
1079 | max-width: 415px;
1080 | display: -webkit-box;
1081 | max-height: 3.2rem;
1082 | -webkit-box-orient: vertical;
1083 | overflow: hidden;
1084 | text-overflow: ellipsis;
1085 | white-space: normal;
1086 | -webkit-line-clamp: 2;
1087 | }
1088 | ._table_pro {
1089 | display: flex;
1090 | align-items: center;
1091 | font-weight: 600;
1092 | color: #383737;
1093 | }
1094 | ._num {
1095 | background: #6da5f3;
1096 | color: #fff;
1097 | font-size: 11px;
1098 | font-weight: 600;
1099 | padding: 2px 9px;
1100 | border-radius: 22px;
1101 | }
1102 | /*========= 13.ADMIN OVERVEIW =======*/
1103 |
1104 | /*========= 14.ADMIN =======*/
1105 | .add_invoice_new{}
1106 | .add_invoice_new_form{
1107 | margin-top: 30px;
1108 | }
1109 | ._paid{
1110 | background: #1ea1f3;
1111 | color: #fff;
1112 | font-size: 11px;
1113 | font-weight: 600;
1114 | padding: 2px 9px;
1115 | border-radius: 22px;
1116 | }
1117 | /*========= 14.ADMIN =======*/
1118 |
1119 | /*========= 15.USER =======*/
1120 | .user_overVeiw{}
1121 | .user_credit_trasection{}
1122 | .OVERVEIW_all{}
1123 | ._debit{
1124 | color: red;
1125 | font-weight: 600;
1126 | }
1127 | ._cridet {
1128 | color: green;
1129 | font-weight: 600;
1130 | }
1131 | .Upload_image{}
1132 | .Upload_image li i {
1133 | font-size: 96px;
1134 | color: green;
1135 | }
1136 | .Upload_image li {
1137 | display: inline-block;
1138 | margin-right: 15px;
1139 | margin-bottom: 15px;
1140 | }
1141 | .Upload_image_img{}
1142 |
1143 | .user_name_text {
1144 | color: #0266ed;
1145 | font-weight: 600;
1146 | font-size: 17px;
1147 | }
1148 | .user_image {
1149 | height: 50px;
1150 | width: 50px;
1151 | border-radius: 50%;
1152 | margin-right: 13px;
1153 | }
1154 | .user_title {
1155 | margin-bottom: 8px;
1156 | }
1157 | .user_title_span {
1158 | font-weight: 600;
1159 | color: #222;
1160 | padding-right: 20px;
1161 | }
1162 | .user_details_all{
1163 | margin-top: 15px;
1164 | }
1165 | /*========= 15.USER =======*/
1166 |
1167 | /*========= 16.NEW HOME =======*/
1168 | /*========= 16.NEW HOME =======*/
1169 |
1170 | /*========= 17.FOOTER =======*/
1171 | footer p{
1172 | font-size: 16px;
1173 | }
1174 | footer a {
1175 | color: #637282;
1176 | }
1177 | footer h5 {
1178 | margin-bottom: 20px;
1179 | }
1180 | footer .list-unstyled li {
1181 | margin-bottom: 10px;
1182 | color: #637282 !important;
1183 | font-size: 16px;
1184 | }
1185 | footer hr {
1186 | border-color: rgba(47, 91, 231, 0.1);
1187 | }
1188 | footer .social-links .list-inline-item {
1189 | margin: 0 5px;
1190 | }
1191 | footer .social-links .list-inline-item i {
1192 | font-size: 1.5rem;
1193 | }
1194 | .footer_icons{
1195 | padding:20px 0 10px;
1196 | }
1197 | /*========= 17.FOOTER =======*/
1198 |
1199 | /*========= 18.MENU =======*/
1200 | .navbar-toggler {
1201 | padding: 0;
1202 | width: 20px;
1203 | height: 15px;
1204 | position: relative;
1205 | border: none;
1206 | }
1207 | .navbar-expand-lg .navbar-toggler {
1208 | border-color: #fff;
1209 | }
1210 | .navbar-light .navbar-toggler {
1211 | color: rgba(0,0,0,.5);
1212 | border-color: rgba(0,0,0,.1);
1213 | }
1214 | .menu-icon {
1215 | width: 100%;
1216 | height: 100%;
1217 | top: 50%;
1218 | left: 50%;
1219 | -webkit-transform: translate(-50%, -50%);
1220 | -ms-transform: translate(-50%, -50%);
1221 | transform: translate(-50%, -50%);
1222 | position: absolute;
1223 | }
1224 | .menu-icon__bar {
1225 | width: 100%;
1226 | height: 2px;
1227 | border-radius: 50px;
1228 | background: #0099ff;
1229 | display: block;
1230 | position: absolute;
1231 | left: 0;
1232 | -webkit-transition: all .25s ease-in-out;
1233 | transition: all .25s ease-in-out;
1234 | }
1235 | .menu-icon__bar:nth-child(2) {
1236 | top: 0;
1237 | bottom: 0;
1238 | margin: auto;
1239 | }
1240 | .menu-icon__bar:nth-child(3) {
1241 | bottom: 0;
1242 | }
1243 | .navbar-is-sticky {
1244 | -webkit-box-shadow: 0 1px 5px rgba(47, 91, 231, 0.1);
1245 | box-shadow: 0 1px 5px rgba(47, 91, 231, 0.1);
1246 | background: white;
1247 | padding-top: .3rem;
1248 | padding-bottom: .3rem;
1249 | min-height: auto;
1250 | height: inherit !important;
1251 | }
1252 | .navbar .navbar-nav .nav-item .nav-link {
1253 | position: relative;
1254 | padding: .8rem 1rem;
1255 | color: #637282;
1256 | -webkit-transition: all 1s ease-in-out;
1257 | transition: all 1s ease-in-out;
1258 | font-size: 16px;
1259 | }
1260 | .btn {
1261 | border-radius: 4px;
1262 | padding: 15px 20px;
1263 | font-weight: bold !important;
1264 | outline: 0;
1265 | line-height: 1;
1266 | font-size: 14px;
1267 | }
1268 | .btn-outline {
1269 | color: #0099ff;
1270 | border: 2px solid #0099ff;
1271 | }
1272 | .menu_log_btn {
1273 | border-radius: 4px;
1274 | padding: 8px 15px;
1275 | }
1276 | /*========= 18.MENU =======*/
1277 |
1278 | /*========= NEW CSS ===========*/
1279 | .menu_list {
1280 | width: 100%;
1281 | justify-content: flex-end;
1282 | padding-right: 17px;
1283 | }
1284 | .menu_log_btn {
1285 | border-radius: 4px;
1286 | padding: 8px 15px;
1287 | }
1288 | .slider_section_main {
1289 | height: 570px;
1290 | overflow: hidden;
1291 | border-radius: 10px;
1292 | }
1293 | /*========= NEW CSS ===========*/
1294 |
1295 | /*========= common CSS ===========*/
1296 | .lead {
1297 | font-weight: inherit;
1298 | line-height: 28px;
1299 | }
1300 | .l-v-center {
1301 | position: absolute;
1302 | left: 0;
1303 | top: 30%;
1304 | -webkit-transform: translateY(-30%);
1305 | -ms-transform: translateY(-30%);
1306 | transform: translateY(-30%);
1307 | width: 100%;
1308 | margin: auto;
1309 | }
1310 | .container {
1311 | max-width: 1220px;
1312 | }
1313 | .main-container {
1314 | min-height: 100vh;
1315 | }
1316 | section, .section-spacer {
1317 | position: relative;
1318 | }
1319 | .section-spacer {
1320 | padding: 83px 0;
1321 | position: relative;
1322 | }
1323 | .section-header {
1324 | margin-bottom: 60px;
1325 | }
1326 | .section-title {
1327 | margin-bottom: 1rem;
1328 | }
1329 | .absolute-bottom {
1330 | position: absolute;
1331 | bottom: -10px;
1332 | }
1333 | .mfp-bg {
1334 | background: rgba(0, 0, 0, 0.5);
1335 | opacity: 1;
1336 | -webkit-transition: all .4s ease-in-out;
1337 | transition: all .4s ease-in-out;
1338 | }
1339 |
1340 | .mfp-content {
1341 | max-width: 1200px !important;
1342 | border-radius: 30px;
1343 | }
1344 |
1345 | .mfp-iframe-scaler iframe {
1346 | -webkit-box-shadow: 0px 0px 50px 20px rgba(0, 0, 0, 0.2);
1347 | box-shadow: 0px 0px 50px 20px rgba(0, 0, 0, 0.2);
1348 | }
1349 |
1350 | .mfp-image-holder .mfp-close,
1351 | .mfp-iframe-holder .mfp-close {
1352 | right: 0;
1353 | top: -50px;
1354 | width: 50px;
1355 | height: 50px;
1356 | font-size: 50px;
1357 | text-align: center;
1358 | background: white;
1359 | color: #0099ff;
1360 | line-height: 50px;
1361 | margin: auto;
1362 | padding: 0;
1363 | opacity: 1;
1364 | z-index: 10;
1365 | }
1366 | .tooltip {
1367 | opacity: 1 !important;
1368 | }
1369 |
1370 | .tooltip-arrow,
1371 | .tooltip > .tooltip-inner {
1372 | background-color: #ffd5d5;
1373 | opacity: 1;
1374 | border-radius: 0;
1375 | color: #33475c !important;
1376 | }
1377 |
1378 | .tooltip.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.bs-tooltip-top .arrow::before {
1379 | border-top-color: #ffd5d5;
1380 | }
1381 | .u-bg--secondary {
1382 | /* add your brand color here */
1383 | background: #6eecec;
1384 | color: #fff;
1385 | }
1386 |
1387 | .u-bg--dark {
1388 | color: #fff;
1389 | background: #0099ff;
1390 | }
1391 | .u-bg--dark * {
1392 | color: #fff;
1393 | }
1394 |
1395 | .u-text--light h1, .u-text--light h2, .u-text--light h3, .u-text--light h4, .u-text--light h5, .u-text--light h6,
1396 | .u-text--light p {
1397 | color: #fff;
1398 | }
1399 |
1400 | .u-bg-overlay {
1401 | position: absolute;
1402 | top: 0;
1403 | right: 0;
1404 | left: 0;
1405 | height: 70%;
1406 | width: 100%;
1407 | z-index: -1;
1408 | }
1409 |
1410 | .u-bg-gradient--primary {
1411 | }
1412 |
1413 | .u-bg--primary {
1414 | background: #0099ff;
1415 | }
1416 |
1417 | .u-bg--red {
1418 | background: #f22f46;
1419 | }
1420 |
1421 | .u-bg--default {
1422 | background: #f5f7fa;
1423 | }
1424 | .form-group {
1425 | margin-bottom: 25px;
1426 | }
1427 |
1428 | .form-control {
1429 | border-radius: 3px;
1430 | padding: .8rem 1rem;
1431 | border: 1px solid rgba(51, 71, 92, 0.1);
1432 | -webkit-box-shadow: none;
1433 | box-shadow: none;
1434 | }
1435 | .form-control:focus, .form-control:active {
1436 | border-color: rgba(47, 91, 231, 0.5);
1437 | -webkit-box-shadow: none;
1438 | box-shadow: none;
1439 | }
1440 |
1441 | .form-control.rounded {
1442 | border-radius: 50px !important;
1443 | }
1444 |
1445 | .input-field-lg {
1446 | padding: 15px;
1447 | }
1448 |
1449 | .custom-select {
1450 | width: auto;
1451 | border-radius: 2px;
1452 | background: white;
1453 | padding: 0 !important;
1454 | position: relative;
1455 | cursor: pointer;
1456 | pointer-events: fill;
1457 | }
1458 | .custom-select select {
1459 | padding-left: 10px;
1460 | border: 0 !important;
1461 | }
1462 | .custom-select:after {
1463 | content: '⇲';
1464 | position: absolute;
1465 | right: 0;
1466 | top: 50%;
1467 | width: 20px;
1468 | -webkit-transform: translateY(-50%);
1469 | -ms-transform: translateY(-50%);
1470 | transform: translateY(-50%);
1471 | margin: auto;
1472 | pointer-events: none;
1473 | }
1474 |
1475 | /*
1476 | Custom Checkbox
1477 | */
1478 | .custom-checkbox-control {
1479 | display: inline;
1480 | }
1481 |
1482 | .custom-checkbox {
1483 | display: -webkit-inline-box;
1484 | display: -webkit-inline-flex;
1485 | display: -ms-inline-flexbox;
1486 | display: inline-flex;
1487 | -webkit-box-align: start;
1488 | -webkit-align-items: flex-start;
1489 | -ms-flex-align: start;
1490 | align-items: flex-start;
1491 | position: relative;
1492 | cursor: pointer;
1493 | }
1494 | .custom-checkbox .custom-checkbox--input[type="checkbox"] {
1495 | width: 0;
1496 | height: 0;
1497 | top: -35px;
1498 | left: -35px;
1499 | opacity: 0;
1500 | margin-right: 10px;
1501 | display: none;
1502 | position: absolute;
1503 | }
1504 | .custom-checkbox .custom-checkbox--label {
1505 | vertical-align: top;
1506 | margin: 0;
1507 | display: -webkit-inline-box;
1508 | display: -webkit-inline-flex;
1509 | display: -ms-inline-flexbox;
1510 | display: inline-flex;
1511 | -webkit-box-align: start;
1512 | -webkit-align-items: flex-start;
1513 | -ms-flex-align: start;
1514 | align-items: flex-start;
1515 | font-weight: bold;
1516 | font-size: 14px;
1517 | }
1518 | .custom-checkbox .custom-checkbox--faux {
1519 | width: 20px;
1520 | height: 20px;
1521 | min-width: 20px;
1522 | min-height: 20px;
1523 | display: inline-block;
1524 | border: 1px solid rgba(47, 91, 231, 0.5);
1525 | border-radius: 2px;
1526 | position: relative;
1527 | margin-right: 1rem;
1528 | left: 0;
1529 | cursor: pointer;
1530 | }
1531 | .custom-checkbox .custom-checkbox--faux:after {
1532 | content: '';
1533 | position: absolute;
1534 | display: none;
1535 | top: -2px;
1536 | right: 0;
1537 | bottom: 0;
1538 | left: 0;
1539 | margin: auto;
1540 | vertical-align: middle;
1541 | width: 5px;
1542 | height: 12px;
1543 | border: solid white;
1544 | border-width: 0 2px 2px 0;
1545 | -webkit-transform: rotate(40deg);
1546 | -ms-transform: rotate(40deg);
1547 | transform: rotate(40deg);
1548 | }
1549 |
1550 | .custom-checkbox .custom-checkbox--input[type="checkbox"]:checked ~ .custom-checkbox--label .custom-checkbox--faux,
1551 | .custom-checkbox--label + .custom-checkbox--faux {
1552 | border-color: #0099ff !important;
1553 | background: #0099ff !important;
1554 | }
1555 | .custom-checkbox .custom-checkbox--input[type="checkbox"]:checked ~ .custom-checkbox--label .custom-checkbox--faux:after,
1556 | .custom-checkbox--label + .custom-checkbox--faux:after {
1557 | display: block;
1558 | }
1559 | .list-check {
1560 | list-style-type: none;
1561 | padding-left: 0;
1562 | }
1563 |
1564 | .list-check--item {
1565 | margin-bottom: 3rem;
1566 | padding-left: 60px;
1567 | position: relative;
1568 | }
1569 | .list-check--item:last-of-type {
1570 | margin-bottom: 0;
1571 | }
1572 | .list-check.light:before {
1573 | background: white;
1574 | }
1575 | .u-hidden {
1576 | display: none;
1577 | }
1578 |
1579 | .o-bg-image {
1580 | object-fit: cover;
1581 | position: absolute;
1582 | top: 0;
1583 | left: 0;
1584 | width: 100%;
1585 | height: 100%;
1586 | }
1587 |
1588 | .u-box-shadow--default {
1589 | -webkit-box-shadow: 0 25px 25px rgba(47, 91, 231, 0.1);
1590 | box-shadow: 0 25px 25px rgba(47, 91, 231, 0.1);
1591 | }
1592 |
1593 | .content-divider {
1594 | margin: 0;
1595 | border-color: rgba(47, 91, 231, 0.2);
1596 | }
1597 | #loading {
1598 | position: fixed;
1599 | left: 0;
1600 | top: 0;
1601 | width: 100%;
1602 | height: 100%;
1603 | background-color: #fff;
1604 | z-index: 10000;
1605 | }
1606 |
1607 | #loading .ripple {
1608 | width: 60px;
1609 | height: 60px;
1610 | border-radius: 50%;
1611 | position: absolute;
1612 | top: -webkit-calc(50% - 30px);
1613 | top: calc(50% - 30px);
1614 | left: -webkit-calc(50% - 30px);
1615 | left: calc(50% - 30px);
1616 | -webkit-animation-name: ripple;
1617 | animation-name: ripple;
1618 | -webkit-animation-duration: 1s;
1619 | animation-duration: 1s;
1620 | -webkit-animation-timing-function: ease-in-out;
1621 | animation-timing-function: ease-in-out;
1622 | -webkit-animation-direction: alternate-reverse;
1623 | animation-direction: alternate-reverse;
1624 | -webkit-animation-iteration-count: infinite;
1625 | animation-iteration-count: infinite;
1626 | -webkit-transform: scale(0);
1627 | -ms-transform: scale(0);
1628 | transform: scale(0);
1629 | opacity: 0.6;
1630 | }
1631 |
1632 | #loading .ripple1 {
1633 | background-color: rgba(47, 231, 177, 0.4);
1634 | }
1635 |
1636 | #loading .ripple2 {
1637 | -webkit-animation-delay: -250ms;
1638 | animation-delay: -250ms;
1639 | background-color: rgba(47, 231, 177, 0.5);
1640 | }
1641 |
1642 | #loading .ripple3 {
1643 | -webkit-animation-delay: -500ms;
1644 | animation-delay: -500ms;
1645 | background-color: rgba(47, 91, 231, 0.6);
1646 | }
1647 |
1648 | #loading .ripple4 {
1649 | -webkit-animation-delay: -750ms;
1650 | animation-delay: -750ms;
1651 | background-color: #2F5BE7;
1652 | }
1653 |
1654 | @-webkit-keyframes ripple {
1655 | to {
1656 | -webkit-transform: scale(1);
1657 | transform: scale(1);
1658 | }
1659 | }
1660 | @keyframes ripple {
1661 | to {
1662 | -webkit-transform: scale(1);
1663 | transform: scale(1);
1664 | }
1665 | }
1666 | .avatar {
1667 | width: 60px;
1668 | height: 60px;
1669 | }
1670 | .avatar-circle {
1671 | border-radius: 50%;
1672 | }
1673 | .avatar-lg {
1674 | width: 110px;
1675 | height: 110px;
1676 | }
1677 | .navbar-brand {
1678 | padding: 0;
1679 | }
1680 | .navbar-brand img {
1681 | display: inline-block;
1682 | }
1683 |
1684 | .navbar {
1685 | -webkit-transition: all 0.3s ease-in-out;
1686 | transition: all 0.3s ease-in-out;
1687 | border: 0;
1688 | }
1689 | .navbar .navbar-nav .nav-item .nav-link {
1690 | position: relative;
1691 | padding: .8rem 1rem;
1692 | color: #637282;
1693 | -webkit-transition: all 1s ease-in-out;
1694 | transition: all 1s ease-in-out;
1695 | }
1696 | .navbar .navbar-nav .nav-item .current {
1697 | color: #33475c;
1698 | }
1699 |
1700 | .navbar-light {
1701 | background: white;
1702 | }
1703 |
1704 | .dropdown-menu {
1705 | border: 0;
1706 | -webkit-box-shadow: 0 0 20px rgba(47, 91, 231, 0.2);
1707 | box-shadow: 0 0 20px rgba(47, 91, 231, 0.2);
1708 | padding: 0;
1709 | overflow: hidden;
1710 | }
1711 | .dropdown-menu .dropdown-item {
1712 | padding: .8rem;
1713 | }
1714 | .dropdown-menu .dropdown-item:hover {
1715 | background: rgba(47, 91, 231, 0.1);
1716 | }
1717 |
1718 | .navbar .dropdown-menu {
1719 | -webkit-animation: showDropdown .35s ease forwards;
1720 | animation: showDropdown .35s ease forwards;
1721 | }
1722 |
1723 | @-webkit-keyframes showDropdown {
1724 | 0% {
1725 | opacity: 0;
1726 | -webkit-transform: translateY(5px);
1727 | transform: translateY(5px);
1728 | }
1729 |
1730 | 100% {
1731 | opacity: 1;
1732 | -webkit-transform: translateY(0);
1733 | transform: translateY(0);
1734 | }
1735 | }
1736 |
1737 | @keyframes showDropdown {
1738 | 0% {
1739 | opacity: 0;
1740 | -webkit-transform: translateY(5px);
1741 | transform: translateY(5px);
1742 | }
1743 |
1744 | 100% {
1745 | opacity: 1;
1746 | -webkit-transform: translateY(0);
1747 | transform: translateY(0);
1748 | }
1749 | }
1750 | .navbar-is-sticky {
1751 | -webkit-box-shadow: 0 1px 5px rgba(47, 91, 231, 0.1);
1752 | box-shadow: 0 1px 5px rgba(47, 91, 231, 0.1);
1753 | background: white;
1754 | padding-top: .3rem;
1755 | padding-bottom: .3rem;
1756 | min-height: auto;
1757 | height: inherit !important;
1758 | }
1759 |
1760 | .navbar-expand-lg .navbar-toggler {
1761 | border-color: #fff;
1762 | }
1763 | .navbar-expand-lg .navbar-toggler-icon {
1764 | color: #fff;
1765 | }
1766 |
1767 | body.has-sticky-navbar {
1768 | padding-top: 80px;
1769 | }
1770 | body.has-sticky-navbar .navbar {
1771 | height: 80px;
1772 | }
1773 | .navbar-toggler.menu-is-expanded .menu-icon__bar:first-child {
1774 | -webkit-transform: translateY(7.5px) translateY(-50%) rotate(45deg);
1775 | -ms-transform: translateY(7.5px) translateY(-50%) rotate(45deg);
1776 | transform: translateY(7.5px) translateY(-50%) rotate(45deg);
1777 | }
1778 |
1779 | .navbar-toggler.menu-is-expanded .menu-icon__bar:nth-child(2) {
1780 | width: 0%;
1781 | -webkit-transform: translateX(-100%);
1782 | -ms-transform: translateX(-100%);
1783 | transform: translateX(-100%);
1784 | }
1785 |
1786 | .navbar-toggler.menu-is-expanded .menu-icon__bar:last-child {
1787 | -webkit-transform: translateY(-7.5px) translateY(50%) rotate(-45deg);
1788 | -ms-transform: translateY(-7.5px) translateY(50%) rotate(-45deg);
1789 | transform: translateY(-7.5px) translateY(50%) rotate(-45deg);
1790 | }
1791 | .intro {
1792 | position: relative;
1793 | background: #f5f7fa;
1794 | width: 100%;
1795 | padding: 100px 0;
1796 | overflow: hidden;
1797 | }
1798 |
1799 | .intro-cta-group {
1800 | margin-top: 30px;
1801 | display: block;
1802 | }
1803 | .intro-cta-group .video-trigger {
1804 | color: #ffffff;
1805 | background: #737373;
1806 | padding-top: 5px;
1807 | padding-bottom: 5px;
1808 | padding-right: 0;
1809 | padding-left: 1rem;
1810 | }
1811 | .intro-cta-group .video-trigger .btn-icon {
1812 | border-color: rgba(255, 255, 255, 0.2);
1813 | color: #ffffff;
1814 | }
1815 | .h2{
1816 | font-size: 34px;
1817 | }
1818 | .intro-lead-title {
1819 | line-height: 1.2;
1820 | font-size: 38px;
1821 | }
1822 | .client-logos img {
1823 | width: 100px;
1824 | display: inline-block;
1825 | }
1826 | .intro-img {
1827 | width: 100%;
1828 | margin-top: 2rem;
1829 | }
1830 | .text-muted{
1831 | font-size: 22px;
1832 | }
1833 | .img-shape {
1834 | width: 100%;
1835 | }
1836 | .price-plan-switch .nav-pills {
1837 | border-radius: 50px;
1838 | }
1839 | .price-plan-switch .nav-pills .nav-item {
1840 | padding: 5px;
1841 | }
1842 | .price-plan-switch .nav-pills .nav-link {
1843 | color: #637282;
1844 | padding: 8px 15px;
1845 | background: white;
1846 | border-radius: 50px;
1847 | -webkit-box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
1848 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
1849 | }
1850 | .price-plan-switch .nav-pills .nav-link.active {
1851 | background: #0099ff;
1852 | color: white;
1853 | }
1854 |
1855 | .pricing-tier {
1856 | padding: 2rem;
1857 | text-align: left;
1858 | background: white;
1859 | display: -webkit-box;
1860 | display: -webkit-flex;
1861 | display: -ms-flexbox;
1862 | display: flex;
1863 | -webkit-box-orient: vertical;
1864 | -webkit-box-direction: normal;
1865 | -webkit-flex-direction: column;
1866 | -ms-flex-direction: column;
1867 | flex-direction: column;
1868 | -webkit-box-pack: justify;
1869 | -webkit-justify-content: space-between;
1870 | -ms-flex-pack: justify;
1871 | justify-content: space-between;
1872 | min-height: 350px;
1873 | color: black;
1874 | -webkit-box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
1875 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
1876 | border-radius: 3px;
1877 | margin-bottom: 2rem;
1878 | }
1879 | .pricing-tier .plan-title {
1880 | font-size: 2rem;
1881 | font-weight: bold;
1882 | }
1883 | .pricing-tier .plan-price span {
1884 | line-height: 1;
1885 | font-size: 1.5rem;
1886 | font-weight: bold;
1887 | }
1888 | .pricing-tier .plan-price .plan-period {
1889 | font-size: 14px;
1890 | color: #637282;
1891 | }
1892 |
1893 | .pricing-tier.active {
1894 | background: #0099ff;
1895 | color: white;
1896 | }
1897 | .pricing-tier.active .plan-detail .plan-period {
1898 | color: rgba(255, 255, 255, 0.5);
1899 | }
1900 | .pricing-tier.active .plan-item {
1901 | color: white;
1902 | }
1903 | .pricing-tier.active .plan-item:before {
1904 | color: white;
1905 | }
1906 | .pricing-tier.active .plan-item .helper-tooltip .fa {
1907 | border-color: rgba(255, 255, 255, 0.2);
1908 | }
1909 | .pricing-tier.active .btn {
1910 | background: #ffffff;
1911 | color: #33475c;
1912 | border-color: transparent !important;
1913 | }
1914 | .pricing-tier.active .btn:hover {
1915 | background: #d8d8d8;
1916 | }
1917 |
1918 | .plan-features {
1919 | margin-top: 20px;
1920 | margin-bottom: 20px;
1921 | text-align: left;
1922 | }
1923 |
1924 | .plan-item {
1925 | margin: 10px 0;
1926 | color: rgba(99, 114, 130, 0.75);
1927 | position: relative;
1928 | display: -webkit-box;
1929 | display: -webkit-flex;
1930 | display: -ms-flexbox;
1931 | display: flex;
1932 | -webkit-box-align: center;
1933 | -webkit-align-items: center;
1934 | -ms-flex-align: center;
1935 | align-items: center;
1936 | font-size: 15px;
1937 | }
1938 | .plan-item:before {
1939 | content: "\f00c";
1940 | font-family: "Font Awesome 5 Free";
1941 | display: inline;
1942 | margin-right: 10px;
1943 | font-weight: 900;
1944 | color: rgba(47, 91, 231, 0.7);
1945 | }
1946 | .pricing-tier.active .btn:hover {
1947 | background: #d8d8d8;
1948 | color: #222 !important;
1949 | }
1950 | .helper-tooltip {
1951 | margin-left: 10px;
1952 | display: -webkit-inline-box;
1953 | display: -webkit-inline-flex;
1954 | display: -ms-inline-flexbox;
1955 | display: inline-flex;
1956 | -webkit-box-align: center;
1957 | -webkit-align-items: center;
1958 | -ms-flex-align: center;
1959 | align-items: center;
1960 | -webkit-box-pack: center;
1961 | -webkit-justify-content: center;
1962 | -ms-flex-pack: center;
1963 | justify-content: center;
1964 | }
1965 | .helper-tooltip i {
1966 | width: 15px;
1967 | height: 15px;
1968 | border: 2px solid rgba(51, 71, 92, 0.1);
1969 | font-size: 8px;
1970 | line-height: 11px;
1971 | text-align: center;
1972 | border-radius: 50%;
1973 | }
1974 |
1975 | .tab-content {
1976 | padding-top: 40px;
1977 | padding-bottom: 20px;
1978 | }
1979 | .carousel-light .carousel-indicators {
1980 | position: static;
1981 | margin-left: auto;
1982 | margin-right: auto;
1983 | width: 100%;
1984 | margin-top: 50px;
1985 | }
1986 | .carousel-light .carousel-indicators li {
1987 | width: 40px;
1988 | height: 40px;
1989 | display: -webkit-inline-box;
1990 | display: -webkit-inline-flex;
1991 | display: -ms-inline-flexbox;
1992 | display: inline-flex;
1993 | z-index: 1;
1994 | margin: 0 20px;
1995 | position: relative;
1996 | overflow: hidden;
1997 | border-radius: 50px;
1998 | cursor: pointer !important;
1999 | -webkit-transition: all .3s ease-in-out;
2000 | transition: all .3s ease-in-out;
2001 | }
2002 | .carousel-light .carousel-indicators li:before, .carousel-light .carousel-indicators li:after {
2003 | content: '';
2004 | all: initial;
2005 | -webkit-transition: all .3s ease-in-out;
2006 | transition: all .3s ease-in-out;
2007 | }
2008 | .carousel-light .carousel-indicators li:before {
2009 | content: '';
2010 | background: rgba(51, 71, 92, 0.5);
2011 | position: absolute;
2012 | right: 0;
2013 | top: 0;
2014 | left: 0;
2015 | bottom: 0;
2016 | }
2017 | .carousel-light .carousel-indicators li:hover:before {
2018 | background: transparent;
2019 | }
2020 | .carousel-light .carousel-indicators li img {
2021 | max-width: 100%;
2022 | height: auto !important;
2023 | }
2024 | .carousel-light .carousel-indicators li .avatar {
2025 | cursor: pointer;
2026 | }
2027 | .carousel-light .carousel-indicators li.active {
2028 | min-width: 50px;
2029 | min-height: 50px;
2030 | opacity: 1;
2031 | -webkit-transform: scale(1.2);
2032 | -ms-transform: scale(1.2);
2033 | transform: scale(1.2);
2034 | z-index: 100;
2035 | }
2036 | .carousel-light .carousel-indicators li.active img {
2037 | width: 100%;
2038 | }
2039 | .carousel-light .carousel-indicators li.active .avatar {
2040 | -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
2041 | box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
2042 | }
2043 | .carousel-light .carousel-indicators li.active:before {
2044 | background: transparent;
2045 | }
2046 |
2047 | .tabs-slider-thumbs {
2048 | list-style-type: none;
2049 | padding: 0;
2050 | }
2051 | .tabs-slider-thumbs .owl-dot {
2052 | padding: 10px 20px;
2053 | border-radius: 10px;
2054 | opacity: .6;
2055 | -webkit-transition: all .3s ease-in;
2056 | transition: all .3s ease-in;
2057 | cursor: pointer;
2058 | display: block;
2059 | min-width: 150px;
2060 | }
2061 | .tabs-slider-thumbs .icon {
2062 | font-size: 32px;
2063 | }
2064 | .tabs-slider-thumbs .owl-dot.active {
2065 | background: rgba(255, 255, 255, 0.1);
2066 | opacity: 1;
2067 | }
2068 |
2069 | .onboarding-slides .slide-item {
2070 | height: 100%;
2071 | display: -webkit-box;
2072 | display: -webkit-flex;
2073 | display: -ms-flexbox;
2074 | display: flex;
2075 | -webkit-box-orient: vertical;
2076 | -webkit-box-direction: normal;
2077 | -webkit-flex-direction: column;
2078 | -ms-flex-direction: column;
2079 | flex-direction: column;
2080 | }
2081 |
2082 | .bg-half:after {
2083 | content: '';
2084 | position: absolute;
2085 | width: 100%;
2086 | height: 70%;
2087 | top: 0;
2088 | z-index: -1;
2089 | }
2090 |
2091 | .bg-half--cyan:after {
2092 | background: #f5f7fa;
2093 | }
2094 |
2095 | .bg-pattern-dots--light {
2096 |
2097 | }
2098 |
2099 | .bg-pattern-dots--dark {
2100 |
2101 | }
2102 |
2103 | .bg-center-cover {
2104 | -webkit-background-size: cover !important;
2105 | background-size: cover !important;
2106 | background-position: center center !important;
2107 | background-repeat: no-repeat !important;
2108 | }
2109 |
2110 | .bg-bottom-contain {
2111 | -webkit-background-size: auto !important;
2112 | background-size: auto !important;
2113 | background-position: bottom center !important;
2114 | background-repeat: no-repeat !important;
2115 | }
2116 |
2117 | .feature-box {
2118 | margin-bottom: 15px;
2119 | display: block;
2120 | }
2121 | .feature-box--title {
2122 | font-size: 32px;
2123 | font-weight: 300;
2124 | }
2125 | .feature-box--text {
2126 | text-transform: uppercase;
2127 | letter-spacing: 3px;
2128 | font-weight: bold;
2129 | }
2130 | .feature-list {
2131 | margin-bottom: 2rem;
2132 | }
2133 | .feature-list .u-icon {
2134 | margin-bottom: 1rem;
2135 | }
2136 |
2137 | .feature-list-md {
2138 | padding: 1.2rem;
2139 | }
2140 | .integration-card {
2141 | display: block;
2142 | color: #33475c;
2143 | border-color: transparent;
2144 | border-width: 2px;
2145 | min-height: 280px;
2146 | border-radius: 5px;
2147 | margin-bottom: 20px;
2148 | -webkit-box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
2149 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
2150 | }
2151 | .integration-card:hover {
2152 | border-color: #0099ff;
2153 | -webkit-box-shadow: 0 10px 30px rgba(47, 91, 231, 0.2);
2154 | box-shadow: 0 10px 30px rgba(47, 91, 231, 0.2);
2155 | }
2156 | .integration-card .card-header {
2157 | background: #fff;
2158 | border: 0;
2159 | padding-top: 2rem;
2160 | }
2161 | .integration-card .card-header img {
2162 | max-height: 40px;
2163 | max-width: 80px;
2164 | width: auto;
2165 | height: 100%;
2166 | margin-bottom: 20px;
2167 | display: inline-block;
2168 | }
2169 | .integration-card .integration-type {
2170 | color: #637282;
2171 | font-weight: bold;
2172 | }
2173 | .integration-card .card-body {
2174 | padding-bottom: 0;
2175 | font-size: 1rem;
2176 | color: #637282;
2177 | padding-top: 0;
2178 | }
2179 | .integration-card .card-footer {
2180 | background: none !important;
2181 | border: 0;
2182 | text-align: center;
2183 | padding-bottom: 20px;
2184 | padding-top: 0;
2185 | }
2186 | .faq-list li {
2187 | border-top: 2px solid #637282;
2188 | padding: 20px 0;
2189 | }
2190 |
2191 | /*
2192 | FAQ CARDS
2193 | */
2194 | .faq-card {
2195 | margin-bottom: 2rem;
2196 | background: white;
2197 | -webkit-box-shadow: 0 0 10px rgba(47, 91, 231, 0.1);
2198 | box-shadow: 0 0 10px rgba(47, 91, 231, 0.1);
2199 | padding: 1rem;
2200 | border-radius: 4px;
2201 | }
2202 | .faq-card p {
2203 | margin-bottom: 0;
2204 | }
2205 |
2206 | /* OVERVIEW */
2207 | #overview .owl-item img {
2208 | border-radius: 10px;
2209 | }
2210 |
2211 | /* Client Logos */
2212 | .client-logos img {
2213 | width: 100px;
2214 | }
2215 |
2216 | /* Contact Section */
2217 | .contact-form {
2218 | background: #fff;
2219 | padding: 40px 25px;
2220 | border-radius: 4px;
2221 | -webkit-box-shadow: 0 10px 10px rgba(99, 114, 130, 0.1);
2222 | box-shadow: 0 10px 10px rgba(99, 114, 130, 0.1);
2223 | }
2224 |
2225 | .split-view-container {
2226 | position: relative;
2227 | }
2228 | .split-view-container .logo {
2229 | position: absolute;
2230 | top: 20px;
2231 | left: 20px;
2232 | }
2233 |
2234 | .split-view-content {
2235 | display: -webkit-box;
2236 | display: -webkit-flex;
2237 | display: -ms-flexbox;
2238 | display: flex;
2239 | -webkit-box-orient: vertical;
2240 | -webkit-box-direction: normal;
2241 | -webkit-flex-direction: column;
2242 | -ms-flex-direction: column;
2243 | flex-direction: column;
2244 | -webkit-box-pack: center;
2245 | -webkit-justify-content: center;
2246 | -ms-flex-pack: center;
2247 | justify-content: center;
2248 | }
2249 |
2250 | .split-view-container .split-view-context {
2251 | display: -webkit-box;
2252 | display: -webkit-flex;
2253 | display: -ms-flexbox;
2254 | display: flex;
2255 | position: relative;
2256 | -webkit-box-orient: vertical;
2257 | -webkit-box-direction: normal;
2258 | -webkit-flex-direction: column;
2259 | -ms-flex-direction: column;
2260 | flex-direction: column;
2261 | -webkit-box-pack: center;
2262 | -webkit-justify-content: center;
2263 | -ms-flex-pack: center;
2264 | justify-content: center;
2265 | }
2266 | .split-view-container .onboarding-slides .slide-item {
2267 | text-align: center;
2268 | width: 100%;
2269 | padding: 30px;
2270 | max-width: 500px !important;
2271 | margin-left: auto;
2272 | margin-right: auto;
2273 | display: block;
2274 | }
2275 | .split-view-container .onboarding-slides .slide-item img {
2276 | max-width: 480px;
2277 | width: 100%;
2278 | margin-bottom: 20px;
2279 | display: block;
2280 | margin-left: auto;
2281 | margin-right: auto;
2282 | border-radius: 15px;
2283 | -webkit-box-shadow: 0 20px 35px rgba(47, 91, 231, 0.1);
2284 | box-shadow: 0 20px 35px rgba(47, 91, 231, 0.1);
2285 | }
2286 | .split-view-container .onboarding-slides .slide-item .slide-title {
2287 | color: white;
2288 | }
2289 | .split-view-container .onboarding-slides .slide-item p {
2290 | color: white;
2291 | }
2292 | .split-view-container .dots {
2293 | display: -webkit-box;
2294 | display: -webkit-flex;
2295 | display: -ms-flexbox;
2296 | display: flex;
2297 | width: 100%;
2298 | -webkit-box-pack: center;
2299 | -webkit-justify-content: center;
2300 | -ms-flex-pack: center;
2301 | justify-content: center;
2302 | }
2303 | .split-view-container .dots .owl-dot {
2304 | width: 15px;
2305 | height: 15px;
2306 | border-radius: 50%;
2307 | padding: 0;
2308 | background: rgba(255, 255, 255, 0.4);
2309 | margin-right: 10px;
2310 | }
2311 | .split-view-container .dots .owl-dot.active {
2312 | background: white;
2313 | }
2314 |
2315 | .lang-options {
2316 | bottom: 1rem;
2317 | right: 1rem;
2318 | }
2319 | .btn + .btn {
2320 | margin-left: 10px;
2321 | }
2322 | .btn-xl {
2323 | padding: 15px 40px;
2324 | }
2325 | .btn-primary {
2326 | background: #0099ff;
2327 | border-color: #0099ff;
2328 | color: #fff;
2329 | }
2330 | .intro-cta-group .video-trigger {
2331 | color: #ffffff;
2332 | background: #737373;
2333 | padding-top: 5px;
2334 | padding-bottom: 5px;
2335 | padding-right: 0;
2336 | padding-left: 1rem;
2337 | }
2338 | .btn-has-icon {
2339 | font-weight: normal;
2340 | display: -webkit-inline-box;
2341 | display: -webkit-inline-flex;
2342 | display: -ms-inline-flexbox;
2343 | display: inline-flex;
2344 | -webkit-box-align: center;
2345 | -webkit-align-items: center;
2346 | -ms-flex-align: center;
2347 | align-items: center;
2348 | }
2349 | .intro-cta-group .video-trigger .btn-icon {
2350 | border-color: rgba(255, 255, 255, 0.2);
2351 | color: #ffffff;
2352 | }
2353 | .btn-has-icon .btn-icon {
2354 | margin: 0 10px;
2355 | display: -webkit-inline-box;
2356 | display: -webkit-inline-flex;
2357 | display: -ms-inline-flexbox;
2358 | display: inline-flex;
2359 | -webkit-box-pack: center;
2360 | -webkit-justify-content: center;
2361 | -ms-flex-pack: center;
2362 | justify-content: center;
2363 | -webkit-box-align: center;
2364 | -webkit-align-items: center;
2365 | -ms-flex-align: center;
2366 | align-items: center;
2367 | width: 32px;
2368 | height: 32px;
2369 | border: 2px solid rgba(51, 71, 92, 0.2);
2370 | border-radius: 50%;
2371 | font-size: 10px;
2372 | }
2373 | .intro {
2374 | position: relative;
2375 | background: #f5f7fa;
2376 | width: 100%;
2377 | padding: 100px 0;
2378 | overflow: hidden;
2379 | }
2380 | .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
2381 | border-color: #1a4ae2;
2382 | background: #1a4ae2;
2383 | }
2384 | .btn-primary:hover {
2385 | color: #fff !important;
2386 | }
2387 | .screen-v-100{
2388 | height: 441px;
2389 | }
2390 | .u-icon--circle {
2391 | border-radius: 50%;
2392 | }
2393 |
2394 | .u-icon--rounded {
2395 | border-radius: 20px;
2396 | }
2397 |
2398 | .u-icon--text {
2399 | padding: .4rem 1rem;
2400 | display: inline-block;
2401 | font-size: 14px;
2402 | text-transform: uppercase;
2403 | letter-spacing: 1px;
2404 | }
2405 |
2406 | .u-icon {
2407 | display: -webkit-box;
2408 | display: -webkit-flex;
2409 | display: -ms-flexbox;
2410 | display: flex;
2411 | vertical-align: middle;
2412 | -webkit-box-align: center;
2413 | -webkit-align-items: center;
2414 | -ms-flex-align: center;
2415 | align-items: center;
2416 | -webkit-box-pack: center;
2417 | -webkit-justify-content: center;
2418 | -ms-flex-pack: center;
2419 | justify-content: center;
2420 | text-align: center;
2421 | width: 48px;
2422 | height: 48px;
2423 | }
2424 | .u-icon i, .u-icon .icon {
2425 | font-size: 1.2rem;
2426 | display: inline-block;
2427 | }
2428 | .u-icon--primary {
2429 | color: #0099ff;
2430 | background: rgba(47, 91, 231, 0.1);
2431 | }
2432 | .u-icon--secondary {
2433 | color: #6eecec;
2434 | background: rgba(110, 236, 236, 0.2);
2435 | }
2436 | .u-icon--danger {
2437 | color: #de4437;
2438 | background: rgba(222, 68, 55, 0.1);
2439 | }
2440 | .u-icon--success {
2441 | color: #00818a;
2442 | background: rgba(0, 129, 138, 0.1);
2443 | }
2444 | .u-icon--light {
2445 | color: #fff;
2446 | background: rgba(255, 255, 255, 0.1);
2447 | }
2448 | .u-icon--green {
2449 | color: #25c16f;
2450 | background: rgba(37, 193, 111, 0.1);
2451 | }
2452 | .u-icon--xl {
2453 | width: 60px;
2454 | height: 60px;
2455 | line-height: 1;
2456 | }
2457 | .u-icon--xl i, .u-icon--xl .icon {
2458 | font-size: 2rem !important;
2459 | }
2460 | .list_fe_icons{}
2461 | .list_fe_icons i {
2462 | position: absolute;
2463 | left: 0;
2464 | width: 32px;
2465 | height: 32px;
2466 | display: -webkit-box;
2467 | display: -webkit-flex;
2468 | display: -ms-flexbox;
2469 | display: flex;
2470 | -webkit-box-align: center;
2471 | -webkit-align-items: center;
2472 | -ms-flex-align: center;
2473 | align-items: center;
2474 | -webkit-box-pack: center;
2475 | -webkit-justify-content: center;
2476 | -ms-flex-pack: center;
2477 | justify-content: center;
2478 | border-radius: 50%;
2479 | background: white;
2480 | color: #0099ff;
2481 | -webkit-box-shadow: 0 10px 15px rgba(47, 91, 231, 0.1);
2482 | box-shadow: 0 10px 15px rgba(47, 91, 231, 0.1);
2483 | padding-top: 1px;
2484 | }
2485 | .google-button {
2486 | background: #286efa;
2487 | color: white;
2488 | padding: 1px;
2489 | overflow: hidden;
2490 | border-radius: 4px;
2491 | display: -webkit-box;
2492 | display: -webkit-flex;
2493 | display: -ms-flexbox;
2494 | display: flex;
2495 | -webkit-box-align: center;
2496 | -webkit-align-items: center;
2497 | -ms-flex-align: center;
2498 | align-items: center;
2499 | -webkit-box-shadow: 1px 1px 0px 1px rgba(0, 0, 0, 0.05);
2500 | box-shadow: 1px 1px 0px 1px rgba(0, 0, 0, 0.05);
2501 | -webkit-transition-property: background-color, -webkit-box-shadow;
2502 | transition-property: background-color, box-shadow;
2503 | -webkit-transition-duration: 150ms;
2504 | transition-duration: 150ms;
2505 | -webkit-transition-timing-function: ease-in-out;
2506 | transition-timing-function: ease-in-out;
2507 | }
2508 | .google-button__icon {
2509 | background: white;
2510 | display: -webkit-inline-box;
2511 | display: -webkit-inline-flex;
2512 | display: -ms-inline-flexbox;
2513 | display: inline-flex;
2514 | -webkit-box-align: center;
2515 | -webkit-align-items: center;
2516 | -ms-flex-align: center;
2517 | align-items: center;
2518 | -webkit-box-pack: center;
2519 | -webkit-justify-content: center;
2520 | -ms-flex-pack: center;
2521 | justify-content: center;
2522 | vertical-align: middle;
2523 | width: 48px;
2524 | height: 48px;
2525 | border-top-left-radius: 4px;
2526 | border-bottom-left-radius: 4px;
2527 | justify-self: flex-start;
2528 | }
2529 | .google-button__text {
2530 | font-weight: bold;
2531 | -webkit-box-flex: 1;
2532 | -webkit-flex: 1;
2533 | -ms-flex: 1;
2534 | flex: 1;
2535 | font-size: 15px;
2536 | }
2537 | .google-button__icon img {
2538 | width: 18px;
2539 | height: 18px;
2540 | }
2541 | .google-button:focus, .google-button:hover {
2542 | background-color: #0f5df9;
2543 | -webkit-box-shadow: 1px 4px 5px 1px rgba(0, 0, 0, 0.1);
2544 | box-shadow: 1px 4px 5px 1px rgba(0, 0, 0, 0.1);
2545 | }
2546 | ._input_title{
2547 | font-weight: 600;
2548 | font-size: 15px;
2549 | }
2550 | ._font_15{
2551 | font-size: 15px;
2552 | }
2553 | .new_main {
2554 | margin-bottom: 50px;
2555 | }
2556 | .terms{
2557 | margin-top: 30px;
2558 | }
2559 | .terms .h2 {
2560 | margin: 0 0 13px;
2561 | }
2562 | .terms_text{
2563 | margin-bottom: 10px;
2564 | }
2565 | .terms_ul {
2566 | padding: 0px 0px 0px 20px;
2567 | margin: 3px 0 11px;
2568 | }
2569 | .terms_ul li {
2570 | font-size: 16px;
2571 | padding: 0 0 13px;
2572 | }
2573 |
2574 | /* =============News Post Page================ */
2575 | .n_post_title {
2576 | font-size: 17px;
2577 | text-transform: capitalize;
2578 | color: #333;
2579 | display: block;
2580 | margin-top: 6px;
2581 | }
2582 | .n_single_post {
2583 | margin-bottom: 2px;
2584 | padding: 11px 0px;
2585 | }
2586 | .n_post_input input {
2587 | padding: 6px 23px;
2588 | border: 1px solid #ddd;
2589 | color: #777;
2590 | border-radius: 4px;
2591 | font-size: 12px;
2592 | height: 38px;
2593 | }
2594 | .n_post_input textarea {
2595 | min-width: 401px;
2596 | max-height: 202px;
2597 | border: 1px solid #ddd;
2598 | padding: 10px 18px;
2599 | font-size: 14px;
2600 | color: #ddd;
2601 | border-radius: 4px;
2602 | }
2603 | .n_post_cat {
2604 | font-size: 16px;
2605 | margin-right: 11px;
2606 | color: #666;
2607 | text-transform: capitalize;
2608 | }
2609 |
2610 | .n_post_cat input {
2611 | margin-right: 5px;
2612 | }
2613 | .n_post_tag input {
2614 | border: 1px solid #ddd;
2615 | border-radius: 4px;
2616 | margin-bottom: 12px;
2617 | height: 36px;
2618 | }
2619 | .n_single_post p {
2620 | color: #000;
2621 | font-size: 15px;
2622 | padding: 5px 0px;
2623 | text-transform: capitalize;
2624 | }
2625 | span.title_btn {
2626 | padding: 8px 22px;
2627 | font-size: 12px;
2628 | background-color: #fff;
2629 | border: 1px solid #e7e7e7;
2630 | position: relative;
2631 | cursor: pointer;
2632 | display: inline-block;
2633 | }
2634 |
2635 | .news_post_category_list{
2636 | list-style: none;
2637 | }
2638 | .n_post_tag p {
2639 | padding: 2px 12px;
2640 | background-color: #0099ff;
2641 | color: #fff;
2642 | font-size: 14px;
2643 | display: inline-block;
2644 | border-radius: 4px;
2645 | }
2646 | .form-group.n_post_img {
2647 | margin-bottom: 3px;
2648 | margin-top: 9px;
2649 | }
2650 | .n_post_tag i {
2651 | color: #FF1D2D;
2652 | font-size: 12px;
2653 | margin-left: 8px;
2654 | cursor: pointer;
2655 | }
2656 | .n_card_post {
2657 | margin-top: 10px;
2658 | display: block;
2659 | }
2660 | .n_card_post input {
2661 | margin-right: 6px;
2662 | }
2663 | .n_post_area {
2664 | background-color: #F3F3F3;
2665 | padding-bottom: 114px;
2666 | }
2667 | .title_btn i {
2668 | padding-left: 5px;
2669 | }
2670 | button.submit {
2671 | margin-right: 20px;
2672 | }
2673 | button.submit, button.cancel{
2674 | padding: 10px 50px;
2675 | background-color: #0099ff;
2676 | color: #fff;
2677 | border-radius: 4px;
2678 | border: 1px solid #0099ff;
2679 | font-weight: 500;
2680 | cursor: pointer;
2681 | font-size: 13px;
2682 | }
2683 | button.submit, button.cancel{
2684 | padding: 10px 50px;
2685 | border-radius: 4px;
2686 | border: 1px solid #0099ff;
2687 | font-weight: 500;
2688 | cursor: pointer;
2689 | font-size: 13px;
2690 | }
2691 | button.cancel {
2692 | background-color: #FAFAFA;
2693 | color: #000;
2694 | border-color: #C7C7C7;
2695 | }
2696 |
2697 | .view_btn1{
2698 | background-color:#34495E;
2699 | }
2700 | .edit_btn1 {
2701 | background-color: #3498DB;
2702 | }
2703 | .make_btn1{
2704 | background-color:#ff5733;;
2705 | }
2706 | .make_btn2{
2707 | background-color:#28B463;;
2708 | }
2709 | .make_btn3{
2710 | background-color:#2471A3;;
2711 | }
2712 |
2713 | .catagory_main_bottom {
2714 | padding: 29px 0 0;
2715 | text-align: left;
2716 | }
2717 | .catagory_main_title {
2718 | font-weight: bold;
2719 | color: #000;
2720 | margin: 0 0 4px;
2721 | }
2722 | .catagory_main_inputs {
2723 | width: 319px;
2724 | }
2725 | .catagory_main_bottom {
2726 | padding: 29px 0 0;
2727 | text-align: left;
2728 | }
2729 |
2730 | /* ===========Post page start========= */
2731 | .post_right{}
2732 | .post_category_title {
2733 | margin-bottom: 15px;
2734 | }
2735 | .post_category_text{
2736 | padding:20px 0px;
2737 | border-bottom: 1px solid #e7e7e7;
2738 | }
2739 | .post_category_list{}
2740 | .post_category_list p {
2741 | display: inline-block;
2742 | padding-left: 26px;
2743 | font-size: 13px;
2744 | color: #000;
2745 | }
2746 | .post_tag_list {
2747 | color: #fff!important;
2748 | }
2749 | .post_category_list p sup{}
2750 | .full-mailbox {
2751 | position: relative;
2752 | }
2753 |
2754 | .input-box-control{
2755 | margin-top:10px;
2756 | }
2757 | .input-box-control textarea:focus {
2758 | border: 1px solid #e7e7e7;
2759 | }
2760 | .input-box-control {
2761 | position: relative;
2762 | margin-bottom: 20px;
2763 | }
2764 | .input-box-control label {
2765 | position: absolute;
2766 | top: 0;
2767 | left: 0;
2768 | color: rgba(0, 0, 0, 0.5);
2769 | }
2770 |
2771 | .input-full {
2772 | width: 100%;
2773 | border-bottom: 1px solid rgba(0, 0, 0, 0.07);
2774 | transition-duration: 400ms; }
2775 | .input-full:focus, .input-full:active {
2776 | border-bottom-color: #03A9F5; }
2777 |
2778 | textarea, .todo-input {
2779 | resize: none;
2780 |
2781 | }
2782 | textarea::placeholder, .todo-input::placeholder {
2783 | color: rgba(0, 0, 0, 0.3); }
2784 | textarea::-ms-input-placeholder, .todo-input::-ms-input-placeholder {
2785 | color: rgba(0, 0, 0, 0.3); }
2786 |
2787 | .submit {
2788 | text-transform: uppercase;
2789 | background: #03A9F5;
2790 | color: #fff;
2791 | border: 0;
2792 | padding: 6px 15px;
2793 | }
2794 |
2795 | .submit-content {
2796 | position: relative;
2797 | display: flex;
2798 | justify-content: center;
2799 | }
2800 | .submit-content button.submit {
2801 | margin-right: 20px;
2802 | }
2803 | .submit-attach {
2804 | bottom: -37px;
2805 | padding: 10px 0px;
2806 | width: 100%;
2807 | display: table;
2808 | text-align: center;
2809 | background-color: #DDF;
2810 | position: absolute;
2811 | left: 0;
2812 | }
2813 | .submit-attach li {
2814 | display: inline-block;
2815 | margin-right: 30px;
2816 | cursor: pointer;
2817 | color: rgba(0, 0, 0, 0.4);
2818 | }
2819 |
2820 | .none {
2821 | display: none !important;
2822 | }
2823 | .full-mailbox .submit-content {
2824 | margin-top: 71px;
2825 | }
2826 |
2827 | .full-mailbox input[type="text"], .full-mailbox textarea{
2828 | outline:none;
2829 | border:1px solid #e7e7e7;
2830 | padding: 10px;
2831 | font-size: 14px;
2832 | position: relative;
2833 | }
2834 | .full-mailbox input[type="text"]:focus, .full-mailbox textarea:focus{
2835 | border:1px solid #e7e7e7;
2836 | }
2837 | button.submit, button.cancel,.search_category input[type="submit"] {
2838 | padding: 10px 50px;
2839 | background-color: #0099ff;
2840 | color: #fff;
2841 | border-radius: 4px;
2842 | border:1px solid #0099ff;
2843 | font-weight:500;
2844 | cursor: pointer;
2845 | font-size: 13px;
2846 | }
2847 | button.cancel {
2848 | background-color:#FAFAFA;
2849 | color: #000;
2850 | border-color:#C7C7C7;
2851 | }
2852 |
2853 |
2854 | .community_category, .community_subcategory, .community_sub2category{
2855 | list-style: none;
2856 | }
2857 | .community_category{
2858 | width:250px;
2859 | }
2860 | .community_category li {
2861 | padding: 13px 15px;
2862 | background: #fff;
2863 | box-shadow: 0 10px 20px rgba(47, 91, 231, 0.1);
2864 | margin-bottom: 10px;
2865 | color: #000;
2866 | font-size: 15px;
2867 | cursor: pointer;
2868 | }
2869 | .community_category li i{
2870 | color:#000;
2871 | }
2872 | .community_category li a {
2873 | color: #000;
2874 | }
2875 | .community_category li a:hover{
2876 | color: #000;
2877 | }
2878 | .community_category .ivu-dropdown {
2879 | display: block!important;
2880 | }
2881 | .community_category .ivu-dropdown-menu {
2882 | width: 200px;
2883 | }
2884 | .community_category .ivu-select-dropdown {
2885 | width:250px!important;
2886 | border-radius: 1px!important;
2887 | margin: -14px 27px!important;
2888 | }
2889 | i.cross_icon{
2890 | border-radius: 50%;
2891 | font-size: 16px;
2892 | color: #E74C3C!important;
2893 | margin-right:3px;
2894 | }
2895 | .right_icon {
2896 | float: right;
2897 | font-size: 19px;
2898 | }
2899 | .add_more {
2900 | padding: 6px 40px;
2901 | margin-top: 15px;
2902 | }
2903 | .category_button_top{
2904 | margin-bottom:20px;
2905 | }
2906 | .category_button {
2907 | background-color: #0099ff;
2908 | padding: 5px 22px;
2909 | font-size: 14px;
2910 | }
2911 |
2912 |
2913 | /*========= common CSS ===========*/
2914 |
2915 | /*========= RESPONSIVE ===========*/
2916 | @media (max-width: 575.98px) {
2917 | .section-spacer {
2918 | padding-top: 50px;
2919 | padding-bottom: 50px;
2920 | }
2921 |
2922 | /* Intro sections */
2923 | .intro {
2924 | padding: 50px 0;
2925 | }
2926 | .intro .screen-v-100 {
2927 | height: 100% !important;
2928 | }
2929 | .intro .l-v-center {
2930 | position: unset;
2931 | -webkit-transform: unset;
2932 | -ms-transform: unset;
2933 | transform: unset;
2934 | }
2935 |
2936 | .callout-form .input-group {
2937 | -webkit-box-orient: vertical;
2938 | -webkit-box-direction: normal;
2939 | -webkit-flex-direction: column;
2940 | -ms-flex-direction: column;
2941 | flex-direction: column;
2942 | }
2943 | .callout-form .input-group .form-control {
2944 | width: 100%;
2945 | margin-bottom: 10px;
2946 | }
2947 |
2948 | .carousel-light .carousel-indicators li {
2949 | margin: 0 10px;
2950 | }
2951 | .carousel-light .carousel-indicators li .avatar {
2952 | width: 40px;
2953 | height: 40px;
2954 | }
2955 | }
2956 | @media (max-width: 767.98px) {
2957 | body.has-sticky-navbar {
2958 | padding-top: 60px;
2959 | }
2960 | body.has-sticky-navbar .navbar {
2961 | height: 60px;
2962 | }
2963 |
2964 | .navbar .navbar-nav {
2965 | padding-top: 1rem;
2966 | padding-bottom: 1rem;
2967 | }
2968 | .navbar .navbar-nav .nav-item .nav-link, .navbar .navbar-nav .nav-item .dropdown-item {
2969 | margin-left: 20px;
2970 | padding-top: 10px;
2971 | padding-bottom: 10px;
2972 | display: block;
2973 | color: #33475c;
2974 | font-size: 1.5rem;
2975 | font-weight: bold;
2976 | }
2977 | .navbar .navbar-nav .nav-item .nav-link:after, .navbar .navbar-nav .nav-item .dropdown-item:after {
2978 | right: 15px;
2979 | position: absolute;
2980 | top: 50%;
2981 | -webkit-transform: translateY(-50%);
2982 | -ms-transform: translateY(-50%);
2983 | transform: translateY(-50%);
2984 | }
2985 | .navbar .navbar-nav .nav-item .dropdown-menu {
2986 | padding-top: 10px;
2987 | padding-bottom: 10px;
2988 | position: unset;
2989 | }
2990 | .navbar .navbar-nav .nav-item .dropdown-item {
2991 | color: #637282;
2992 | font-size: 1.2rem;
2993 | }
2994 |
2995 | .navbar-collapse {
2996 | background: white;
2997 | position: absolute;
2998 | top: 60px;
2999 | left: 0;
3000 | min-height: 100vh;
3001 | overflow: scroll;
3002 | width: 100%;
3003 | height: 100%;
3004 | z-index: 100;
3005 | }
3006 |
3007 | .navbar-is-sticky .navbar-collapse {
3008 | top: 50px;
3009 | }
3010 |
3011 | .tabs-slider-indicators {
3012 | overflow-x: scroll;
3013 | }
3014 |
3015 | .tabs-slider-thumbs {
3016 | display: -webkit-inline-box;
3017 | display: -webkit-inline-flex;
3018 | display: -ms-inline-flexbox;
3019 | display: inline-flex;
3020 | min-width: 800px;
3021 | }
3022 | .tabs-slider-thumbs .owl-dot {
3023 | text-align: center;
3024 | padding: 5px 10px;
3025 | margin-right: 2rem;
3026 | }
3027 | .tabs-slider-thumbs .owl-dot:first-of-type {
3028 | margin-left: 2rem;
3029 | }
3030 | .tabs-slider-thumbs .owl-dot h3 {
3031 | font-size: 18px;
3032 | }
3033 | .tabs-slider-thumbs .owl-dot p {
3034 | display: none;
3035 | }
3036 | }
3037 | @media (max-width: 991.98px) {
3038 | body {
3039 | font-size: 0.875rem !important;
3040 | }
3041 | }
3042 | /*========= RESPONSIVE ===========*/
3043 | .catagory_main{
3044 |
3045 | }
3046 | .catagory_main_top{}
3047 | .catagory_main_list{}
3048 | .catagory_main_list li {
3049 | display: inline-block;
3050 | margin: 0 11px 10px 0;
3051 | }
3052 | .catagory_main_bottom li{
3053 | text-align: left;
3054 | }
3055 | .catagory_main_bottom {
3056 | padding: 29px 0 0;
3057 | text-align: left;
3058 | }
3059 | .catagory_main_title {
3060 | font-weight: bold;
3061 | color: #000;
3062 | margin: 0 0 4px;
3063 | }
3064 | .catagory_main_inputs {
3065 | width: 319px;
3066 | }
3067 |
3068 | .router-link-exact-active{
3069 | color: #0099ff!important;
3070 | border-right: 2px solid #0099ff !important;
3071 | background-color: #eaeeea;
3072 | }
3073 |
3074 |
--------------------------------------------------------------------------------
/view/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/reactmaster223/discord-bot/f36758bb9e6c8aef9ce937a67b0baa7aa16e117e/view/public/favicon.ico
--------------------------------------------------------------------------------
/view/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
11 |
12 |
13 | <%= htmlWebpackPlugin.options.title %>
14 |
15 |
16 |
17 |
18 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/view/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Checking NFT's Exist And Attribute
4 |
5 |
6 |
7 |
8 |
18 |
19 |
29 |
30 |
35 |
--------------------------------------------------------------------------------
/view/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/reactmaster223/discord-bot/f36758bb9e6c8aef9ce937a67b0baa7aa16e117e/view/src/assets/logo.png
--------------------------------------------------------------------------------
/view/src/bootstrap.js:
--------------------------------------------------------------------------------
1 | window._ = require('lodash');
2 |
3 | window.axios = require('axios');
4 |
5 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
6 |
7 |
--------------------------------------------------------------------------------
/view/src/common.js:
--------------------------------------------------------------------------------
1 | import Axios from "axios"
2 |
3 | export default {
4 | data() {
5 | return {
6 |
7 | }
8 | },
9 | methods: {
10 | async callApi(method, url, dataObj) {
11 | try {
12 | return await Axios({
13 | method: method,
14 | url: url,
15 | data: dataObj
16 | });
17 | } catch (e) {
18 | return e.response
19 | }
20 | },
21 | s(desc, title = "Perfect!") {
22 | this.$Notice.success({
23 | title: title,
24 | desc: desc
25 | });
26 | },
27 | w(desc, title = "Oups!") {
28 | this.$Notice.warning({
29 | title: title,
30 | desc: desc
31 | });
32 | },
33 | },
34 |
35 |
36 | }
--------------------------------------------------------------------------------
/view/src/components/DiscordBot.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
16 |
22 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | Wallet Address
35 | |
36 |
37 | Collection Name
38 | |
39 |
40 | NFT Count
41 | |
42 |
43 | Has NFT
44 | |
45 |
46 |
47 |
48 |
49 |
50 |
51 | {{ item.walletaddress }}
52 | |
53 |
54 | {{ item.collectionName }}
55 | |
56 |
57 | {{ item.count }}
58 | |
59 |
60 |
63 |
68 | |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
86 |
94 |
100 |
101 |
102 |
103 |
104 |
107 |
108 |
109 |
110 |
111 |
112 | NFT images
113 | |
114 |
115 | NFT Name
116 | |
117 |
118 | NFT Property
119 | |
120 |
121 | Assign Role Buttons
122 | |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
133 |
134 |
135 | |
136 |
137 | {{ nfts.name }}
138 | |
139 |
140 | {{
146 | property.trait_type
147 | }}={{ property.value }}
149 | |
150 |
151 |
162 | |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
179 |
186 |
196 |
202 |
203 |
204 |
211 |
221 |
227 |
228 |
229 |
230 |
233 |
240 |
241 |
242 |
243 |
244 |
251 |
258 |
268 |
274 |
275 |
276 |
277 |
280 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
672 |
673 |
738 |
743 |
--------------------------------------------------------------------------------
/view/src/components/VerifySingleAsset.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | User Name
25 | |
26 |
27 | Email Address
28 | |
29 |
30 | Collection Name
31 | |
32 |
33 | NFT Existence
34 | |
35 |
36 |
37 |
38 |
39 |
40 |
41 | {{ item.userName }}
42 | |
43 |
44 | {{ item.userEmail }}
45 | |
46 |
47 | {{ item.collectionName }}
48 | |
49 |
50 |
53 |
58 | |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
72 |
79 |
89 |
95 |
96 |
97 |
104 |
114 |
121 |
122 |
123 |
130 |
140 |
146 |
147 |
148 |
149 |
152 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
242 |
243 |
301 |
306 |
--------------------------------------------------------------------------------
/view/src/main.js:
--------------------------------------------------------------------------------
1 | require('./bootstrap');
2 | import Vue from 'vue';
3 | import ViewUI from 'view-design';
4 | import App from './App.vue';
5 | import 'view-design/dist/styles/iview.css';
6 |
7 | Vue.config.productionTip = false
8 |
9 | // framework front-end
10 | Vue.use(ViewUI);
11 |
12 | import common from './common'
13 | Vue.mixin(common)
14 |
15 | new Vue({
16 | render: h => h(App),
17 | }).$mount('#app')
18 |
--------------------------------------------------------------------------------
/view/web3.js:
--------------------------------------------------------------------------------
1 | const Web3 = require("web3");
2 | const web3 = new Web3(window.ethereum)
3 | // If privacy is turned off in Metamask
4 | window.addEventListener('load', () => {
5 | if (typeof web3 !== 'undefined') {
6 | web3 = new Web3(web3.currentProvider);
7 | console.log("Success")
8 | } else {
9 | console.log('No web3? You should consider trying MetaMask!');
10 | web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:7545'));
11 | }
12 | });
13 |
14 | // If privacy is turned on in Metamask
15 | window.addEventListener('load', async () => {
16 | // Modern dapp browsers...
17 | if (window.ethereum) {
18 | window.web3 = new Web3(ethereum);
19 | try {
20 | // Request account access if needed
21 | await ethereum.enable();
22 | // Acccounts now exposed
23 | console.log("Success")
24 | } catch (error) {
25 | // User denied account access...
26 | console.log(error)
27 | }
28 | }
29 | // Legacy dapp browsers...
30 | else if (window.web3) {
31 | window.web3 = new Web3(web3.currentProvider);
32 | }
33 | // Non-dapp browsers...
34 | else {
35 | console.log('Non-Ethereum browser detected. You should consider trying MetaMask!');
36 | web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:7545'));
37 | }
38 | });
39 |
40 | // Set a default account
41 | web3.eth.defaultAccount = web3.eth.accounts[0];
--------------------------------------------------------------------------------