Initial commit: Falcon React v5.1.0 template
Co-authored-by: Cursor <cursoragent@cursor.com>
@@ -0,0 +1,6 @@
|
|||||||
|
VITE_ESLINT_NO_DEV_ERRORS=true
|
||||||
|
VITE_PUBLIC_URL='/'
|
||||||
|
VITE_SKIP_PREFLIGHT_CHECK=true
|
||||||
|
VITE_REACT_APP_TINYMCE_APIKEY=your-tinymce-api-key
|
||||||
|
VITE_REACT_APP_GOOGLE_API_KEY=your-google-api-key
|
||||||
|
VITE_REACT_APP_MAP_ID=your-map-id
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
/build
|
||||||
|
/node_modules
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
module.exports = {
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
es2021: true
|
||||||
|
},
|
||||||
|
extends: [
|
||||||
|
'eslint:recommended',
|
||||||
|
'plugin:react/recommended',
|
||||||
|
'plugin:prettier/recommended'
|
||||||
|
],
|
||||||
|
parserOptions: {
|
||||||
|
ecmaFeatures: {
|
||||||
|
jsx: true
|
||||||
|
},
|
||||||
|
ecmaVersion: 12,
|
||||||
|
sourceType: 'module'
|
||||||
|
},
|
||||||
|
plugins: ['react'],
|
||||||
|
rules: {
|
||||||
|
'react/no-unescaped-entities': 'off',
|
||||||
|
'react/prop-types': 'error',
|
||||||
|
'react/display-name': 'off',
|
||||||
|
'prettier/prettier': ['error', { endOfLine: 'auto' }]
|
||||||
|
},
|
||||||
|
globals: {
|
||||||
|
process: true
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||||
|
|
||||||
|
# dependencies
|
||||||
|
/node_modules
|
||||||
|
/.pnp
|
||||||
|
.pnp.js
|
||||||
|
|
||||||
|
# testing
|
||||||
|
/coverage
|
||||||
|
|
||||||
|
# production
|
||||||
|
/build
|
||||||
|
|
||||||
|
# misc
|
||||||
|
.DS_Store
|
||||||
|
.env
|
||||||
|
.env.local
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
.test
|
||||||
|
|
||||||
|
dist
|
||||||
|
|
||||||
|
public/tinymce
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
module.exports = {
|
||||||
|
tabWidth: 2,
|
||||||
|
semi: true,
|
||||||
|
singleQuote: true,
|
||||||
|
bracketSpacing: true,
|
||||||
|
trailingComma: 'none',
|
||||||
|
useTabs: false,
|
||||||
|
arrowParens: 'avoid'
|
||||||
|
};
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"cSpell.words": ["chartjs", "getformatter"],
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
"scss.format.enable": true,
|
||||||
|
"scss.format.newlineBetweenRules": true,
|
||||||
|
"scss.format.newlineBetweenSelectors": true,
|
||||||
|
"scss.format.preserveNewLines": true,
|
||||||
|
"scss.format.spaceAroundSelectorSeparator": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
## Falcon, a theme by ThemeWagon team.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Getting Started with Falcon-React
|
||||||
|
|
||||||
|
Welcome to the ReactJS version of the original Falcon theme. This document will guide you on how the Falcon-React theme is organized, the basics of customization, and how to compile it from the source code if needed.
|
||||||
|
|
||||||
|
## Running in Local Environment
|
||||||
|
|
||||||
|
This project is scaffolded using Vite.
|
||||||
|
|
||||||
|
- Install Node.js if you do not already have it installed on your machine.
|
||||||
|
- Open the Falcon-react-{version}” directory with your cmd or terminal and run npm i
|
||||||
|
- This command will download all the necessary dependencies for falcon in the node_modules directory.
|
||||||
|
- Run npm run dev. A local web server will start at http://localhost:3000.
|
||||||
|
|
||||||
|
## Creating a Production Build
|
||||||
|
|
||||||
|
After you've done your customization and are ready to build, follow these steps:
|
||||||
|
|
||||||
|
- Edit homepage in your package.json file to change asset files relative paths. For more information, visit Vite Doc.
|
||||||
|
- Then Run npm run build command in your project directory to make the Production build.
|
||||||
|
|
||||||
|
This will create an optimized production build by compiling, merging, and minifying all the source files as necessary and will put them in the build/ folder.
|
||||||
|
|
||||||
|
To run the production build locally, run the following commands:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
npm run preview
|
||||||
|
```
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
import path from 'path';
|
||||||
|
import fs from 'fs';
|
||||||
|
import * as sass from 'sass';
|
||||||
|
import rtlcss from 'rtlcss';
|
||||||
|
|
||||||
|
const compileSCSS = () => ({
|
||||||
|
name: 'compile-scss',
|
||||||
|
configureServer(server) {
|
||||||
|
const scssWatcher = server.watcher;
|
||||||
|
const scssGlob = path.resolve(__dirname, 'src/assets/scss/**/*.scss');
|
||||||
|
scssWatcher.add(scssGlob);
|
||||||
|
|
||||||
|
const scssFiles = [path.resolve(__dirname, 'src/assets/scss/theme.scss')];
|
||||||
|
|
||||||
|
const compileSCSSToCSS = async file => {
|
||||||
|
const result = await sass.compileAsync(file, { style: 'expanded' });
|
||||||
|
const fileName = path.basename(file, path.extname(file));
|
||||||
|
|
||||||
|
// Path for LTR CSS
|
||||||
|
const cssPath = path.resolve(__dirname, `public/css/${fileName}.css`);
|
||||||
|
fs.mkdirSync(path.dirname(cssPath), { recursive: true });
|
||||||
|
fs.writeFileSync(cssPath, result.css);
|
||||||
|
|
||||||
|
// Generate RTL CSS from LTR CSS
|
||||||
|
const rtlResult = rtlcss.process(result.css);
|
||||||
|
const rtlCssPath = path.resolve(
|
||||||
|
__dirname,
|
||||||
|
`public/css/${fileName}.rtl.css`
|
||||||
|
);
|
||||||
|
fs.writeFileSync(rtlCssPath, rtlResult);
|
||||||
|
};
|
||||||
|
|
||||||
|
scssWatcher.on('change', file => {
|
||||||
|
|
||||||
|
if (file.endsWith('.scss')) {
|
||||||
|
scssFiles.map(file => {
|
||||||
|
compileSCSSToCSS(file);
|
||||||
|
});
|
||||||
|
server.hot.send({
|
||||||
|
type: 'full-reload'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
scssFiles.map(file => {
|
||||||
|
compileSCSSToCSS(file);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
export default compileSCSS;
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" dir="ltr">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="shortcut icon" href="/src/assets/img/favicons/favicon.ico" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<meta name="theme-color" content="#2c7be5" />
|
||||||
|
<link rel="manifest" href="/manifest.json" />
|
||||||
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,500,600,700|Poppins:100,200,300,400,500,600,700,800,900&display=swap"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<title>Falcon React | ReactJS Dashboard & WebApp Template</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<noscript>You need to enable JavaScript to run this app.</noscript>
|
||||||
|
<main class="main" id="main"></main>
|
||||||
|
<script type="module" src="/src/index.jsx"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"experimentalDecorators": true,
|
||||||
|
"baseUrl": "src",
|
||||||
|
"jsx": "react"
|
||||||
|
},
|
||||||
|
"exclude": ["node_modules"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,124 @@
|
|||||||
|
{
|
||||||
|
"homepage": "falconreact.prium.me/",
|
||||||
|
"name": "falcon-react",
|
||||||
|
"version": "5.1.0",
|
||||||
|
"private": true,
|
||||||
|
"type": "module",
|
||||||
|
"dependencies": {
|
||||||
|
"@dnd-kit/core": "^6.3.1",
|
||||||
|
"@dnd-kit/sortable": "^10.0.0",
|
||||||
|
"@dnd-kit/utilities": "^3.2.2",
|
||||||
|
"@emotion/styled": "^11.14.1",
|
||||||
|
"@fortawesome/fontawesome-free": "^6.7.2",
|
||||||
|
"@fortawesome/fontawesome-svg-core": "^6.7.2",
|
||||||
|
"@fortawesome/free-brands-svg-icons": "^6.7.2",
|
||||||
|
"@fortawesome/free-regular-svg-icons": "^6.7.2",
|
||||||
|
"@fortawesome/free-solid-svg-icons": "^6.7.2",
|
||||||
|
"@fortawesome/react-fontawesome": "^0.2.2",
|
||||||
|
"@fullcalendar/bootstrap": "^6.1.19",
|
||||||
|
"@fullcalendar/daygrid": "^6.1.19",
|
||||||
|
"@fullcalendar/interaction": "^6.1.19",
|
||||||
|
"@fullcalendar/list": "^6.1.19",
|
||||||
|
"@fullcalendar/react": "^6.1.19",
|
||||||
|
"@fullcalendar/timegrid": "^6.1.19",
|
||||||
|
"@hookform/resolvers": "^5.2.2",
|
||||||
|
"@react-leaflet/core": "^3.0.0",
|
||||||
|
"@tanstack/react-table": "^8.21.3",
|
||||||
|
"@testing-library/jest-dom": "^6.6.3",
|
||||||
|
"@testing-library/react": "^16.3.0",
|
||||||
|
"@testing-library/user-event": "^14.6.1",
|
||||||
|
"@tinymce/tinymce-react": "^6.3.0",
|
||||||
|
"@vis.gl/react-google-maps": "^1.7.1",
|
||||||
|
"bootstrap": "^5.3.8",
|
||||||
|
"chart.js": "^4.5.1",
|
||||||
|
"classnames": "^2.5.1",
|
||||||
|
"d3": "^7.9.0",
|
||||||
|
"dayjs": "^1.11.19",
|
||||||
|
"echarts": "^6.0.0",
|
||||||
|
"echarts-for-react": "^3.0.5",
|
||||||
|
"emoji-picker-react": "^4.15.1",
|
||||||
|
"fs-extra": "^11.3.2",
|
||||||
|
"fuse.js": "^7.1.0",
|
||||||
|
"imask": "^7.6.1",
|
||||||
|
"is_js": "^0.9.0",
|
||||||
|
"leaflet": "^1.9.4",
|
||||||
|
"leaflet.tilelayer.colorfilter": "^2.0.0",
|
||||||
|
"lottie-react": "^2.4.1",
|
||||||
|
"plyr": "^3.8.3",
|
||||||
|
"prism-react-renderer": "^2.4.1",
|
||||||
|
"rc-slider": "^11.1.9",
|
||||||
|
"rc-tooltip": "^6.4.0",
|
||||||
|
"react-bootstrap": "^2.10.10",
|
||||||
|
"react-chartjs-2": "^5.3.1",
|
||||||
|
"react-countup": "^6.5.3",
|
||||||
|
"react-datepicker": "^8.9.0",
|
||||||
|
"react-dom": "^19.2.0",
|
||||||
|
"react-dropzone": "^14.3.8",
|
||||||
|
"react-error-overlay": "^6.1.0",
|
||||||
|
"react-hook-form": "^7.66.0",
|
||||||
|
"react-icons": "^5.5.0",
|
||||||
|
"react-imask": "^7.6.1",
|
||||||
|
"react-leaflet": "^5.0.0",
|
||||||
|
"react-leaflet-markercluster": "^5.0.0-rc.0",
|
||||||
|
"react-live": "^4.1.8",
|
||||||
|
"react-player": "^3.4.0",
|
||||||
|
"react-range": "^1.10.0",
|
||||||
|
"react-router": "^7.9.6",
|
||||||
|
"react-router-hash-link": "^2.4.3",
|
||||||
|
"react-select": "^5.10.2",
|
||||||
|
"react-simple-star-rating": "^5.1.7",
|
||||||
|
"react-simple-typewriter": "^5.0.1",
|
||||||
|
"react-slick": "^0.31.0",
|
||||||
|
"react-textarea-autosize": "^8.5.9",
|
||||||
|
"react-toastify": "^11.0.5",
|
||||||
|
"react-use-scrollspy": "^3.1.1",
|
||||||
|
"rtlcss": "^4.3.0",
|
||||||
|
"simplebar-react": "^3.3.2",
|
||||||
|
"slick-carousel": "^1.8.1",
|
||||||
|
"tinymce": "^8.2.2",
|
||||||
|
"uuid": "^13.0.0",
|
||||||
|
"video.js": "^8.23.4",
|
||||||
|
"web-vitals": "^5.1.0",
|
||||||
|
"yet-another-react-lightbox": "^3.25.0",
|
||||||
|
"yup": "^1.7.1"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "vite",
|
||||||
|
"build": "vite build",
|
||||||
|
"start": "react-scripts start",
|
||||||
|
"preview": "vite preview",
|
||||||
|
"predeploy": "npm run build && cp ./dist/index.html ./dist/404.html",
|
||||||
|
"predeploy:beta": "npm run build && cp ./dist/index.html ./dist/404.html",
|
||||||
|
"deploy": "echo https://falconreact.prium.me > ./dist/CNAME && gh-pages -d dist",
|
||||||
|
"deploy:beta": "echo frlive.prium.me > ./dist/CNAME && gh-pages -d dist -r git@github.com:prium/falcon-react-alpha2.git"
|
||||||
|
},
|
||||||
|
"eslintConfig": {
|
||||||
|
"extends": [
|
||||||
|
"react-app",
|
||||||
|
"react-app/jest"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"browserslist": [
|
||||||
|
">0.2%",
|
||||||
|
"not dead",
|
||||||
|
"not op_mini all"
|
||||||
|
],
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/plugin-transform-react-jsx": "^7.27.1",
|
||||||
|
"@vitejs/plugin-react": "^5.1.1",
|
||||||
|
"archiver": "^7.0.1",
|
||||||
|
"clean-webpack-plugin": "^4.0.0",
|
||||||
|
"css-loader": "^7.1.2",
|
||||||
|
"eslint": "^9.39.1",
|
||||||
|
"eslint-config-prettier": "^10.1.8",
|
||||||
|
"eslint-plugin-prettier": "^5.5.4",
|
||||||
|
"eslint-plugin-react": "^7.37.5",
|
||||||
|
"gh-pages": "^6.3.0",
|
||||||
|
"mini-css-extract-plugin": "^2.9.4",
|
||||||
|
"prettier": "^3.6.2",
|
||||||
|
"sass": "1.70.0",
|
||||||
|
"sass-loader": "^16.0.5",
|
||||||
|
"vite": "^7.2.2",
|
||||||
|
"vite-jsconfig-paths": "^2.0.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
import fse from 'fs-extra';
|
||||||
|
import path, { dirname } from 'path';
|
||||||
|
// const topDir = import.meta.dirname;
|
||||||
|
import { fileURLToPath } from 'url';
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
fse.emptyDirSync(path.join(__dirname, 'public', 'tinymce'));
|
||||||
|
fse.copySync(
|
||||||
|
path.join(__dirname, 'node_modules', 'tinymce'),
|
||||||
|
path.join(__dirname, 'public', 'tinymce'),
|
||||||
|
{ overwrite: true }
|
||||||
|
);
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
/* -------------------------------------------------------------------------- */
|
||||||
|
/* Falcon Button */
|
||||||
|
/* -------------------------------------------------------------------------- */
|
||||||
|
/* prettier-ignore */
|
||||||
|
|
||||||
|
/*# sourceMappingURL=user.css.map*/
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
/* -------------------------------------------------------------------------- */
|
||||||
|
/* Falcon Button */
|
||||||
|
/* -------------------------------------------------------------------------- */
|
||||||
|
/* prettier-ignore */
|
||||||
|
After Width: | Height: | Size: 15 KiB |
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"short_name": "Falcon React",
|
||||||
|
"name": "Falcon React | ReactJS Dashboard & WebApp Template",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "favicon.ico",
|
||||||
|
"sizes": "64x64 32x32 24x24 16x16",
|
||||||
|
"type": "image/x-icon"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"start_url": ".",
|
||||||
|
"display": "standalone",
|
||||||
|
"theme_color": "#2c7be5",
|
||||||
|
"background_color": "#edf2f9"
|
||||||
|
}
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
import React, { useEffect } from 'react';
|
||||||
|
import is from 'is_js';
|
||||||
|
import { Outlet } from 'react-router';
|
||||||
|
import { ToastContainer } from 'react-toastify';
|
||||||
|
import { Chart as ChartJS, registerables } from 'chart.js';
|
||||||
|
import { CloseButton } from 'components/common/Toast';
|
||||||
|
import SettingsToggle from 'components/settings-panel/SettingsToggle';
|
||||||
|
import SettingsPanel from 'components/settings-panel/SettingsPanel';
|
||||||
|
import { useAppContext } from 'providers/AppProvider';
|
||||||
|
import 'react-datepicker/dist/react-datepicker.css';
|
||||||
|
import 'react-toastify/dist/ReactToastify.css';
|
||||||
|
import 'simplebar-react/dist/simplebar.min.css';
|
||||||
|
|
||||||
|
ChartJS.register(...registerables);
|
||||||
|
|
||||||
|
const App = () => {
|
||||||
|
const HTMLClassList = document.getElementsByTagName('html')[0].classList;
|
||||||
|
const {
|
||||||
|
config: { navbarPosition }
|
||||||
|
} = useAppContext();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (is.windows()) {
|
||||||
|
HTMLClassList.add('windows');
|
||||||
|
}
|
||||||
|
if (is.chrome()) {
|
||||||
|
HTMLClassList.add('chrome');
|
||||||
|
}
|
||||||
|
if (is.firefox()) {
|
||||||
|
HTMLClassList.add('firefox');
|
||||||
|
}
|
||||||
|
if (is.safari()) {
|
||||||
|
HTMLClassList.add('safari');
|
||||||
|
}
|
||||||
|
}, [HTMLClassList]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (navbarPosition === 'double-top') {
|
||||||
|
HTMLClassList.add('double-top-nav-layout');
|
||||||
|
}
|
||||||
|
return () => HTMLClassList.remove('double-top-nav-layout');
|
||||||
|
}, [navbarPosition]);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Outlet />
|
||||||
|
<SettingsToggle />
|
||||||
|
<SettingsPanel />
|
||||||
|
<ToastContainer
|
||||||
|
closeButton={CloseButton}
|
||||||
|
icon={false}
|
||||||
|
position="bottom-left"
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default App;
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
{"v":"5.7.4","fr":30,"ip":0,"op":31,"w":1000,"h":1000,"nm":"Jumping ball loading ","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.048,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[500,894.934,0],"to":[0,-68.667,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.996,"y":0},"t":15,"s":[500,482.934,0],"to":[0,0,0],"ti":[0,-68.667,0]},{"t":30,"s":[500,894.934,0]}],"ix":2,"l":2},"a":{"a":0,"k":[46.934,89.867,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"t":0,"s":[164.057,46.619,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0]},"t":2,"s":[84.52,144.039,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"t":15,"s":[100,100,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"t":26,"s":[84.52,144.039,100]},{"t":30,"s":[164.057,46.619,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[149.867,149.867],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.975196090399,0.956862745098,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.372549019608,0.039215686275,0.823529411765,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[46.934,14.934],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":31,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":50,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[502,880,0],"ix":2,"l":2},"a":{"a":0,"k":[2,398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.367,0.367,0.667],"y":[1,1,1]},"o":{"x":[0.121,0.121,0.333],"y":[0,0,0]},"t":0,"s":[32.236,100,100]},{"t":30,"s":[100,261.006,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[407.297,19.875],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.372549019608,0.039215686275,0.823529411765,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":1,"k":[{"i":{"x":[0.367],"y":[1]},"o":{"x":[0.121],"y":[0]},"t":0,"s":[10]},{"t":30,"s":[0]}],"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[2,398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":31,"st":0,"bm":0}],"markers":[{"tm":0,"cm":"1","dr":0},{"tm":20,"cm":"2","dr":0}]}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
{"v":"5.1.5","fr":29.9700012207031,"ip":0,"op":42.0000017106951,"w":32,"h":32,"nm":"System-states-Sin conexión","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":3,"ty":4,"nm":"! contornos","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[16,16,0],"ix":2},"a":{"a":0,"k":[8.25,8.25,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.847,0.847,0.667],"y":[1,1,1]},"o":{"x":[1,1,0.333],"y":[0,0,0]},"n":["0p847_1_1_0","0p847_1_1_0","0p667_1_0p333_0"],"t":0,"s":[100,100,100],"e":[130,130,100]},{"i":{"x":[0,0,0.667],"y":[1,1,1]},"o":{"x":[0.127,0.127,0.333],"y":[0,0,0]},"n":["0_1_0p127_0","0_1_0p127_0","0p667_1_0p333_0"],"t":21,"s":[130,130,100],"e":[100,100,100]},{"t":42.0000017106951}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.442,0],[0,-0.443],[-0.442,0],[0,0.441]],"o":[[-0.442,0],[0,0.441],[0.442,0],[0,-0.443]],"v":[[0,-0.8],[-0.8,0],[0,0.8],[0.8,0]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.9607843137254902,0.5019607843137255,0.24313725490196078,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[8.25,12.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.221,0],[0,0.221],[0,0],[0.221,0],[0,-0.221],[0,0]],"o":[[0.221,0],[0,0],[0,-0.221],[-0.221,0],[0,0],[0,0.221]],"v":[[0,2.544],[0.4,2.144],[0.4,-2.144],[0,-2.544],[-0.4,-2.144],[-0.4,2.144]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.9607843137254902,0.5019607843137255,0.24313725490196078,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[8.25,7.194],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 2","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.416],[-4.416,0],[0,4.416],[4.416,0]],"o":[[0,4.416],[4.416,0],[0,-4.416],[-4.416,0]],"v":[[-8,0],[0,8],[8,0],[0,-8]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.8901960784313725,0.8235294117647058,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[8.25,8.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 3","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3597.00014650881,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Sombra contornos","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":8.4,"s":[100],"e":[0]},{"t":23.8000009693939}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[16,16,0],"ix":2},"a":{"a":0,"k":[8.25,8.25,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.847,0.847,0.667],"y":[1,1,1]},"o":{"x":[1,1,0.333],"y":[0,0,0]},"n":["0p847_1_1_0","0p847_1_1_0","0p667_1_0p333_0"],"t":0,"s":[100,100,100],"e":[180,180,100]},{"i":{"x":[0,0,0.667],"y":[1,1,1]},"o":{"x":[0.127,0.127,0.333],"y":[0,0,0]},"n":["0_1_0p127_0","0_1_0p127_0","0p667_1_0p333_0"],"t":21,"s":[180,180,100],"e":[100,100,100]},{"t":42.0000017106951}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.416],[-4.416,0],[0,4.416],[4.416,0]],"o":[[0,4.416],[4.416,0],[0,-4.416],[-4.416,0]],"v":[[-8,0],[0,8],[8,0],[0,-8]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.996078431372549,0.9411764705882353,0.9098039215686274,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[8.25,8.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 3","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3597.00014650881,"st":0,"bm":0}],"markers":[]}
|
||||||
|
After Width: | Height: | Size: 249 KiB |
|
After Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 208 KiB |
|
After Width: | Height: | Size: 319 KiB |
|
After Width: | Height: | Size: 333 KiB |
|
After Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 100 KiB |
|
After Width: | Height: | Size: 137 KiB |
|
After Width: | Height: | Size: 794 KiB |
|
After Width: | Height: | Size: 245 KiB |
|
After Width: | Height: | Size: 263 KiB |
|
After Width: | Height: | Size: 275 KiB |
|
After Width: | Height: | Size: 291 B |
|
After Width: | Height: | Size: 395 B |
|
After Width: | Height: | Size: 223 B |
|
After Width: | Height: | Size: 272 B |
|
After Width: | Height: | Size: 484 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
After Width: | Height: | Size: 484 KiB |
|
After Width: | Height: | Size: 153 KiB |
|
After Width: | Height: | Size: 237 KiB |
|
After Width: | Height: | Size: 392 KiB |
|
After Width: | Height: | Size: 132 KiB |
|
After Width: | Height: | Size: 435 KiB |
|
After Width: | Height: | Size: 315 KiB |
|
After Width: | Height: | Size: 193 KiB |
|
After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 353 KiB |
|
After Width: | Height: | Size: 89 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 9.7 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<browserconfig>
|
||||||
|
<msapplication>
|
||||||
|
<tile>
|
||||||
|
<square150x150logo src="/mstile-150x150.png"/>
|
||||||
|
<TileColor>#da532c</TileColor>
|
||||||
|
</tile>
|
||||||
|
</msapplication>
|
||||||
|
</browserconfig>
|
||||||
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 15 KiB |
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme_color": "#ffffff",
|
||||||
|
"background_color": "#ffffff",
|
||||||
|
"display": "standalone"
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 7.6 KiB |
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"short_name": "",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme_color": "#ffffff",
|
||||||
|
"background_color": "#ffffff",
|
||||||
|
"display": "standalone"
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 227 KiB |
|
After Width: | Height: | Size: 190 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 161 KiB |
|
After Width: | Height: | Size: 104 KiB |
|
After Width: | Height: | Size: 380 KiB |
|
After Width: | Height: | Size: 243 KiB |
|
After Width: | Height: | Size: 149 KiB |
|
After Width: | Height: | Size: 253 KiB |