renusify 2.1.5 → 2.1.8
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/components/codeEditor/index.vue +10 -10
- package/components/codeEditor/run.vue +3 -3
- package/components/form/checkboxInput/index.vue +6 -2
- package/components/form/groupInput/index.vue +5 -2
- package/components/form/selectInput/index.vue +2 -2
- package/components/form/switchInput/index.vue +3 -1
- package/components/form/text-editor/style.scss +1 -1
- package/components/form/timeInput/range.vue +6 -6
- package/components/img/index.vue +1 -1
- package/components/list/index.vue +105 -104
- package/components/message/index.vue +1 -1
- package/components/modal/style.scss +1 -1
- package/components/nestable/NestableItem.vue +2 -2
- package/components/nestable/editable.js +5 -5
- package/components/nestable/index.vue +8 -6
- package/components/table/crud/index.vue +1 -1
- package/docs/.browserslistrc +4 -0
- package/docs/.editorconfig +5 -0
- package/docs/babel.config.js +3 -0
- package/docs/jsconfig.json +19 -0
- package/docs/package-lock.json +23358 -0
- package/docs/package.json +34 -0
- package/docs/public/404.jpg +0 -0
- package/docs/public/index.html +18 -0
- package/docs/public/logo.jpg +0 -0
- package/docs/public/manifest.json +23 -0
- package/docs/public/pwa/android-chrome-192x192.png +0 -0
- package/docs/public/pwa/android-chrome-256x256.png +0 -0
- package/docs/public/pwa/apple-touch-icon.png +0 -0
- package/docs/public/pwa/favicon-16x16.png +0 -0
- package/docs/public/pwa/favicon-32x32.png +0 -0
- package/docs/public/pwa/favicon.ico +0 -0
- package/docs/public/pwa/mstile-150x150.png +0 -0
- package/docs/public/pwa/safari-pinned-tab.svg +17 -0
- package/docs/public/robots.txt +2 -0
- package/docs/src/Index.vue +17 -0
- package/docs/src/components/buttomNextPage.vue +72 -0
- package/docs/src/components/sideBar.vue +141 -0
- package/docs/src/components/tableEvents.vue +36 -0
- package/docs/src/components/tableProps.vue +36 -0
- package/docs/src/components/treeElement.vue +21 -0
- package/docs/src/index.js +26 -0
- package/docs/src/layouts/renusify.vue +215 -0
- package/docs/src/plugins/axios.js +54 -0
- package/docs/src/registerServiceWorker.js +47 -0
- package/docs/src/router/index.js +43 -0
- package/docs/src/views/index/notFound/en.vue +36 -0
- package/docs/src/views/index/notFound/fa.vue +35 -0
- package/docs/src/views/index/notFound/index.vue +26 -0
- package/docs/src/views/index/pages.vue +50 -0
- package/docs/src/views/index/v1/component/app/en.vue +61 -0
- package/docs/src/views/index/v1/component/app/fa.vue +66 -0
- package/docs/src/views/index/v1/component/avatar/en.vue +184 -0
- package/docs/src/views/index/v1/component/avatar/fa.vue +208 -0
- package/docs/src/views/index/v1/component/bar/bottomNavigation/en.vue +181 -0
- package/docs/src/views/index/v1/component/bar/bottomNavigation/fa.vue +180 -0
- package/docs/src/views/index/v1/component/bar/bottomNavigationCircle/en.vue +100 -0
- package/docs/src/views/index/v1/component/bar/bottomNavigationCircle/fa.vue +98 -0
- package/docs/src/views/index/v1/component/bar/toolbar/en.vue +231 -0
- package/docs/src/views/index/v1/component/bar/toolbar/fa.vue +232 -0
- package/docs/src/views/index/v1/component/breadcrumbs/en.vue +84 -0
- package/docs/src/views/index/v1/component/breadcrumbs/fa.vue +86 -0
- package/docs/src/views/index/v1/component/button/btn/en.vue +282 -0
- package/docs/src/views/index/v1/component/button/btn/fa.vue +286 -0
- package/docs/src/views/index/v1/component/button/btn_confirm/en.vue +155 -0
- package/docs/src/views/index/v1/component/button/btn_confirm/fa.vue +154 -0
- package/docs/src/views/index/v1/component/button/btn_group/en.vue +118 -0
- package/docs/src/views/index/v1/component/button/btn_group/fa.vue +117 -0
- package/docs/src/views/index/v1/component/calendar/en.vue +286 -0
- package/docs/src/views/index/v1/component/calendar/fa.vue +274 -0
- package/docs/src/views/index/v1/component/card/en.vue +283 -0
- package/docs/src/views/index/v1/component/card/fa.vue +294 -0
- package/docs/src/views/index/v1/component/chart/en.vue +113 -0
- package/docs/src/views/index/v1/component/chart/fa.vue +113 -0
- package/docs/src/views/index/v1/component/chart/worldMap/en.vue +112 -0
- package/docs/src/views/index/v1/component/chart/worldMap/fa.vue +114 -0
- package/docs/src/views/index/v1/component/chat/en.vue +153 -0
- package/docs/src/views/index/v1/component/chat/fa.vue +153 -0
- package/docs/src/views/index/v1/component/chip/en.vue +341 -0
- package/docs/src/views/index/v1/component/chip/fa.vue +340 -0
- package/docs/src/views/index/v1/component/codeEditor/en.vue +84 -0
- package/docs/src/views/index/v1/component/codeEditor/fa.vue +83 -0
- package/docs/src/views/index/v1/component/confirm/en.vue +441 -0
- package/docs/src/views/index/v1/component/confirm/fa.vue +434 -0
- package/docs/src/views/index/v1/component/container/col/en.vue +68 -0
- package/docs/src/views/index/v1/component/container/col/fa.vue +67 -0
- package/docs/src/views/index/v1/component/container/divider/en.vue +133 -0
- package/docs/src/views/index/v1/component/container/divider/fa.vue +130 -0
- package/docs/src/views/index/v1/component/container/en.vue +136 -0
- package/docs/src/views/index/v1/component/container/fa.vue +135 -0
- package/docs/src/views/index/v1/component/container/row/en.vue +157 -0
- package/docs/src/views/index/v1/component/container/row/fa.vue +157 -0
- package/docs/src/views/index/v1/component/container/spacer/en.vue +40 -0
- package/docs/src/views/index/v1/component/container/spacer/fa.vue +38 -0
- package/docs/src/views/index/v1/component/content/en.vue +61 -0
- package/docs/src/views/index/v1/component/content/fa.vue +59 -0
- package/docs/src/views/index/v1/component/count_down/en.vue +111 -0
- package/docs/src/views/index/v1/component/count_down/fa.vue +116 -0
- package/docs/src/views/index/v1/component/cropper/en.vue +97 -0
- package/docs/src/views/index/v1/component/cropper/fa.vue +97 -0
- package/docs/src/views/index/v1/component/float/en.vue +220 -0
- package/docs/src/views/index/v1/component/float/fa.vue +222 -0
- package/docs/src/views/index/v1/component/form/address_input/en.vue +237 -0
- package/docs/src/views/index/v1/component/form/address_input/fa.vue +237 -0
- package/docs/src/views/index/v1/component/form/cam_input/en.vue +244 -0
- package/docs/src/views/index/v1/component/form/cam_input/fa.vue +247 -0
- package/docs/src/views/index/v1/component/form/check_input/en.vue +221 -0
- package/docs/src/views/index/v1/component/form/check_input/fa.vue +221 -0
- package/docs/src/views/index/v1/component/form/checkbox_input/en.vue +453 -0
- package/docs/src/views/index/v1/component/form/checkbox_input/fa.vue +453 -0
- package/docs/src/views/index/v1/component/form/color_input/en.vue +121 -0
- package/docs/src/views/index/v1/component/form/color_input/fa.vue +120 -0
- package/docs/src/views/index/v1/component/form/date_input/en.vue +242 -0
- package/docs/src/views/index/v1/component/form/date_input/fa.vue +242 -0
- package/docs/src/views/index/v1/component/form/file_input/en.vue +123 -0
- package/docs/src/views/index/v1/component/form/file_input/fa.vue +133 -0
- package/docs/src/views/index/v1/component/form/form/en.vue +120 -0
- package/docs/src/views/index/v1/component/form/form/fa.vue +111 -0
- package/docs/src/views/index/v1/component/form/group_input/en.vue +369 -0
- package/docs/src/views/index/v1/component/form/group_input/fa.vue +368 -0
- package/docs/src/views/index/v1/component/form/input/en.vue +586 -0
- package/docs/src/views/index/v1/component/form/input/fa.vue +589 -0
- package/docs/src/views/index/v1/component/form/json_input/en.vue +280 -0
- package/docs/src/views/index/v1/component/form/json_input/fa.vue +285 -0
- package/docs/src/views/index/v1/component/form/mask_input/en.vue +249 -0
- package/docs/src/views/index/v1/component/form/mask_input/fa.vue +247 -0
- package/docs/src/views/index/v1/component/form/number_input/en.vue +319 -0
- package/docs/src/views/index/v1/component/form/number_input/fa.vue +363 -0
- package/docs/src/views/index/v1/component/form/password_input/en.vue +351 -0
- package/docs/src/views/index/v1/component/form/password_input/fa.vue +352 -0
- package/docs/src/views/index/v1/component/form/radio_input/en.vue +251 -0
- package/docs/src/views/index/v1/component/form/radio_input/fa.vue +262 -0
- package/docs/src/views/index/v1/component/form/range_input/en.vue +302 -0
- package/docs/src/views/index/v1/component/form/range_input/fa.vue +310 -0
- package/docs/src/views/index/v1/component/form/rating_input/en.vue +318 -0
- package/docs/src/views/index/v1/component/form/rating_input/fa.vue +286 -0
- package/docs/src/views/index/v1/component/form/select_input/en.vue +293 -0
- package/docs/src/views/index/v1/component/form/select_input/fa.vue +297 -0
- package/docs/src/views/index/v1/component/form/switch_input/en.vue +138 -0
- package/docs/src/views/index/v1/component/form/switch_input/fa.vue +139 -0
- package/docs/src/views/index/v1/component/form/tel_input/en.vue +195 -0
- package/docs/src/views/index/v1/component/form/tel_input/fa.vue +194 -0
- package/docs/src/views/index/v1/component/form/text_area/en.vue +189 -0
- package/docs/src/views/index/v1/component/form/text_area/fa.vue +191 -0
- package/docs/src/views/index/v1/component/form/text_editor/en.vue +143 -0
- package/docs/src/views/index/v1/component/form/text_editor/fa.vue +143 -0
- package/docs/src/views/index/v1/component/form/text_editor/text_editor_preview/en.vue +72 -0
- package/docs/src/views/index/v1/component/form/text_editor/text_editor_preview/fa.vue +78 -0
- package/docs/src/views/index/v1/component/form/text_input/en.vue +146 -0
- package/docs/src/views/index/v1/component/form/text_input/fa.vue +149 -0
- package/docs/src/views/index/v1/component/form/time_input/en.vue +138 -0
- package/docs/src/views/index/v1/component/form/time_input/fa.vue +137 -0
- package/docs/src/views/index/v1/component/form/time_range_input/en.vue +115 -0
- package/docs/src/views/index/v1/component/form/time_range_input/fa.vue +113 -0
- package/docs/src/views/index/v1/component/form/unique_input/en.vue +107 -0
- package/docs/src/views/index/v1/component/form/unique_input/fa.vue +106 -0
- package/docs/src/views/index/v1/component/form/unit_input/en.vue +200 -0
- package/docs/src/views/index/v1/component/form/unit_input/fa.vue +203 -0
- package/docs/src/views/index/v1/component/form_creator/en.vue +181 -0
- package/docs/src/views/index/v1/component/form_creator/fa.vue +179 -0
- package/docs/src/views/index/v1/component/html2pdf/en.vue +215 -0
- package/docs/src/views/index/v1/component/html2pdf/fa.vue +226 -0
- package/docs/src/views/index/v1/component/html2pdf/html2pdf_page_break/en.vue +37 -0
- package/docs/src/views/index/v1/component/html2pdf/html2pdf_page_break/fa.vue +36 -0
- package/docs/src/views/index/v1/component/icon/en.vue +231 -0
- package/docs/src/views/index/v1/component/icon/fa.vue +230 -0
- package/docs/src/views/index/v1/component/img/en.vue +511 -0
- package/docs/src/views/index/v1/component/img/fa.vue +510 -0
- package/docs/src/views/index/v1/component/infinite/infinite_box/en.vue +107 -0
- package/docs/src/views/index/v1/component/infinite/infinite_box/fa.vue +106 -0
- package/docs/src/views/index/v1/component/infinite/infinite_div/en.vue +87 -0
- package/docs/src/views/index/v1/component/infinite/infinite_div/fa.vue +83 -0
- package/docs/src/views/index/v1/component/infinite/infinite_page/en.vue +76 -0
- package/docs/src/views/index/v1/component/infinite/infinite_page/fa.vue +76 -0
- package/docs/src/views/index/v1/component/list/en.vue +477 -0
- package/docs/src/views/index/v1/component/list/fa.vue +475 -0
- package/docs/src/views/index/v1/component/map/en.vue +243 -0
- package/docs/src/views/index/v1/component/map/fa.vue +256 -0
- package/docs/src/views/index/v1/component/map/map_route/en.vue +176 -0
- package/docs/src/views/index/v1/component/map/map_route/fa.vue +177 -0
- package/docs/src/views/index/v1/component/map/map_select/en.vue +85 -0
- package/docs/src/views/index/v1/component/map/map_select/fa.vue +87 -0
- package/docs/src/views/index/v1/component/menu/en.vue +160 -0
- package/docs/src/views/index/v1/component/menu/fa.vue +158 -0
- package/docs/src/views/index/v1/component/message/en.vue +135 -0
- package/docs/src/views/index/v1/component/message/fa.vue +134 -0
- package/docs/src/views/index/v1/component/meta/en.vue +74 -0
- package/docs/src/views/index/v1/component/meta/fa.vue +73 -0
- package/docs/src/views/index/v1/component/modal/en.vue +432 -0
- package/docs/src/views/index/v1/component/modal/fa.vue +433 -0
- package/docs/src/views/index/v1/component/notify/en.vue +116 -0
- package/docs/src/views/index/v1/component/notify/fa.vue +116 -0
- package/docs/src/views/index/v1/component/progress/progress_circle/en.vue +202 -0
- package/docs/src/views/index/v1/component/progress/progress_circle/fa.vue +201 -0
- package/docs/src/views/index/v1/component/progress/progress_line/en.vue +216 -0
- package/docs/src/views/index/v1/component/progress/progress_line/fa.vue +214 -0
- package/docs/src/views/index/v1/component/search_box/en.vue +185 -0
- package/docs/src/views/index/v1/component/search_box/fa.vue +178 -0
- package/docs/src/views/index/v1/component/slider/en.vue +428 -0
- package/docs/src/views/index/v1/component/slider/fa.vue +427 -0
- package/docs/src/views/index/v1/component/swiper/en.vue +291 -0
- package/docs/src/views/index/v1/component/swiper/fa.vue +289 -0
- package/docs/src/views/index/v1/component/table/en.vue +711 -0
- package/docs/src/views/index/v1/component/table/fa.vue +709 -0
- package/docs/src/views/index/v1/component/table/table_crud/en.vue +218 -0
- package/docs/src/views/index/v1/component/table/table_crud/fa.vue +219 -0
- package/docs/src/views/index/v1/component/tabs/en.vue +289 -0
- package/docs/src/views/index/v1/component/tabs/fa.vue +289 -0
- package/docs/src/views/index/v1/component/time_ago/en.vue +98 -0
- package/docs/src/views/index/v1/component/time_ago/fa.vue +102 -0
- package/docs/src/views/index/v1/component/timeline/en.vue +140 -0
- package/docs/src/views/index/v1/component/timeline/fa.vue +138 -0
- package/docs/src/views/index/v1/component/tour/en.vue +125 -0
- package/docs/src/views/index/v1/component/tour/fa.vue +129 -0
- package/docs/src/views/index/v1/component/tree/en.vue +213 -0
- package/docs/src/views/index/v1/component/tree/fa.vue +213 -0
- package/docs/src/views/index/v1/features/breakpoint/fa.vue +136 -0
- package/docs/src/views/index/v1/features/direction/fa.vue +57 -0
- package/docs/src/views/index/v1/features/internationalization/fa.vue +186 -0
- package/docs/src/views/index/v1/features/theme/fa.vue +148 -0
- package/docs/src/views/index/v1/getting_started/browserSupport/fa.vue +33 -0
- package/docs/src/views/index/v1/getting_started/installation/fa.vue +110 -0
- package/docs/src/views/index/v1/introduction/support/fa.vue +58 -0
- package/docs/src/views/index/v1/introduction/whyRenusify/fa.vue +49 -0
- package/docs/src/views/index/v1/menu/en.json +1040 -0
- package/docs/src/views/index/v1/menu/fa.json +1040 -0
- package/docs/src/views/index/v1/mixins/root/fa.vue +131 -0
- package/docs/vue.config.js +39 -0
- package/index.js +11 -3
- package/package.json +1 -1
- package/tools/helper.js +1 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "renusify",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"private": true,
|
|
5
|
+
"scripts": {
|
|
6
|
+
"serv": "vue-cli-service serve",
|
|
7
|
+
"build": "vue-cli-service build",
|
|
8
|
+
"lint": "vue-cli-service lint"
|
|
9
|
+
},
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"axios": "^1.6.0",
|
|
12
|
+
"core-js": "^3.35.0",
|
|
13
|
+
"register-service-worker": "^1.7.2",
|
|
14
|
+
"renusify": "^2.1.8",
|
|
15
|
+
"vue": "^3.4.3",
|
|
16
|
+
"vue-router": "^4.2.5"
|
|
17
|
+
},
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@babel/core": "^7.23.7",
|
|
20
|
+
"@babel/eslint-parser": "^7.23.3",
|
|
21
|
+
"@vue/cli-plugin-babel": "^5.0.8",
|
|
22
|
+
"@vue/cli-plugin-eslint": "^5.0.8",
|
|
23
|
+
"@vue/cli-plugin-pwa": "^5.0.8",
|
|
24
|
+
"@vue/cli-plugin-router": "^5.0.8",
|
|
25
|
+
"@vue/cli-service": "^5.0.8",
|
|
26
|
+
"eslint": "^8.56.0",
|
|
27
|
+
"eslint-config-prettier": "^9.1.0",
|
|
28
|
+
"eslint-plugin-prettier": "^5.1.2",
|
|
29
|
+
"eslint-plugin-vue": "^9.19.2",
|
|
30
|
+
"prettier": "^3.1.1",
|
|
31
|
+
"sass": "^1.69.6",
|
|
32
|
+
"sass-loader": "^13.3.3"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta content="ltr" name="direction"/>
|
|
6
|
+
<meta content="IE=edge" http-equiv="X-UA-Compatible">
|
|
7
|
+
<meta content="width=device-width,initial-scale=1.0" name="viewport">
|
|
8
|
+
<title><%= htmlWebpackPlugin.options.title %></title>
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<noscript>
|
|
12
|
+
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled.
|
|
13
|
+
Please enable it to continue.</strong>
|
|
14
|
+
</noscript>
|
|
15
|
+
<div id="app"></div>
|
|
16
|
+
<!-- built files will be auto injected -->
|
|
17
|
+
</body>
|
|
18
|
+
</html>
|
|
Binary file
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "renusify",
|
|
3
|
+
"short_name": "renusify",
|
|
4
|
+
"icons": [
|
|
5
|
+
{
|
|
6
|
+
"src": "/android-chrome-192x192.png",
|
|
7
|
+
"sizes": "192x192",
|
|
8
|
+
"type": "image/png"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"src": "/android-chrome-256x256.png",
|
|
12
|
+
"sizes": "256x256",
|
|
13
|
+
"type": "image/png"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"display": "standalone",
|
|
17
|
+
"background_color": "#000",
|
|
18
|
+
"theme_color": "#000",
|
|
19
|
+
"lang": "en",
|
|
20
|
+
"dir": "ltr",
|
|
21
|
+
"description": "renusify",
|
|
22
|
+
"start_url": "/"
|
|
23
|
+
}
|
|
File without changes
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<?xml version="1.0" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
|
3
|
+
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
|
4
|
+
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
|
5
|
+
width="281.000000pt" height="281.000000pt" viewBox="0 0 281.000000 281.000000"
|
|
6
|
+
preserveAspectRatio="xMidYMid meet">
|
|
7
|
+
<metadata>
|
|
8
|
+
Created by potrace 1.14, written by Peter Selinger 2001-2017
|
|
9
|
+
</metadata>
|
|
10
|
+
<g transform="translate(0.000000,281.000000) scale(0.100000,-0.100000)"
|
|
11
|
+
fill="#000000" stroke="none">
|
|
12
|
+
<path d="M623 2640 c-234 -60 -404 -246 -454 -495 -16 -84 -16 -1385 0 -1470
|
|
13
|
+
49 -249 222 -436 456 -496 64 -16 130 -18 750 -18 627 0 686 1 751 18 241 62
|
|
14
|
+
411 246 457 496 19 99 17 1402 -2 1490 -20 94 -92 232 -158 301 -95 99 -180
|
|
15
|
+
148 -312 178 -62 14 -157 16 -744 15 -617 -1 -678 -2 -744 -19z"/>
|
|
16
|
+
</g>
|
|
17
|
+
</svg>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<r-app>
|
|
3
|
+
<r-content>
|
|
4
|
+
<router-view/>
|
|
5
|
+
</r-content>
|
|
6
|
+
</r-app>
|
|
7
|
+
</template>
|
|
8
|
+
<script>
|
|
9
|
+
export default {
|
|
10
|
+
name: "index-base",
|
|
11
|
+
};
|
|
12
|
+
</script>
|
|
13
|
+
<style lang="scss">
|
|
14
|
+
body {
|
|
15
|
+
--color-background-one-light: #fff;
|
|
16
|
+
}
|
|
17
|
+
</style>
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<r-container>
|
|
3
|
+
<r-divider class="mt-10"></r-divider>
|
|
4
|
+
<r-row>
|
|
5
|
+
<r-col class="text-start">
|
|
6
|
+
<r-btn v-if="pre_btn" :to="pre_btn.to" class="color-info-text" text>
|
|
7
|
+
<r-icon v-html="$r.icons.arrow_left"></r-icon>
|
|
8
|
+
|
|
9
|
+
{{ pre_btn.name }}
|
|
10
|
+
</r-btn>
|
|
11
|
+
</r-col>
|
|
12
|
+
<r-col class="text-end">
|
|
13
|
+
<r-btn v-if="next_btn" :to="next_btn.to" class="color-info-text" text>
|
|
14
|
+
{{ next_btn.name }}
|
|
15
|
+
<r-icon v-html="$r.icons.arrow_right"></r-icon>
|
|
16
|
+
</r-btn>
|
|
17
|
+
</r-col>
|
|
18
|
+
</r-row>
|
|
19
|
+
</r-container>
|
|
20
|
+
</template>
|
|
21
|
+
|
|
22
|
+
<script>
|
|
23
|
+
export default {
|
|
24
|
+
name: "buttomNextPage",
|
|
25
|
+
computed: {
|
|
26
|
+
menu() {
|
|
27
|
+
let res = [];
|
|
28
|
+
if (this.$r.store.menu) {
|
|
29
|
+
this.$r.store.menu.forEach((menu) => {
|
|
30
|
+
if (menu.to) {
|
|
31
|
+
res.push({name: menu.name, to: menu.to});
|
|
32
|
+
}
|
|
33
|
+
if (menu.childs) {
|
|
34
|
+
menu.childs.forEach((m) => {
|
|
35
|
+
if (m.to) {
|
|
36
|
+
res.push({name: m.name, to: m.to});
|
|
37
|
+
}
|
|
38
|
+
if (m.childs) {
|
|
39
|
+
m.childs.forEach((mm) => {
|
|
40
|
+
if (mm.to) {
|
|
41
|
+
res.push({name: mm.name, to: mm.to});
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return res;
|
|
51
|
+
},
|
|
52
|
+
current() {
|
|
53
|
+
for (let i = 0; i < this.menu.length; i++) {
|
|
54
|
+
if (this.menu[i].to.params.path === this.$route.params.path) {
|
|
55
|
+
return i;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return -10;
|
|
59
|
+
},
|
|
60
|
+
next_btn() {
|
|
61
|
+
return this.menu[this.current + 1];
|
|
62
|
+
},
|
|
63
|
+
pre_btn() {
|
|
64
|
+
return this.menu[this.current - 1];
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
</script>
|
|
69
|
+
|
|
70
|
+
<style lang="scss">
|
|
71
|
+
@import "~renusify/style/include";
|
|
72
|
+
</style>
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<r-container class="side-bar" full-width>
|
|
3
|
+
<slot name="first"></slot>
|
|
4
|
+
<r-row class="flex-column">
|
|
5
|
+
<r-col v-for="(item, i) in items" :key="i">
|
|
6
|
+
<div v-if="item.type === 'hr'" class="text-center caption">
|
|
7
|
+
{{ $t(item.name) }}
|
|
8
|
+
<r-divider></r-divider>
|
|
9
|
+
</div>
|
|
10
|
+
<div
|
|
11
|
+
v-else
|
|
12
|
+
@click.prevent="select === i ? (select = null) : (select = i)"
|
|
13
|
+
>
|
|
14
|
+
<r-card
|
|
15
|
+
:class="{
|
|
16
|
+
'router-link-exact-active': select === i,
|
|
17
|
+
}"
|
|
18
|
+
:to="item.to"
|
|
19
|
+
class="side-bar-item title d-flex h-space-between px-1 py-2"
|
|
20
|
+
flat
|
|
21
|
+
ripple
|
|
22
|
+
>
|
|
23
|
+
<span class="flex-grow-1">
|
|
24
|
+
<r-icon v-if="item.icon" exact v-html="item.icon"></r-icon>
|
|
25
|
+
{{ $t(item.name) }}
|
|
26
|
+
</span>
|
|
27
|
+
<r-icon
|
|
28
|
+
v-if="item.childs"
|
|
29
|
+
:class="{
|
|
30
|
+
'side-bar-icon-active': select === i,
|
|
31
|
+
}"
|
|
32
|
+
v-html="$r.icons.chevron_down"
|
|
33
|
+
></r-icon>
|
|
34
|
+
</r-card>
|
|
35
|
+
</div>
|
|
36
|
+
<div
|
|
37
|
+
v-if="item.childs"
|
|
38
|
+
:class="{
|
|
39
|
+
'side-bar-sub-item-active': select === i,
|
|
40
|
+
}"
|
|
41
|
+
class="side-bar-sub-item ms-2"
|
|
42
|
+
>
|
|
43
|
+
<r-card
|
|
44
|
+
v-for="(child, j) in item.childs"
|
|
45
|
+
:key="`${i}-${j}`"
|
|
46
|
+
:to="child.to"
|
|
47
|
+
class="side-bar-sub-item-link d-block subtitle-1 px-1 py-2 mb-1"
|
|
48
|
+
flat
|
|
49
|
+
ripple
|
|
50
|
+
@click.prevent="child.to ? '' : (select2 = i + '-' + j)"
|
|
51
|
+
>
|
|
52
|
+
<div class="d-flex h-space-between">
|
|
53
|
+
{{ $t(child.name) }}
|
|
54
|
+
<r-icon
|
|
55
|
+
v-if="child.childs"
|
|
56
|
+
:class="{
|
|
57
|
+
'side-bar-icon-active': select2 === i + '-' + j,
|
|
58
|
+
}"
|
|
59
|
+
v-html="$r.icons.chevron_down"
|
|
60
|
+
></r-icon>
|
|
61
|
+
</div>
|
|
62
|
+
<div
|
|
63
|
+
v-if="child.childs"
|
|
64
|
+
:class="{
|
|
65
|
+
'side-bar-sub-item2-active': select2 === i + '-' + j,
|
|
66
|
+
}"
|
|
67
|
+
class="side-bar-sub-item2 ms-2"
|
|
68
|
+
>
|
|
69
|
+
<r-card
|
|
70
|
+
v-for="(child2, k) in child.childs"
|
|
71
|
+
:key="`${i}-${j}-${k}`"
|
|
72
|
+
:to="child2.to"
|
|
73
|
+
class="side-bar-sub-item-link d-block subtitle-1 px-1 py-2 mb-1"
|
|
74
|
+
flat
|
|
75
|
+
ripple
|
|
76
|
+
>
|
|
77
|
+
{{ $t(child2.name) }}
|
|
78
|
+
</r-card>
|
|
79
|
+
</div>
|
|
80
|
+
</r-card>
|
|
81
|
+
</div>
|
|
82
|
+
</r-col>
|
|
83
|
+
</r-row>
|
|
84
|
+
</r-container>
|
|
85
|
+
</template>
|
|
86
|
+
|
|
87
|
+
<script>
|
|
88
|
+
export default {
|
|
89
|
+
name: "sideBar",
|
|
90
|
+
props: {
|
|
91
|
+
items: Array,
|
|
92
|
+
},
|
|
93
|
+
data() {
|
|
94
|
+
return {
|
|
95
|
+
select: null,
|
|
96
|
+
select2: null,
|
|
97
|
+
};
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
</script>
|
|
101
|
+
|
|
102
|
+
<style lang="scss" scoped>
|
|
103
|
+
@import "~renusify/style/include";
|
|
104
|
+
|
|
105
|
+
.side-bar {
|
|
106
|
+
&-item {
|
|
107
|
+
cursor: pointer;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
&-icon-active {
|
|
111
|
+
transition: 0.3s all ease;
|
|
112
|
+
transform: rotateZ(180deg) !important;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&-sub-item {
|
|
116
|
+
opacity: 0.9;
|
|
117
|
+
transition: 0.2s all ease-in-out;
|
|
118
|
+
max-height: 0;
|
|
119
|
+
height: auto;
|
|
120
|
+
overflow: hidden;
|
|
121
|
+
|
|
122
|
+
&-active {
|
|
123
|
+
transition: 0.3s all ease-in;
|
|
124
|
+
max-height: 2000px;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
&-sub-item2 {
|
|
129
|
+
opacity: 0.8;
|
|
130
|
+
transition: 0.2s all ease-in-out;
|
|
131
|
+
max-height: 0;
|
|
132
|
+
height: auto;
|
|
133
|
+
overflow: hidden;
|
|
134
|
+
|
|
135
|
+
&-active {
|
|
136
|
+
transition: 0.3s all ease-in;
|
|
137
|
+
max-height: 2000px;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
</style>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<r-table :items="items" borderd>
|
|
4
|
+
<template #row="{ item, th, key, opened, open, show }">
|
|
5
|
+
<td v-for="(value, k) in th" :key="`${key}- ${k}`">
|
|
6
|
+
<div
|
|
7
|
+
:class="{
|
|
8
|
+
'color-info-text font-weight-bold': value.value === 'event',
|
|
9
|
+
'color-secondary-text': value.value === 'description',
|
|
10
|
+
}"
|
|
11
|
+
>
|
|
12
|
+
<r-btn v-if="show(k)" icon text @click.prevent="open(key)">
|
|
13
|
+
<r-icon v-if="opened !== key" v-html="$r.icons.plus"></r-icon>
|
|
14
|
+
<r-icon v-else v-html="$r.icons.minus"></r-icon>
|
|
15
|
+
</r-btn>
|
|
16
|
+
{{ item[value.value] }}
|
|
17
|
+
</div>
|
|
18
|
+
</td>
|
|
19
|
+
</template>
|
|
20
|
+
</r-table>
|
|
21
|
+
</div>
|
|
22
|
+
</template>
|
|
23
|
+
|
|
24
|
+
<script>
|
|
25
|
+
export default {
|
|
26
|
+
name: "tableProps",
|
|
27
|
+
props: {items: Array},
|
|
28
|
+
data() {
|
|
29
|
+
return {};
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
</script>
|
|
33
|
+
|
|
34
|
+
<style lang="scss">
|
|
35
|
+
@import "~renusify/style/include";
|
|
36
|
+
</style>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<r-table :items="items" borderd>
|
|
3
|
+
<template #row="{ item, th, key, opened, open, show }">
|
|
4
|
+
<td v-for="(value, k) in th" :key="`${key}- ${k}`">
|
|
5
|
+
<div
|
|
6
|
+
:class="{
|
|
7
|
+
'color-info-text font-weight-bold': value.value === 'prop',
|
|
8
|
+
'color-success-text': value.value === 'type',
|
|
9
|
+
'color-one-text ltr': value.value === 'default',
|
|
10
|
+
'color-secondary-text': value.value === 'description',
|
|
11
|
+
}"
|
|
12
|
+
>
|
|
13
|
+
<r-btn v-if="show(k)" icon text @click.prevent="open(key)">
|
|
14
|
+
<r-icon v-if="opened !== key" v-html="$r.icons.plus"></r-icon>
|
|
15
|
+
<r-icon v-else v-html="$r.icons.minus"></r-icon>
|
|
16
|
+
</r-btn>
|
|
17
|
+
{{ item[value.value] }}
|
|
18
|
+
</div>
|
|
19
|
+
</td>
|
|
20
|
+
</template>
|
|
21
|
+
</r-table>
|
|
22
|
+
</template>
|
|
23
|
+
|
|
24
|
+
<script>
|
|
25
|
+
export default {
|
|
26
|
+
name: "tableProps",
|
|
27
|
+
props: {items: Array},
|
|
28
|
+
data() {
|
|
29
|
+
return {};
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
</script>
|
|
33
|
+
|
|
34
|
+
<style lang="scss">
|
|
35
|
+
@import "~renusify/style/include";
|
|
36
|
+
</style>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<r-card
|
|
3
|
+
class="pa-10 color-info color-white-text mx-2"
|
|
4
|
+
style="width: 200px; height: 100px"
|
|
5
|
+
>
|
|
6
|
+
{{ node.name }}
|
|
7
|
+
</r-card>
|
|
8
|
+
</template>
|
|
9
|
+
|
|
10
|
+
<script>
|
|
11
|
+
export default {
|
|
12
|
+
name: "treeElement",
|
|
13
|
+
props: {
|
|
14
|
+
node: Object,
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<style lang="scss">
|
|
20
|
+
@import "~renusify/style/include";
|
|
21
|
+
</style>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import {createApp} from "vue";
|
|
2
|
+
import App from "./Index.vue";
|
|
3
|
+
import Axios from "./plugins/axios";
|
|
4
|
+
import "./registerServiceWorker";
|
|
5
|
+
import router from "./router/index";
|
|
6
|
+
import renusify from "renusify";
|
|
7
|
+
import ButtomNextPage from "./components/buttomNextPage";
|
|
8
|
+
import tableProps from "./components/tableProps";
|
|
9
|
+
import tableEvents from "./components/tableEvents";
|
|
10
|
+
|
|
11
|
+
import * as components from "renusify/components";
|
|
12
|
+
import {scroll, title, intersect} from "renusify/directive";
|
|
13
|
+
|
|
14
|
+
window.app = createApp(App)
|
|
15
|
+
.use(router)
|
|
16
|
+
.use(Axios)
|
|
17
|
+
.use(renusify, {
|
|
18
|
+
autoAddTranslate: false,
|
|
19
|
+
useNotify: true,
|
|
20
|
+
components: components,
|
|
21
|
+
directives: {title, scroll, intersect},
|
|
22
|
+
})
|
|
23
|
+
.component("ButtomNextPage", ButtomNextPage)
|
|
24
|
+
.component("tableProps", tableProps)
|
|
25
|
+
.component("tableEvents", tableEvents)
|
|
26
|
+
.mount("#app");
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
:class="{
|
|
4
|
+
'menu-open': open,
|
|
5
|
+
}"
|
|
6
|
+
class="template-main h-end"
|
|
7
|
+
>
|
|
8
|
+
<div class="toolbar border-none d-flex v-center color-white">
|
|
9
|
+
<r-btn class="btn-menu" icon text @click.prevent="open = !open">
|
|
10
|
+
<r-icon v-if="!open" v-html="$r.icons.menu"></r-icon>
|
|
11
|
+
<r-icon v-else v-html="$r.icons.close"></r-icon>
|
|
12
|
+
</r-btn>
|
|
13
|
+
<router-link target="_blank" to="/">
|
|
14
|
+
<img alt="renusify" class="me-2" height="60" src="/logo.jpg" width="210"/>
|
|
15
|
+
</router-link>
|
|
16
|
+
<r-spacer></r-spacer>
|
|
17
|
+
<r-select-input
|
|
18
|
+
v-model="lang"
|
|
19
|
+
:items="[
|
|
20
|
+
{ name: 'English', value: 'en' },
|
|
21
|
+
{ name: 'فارسی', value: 'fa' },
|
|
22
|
+
]"
|
|
23
|
+
just-value
|
|
24
|
+
></r-select-input>
|
|
25
|
+
</div>
|
|
26
|
+
<div class="menu-main">
|
|
27
|
+
<div class="list color-white">
|
|
28
|
+
<sideBar :items="menu"></sideBar>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="hover-div" @click.prevent="open = false"></div>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="router-div">
|
|
33
|
+
<div class="position-relative">
|
|
34
|
+
<router-view v-slot="{ Component }">
|
|
35
|
+
<transition mode="out-in" name="slide-start">
|
|
36
|
+
<component :is="Component"/>
|
|
37
|
+
</transition>
|
|
38
|
+
</router-view>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</template>
|
|
43
|
+
|
|
44
|
+
<script>
|
|
45
|
+
import sideBar from "../components/sideBar";
|
|
46
|
+
|
|
47
|
+
export default {
|
|
48
|
+
name: "renusify",
|
|
49
|
+
components: {sideBar},
|
|
50
|
+
metaInfo: {
|
|
51
|
+
title: "renusify",
|
|
52
|
+
},
|
|
53
|
+
data() {
|
|
54
|
+
return {
|
|
55
|
+
open: false,
|
|
56
|
+
lang: "en",
|
|
57
|
+
version: "en",
|
|
58
|
+
menu: [],
|
|
59
|
+
};
|
|
60
|
+
},
|
|
61
|
+
created() {
|
|
62
|
+
this.lang = this.$route.params.lang || this.$storage.get("lang");
|
|
63
|
+
this.version = this.$route.params.version || "v1";
|
|
64
|
+
|
|
65
|
+
if (this.lang === "fa") {
|
|
66
|
+
this.$r.rtl = true;
|
|
67
|
+
}
|
|
68
|
+
this.$r.lang = this.lang;
|
|
69
|
+
|
|
70
|
+
import(
|
|
71
|
+
"../views/index/" + this.version + "/menu/" + this.lang + ".json"
|
|
72
|
+
).then((data) => {
|
|
73
|
+
this.menu = data.default;
|
|
74
|
+
this.$r.store.menu = this.menu;
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
watch: {
|
|
78
|
+
$route: function () {
|
|
79
|
+
this.open = false;
|
|
80
|
+
},
|
|
81
|
+
lang: function (n) {
|
|
82
|
+
const lang = this.$route.params.lang || this.$storage.get("lang");
|
|
83
|
+
this.$storage.set("lang", n);
|
|
84
|
+
if (n !== lang) {
|
|
85
|
+
window.location = window.location.href.replace(`/${lang}/`, `/${n}/`);
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
</script>
|
|
91
|
+
|
|
92
|
+
<style lang="scss">
|
|
93
|
+
@import "~renusify/style/_include";
|
|
94
|
+
|
|
95
|
+
$menu-width: 300px;
|
|
96
|
+
.template-main {
|
|
97
|
+
display: flex;
|
|
98
|
+
flex-direction: row;
|
|
99
|
+
position: relative;
|
|
100
|
+
|
|
101
|
+
.toolbar {
|
|
102
|
+
position: fixed;
|
|
103
|
+
top: 0;
|
|
104
|
+
width: 100%;
|
|
105
|
+
height: $toolbar-height;
|
|
106
|
+
z-index: map_get($z-index, "medium");
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
&.menu-open {
|
|
110
|
+
.menu-main {
|
|
111
|
+
width: 100vw;
|
|
112
|
+
opacity: 1;
|
|
113
|
+
background-color: rgba(0, 0, 0, 0.4);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
.hover-div {
|
|
117
|
+
width: calc(100% - #{$menu-width});
|
|
118
|
+
max-width: calc(100% - #{$menu-width});
|
|
119
|
+
min-height: calc(100vh - #{$toolbar-height});
|
|
120
|
+
transition: 0.1s all ease-in-out;
|
|
121
|
+
position: absolute;
|
|
122
|
+
top: 0;
|
|
123
|
+
z-index: 2;
|
|
124
|
+
@include rtl() {
|
|
125
|
+
left: 0;
|
|
126
|
+
}
|
|
127
|
+
@include ltr() {
|
|
128
|
+
right: 0;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.list {
|
|
133
|
+
@include rtl() {
|
|
134
|
+
right: 0 !important;
|
|
135
|
+
}
|
|
136
|
+
@include ltr() {
|
|
137
|
+
left: 0 !important;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.menu-main {
|
|
143
|
+
transition: 0.3s all ease-in-out;
|
|
144
|
+
height: calc(100vh - #{$toolbar-height});
|
|
145
|
+
top: $toolbar-height;
|
|
146
|
+
position: fixed;
|
|
147
|
+
z-index: map_get($z-index, "medium");
|
|
148
|
+
opacity: 0;
|
|
149
|
+
@include rtl() {
|
|
150
|
+
right: 0;
|
|
151
|
+
}
|
|
152
|
+
@include ltr() {
|
|
153
|
+
left: 0;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.list {
|
|
157
|
+
overflow-y: auto;
|
|
158
|
+
width: $menu-width;
|
|
159
|
+
transition: 0.3s all ease-in-out;
|
|
160
|
+
background-color: var(--color-sheet);
|
|
161
|
+
height: 100%;
|
|
162
|
+
position: absolute;
|
|
163
|
+
top: 0;
|
|
164
|
+
@include rtl() {
|
|
165
|
+
right: -$menu-width;
|
|
166
|
+
}
|
|
167
|
+
@include ltr() {
|
|
168
|
+
left: -$menu-width;
|
|
169
|
+
}
|
|
170
|
+
font-weight: bold;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.router-div {
|
|
175
|
+
position: fixed;
|
|
176
|
+
top: $toolbar-height;
|
|
177
|
+
width: 100%;
|
|
178
|
+
max-width: 100%;
|
|
179
|
+
overflow-y: auto;
|
|
180
|
+
height: calc(100vh - #{$toolbar-height});
|
|
181
|
+
@include rtl() {
|
|
182
|
+
left: 0;
|
|
183
|
+
}
|
|
184
|
+
@include ltr() {
|
|
185
|
+
right: 0;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@include media-breakpoint-up("lg") {
|
|
190
|
+
.btn-menu {
|
|
191
|
+
display: none;
|
|
192
|
+
}
|
|
193
|
+
.menu-main {
|
|
194
|
+
width: $menu-width !important;
|
|
195
|
+
background-color: transparent;
|
|
196
|
+
opacity: 1;
|
|
197
|
+
}
|
|
198
|
+
.router-div {
|
|
199
|
+
width: calc(100% - #{$menu-width});
|
|
200
|
+
max-width: calc(100% - #{$menu-width});
|
|
201
|
+
}
|
|
202
|
+
.hover-div {
|
|
203
|
+
width: 0 !important;
|
|
204
|
+
}
|
|
205
|
+
.list {
|
|
206
|
+
@include rtl() {
|
|
207
|
+
right: 0 !important;
|
|
208
|
+
}
|
|
209
|
+
@include ltr() {
|
|
210
|
+
left: 0 !important;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
</style>
|