@lmjs/cli 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +75 -0
- package/bin/commands.js +2 -0
- package/index.js +178 -0
- package/lib/app.js +116 -0
- package/lib/check-version.js +29 -0
- package/lib/fcs.js +254 -0
- package/lib/files/build/func.js +66 -0
- package/lib/files/build/package.json +31 -0
- package/lib/files/build/server.js +27 -0
- package/lib/files/build/src/favicon.ico +0 -0
- package/lib/files/build/src/robots.txt +4 -0
- package/lib/files/build/src/sitemap.xml +9 -0
- package/lib/files/build_serverless/.htaccess +15 -0
- package/lib/files/build_serverless/favicon.ico +0 -0
- package/lib/files/build_serverless/robots.txt +4 -0
- package/lib/files/build_serverless/sitemap.xml +9 -0
- package/lib/files/comp.tpl +1 -0
- package/lib/files/project/config.json +51 -0
- package/lib/files/project/src/404.html +250 -0
- package/lib/files/project/src/comps/comp1.tpl +1 -0
- package/lib/files/project/src/index.html +48 -0
- package/lib/files/project/src/index.js +15 -0
- package/lib/files/project/src/views/about.view +14 -0
- package/lib/files/project/src/views/contact.view +14 -0
- package/lib/files/project/src/views/home.view +13 -0
- package/lib/files/project/src/views/widgets/footer.view +0 -0
- package/lib/files/project/src/views/widgets/header.view +13 -0
- package/lib/files/project/src/views/widgets/nav.view +0 -0
- package/lib/files/sub_view.view +8 -0
- package/lib/files/view.view +14 -0
- package/package.json +64 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
const axios = require('axios').default;
|
|
2
|
+
const path = require("path")
|
|
3
|
+
const express = require('express');
|
|
4
|
+
var compression = require('compression');
|
|
5
|
+
const app = express();
|
|
6
|
+
const server = require('http').createServer(app);
|
|
7
|
+
const io = require('socket.io')(server);
|
|
8
|
+
var cookieParser = require('cookie-parser');
|
|
9
|
+
var expressSession = require('express-session');
|
|
10
|
+
const bodyParser = require('body-parser');
|
|
11
|
+
var multer = require('multer');
|
|
12
|
+
const config = require('./config').config;
|
|
13
|
+
var upload = multer();
|
|
14
|
+
let session = expressSession({
|
|
15
|
+
secret: 'beajs',
|
|
16
|
+
resave: true,
|
|
17
|
+
saveUninitialized: true,
|
|
18
|
+
cookie: { maxAge: 9999000 }
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
function validURL(str) {
|
|
22
|
+
var pattern = new RegExp('^(https?:\\/\\/)?' +
|
|
23
|
+
'((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|' +
|
|
24
|
+
'((\\d{1,3}\\.){3}\\d{1,3}))' +
|
|
25
|
+
'(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*' +
|
|
26
|
+
'(\\?[;&a-z\\d%_.~+=-]*)?' +
|
|
27
|
+
'(\\#[-a-z\\d_]*)?$', 'i');
|
|
28
|
+
return !!pattern.test(str);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
exports.config = config;
|
|
32
|
+
exports.server = function () {
|
|
33
|
+
return server;
|
|
34
|
+
};
|
|
35
|
+
exports.app = function () {
|
|
36
|
+
app.use(cookieParser());
|
|
37
|
+
app.use(session);
|
|
38
|
+
app.use(compression());
|
|
39
|
+
app.use(express.static(path.join(__dirname, './src')));
|
|
40
|
+
app.set('etag', false);
|
|
41
|
+
app.use(bodyParser.urlencoded({ extended: true }));
|
|
42
|
+
app.use(bodyParser.json());
|
|
43
|
+
app.use(bodyParser.raw());
|
|
44
|
+
app.use(upload.array());
|
|
45
|
+
|
|
46
|
+
io.use(function (socket, next) {
|
|
47
|
+
session(socket.request, socket.request.res, next);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
io.on('connection', function (socket) {
|
|
51
|
+
socket.on("request", async function (_data, _body, cb) {
|
|
52
|
+
try {
|
|
53
|
+
let res = await axios({
|
|
54
|
+
method: _data['method'].toString().toLowerCase(),
|
|
55
|
+
url: validURL(_data['path']) ? _data['path'] : (config.apis[_data['api'] ?? 0].baseURL + _data['path']),
|
|
56
|
+
data: _body ?? {},
|
|
57
|
+
headers: _data['headers'] ?? config.apis[_data['api'] ?? 0].headers
|
|
58
|
+
});
|
|
59
|
+
cb(res.data);
|
|
60
|
+
} catch (e) {
|
|
61
|
+
cb({ "code": 108, "error": e.message, "type": "RequestError" });
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
return app;
|
|
66
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "beajs-client",
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "Client server for BEA's reactive Javascript Library",
|
|
5
|
+
"main": "./server.js",
|
|
6
|
+
"files": [
|
|
7
|
+
"src/",
|
|
8
|
+
"server.js"
|
|
9
|
+
],
|
|
10
|
+
"keywords": [
|
|
11
|
+
"beajs",
|
|
12
|
+
"BEAJS Client",
|
|
13
|
+
"devkit",
|
|
14
|
+
"sdk",
|
|
15
|
+
"BEAJS DevKit",
|
|
16
|
+
"bea-client",
|
|
17
|
+
"bea.com.lb"
|
|
18
|
+
],
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"axios": "^0.27.2",
|
|
21
|
+
"cookie-parser": "^1.4.6",
|
|
22
|
+
"express": "^4.18.1",
|
|
23
|
+
"express-session": "^1.17.3",
|
|
24
|
+
"compression": "^1.7.4",
|
|
25
|
+
"multer": "^1.4.5-lts.1",
|
|
26
|
+
"socket.io": "^4.5.1"
|
|
27
|
+
},
|
|
28
|
+
"engines": {
|
|
29
|
+
"node": ">=12.0.0"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
const path = require('path');
|
|
2
|
+
const func = require('./func');
|
|
3
|
+
const app = func.app();
|
|
4
|
+
const server = func.server();
|
|
5
|
+
var config = func.config;
|
|
6
|
+
|
|
7
|
+
app.get('/', (req, res) => {
|
|
8
|
+
res.sendFile(path.join(__dirname, './src/index.html'));
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
app.get('*', function (req, res) {
|
|
12
|
+
let nodes = req.params[0].split("/");
|
|
13
|
+
if (nodes.length) nodes.shift();
|
|
14
|
+
res.sendFile(path.join(__dirname, './src/index.html'));
|
|
15
|
+
});
|
|
16
|
+
app.post('*', function (req, res) {
|
|
17
|
+
let nodes = req.params[0].split("/");
|
|
18
|
+
if (nodes.length) nodes.shift();
|
|
19
|
+
// console.log(req.body);
|
|
20
|
+
res.writeHead(200, { 'Content-Type': 'text/html' });
|
|
21
|
+
res.write("");
|
|
22
|
+
return res.end();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
server.listen(config.server.port, function () {
|
|
26
|
+
console.log(`BEAJS client server running at http://${config.server.host}:${config.server.port}/`);
|
|
27
|
+
});
|
|
Binary file
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
|
|
3
|
+
<url>
|
|
4
|
+
<loc>https://bea.com.lb/</loc>
|
|
5
|
+
<lastmod>2022-06-16T08:42:57+00:00</lastmod>
|
|
6
|
+
<changefreq>always</changefreq>
|
|
7
|
+
<priority>1.00</priority>
|
|
8
|
+
</url>
|
|
9
|
+
</urlset>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
indexignore *
|
|
2
|
+
<IfModule mod_rewrite.c>
|
|
3
|
+
RewriteEngine On
|
|
4
|
+
|
|
5
|
+
RewriteCond %{HTTPS} off
|
|
6
|
+
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|
7
|
+
|
|
8
|
+
#RewriteCond %{HTTP_HOST} !^www\. [NC]
|
|
9
|
+
#RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|
10
|
+
|
|
11
|
+
RewriteCond %{REQUEST_FILENAME} !-f
|
|
12
|
+
RewriteCond %{REQUEST_FILENAME} !-d
|
|
13
|
+
RewriteCond %{REQUEST_URI} !index
|
|
14
|
+
RewriteRule ^(.*)$ ./index.html [QSA,L]
|
|
15
|
+
</IfModule>
|
|
Binary file
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
|
|
3
|
+
<url>
|
|
4
|
+
<loc>https://bea.com.lb/</loc>
|
|
5
|
+
<lastmod>2022-06-16T08:42:57+00:00</lastmod>
|
|
6
|
+
<changefreq>always</changefreq>
|
|
7
|
+
<priority>1.00</priority>
|
|
8
|
+
</url>
|
|
9
|
+
</urlset>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[ComponentName]
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "1.0.0.1",
|
|
3
|
+
"server": {
|
|
4
|
+
"host": "127.0.0.1",
|
|
5
|
+
"port": "3000",
|
|
6
|
+
"ssl": {
|
|
7
|
+
"enabled": false,
|
|
8
|
+
"key": "/key.pem",
|
|
9
|
+
"cert": "/certificate.cer"
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"project_info": {
|
|
13
|
+
"Title": "PROJECT_TITLE",
|
|
14
|
+
"Description": "PROJECT_DESCRIPTION",
|
|
15
|
+
"Keywords": "website,search,tags,goes,here",
|
|
16
|
+
"WebsiteURL": "https://www.example.com/",
|
|
17
|
+
"Favicon": "/images/favicon.ico",
|
|
18
|
+
"SocialMedia": {
|
|
19
|
+
"LI": "https://www.linkedin.com/",
|
|
20
|
+
"IG": "https://www.instagram.com/",
|
|
21
|
+
"FB": "https://www.facebook.com/"
|
|
22
|
+
},
|
|
23
|
+
"MetaTags": {
|
|
24
|
+
"og:url": "https://www.example.com/",
|
|
25
|
+
"og:title": "PROJECT_TITLE",
|
|
26
|
+
"og:type": "business.business",
|
|
27
|
+
"og:site_name": "PROJECT_TITLE",
|
|
28
|
+
"fb:admins": "592515154",
|
|
29
|
+
"fb:app_id": "138025696270006",
|
|
30
|
+
"og:description": "PROJECT_TITLE",
|
|
31
|
+
"og:image": "/images/example.png",
|
|
32
|
+
"business:contact_data:street_address": "Street Address.",
|
|
33
|
+
"business:contact_data:locality": "Tripoli",
|
|
34
|
+
"business:contact_data:postal_code": "1300",
|
|
35
|
+
"business:contact_data:country_name": "Lebanon",
|
|
36
|
+
"business:contact_data:email": "info@example.com",
|
|
37
|
+
"business:contact_data:phone_number": "+96171299411",
|
|
38
|
+
"business:contact_data:fax_number": "+96171299411",
|
|
39
|
+
"business:contact_data:website": "https://www.example.com/"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"apis": [
|
|
43
|
+
{
|
|
44
|
+
"baseURL": "https://api.backendadmin.com/1",
|
|
45
|
+
"headers": {
|
|
46
|
+
"X-BEA-Application-ID": "YOUR_APPLICATION_ID",
|
|
47
|
+
"X-BEA-Authorization": "YOUR_REST_API_KEY"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
]
|
|
51
|
+
}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
8
|
+
|
|
9
|
+
<title>404 HTML Template by Colorlib</title>
|
|
10
|
+
|
|
11
|
+
<style id="" media="all">
|
|
12
|
+
* {
|
|
13
|
+
-webkit-box-sizing: border-box;
|
|
14
|
+
box-sizing: border-box;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
body {
|
|
18
|
+
padding: 0;
|
|
19
|
+
margin: 0;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
#notfound {
|
|
23
|
+
position: relative;
|
|
24
|
+
height: 100vh;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
#notfound .notfound {
|
|
28
|
+
position: absolute;
|
|
29
|
+
left: 50%;
|
|
30
|
+
top: 50%;
|
|
31
|
+
-webkit-transform: translate(-50%, -50%);
|
|
32
|
+
-ms-transform: translate(-50%, -50%);
|
|
33
|
+
transform: translate(-50%, -50%);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.notfound {
|
|
37
|
+
max-width: 520px;
|
|
38
|
+
width: 100%;
|
|
39
|
+
line-height: 1.4;
|
|
40
|
+
text-align: center;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.notfound .notfound-404 {
|
|
44
|
+
position: relative;
|
|
45
|
+
height: 240px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.notfound .notfound-404 h1 {
|
|
49
|
+
font-family: 'Montserrat', sans-serif;
|
|
50
|
+
position: absolute;
|
|
51
|
+
left: 50%;
|
|
52
|
+
top: 50%;
|
|
53
|
+
-webkit-transform: translate(-50%, -50%);
|
|
54
|
+
-ms-transform: translate(-50%, -50%);
|
|
55
|
+
transform: translate(-50%, -50%);
|
|
56
|
+
font-size: 252px;
|
|
57
|
+
font-weight: 900;
|
|
58
|
+
margin: 0px;
|
|
59
|
+
color: #262626;
|
|
60
|
+
text-transform: uppercase;
|
|
61
|
+
letter-spacing: -40px;
|
|
62
|
+
margin-left: -20px;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.notfound .notfound-404 h1>span {
|
|
66
|
+
text-shadow: -8px 0px 0px #fff;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.notfound .notfound-404 h3 {
|
|
70
|
+
font-family: 'Cabin', sans-serif;
|
|
71
|
+
position: relative;
|
|
72
|
+
font-size: 16px;
|
|
73
|
+
font-weight: 700;
|
|
74
|
+
text-transform: uppercase;
|
|
75
|
+
color: #262626;
|
|
76
|
+
margin: 0px;
|
|
77
|
+
letter-spacing: 3px;
|
|
78
|
+
padding-left: 6px;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.notfound h2 {
|
|
82
|
+
font-family: 'Cabin', sans-serif;
|
|
83
|
+
font-size: 20px;
|
|
84
|
+
font-weight: 400;
|
|
85
|
+
text-transform: uppercase;
|
|
86
|
+
color: #000;
|
|
87
|
+
margin-top: 0px;
|
|
88
|
+
margin-bottom: 25px;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@media only screen and (max-width: 767px) {
|
|
92
|
+
.notfound .notfound-404 {
|
|
93
|
+
height: 200px;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.notfound .notfound-404 h1 {
|
|
97
|
+
font-size: 200px;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
@media only screen and (max-width: 480px) {
|
|
102
|
+
.notfound .notfound-404 {
|
|
103
|
+
height: 162px;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.notfound .notfound-404 h1 {
|
|
107
|
+
font-size: 162px;
|
|
108
|
+
height: 150px;
|
|
109
|
+
line-height: 162px;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.notfound h2 {
|
|
113
|
+
font-size: 16px;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/* vietnamese */
|
|
118
|
+
@font-face {
|
|
119
|
+
font-family: 'Cabin';
|
|
120
|
+
font-style: normal;
|
|
121
|
+
font-weight: 400;
|
|
122
|
+
font-stretch: 100%;
|
|
123
|
+
font-display: swap;
|
|
124
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6XvptnsF3-OA6Fw.woff2) format('woff2');
|
|
125
|
+
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/* latin-ext */
|
|
129
|
+
@font-face {
|
|
130
|
+
font-family: 'Cabin';
|
|
131
|
+
font-style: normal;
|
|
132
|
+
font-weight: 400;
|
|
133
|
+
font-stretch: 100%;
|
|
134
|
+
font-display: swap;
|
|
135
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6Xvp9nsF3-OA6Fw.woff2) format('woff2');
|
|
136
|
+
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/* latin */
|
|
140
|
+
@font-face {
|
|
141
|
+
font-family: 'Cabin';
|
|
142
|
+
font-style: normal;
|
|
143
|
+
font-weight: 400;
|
|
144
|
+
font-stretch: 100%;
|
|
145
|
+
font-display: swap;
|
|
146
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6XvqdnsF3-OAw.woff2) format('woff2');
|
|
147
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/* vietnamese */
|
|
151
|
+
@font-face {
|
|
152
|
+
font-family: 'Cabin';
|
|
153
|
+
font-style: normal;
|
|
154
|
+
font-weight: 700;
|
|
155
|
+
font-stretch: 100%;
|
|
156
|
+
font-display: swap;
|
|
157
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6XvptnsF3-OA6Fw.woff2) format('woff2');
|
|
158
|
+
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/* latin-ext */
|
|
162
|
+
@font-face {
|
|
163
|
+
font-family: 'Cabin';
|
|
164
|
+
font-style: normal;
|
|
165
|
+
font-weight: 700;
|
|
166
|
+
font-stretch: 100%;
|
|
167
|
+
font-display: swap;
|
|
168
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6Xvp9nsF3-OA6Fw.woff2) format('woff2');
|
|
169
|
+
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/* latin */
|
|
173
|
+
@font-face {
|
|
174
|
+
font-family: 'Cabin';
|
|
175
|
+
font-style: normal;
|
|
176
|
+
font-weight: 700;
|
|
177
|
+
font-stretch: 100%;
|
|
178
|
+
font-display: swap;
|
|
179
|
+
src: url(/fonts.gstatic.com/s/cabin/v26/u-4i0qWljRw-PfU81xCKCpdpbgZJl6XvqdnsF3-OAw.woff2) format('woff2');
|
|
180
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
181
|
+
}
|
|
182
|
+
</style>
|
|
183
|
+
<style id="" media="all">
|
|
184
|
+
/* cyrillic-ext */
|
|
185
|
+
@font-face {
|
|
186
|
+
font-family: 'Montserrat';
|
|
187
|
+
font-style: normal;
|
|
188
|
+
font-weight: 900;
|
|
189
|
+
font-display: swap;
|
|
190
|
+
src: url(/fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC73w0aXp-p7K4KLjztg.woff2) format('woff2');
|
|
191
|
+
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/* cyrillic */
|
|
195
|
+
@font-face {
|
|
196
|
+
font-family: 'Montserrat';
|
|
197
|
+
font-style: normal;
|
|
198
|
+
font-weight: 900;
|
|
199
|
+
font-display: swap;
|
|
200
|
+
src: url(/fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC73w9aXp-p7K4KLjztg.woff2) format('woff2');
|
|
201
|
+
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/* vietnamese */
|
|
205
|
+
@font-face {
|
|
206
|
+
font-family: 'Montserrat';
|
|
207
|
+
font-style: normal;
|
|
208
|
+
font-weight: 900;
|
|
209
|
+
font-display: swap;
|
|
210
|
+
src: url(/fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC73w2aXp-p7K4KLjztg.woff2) format('woff2');
|
|
211
|
+
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/* latin-ext */
|
|
215
|
+
@font-face {
|
|
216
|
+
font-family: 'Montserrat';
|
|
217
|
+
font-style: normal;
|
|
218
|
+
font-weight: 900;
|
|
219
|
+
font-display: swap;
|
|
220
|
+
src: url(/fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC73w3aXp-p7K4KLjztg.woff2) format('woff2');
|
|
221
|
+
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
/* latin */
|
|
225
|
+
@font-face {
|
|
226
|
+
font-family: 'Montserrat';
|
|
227
|
+
font-style: normal;
|
|
228
|
+
font-weight: 900;
|
|
229
|
+
font-display: swap;
|
|
230
|
+
src: url(/fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC73w5aXp-p7K4KLg.woff2) format('woff2');
|
|
231
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
232
|
+
}
|
|
233
|
+
</style>
|
|
234
|
+
|
|
235
|
+
<meta name="robots" content="noindex, follow">
|
|
236
|
+
</head>
|
|
237
|
+
|
|
238
|
+
<body>
|
|
239
|
+
<div id="notfound">
|
|
240
|
+
<div class="notfound">
|
|
241
|
+
<div class="notfound-404">
|
|
242
|
+
<h3>Oops! Page not found</h3>
|
|
243
|
+
<h1><span>4</span><span>0</span><span>4</span></h1>
|
|
244
|
+
</div>
|
|
245
|
+
<h2>we are sorry, but the page you requested was not found</h2>
|
|
246
|
+
</div>
|
|
247
|
+
</div>
|
|
248
|
+
</body>
|
|
249
|
+
|
|
250
|
+
</html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Component 1
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<title>[ProjectName]</title>
|
|
6
|
+
<meta charset="UTF-8">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, minimum-scale=1.0" />
|
|
8
|
+
<meta name="language" content="En">
|
|
9
|
+
<meta rel="publisher" content="BEAJS" />
|
|
10
|
+
<meta rel="author" content="BEAJS" />
|
|
11
|
+
<meta name="title" content="[ProjectName] Official Site" />
|
|
12
|
+
<meta name="description" content="[ProjectName] Official Site." />
|
|
13
|
+
<meta name="Keywords" content="" />
|
|
14
|
+
<meta name="theme-color" content="#3367D6" />
|
|
15
|
+
|
|
16
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
17
|
+
<link href="/css/bea.css" rel="stylesheet" type="text/css" />
|
|
18
|
+
<link href="/css/styles.css" rel="stylesheet" type="text/css" />
|
|
19
|
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/MaterialDesign-Webfont/6.6.96/css/materialdesignicons.min.css"
|
|
20
|
+
rel="stylesheet" />
|
|
21
|
+
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
|
22
|
+
<!-- <link rel="icon" type="image/png" href="/favicon.png" /> -->
|
|
23
|
+
|
|
24
|
+
<meta property="og:url" content="https://www.example.com/" />
|
|
25
|
+
<meta property="og:title" content="[ProjectName] Official Site" />
|
|
26
|
+
<meta property="og:type" content="business.business" />
|
|
27
|
+
<meta property="og:site_name" content="[ProjectName]" />
|
|
28
|
+
<meta property="fb:admins" content="592515154" />
|
|
29
|
+
<meta property="fb:app_id" content="138025696270006" />
|
|
30
|
+
<meta property="og:description" content="[ProjectName] Official Site." />
|
|
31
|
+
<meta property="og:image" content="/images/example.png" />
|
|
32
|
+
<meta property="business:contact_data:street_address" content="Street Address." />
|
|
33
|
+
<meta property="business:contact_data:locality" content="Tripoli" />
|
|
34
|
+
<meta property="business:contact_data:postal_code" content="1300" />
|
|
35
|
+
<meta property="business:contact_data:country_name" content="Lebanon" />
|
|
36
|
+
<meta property="business:contact_data:email" content="info@example.com" />
|
|
37
|
+
<meta property="business:contact_data:phone_number" content="+96171299411" />
|
|
38
|
+
<meta property="business:contact_data:fax_number" content="" />
|
|
39
|
+
<meta property="business:contact_data:website" content="https://www.example.com/" />
|
|
40
|
+
</head>
|
|
41
|
+
|
|
42
|
+
<body>
|
|
43
|
+
<div main></div>
|
|
44
|
+
<script src="/js/bea.js" type="text/javascript"></script>
|
|
45
|
+
<script src="/index.js" type="text/javascript"></script>
|
|
46
|
+
</body>
|
|
47
|
+
|
|
48
|
+
</html>
|
|
File without changes
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<style>
|
|
2
|
+
a.active {
|
|
3
|
+
font-weight: 900;
|
|
4
|
+
color: black;
|
|
5
|
+
}
|
|
6
|
+
</style>
|
|
7
|
+
<div class="oh pv40 upper cb70">
|
|
8
|
+
<grid_nm gap40>
|
|
9
|
+
<div><a href="/" n0="home">Home</a></div>
|
|
10
|
+
<div><a href="/about" n0="about">About Us</a></div>
|
|
11
|
+
<div><a href="/contact" n0="contact">Contact Us</a></div>
|
|
12
|
+
</grid_nm>
|
|
13
|
+
</div>
|
|
File without changes
|