@opengis/admin 0.1.27 → 0.1.28
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 +29 -29
- package/config.js +4 -4
- package/dist/{IconSearch-CTjruqP_.js → IconSearch-B9h4uJrQ.js} +1 -1
- package/dist/{add-page-_f-u6pKm.js → add-page-DT_V_-dX.js} +1 -1
- package/dist/{admin-interface-BEGo6Nou.js → admin-interface-CGDa_i8E.js} +285 -290
- package/dist/{admin-view-KQUUMduA.js → admin-view-D_gnk37B.js} +3 -3
- package/dist/admin.js +1 -1
- package/dist/admin.umd.cjs +55 -55
- package/dist/{card-page-aj2AtGvv.js → card-page-B-KPpKLO.js} +19 -19
- package/dist/{card-view-jKx2Oevk.js → card-view-ChQ86dRT.js} +1 -1
- package/dist/{edit-page-BuolDXZx.js → edit-page-ChpgKkhK.js} +1 -1
- package/dist/{import-file-BB530Z8E.js → import-file-rpq4v06F.js} +9426 -8825
- package/dist/style.css +1 -1
- package/module/settings/card/admin.roles.table/access.hbs +27 -27
- package/module/settings/card/admin.roles.table/general_info.hbs +16 -16
- package/module/settings/card/admin.roles.table/index.yml +14 -12
- package/module/settings/card/admin.roles.table/users.hbs +27 -27
- package/module/settings/card/admin.routes.table/general_info.hbs +40 -40
- package/module/settings/card/admin.routes.table/index.yml +8 -8
- package/module/settings/card/admin.routes.table/users.hbs +33 -33
- package/module/settings/card/admin.users.table/general_info.hbs +25 -25
- package/module/settings/card/admin.users.table/index.yml +12 -12
- package/module/settings/card/admin.users.table/logs.hbs +30 -30
- package/module/settings/card/admin.users.table/user_roles.hbs +24 -24
- package/module/settings/cls/core.actions.json +13 -13
- package/module/settings/cls/core.scope.json +13 -13
- package/module/settings/cls/properties.site_status.json +13 -13
- package/module/settings/cls/properties.widget_status.json +13 -13
- package/module/settings/cls/users.user_type.json +13 -13
- package/module/settings/form/admin.access.form.json +36 -36
- package/module/settings/form/admin.properties.form.json +15 -15
- package/module/settings/form/admin.roles.form.json +19 -19
- package/module/settings/form/admin.routes.form.json +25 -25
- package/module/settings/form/admin.user_properties.form.json +15 -15
- package/module/settings/form/admin.user_roles.form.json +21 -21
- package/module/settings/form/admin.users.form.json +150 -164
- package/module/settings/form/user.user_roles.form.json +13 -13
- package/module/settings/interface/admin.properties.json +4 -4
- package/module/settings/interface/admin.roles.json +4 -4
- package/module/settings/interface/admin.routes.json +4 -4
- package/module/settings/interface/admin.users.json +4 -4
- package/module/settings/menu.json +39 -39
- package/module/settings/select/core.roles.json +2 -2
- package/module/settings/select/core.user_uid.sql +1 -1
- package/module/settings/table/admin.access.table.json +77 -77
- package/module/settings/table/admin.properties.table.json +33 -33
- package/module/settings/table/admin.roles.table.json +58 -58
- package/module/settings/table/admin.routes.table.json +55 -55
- package/module/settings/table/admin.user_properties.table.json +28 -28
- package/module/settings/table/admin.user_roles.table.json +66 -66
- package/module/settings/table/admin.users.table.json +119 -125
- package/package.json +66 -66
- package/plugin.js +25 -25
- package/server/helpers/controllers/badge.js +11 -11
- package/server/helpers/controllers/hb.js +2 -2
- package/server/helpers/controllers/map.js +2 -2
- package/server/helpers/controllers/mls.js +2 -2
- package/server/helpers/controllers/vue.js +2 -2
- package/server/helpers/index.mjs +13 -13
- package/server/plugins/docs.js +28 -28
- package/server/plugins/hook.js +161 -161
- package/server/plugins/vite.js +69 -69
- package/server/routes/data/controllers/cardData.js +56 -31
- package/server/routes/data/controllers/cardTabData.js +40 -0
- package/server/routes/data/controllers/funcs/getFilterSQL/index.js +85 -85
- package/server/routes/data/controllers/funcs/getFilterSQL/util/formatValue.js +142 -142
- package/server/routes/data/controllers/funcs/getFilterSQL/util/getCustomQuery.js +13 -13
- package/server/routes/data/controllers/funcs/getFilterSQL/util/getFilterQuery.js +67 -67
- package/server/routes/data/controllers/funcs/getFilterSQL/util/getOptimizedQuery.js +12 -12
- package/server/routes/data/controllers/funcs/getFilterSQL/util/getTableSql.js +34 -34
- package/server/routes/data/controllers/tableData.js +121 -121
- package/server/routes/data/controllers/tableDataId.js +27 -27
- package/server/routes/data/controllers/tableFilter.js +54 -54
- package/server/routes/data/controllers/utils/assignTokens.js +30 -30
- package/server/routes/data/controllers/utils/getColumns.js +21 -21
- package/server/routes/data/index.mjs +12 -10
- package/server/routes/menu/controllers/getMenu.js +33 -33
- package/server/routes/menu/index.mjs +5 -5
- package/server/routes/properties/controllers/admin.properties.get.js +29 -29
- package/server/routes/properties/controllers/user.properties.get.js +34 -34
- package/server/routes/properties/controllers/user.properties.post.js +30 -30
- package/server/routes/properties/funcs/getSettings.js +56 -56
- package/server/routes/properties/funcs/setSettings.js +44 -44
- package/server/routes/properties/funcs/utils/dataInsert.js +26 -26
- package/server/routes/properties/index.mjs +26 -26
- package/server/routes/root.mjs +3 -3
- package/server/routes/templates/controllers/getTemplate.js +14 -14
- package/server/routes/templates/index.mjs +14 -14
- package/server/templates/cls/itree.recrzone_category.json +73 -73
- package/server/templates/cls/test.json +9 -9
- package/server/templates/form/admin.user_cls.data.form.json +49 -49
- package/server/templates/form/admin.user_group_rel.form.json +21 -21
- package/server/templates/form/cp_building.form.json +32 -32
- package/server/templates/form/form-user-pass.json +10 -10
- package/server/templates/form/form-user_group.json +39 -39
- package/server/templates/form/form-users.json +156 -156
- package/server/templates/form/user_group_access.form.json +22 -22
- package/server/templates/select/account_id.json +2 -2
- package/server/templates/table/gis.dataset.table.json +43 -43
- package/server/templates/table/management.user_group.table.json +112 -112
- package/server/templates/table/management.users.table.json +126 -126
- package/utils.js +8 -8
|
@@ -1,126 +1,120 @@
|
|
|
1
|
-
{
|
|
2
|
-
"key": "uid",
|
|
3
|
-
"ua": "Користувачі",
|
|
4
|
-
"table": "admin.users",
|
|
5
|
-
"form": "admin.users.form",
|
|
6
|
-
"order": "cdate desc",
|
|
7
|
-
"action": [
|
|
8
|
-
"edit",
|
|
9
|
-
"del"
|
|
10
|
-
],
|
|
11
|
-
"meta": {
|
|
12
|
-
"title": "user_name",
|
|
13
|
-
"search": "sur_name,user_name,uid,father_name,email,phone,login"
|
|
14
|
-
},
|
|
15
|
-
"sql": [
|
|
16
|
-
{
|
|
17
|
-
"sql": "select count(*) as group_count from admin.user_group_rel where user_uid=t.uid",
|
|
18
|
-
"name": "group_count_sql"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"sql": "select concat(user_name, ' ', sur_name, ' ', father_name, ' ') as full_name",
|
|
22
|
-
"name": "full_name_sql"
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"sql": "select string_agg(group_name,',') as groups from admin.user_group where user_group_id in (select user_group_id from admin.user_group_rel where user_uid=t.uid)",
|
|
26
|
-
"name": "group_list_sql"
|
|
27
|
-
}
|
|
28
|
-
],
|
|
29
|
-
"columns": [
|
|
30
|
-
{
|
|
31
|
-
"ua": "ПІБ",
|
|
32
|
-
"name": "full_name",
|
|
33
|
-
"format": "text"
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"ua": "Логін",
|
|
37
|
-
"name": "login",
|
|
38
|
-
"format": "text"
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
"ua": "Email",
|
|
42
|
-
"name": "email",
|
|
43
|
-
"hidden": true,
|
|
44
|
-
"format": "text"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"ua": "РНОКПП",
|
|
48
|
-
"name": "user_rnokpp",
|
|
49
|
-
"hidden": true,
|
|
50
|
-
"format": "text"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"format": "text"
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"name": "
|
|
65
|
-
"ua": "
|
|
66
|
-
"
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"format": "
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
"ua": "
|
|
99
|
-
"name": "
|
|
100
|
-
"type": "Text"
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
"en": "
|
|
104
|
-
"ua": "
|
|
105
|
-
"
|
|
106
|
-
"
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
"ua": "
|
|
111
|
-
"
|
|
112
|
-
"
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
"
|
|
117
|
-
"
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
{
|
|
121
|
-
"name": "editor_date",
|
|
122
|
-
"type": "Date",
|
|
123
|
-
"ua": "Дата останньої активності"
|
|
124
|
-
}
|
|
125
|
-
]
|
|
1
|
+
{
|
|
2
|
+
"key": "uid",
|
|
3
|
+
"ua": "Користувачі",
|
|
4
|
+
"table": "admin.users",
|
|
5
|
+
"form": "admin.users.form",
|
|
6
|
+
"order": "cdate desc",
|
|
7
|
+
"action": [
|
|
8
|
+
"edit",
|
|
9
|
+
"del"
|
|
10
|
+
],
|
|
11
|
+
"meta": {
|
|
12
|
+
"title": "user_name",
|
|
13
|
+
"search": "sur_name,user_name,uid,father_name,email,phone,login"
|
|
14
|
+
},
|
|
15
|
+
"sql": [
|
|
16
|
+
{
|
|
17
|
+
"sql": "select count(*) as group_count from admin.user_group_rel where user_uid=t.uid",
|
|
18
|
+
"name": "group_count_sql"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"sql": "select concat(user_name, ' ', sur_name, ' ', father_name, ' ') as full_name",
|
|
22
|
+
"name": "full_name_sql"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"sql": "select string_agg(group_name,',') as groups from admin.user_group where user_group_id in (select user_group_id from admin.user_group_rel where user_uid=t.uid)",
|
|
26
|
+
"name": "group_list_sql"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"columns": [
|
|
30
|
+
{
|
|
31
|
+
"ua": "ПІБ",
|
|
32
|
+
"name": "full_name",
|
|
33
|
+
"format": "text"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"ua": "Логін",
|
|
37
|
+
"name": "login",
|
|
38
|
+
"format": "text"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"ua": "Email",
|
|
42
|
+
"name": "email",
|
|
43
|
+
"hidden": true,
|
|
44
|
+
"format": "text"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"ua": "РНОКПП",
|
|
48
|
+
"name": "user_rnokpp",
|
|
49
|
+
"hidden": true,
|
|
50
|
+
"format": "text"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "group_count",
|
|
54
|
+
"ua": "Кількість груп",
|
|
55
|
+
"format": "text"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"name": "groups",
|
|
59
|
+
"ua": "Групи",
|
|
60
|
+
"hidden": true,
|
|
61
|
+
"format": "text"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"name": "cdate",
|
|
65
|
+
"ua": "Створено",
|
|
66
|
+
"format": "date"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "editor_date",
|
|
70
|
+
"ua": "Дата останньої активності",
|
|
71
|
+
"format": "date"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "enabled",
|
|
75
|
+
"ua": "Вимикач",
|
|
76
|
+
"data": "yes_no",
|
|
77
|
+
"format": "select"
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"filter_list": [
|
|
81
|
+
{
|
|
82
|
+
"ua": "РНОКПП",
|
|
83
|
+
"name": "user_rnokpp",
|
|
84
|
+
"type": "Text"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"ua": "Код ЄДРПОУ",
|
|
88
|
+
"name": "organ_edrpou",
|
|
89
|
+
"type": "Text"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"ua": "Email",
|
|
93
|
+
"name": "email",
|
|
94
|
+
"type": "Text"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"en": "Group",
|
|
98
|
+
"ua": "Група",
|
|
99
|
+
"name": "groups",
|
|
100
|
+
"type": "Text"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"en": "On/Off",
|
|
104
|
+
"ua": "On/Off",
|
|
105
|
+
"data": "enabled",
|
|
106
|
+
"name": "enabled",
|
|
107
|
+
"type": "Check"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"ua": "Дата створення",
|
|
111
|
+
"name": "cdate",
|
|
112
|
+
"type": "Date"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name": "editor_date",
|
|
116
|
+
"type": "Date",
|
|
117
|
+
"ua": "Дата останньої активності"
|
|
118
|
+
}
|
|
119
|
+
]
|
|
126
120
|
}
|
package/package.json
CHANGED
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@opengis/admin",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "This project Softpro Admin",
|
|
5
|
-
"main": "dist/admin.js",
|
|
6
|
-
"type": "module",
|
|
7
|
-
"directories": {
|
|
8
|
-
"test": "test"
|
|
9
|
-
},
|
|
10
|
-
"files": [
|
|
11
|
-
"dist/*",
|
|
12
|
-
"module/*",
|
|
13
|
-
"server/*",
|
|
14
|
-
"plugin.js",
|
|
15
|
-
"utils.js",
|
|
16
|
-
"config.js"
|
|
17
|
-
],
|
|
18
|
-
"scripts": {
|
|
19
|
-
"test": "node --test test/**/*.test.js",
|
|
20
|
-
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
|
|
21
|
-
"build": "vite build",
|
|
22
|
-
"build-app": "cross-env APP=true vite build",
|
|
23
|
-
"admin": "cross-env NODE_ENV=admin npm run start",
|
|
24
|
-
"admin1": "cross-env NODE_ENV=admin1 npm run start",
|
|
25
|
-
"prod": "cross-env NODE_ENV=production npm run start",
|
|
26
|
-
"start": "node --watch-path=server server vite ",
|
|
27
|
-
"docs:dev": "vitepress dev docs",
|
|
28
|
-
"docs:build": "vitepress build docs",
|
|
29
|
-
"docs:preview": "vitepress preview docs"
|
|
30
|
-
},
|
|
31
|
-
"keywords": [],
|
|
32
|
-
"author": "Softpro",
|
|
33
|
-
"license": "ISC",
|
|
34
|
-
"dependencies": {
|
|
35
|
-
"@opengis/fastify-auth": "^1.0.33",
|
|
36
|
-
"@opengis/fastify-file": "^1.0.17",
|
|
37
|
-
"@opengis/fastify-table": "^1.1.16",
|
|
38
|
-
"@opengis/v3-core": "^0.1.92",
|
|
39
|
-
"@opengis/v3-filter": "^0.0.31",
|
|
40
|
-
"@turf/turf": "^7.1.0",
|
|
41
|
-
"@vitejs/plugin-vue": "^5.0.4",
|
|
42
|
-
"close-with-grace": "^1.3.0",
|
|
43
|
-
"cross-env": "^7.0.3",
|
|
44
|
-
"fastify": "^4.26.1",
|
|
45
|
-
"fastify-plugin": "^4.0.0",
|
|
46
|
-
"maplibre-gl": "^4.7.0",
|
|
47
|
-
"moment": "^2.30.1",
|
|
48
|
-
"vite": "^5.1.4",
|
|
49
|
-
"vue": "^3.4.21",
|
|
50
|
-
"vue-router": "^4.3.0"
|
|
51
|
-
},
|
|
52
|
-
"devDependencies": {
|
|
53
|
-
"@panzoom/panzoom": "^4.5.1",
|
|
54
|
-
"@vue/eslint-config-typescript": "^12.0.0",
|
|
55
|
-
"eslint": "^8.49.0",
|
|
56
|
-
"eslint-config-airbnb": "^19.0.4",
|
|
57
|
-
"eslint-plugin-import": "^2.25.3",
|
|
58
|
-
"eslint-plugin-vue": "^9.17.0",
|
|
59
|
-
"markdown-it-abbr": "^2.0.0",
|
|
60
|
-
"mermaid": "^10.9.0",
|
|
61
|
-
"sass-embedded": "^1.79.1",
|
|
62
|
-
"vitepress": "^1.1.3",
|
|
63
|
-
"vitepress-plugin-mermaid": "^2.0.16",
|
|
64
|
-
"vitepress-plugin-tabs": "^0.5.0",
|
|
65
|
-
"vitepress-sidebar": "^1.22.0"
|
|
66
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@opengis/admin",
|
|
3
|
+
"version": "0.1.28",
|
|
4
|
+
"description": "This project Softpro Admin",
|
|
5
|
+
"main": "dist/admin.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"directories": {
|
|
8
|
+
"test": "test"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist/*",
|
|
12
|
+
"module/*",
|
|
13
|
+
"server/*",
|
|
14
|
+
"plugin.js",
|
|
15
|
+
"utils.js",
|
|
16
|
+
"config.js"
|
|
17
|
+
],
|
|
18
|
+
"scripts": {
|
|
19
|
+
"test": "node --test test/**/*.test.js",
|
|
20
|
+
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
|
|
21
|
+
"build": "vite build",
|
|
22
|
+
"build-app": "cross-env APP=true vite build",
|
|
23
|
+
"admin": "cross-env NODE_ENV=admin npm run start",
|
|
24
|
+
"admin1": "cross-env NODE_ENV=admin1 npm run start",
|
|
25
|
+
"prod": "cross-env NODE_ENV=production npm run start",
|
|
26
|
+
"start": "node --watch-path=server server vite ",
|
|
27
|
+
"docs:dev": "vitepress dev docs",
|
|
28
|
+
"docs:build": "vitepress build docs",
|
|
29
|
+
"docs:preview": "vitepress preview docs"
|
|
30
|
+
},
|
|
31
|
+
"keywords": [],
|
|
32
|
+
"author": "Softpro",
|
|
33
|
+
"license": "ISC",
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"@opengis/fastify-auth": "^1.0.33",
|
|
36
|
+
"@opengis/fastify-file": "^1.0.17",
|
|
37
|
+
"@opengis/fastify-table": "^1.1.16",
|
|
38
|
+
"@opengis/v3-core": "^0.1.92",
|
|
39
|
+
"@opengis/v3-filter": "^0.0.31",
|
|
40
|
+
"@turf/turf": "^7.1.0",
|
|
41
|
+
"@vitejs/plugin-vue": "^5.0.4",
|
|
42
|
+
"close-with-grace": "^1.3.0",
|
|
43
|
+
"cross-env": "^7.0.3",
|
|
44
|
+
"fastify": "^4.26.1",
|
|
45
|
+
"fastify-plugin": "^4.0.0",
|
|
46
|
+
"maplibre-gl": "^4.7.0",
|
|
47
|
+
"moment": "^2.30.1",
|
|
48
|
+
"vite": "^5.1.4",
|
|
49
|
+
"vue": "^3.4.21",
|
|
50
|
+
"vue-router": "^4.3.0"
|
|
51
|
+
},
|
|
52
|
+
"devDependencies": {
|
|
53
|
+
"@panzoom/panzoom": "^4.5.1",
|
|
54
|
+
"@vue/eslint-config-typescript": "^12.0.0",
|
|
55
|
+
"eslint": "^8.49.0",
|
|
56
|
+
"eslint-config-airbnb": "^19.0.4",
|
|
57
|
+
"eslint-plugin-import": "^2.25.3",
|
|
58
|
+
"eslint-plugin-vue": "^9.17.0",
|
|
59
|
+
"markdown-it-abbr": "^2.0.0",
|
|
60
|
+
"mermaid": "^10.9.0",
|
|
61
|
+
"sass-embedded": "^1.79.1",
|
|
62
|
+
"vitepress": "^1.1.3",
|
|
63
|
+
"vitepress-plugin-mermaid": "^2.0.16",
|
|
64
|
+
"vitepress-plugin-tabs": "^0.5.0",
|
|
65
|
+
"vitepress-sidebar": "^1.22.0"
|
|
66
|
+
}
|
|
67
67
|
}
|
package/plugin.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import fp from 'fastify-plugin';
|
|
2
|
-
import config from './config.js';
|
|
3
|
-
config.prefix = config.prefix || '/api'
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
async function plugin(fastify, opts = config) {
|
|
7
|
-
// const prefix = config.prefix || '/api';
|
|
8
|
-
|
|
9
|
-
// core
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
fastify.register(import('./server/helpers/index.mjs'), opts);
|
|
13
|
-
// fastify.register(import('@opengis/fastify-auth'), config);
|
|
14
|
-
|
|
15
|
-
// fastify.register(import('./server/plugins/vike.js'));
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
// API
|
|
19
|
-
|
|
20
|
-
fastify.register(import('./server/routes/properties/index.mjs'), opts);
|
|
21
|
-
fastify.register(import('./server/routes/templates/index.mjs'), opts);
|
|
22
|
-
fastify.register(import('./server/routes/menu/index.mjs'), opts);
|
|
23
|
-
fastify.register(import('./server/routes/data/index.mjs'), opts);
|
|
24
|
-
|
|
25
|
-
}
|
|
1
|
+
import fp from 'fastify-plugin';
|
|
2
|
+
import config from './config.js';
|
|
3
|
+
config.prefix = config.prefix || '/api'
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
async function plugin(fastify, opts = config) {
|
|
7
|
+
// const prefix = config.prefix || '/api';
|
|
8
|
+
|
|
9
|
+
// core
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
fastify.register(import('./server/helpers/index.mjs'), opts);
|
|
13
|
+
// fastify.register(import('@opengis/fastify-auth'), config);
|
|
14
|
+
|
|
15
|
+
// fastify.register(import('./server/plugins/vike.js'));
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
// API
|
|
19
|
+
|
|
20
|
+
fastify.register(import('./server/routes/properties/index.mjs'), opts);
|
|
21
|
+
fastify.register(import('./server/routes/templates/index.mjs'), opts);
|
|
22
|
+
fastify.register(import('./server/routes/menu/index.mjs'), opts);
|
|
23
|
+
fastify.register(import('./server/routes/data/index.mjs'), opts);
|
|
24
|
+
|
|
25
|
+
}
|
|
26
26
|
export default fp(plugin)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export default async function badge(data, options = {}) {
|
|
2
|
-
if (!data) return '-';
|
|
3
|
-
//const cls = await getSelect(options.data, { val: data, full: 1 });
|
|
4
|
-
|
|
5
|
-
return data;
|
|
6
|
-
/*const html = cls?.map((el) => {
|
|
7
|
-
const color = bscolor[el.color] || el.color || '#aaa';
|
|
8
|
-
return `<span class="el-tag el-tag--mini" style="color:${color || '#aaa'};border-color:${color || '#aaa'};background:unset;">
|
|
9
|
-
${funcs.locale(el.id, { lang: root.lang, prefix: opt.data, type: 'cls' }) || el.text}</span>`;
|
|
10
|
-
}).join(', ');
|
|
11
|
-
return html;*/
|
|
1
|
+
export default async function badge(data, options = {}) {
|
|
2
|
+
if (!data) return '-';
|
|
3
|
+
//const cls = await getSelect(options.data, { val: data, full: 1 });
|
|
4
|
+
|
|
5
|
+
return data;
|
|
6
|
+
/*const html = cls?.map((el) => {
|
|
7
|
+
const color = bscolor[el.color] || el.color || '#aaa';
|
|
8
|
+
return `<span class="el-tag el-tag--mini" style="color:${color || '#aaa'};border-color:${color || '#aaa'};background:unset;">
|
|
9
|
+
${funcs.locale(el.id, { lang: root.lang, prefix: opt.data, type: 'cls' }) || el.text}</span>`;
|
|
10
|
+
}).join(', ');
|
|
11
|
+
return html;*/
|
|
12
12
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export default async function _hb() {
|
|
2
|
-
return '';
|
|
1
|
+
export default async function _hb() {
|
|
2
|
+
return '';
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export default async function map() {
|
|
2
|
-
return '';
|
|
1
|
+
export default async function map() {
|
|
2
|
+
return '';
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export default async function _mls(data, options={}) {
|
|
2
|
-
return data.hash?.ua || options?.hash?.ua || '';
|
|
1
|
+
export default async function _mls(data, options={}) {
|
|
2
|
+
return data.hash?.ua || options?.hash?.ua || '';
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export default async function _vue() {
|
|
2
|
-
return '';
|
|
1
|
+
export default async function _vue() {
|
|
2
|
+
return '';
|
|
3
3
|
}
|
package/server/helpers/index.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import _hb from "./controllers/hb.js";
|
|
2
|
-
import _vue from "./controllers/vue.js";
|
|
3
|
-
import map from "./controllers/map.js";
|
|
4
|
-
import _mls from "./controllers/mls.js";
|
|
5
|
-
import badge from "./controllers/badge.js";
|
|
6
|
-
|
|
7
|
-
export default async function route(fastify) {
|
|
8
|
-
fastify.handlebars.registerHelper('_hb', _hb);
|
|
9
|
-
fastify.handlebars.registerHelper('_vue', _vue);
|
|
10
|
-
fastify.handlebars.registerHelper('map', map);
|
|
11
|
-
fastify.handlebars.registerHelper('mls', _mls);
|
|
12
|
-
fastify.handlebars.registerHelper('badge', badge);
|
|
13
|
-
}
|
|
1
|
+
import _hb from "./controllers/hb.js";
|
|
2
|
+
import _vue from "./controllers/vue.js";
|
|
3
|
+
import map from "./controllers/map.js";
|
|
4
|
+
import _mls from "./controllers/mls.js";
|
|
5
|
+
import badge from "./controllers/badge.js";
|
|
6
|
+
|
|
7
|
+
export default async function route(fastify) {
|
|
8
|
+
fastify.handlebars.registerHelper('_hb', _hb);
|
|
9
|
+
fastify.handlebars.registerHelper('_vue', _vue);
|
|
10
|
+
fastify.handlebars.registerHelper('map', map);
|
|
11
|
+
fastify.handlebars.registerHelper('mls', _mls);
|
|
12
|
+
fastify.handlebars.registerHelper('badge', badge);
|
|
13
|
+
}
|
package/server/plugins/docs.js
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
import path, { dirname } from 'path';
|
|
4
|
-
import { fileURLToPath } from 'url';
|
|
5
|
-
import fs from 'fs';
|
|
6
|
-
|
|
7
|
-
const dir = dirname(fileURLToPath(import.meta.url));
|
|
8
|
-
const root = `${dir}/../../`;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
async function plugin(fastify, opts) {
|
|
12
|
-
fastify.get('/docs*', async (req, reply) => {
|
|
13
|
-
if (!fs.existsSync(path.join(root, 'docs/.vitepress/dist/'))) {
|
|
14
|
-
return reply.status(404).send('docs not exists');
|
|
15
|
-
}
|
|
16
|
-
const { params } = req;
|
|
17
|
-
const url = params['*']
|
|
18
|
-
const filePath = url && url[url.length - 1] !== '/' ? path.join(root, 'docs/.vitepress/dist/', url) : path.join(root, 'docs/.vitepress/dist/', url, 'index.html')
|
|
19
|
-
const ext = path.extname(filePath);
|
|
20
|
-
const mime = {
|
|
21
|
-
'.js': 'text/javascript', '.css': 'text/css', '.woff2': 'application/font-woff', '.png': 'image/png', '.svg': 'image/svg+xml', '.jpg': 'image/jpg'
|
|
22
|
-
}[ext];
|
|
23
|
-
const stream = fs.createReadStream(filePath);
|
|
24
|
-
return mime ? reply.type(mime).send(stream) : stream;
|
|
25
|
-
|
|
26
|
-
})
|
|
27
|
-
}
|
|
28
|
-
export default plugin;
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
import path, { dirname } from 'path';
|
|
4
|
+
import { fileURLToPath } from 'url';
|
|
5
|
+
import fs from 'fs';
|
|
6
|
+
|
|
7
|
+
const dir = dirname(fileURLToPath(import.meta.url));
|
|
8
|
+
const root = `${dir}/../../`;
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
async function plugin(fastify, opts) {
|
|
12
|
+
fastify.get('/docs*', async (req, reply) => {
|
|
13
|
+
if (!fs.existsSync(path.join(root, 'docs/.vitepress/dist/'))) {
|
|
14
|
+
return reply.status(404).send('docs not exists');
|
|
15
|
+
}
|
|
16
|
+
const { params } = req;
|
|
17
|
+
const url = params['*']
|
|
18
|
+
const filePath = url && url[url.length - 1] !== '/' ? path.join(root, 'docs/.vitepress/dist/', url) : path.join(root, 'docs/.vitepress/dist/', url, 'index.html')
|
|
19
|
+
const ext = path.extname(filePath);
|
|
20
|
+
const mime = {
|
|
21
|
+
'.js': 'text/javascript', '.css': 'text/css', '.woff2': 'application/font-woff', '.png': 'image/png', '.svg': 'image/svg+xml', '.jpg': 'image/jpg'
|
|
22
|
+
}[ext];
|
|
23
|
+
const stream = fs.createReadStream(filePath);
|
|
24
|
+
return mime ? reply.type(mime).send(stream) : stream;
|
|
25
|
+
|
|
26
|
+
})
|
|
27
|
+
}
|
|
28
|
+
export default plugin;
|