├── .environment
└── demo.devi.tools
│ └── docker-compose.yml
├── .github
└── workflows
│ └── ci.yml
├── .gitignore
├── .gitlab-ci.yml
├── .gitmodules
├── .tevun
└── hooks
│ ├── install.sh
│ ├── post-checkout.sh
│ ├── pre-checkout.sh
│ └── setup.sh
├── README.md
├── cover.jpg
├── laravel
├── .docker
│ ├── devitools-nginx
│ │ ├── opt
│ │ │ └── docker
│ │ │ │ └── etc
│ │ │ │ └── nginx
│ │ │ │ └── vhost.common.d
│ │ │ │ └── cache.conf
│ │ └── usr
│ │ │ └── local
│ │ │ └── etc
│ │ │ └── php
│ │ │ └── conf.d
│ │ │ └── docker-php-ext-xdebug.ini
│ └── devitools-queue
│ │ └── opt
│ │ └── docker
│ │ └── etc
│ │ └── supervisor.d
│ │ └── php-fpm.conf
├── .env.defaults
├── .gitattributes
├── .gitignore
├── .styleci.yml
├── README.md
├── artisan
├── bootstrap
│ ├── app.php
│ └── cache
│ │ └── .gitignore
├── composer.json
├── composer.lock
├── config
│ ├── app.php
│ ├── audit.php
│ ├── auth.php
│ ├── broadcasting.php
│ ├── cache.php
│ ├── cors.php
│ ├── database.php
│ ├── filesystems.php
│ ├── flare.php
│ ├── hashing.php
│ ├── horizon.php
│ ├── ignition.php
│ ├── jwt.php
│ ├── logging.php
│ ├── mail.php
│ ├── queue.php
│ ├── sentry.php
│ ├── services.php
│ ├── session.php
│ ├── tinker.php
│ ├── trustedproxy.php
│ └── view.php
├── database
│ ├── .gitignore
│ ├── factories
│ │ └── UserFactory.php
│ ├── migrations
│ │ ├── 0000_00_00_000000_profiles-create.php
│ │ ├── 0000_00_00_000001_users-create_table.php
│ │ ├── 0000_00_00_000002_password_resets-create.php
│ │ ├── 0000_00_00_000003_failed_jobs-create.php
│ │ ├── 0000_00_00_000004_audits-create.php
│ │ ├── 0000_00_00_000006_permissions-create.php
│ │ ├── 2020_06_06_120600_categories-create.php
│ │ ├── 2020_06_23_111700_categories-add_description_active.php
│ │ ├── 2020_06_23_134900_markers-create.php
│ │ ├── 2020_07_05_202000_types-create.php
│ │ └── 3000_00_00_000000_seed_data.php
│ └── seeds
│ │ └── DatabaseSeeder.php
├── docker-compose.yml
├── phpunit.xml
├── public
│ ├── .htaccess
│ ├── favicon.ico
│ ├── favicon.png
│ ├── index.html
│ ├── index.php
│ ├── report
│ │ └── logo.png
│ ├── robots.txt
│ ├── script
│ │ └── app.js
│ ├── style
│ │ └── app.css
│ ├── vendor
│ │ └── horizon
│ │ │ ├── app-dark.css
│ │ │ ├── app.css
│ │ │ ├── app.js
│ │ │ ├── img
│ │ │ ├── favicon.png
│ │ │ ├── horizon.svg
│ │ │ └── sprite.svg
│ │ │ └── mix-manifest.json
│ └── web.config
├── resources
│ ├── assets
│ │ ├── js
│ │ │ ├── app.js
│ │ │ ├── bootstrap.js
│ │ │ └── components
│ │ │ │ └── ExampleComponent.vue
│ │ └── sass
│ │ │ ├── _variables.scss
│ │ │ └── app.scss
│ ├── js
│ │ ├── app.js
│ │ └── bootstrap.js
│ ├── lang
│ │ └── en
│ │ │ ├── admin
│ │ │ └── user
│ │ │ │ ├── created.php
│ │ │ │ └── reset.php
│ │ │ ├── auth.php
│ │ │ ├── pagination.php
│ │ │ ├── passwords.php
│ │ │ ├── service.php
│ │ │ └── validation.php
│ ├── sass
│ │ └── app.scss
│ └── views
│ │ ├── errors
│ │ ├── 401.blade.php
│ │ ├── 403.blade.php
│ │ ├── 404.blade.php
│ │ ├── 419.blade.php
│ │ ├── 429.blade.php
│ │ ├── 500.blade.php
│ │ ├── 503.blade.php
│ │ ├── illustrated-layout.blade.php
│ │ ├── layout.blade.php
│ │ └── minimal.blade.php
│ │ ├── report
│ │ └── layout
│ │ │ ├── default.blade.php
│ │ │ ├── empty.blade.php
│ │ │ ├── error.blade.php
│ │ │ ├── loading.blade.php
│ │ │ └── style.blade.php
│ │ └── welcome.blade.php
├── routes
│ ├── api.php
│ ├── api
│ │ ├── admin.php
│ │ ├── auth.php
│ │ └── general.php
│ ├── channels.php
│ ├── console.php
│ ├── web.php
│ └── web
│ │ ├── report.php
│ │ └── statics.php
├── server.php
├── source
│ ├── Domains
│ │ ├── Admin
│ │ │ ├── Permission.php
│ │ │ ├── Permission
│ │ │ │ ├── PermissionNamespaces.php
│ │ │ │ └── ProfileSaving.php
│ │ │ ├── Profile.php
│ │ │ ├── Profile
│ │ │ │ └── ProfileRepository.php
│ │ │ ├── User.php
│ │ │ └── User
│ │ │ │ ├── UserBefore.php
│ │ │ │ ├── UserCreated.php
│ │ │ │ ├── UserCreating.php
│ │ │ │ ├── UserFilterReference.php
│ │ │ │ ├── UserRepository.php
│ │ │ │ └── UserUpdating.php
│ │ └── General
│ │ │ ├── Category.php
│ │ │ ├── Category
│ │ │ └── CategoryRepository.php
│ │ │ ├── Marker.php
│ │ │ ├── Marker
│ │ │ └── MarkerRepository.php
│ │ │ ├── Type.php
│ │ │ └── Type
│ │ │ └── TypeRepository.php
│ └── Http
│ │ ├── Controllers
│ │ ├── Admin
│ │ │ ├── ProfileController.php
│ │ │ └── UserController.php
│ │ ├── Auth
│ │ │ ├── Confirm.php
│ │ │ ├── Me.php
│ │ │ ├── Refresh.php
│ │ │ ├── SignIn.php
│ │ │ └── SignUp.php
│ │ └── General
│ │ │ ├── CategoryController.php
│ │ │ ├── MarkerController.php
│ │ │ └── TypeController.php
│ │ └── Routing
│ │ └── AppJWTAuthentication.php
├── storage
│ ├── app
│ │ ├── .gitignore
│ │ └── public
│ │ │ └── .gitignore
│ ├── framework
│ │ ├── .gitignore
│ │ ├── cache
│ │ │ ├── .gitignore
│ │ │ └── data
│ │ │ │ └── .gitignore
│ │ ├── sessions
│ │ │ └── .gitignore
│ │ ├── testing
│ │ │ └── .gitignore
│ │ └── views
│ │ │ └── .gitignore
│ └── logs
│ │ └── .gitignore
├── tests
│ ├── CreatesApplication.php
│ ├── Feature
│ │ └── ExampleTest.php
│ ├── Http
│ │ ├── auth
│ │ │ ├── me.http
│ │ │ ├── register.http
│ │ │ └── sign-in.http
│ │ └── http-client.env.json
│ ├── TestCase.php
│ └── Unit
│ │ └── ExampleTest.php
└── webpack.mix.js
├── quasar
├── .babelrc
├── .env.defaults
├── .env.production
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .postcssrc.js
├── .stylintrc
├── .vscode
│ ├── extensions.json
│ └── settings.json
├── babel.config.js
├── docker-compose.sh
├── docker-compose.yml
├── package.json
├── quasar.conf.js
├── quasar.extensions.json
├── resources
│ ├── lang
│ │ ├── en-us
│ │ │ ├── actions.js
│ │ │ ├── app.js
│ │ │ ├── domains.js
│ │ │ ├── index.js
│ │ │ ├── pages.js
│ │ │ └── permissions.js
│ │ └── pt-br
│ │ │ ├── actions.js
│ │ │ ├── app.js
│ │ │ ├── domains.js
│ │ │ ├── index.js
│ │ │ ├── pages.js
│ │ │ └── permissions.js
│ └── views
│ │ ├── Error403.vue
│ │ ├── Error404.vue
│ │ ├── auth
│ │ ├── AuthSignIn.vue
│ │ └── AuthSignUp.vue
│ │ └── dashboard
│ │ ├── DashboardIndex.vue
│ │ ├── admin
│ │ ├── profile
│ │ │ ├── ProfileForm.vue
│ │ │ ├── ProfileTable.vue
│ │ │ └── index.js
│ │ └── user
│ │ │ ├── UserForm.vue
│ │ │ ├── UserTable.vue
│ │ │ └── index.js
│ │ ├── general
│ │ ├── category
│ │ │ ├── CategoryForm.vue
│ │ │ ├── CategoryTable.vue
│ │ │ └── index.js
│ │ ├── marker
│ │ │ ├── MarkerForm.vue
│ │ │ ├── MarkerTable.vue
│ │ │ └── index.js
│ │ └── type
│ │ │ ├── TypeForm.vue
│ │ │ ├── TypeTable.vue
│ │ │ └── index.js
│ │ ├── movement
│ │ ├── confirmation
│ │ │ ├── ConfirmationForm.vue
│ │ │ ├── ConfirmationTable.vue
│ │ │ └── index.js
│ │ ├── expense
│ │ │ ├── ExpenseForm.vue
│ │ │ ├── ExpenseTable.vue
│ │ │ └── index.js
│ │ ├── invoice
│ │ │ ├── InvoiceForm.vue
│ │ │ ├── InvoiceTable.vue
│ │ │ └── index.js
│ │ └── revenue
│ │ │ ├── RevenueForm.vue
│ │ │ ├── RevenueTable.vue
│ │ │ └── index.js
│ │ ├── preview
│ │ ├── alert
│ │ │ ├── AlertForm.vue
│ │ │ ├── AlertTable.vue
│ │ │ └── index.js
│ │ ├── goal
│ │ │ ├── GoalForm.vue
│ │ │ ├── GoalTable.vue
│ │ │ └── index.js
│ │ ├── input
│ │ │ ├── InputForm.vue
│ │ │ ├── InputTable.vue
│ │ │ └── index.js
│ │ ├── output
│ │ │ ├── OutputForm.vue
│ │ │ ├── OutputTable.vue
│ │ │ └── index.js
│ │ └── simulation
│ │ │ ├── SimulationForm.vue
│ │ │ ├── SimulationTable.vue
│ │ │ └── index.js
│ │ ├── print
│ │ ├── Printable.vue
│ │ ├── PrintableArray.vue
│ │ └── PrintableMixin.js
│ │ ├── report
│ │ └── ExampleReport.vue
│ │ ├── settings
│ │ └── MyAccountForm.vue
│ │ └── wallet
│ │ ├── account
│ │ ├── AccountForm.vue
│ │ ├── AccountTable.vue
│ │ └── index.js
│ │ ├── bankAccount
│ │ ├── BankAccountForm.vue
│ │ ├── BankAccountTable.vue
│ │ └── index.js
│ │ ├── card
│ │ ├── CardForm.vue
│ │ ├── CardTable.vue
│ │ └── index.js
│ │ ├── investment
│ │ ├── InvestmentForm.vue
│ │ ├── InvestmentTable.vue
│ │ └── index.js
│ │ └── ticket
│ │ ├── TicketForm.vue
│ │ ├── TicketTable.vue
│ │ └── index.js
├── routes
│ ├── auth.js
│ ├── dashboard.js
│ └── dashboard
│ │ ├── admin.js
│ │ └── general.js
├── source
│ ├── domains
│ │ ├── Admin
│ │ │ ├── Profile
│ │ │ │ ├── Schema
│ │ │ │ │ ├── ProfileSchema.ts
│ │ │ │ │ └── ProfileService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ └── User
│ │ │ │ ├── Schema
│ │ │ │ ├── UserSchema.ts
│ │ │ │ └── UserService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ ├── Auth
│ │ │ ├── Mixin
│ │ │ │ └── Session.js
│ │ │ └── Service
│ │ │ │ ├── AuthService.js
│ │ │ │ └── index.js
│ │ ├── General
│ │ │ ├── Category
│ │ │ │ ├── Schema
│ │ │ │ │ ├── CategorySchema.ts
│ │ │ │ │ └── CategoryService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Marker
│ │ │ │ ├── Schema
│ │ │ │ │ ├── MarkerSchema.ts
│ │ │ │ │ └── MarkerService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ └── Type
│ │ │ │ ├── Schema
│ │ │ │ ├── TypeSchema.ts
│ │ │ │ └── TypeService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ ├── Movement
│ │ │ ├── Confirmation
│ │ │ │ ├── Schema
│ │ │ │ │ ├── ConfirmationSchema.ts
│ │ │ │ │ └── ConfirmationService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Expense
│ │ │ │ ├── Schema
│ │ │ │ │ ├── ExpenseSchema.ts
│ │ │ │ │ └── ExpenseService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Invoice
│ │ │ │ ├── Schema
│ │ │ │ │ ├── InvoiceSchema.ts
│ │ │ │ │ └── InvoiceService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ └── Revenue
│ │ │ │ ├── Schema
│ │ │ │ ├── RevenueSchema.ts
│ │ │ │ └── RevenueService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ ├── Preview
│ │ │ ├── Alert
│ │ │ │ ├── Schema
│ │ │ │ │ ├── AlertSchema.ts
│ │ │ │ │ └── AlertService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Goal
│ │ │ │ ├── Schema
│ │ │ │ │ ├── GoalSchema.ts
│ │ │ │ │ └── GoalService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Input
│ │ │ │ ├── Schema
│ │ │ │ │ ├── InputSchema.ts
│ │ │ │ │ └── InputService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ ├── Output
│ │ │ │ ├── Schema
│ │ │ │ │ ├── OutputSchema.ts
│ │ │ │ │ └── OutputService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ │ └── Simulation
│ │ │ │ ├── Schema
│ │ │ │ ├── SimulationSchema.ts
│ │ │ │ └── SimulationService.ts
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ ├── Report
│ │ │ ├── en-us.js
│ │ │ ├── index.js
│ │ │ ├── pt-br.js
│ │ │ └── routes.js
│ │ ├── Settings
│ │ │ └── Account
│ │ │ │ ├── Schema
│ │ │ │ └── MyAccountSchema.js
│ │ │ │ ├── en-us.js
│ │ │ │ ├── pt-br.js
│ │ │ │ └── settings.js
│ │ └── Wallet
│ │ │ ├── Account
│ │ │ ├── Schema
│ │ │ │ ├── AccountSchema.ts
│ │ │ │ └── AccountService.ts
│ │ │ ├── en-us.js
│ │ │ ├── pt-br.js
│ │ │ └── settings.js
│ │ │ ├── BankAccount
│ │ │ ├── Schema
│ │ │ │ ├── BankAccountSchema.ts
│ │ │ │ └── BankAccountService.ts
│ │ │ ├── en-us.js
│ │ │ ├── pt-br.js
│ │ │ └── settings.js
│ │ │ ├── Card
│ │ │ ├── Schema
│ │ │ │ ├── CardSchema.ts
│ │ │ │ └── CardService.ts
│ │ │ ├── en-us.js
│ │ │ ├── pt-br.js
│ │ │ └── settings.js
│ │ │ ├── Investment
│ │ │ ├── Schema
│ │ │ │ ├── InvestmentSchema.ts
│ │ │ │ └── InvestmentService.ts
│ │ │ ├── en-us.js
│ │ │ ├── pt-br.js
│ │ │ └── settings.js
│ │ │ └── Ticket
│ │ │ ├── Schema
│ │ │ ├── TicketSchema.ts
│ │ │ └── TicketService.ts
│ │ │ ├── en-us.js
│ │ │ ├── pt-br.js
│ │ │ └── settings.js
│ └── modules
│ │ ├── Auth
│ │ ├── AuthAttempt.js
│ │ ├── AuthLayout.vue
│ │ ├── components
│ │ │ └── index.js
│ │ ├── router
│ │ │ └── middleware.js
│ │ └── store
│ │ │ ├── actions.js
│ │ │ ├── getters.js
│ │ │ ├── index.js
│ │ │ ├── mutations.js
│ │ │ └── state.js
│ │ ├── Dashboard
│ │ ├── DashboardLayout.vue
│ │ ├── components
│ │ │ ├── DashboardAction.vue
│ │ │ ├── DashboardActions.vue
│ │ │ ├── DashboardMenu.vue
│ │ │ └── index.js
│ │ ├── router
│ │ │ └── middleware.js
│ │ └── store
│ │ │ ├── actions.js
│ │ │ ├── custom
│ │ │ ├── actions.js
│ │ │ ├── getters.js
│ │ │ ├── mutations.js
│ │ │ └── state.js
│ │ │ ├── getters.js
│ │ │ ├── index.js
│ │ │ ├── mutations.js
│ │ │ └── state.js
│ │ └── General
│ │ └── version.js
├── src-pwa
│ ├── custom-service-worker.js
│ ├── pwa-flag.d.ts
│ └── register-service-worker.js
├── src
│ ├── App.vue
│ ├── assets
│ │ ├── quasar-logo-full.svg
│ │ └── sad.svg
│ ├── boot
│ │ ├── .gitkeep
│ │ ├── app.js
│ │ ├── i18n.js
│ │ ├── sentry.js
│ │ └── static.js
│ ├── css
│ │ ├── agnostic.styl
│ │ ├── app.styl
│ │ └── quasar.variables.styl
│ ├── env.d.ts
│ ├── i18n
│ │ └── index.js
│ ├── index.template.html
│ ├── router
│ │ ├── index.js
│ │ └── middleware
│ │ │ ├── updateDevice.js
│ │ │ └── updateTitle.js
│ ├── settings
│ │ ├── action.js
│ │ ├── actions.js
│ │ ├── components.js
│ │ ├── date.js
│ │ ├── executors.js
│ │ ├── field.js
│ │ ├── filler.js
│ │ ├── http.js
│ │ ├── local.js
│ │ ├── message.js
│ │ ├── permissions.js
│ │ ├── report.js
│ │ ├── rest.js
│ │ ├── schema.js
│ │ ├── security.js
│ │ ├── storage.js
│ │ └── table.js
│ ├── statics
│ │ ├── app-logo-128x128.png
│ │ ├── auth
│ │ │ ├── background.jpg
│ │ │ └── background.mp4
│ │ ├── browserconfig.xml
│ │ ├── dashboard
│ │ │ ├── header-logo-white.png
│ │ │ └── header-logo.png
│ │ ├── favicon.ico
│ │ ├── favicon.png
│ │ ├── header-logo.png
│ │ ├── icons
│ │ │ ├── android-chrome-192x192.png
│ │ │ ├── android-chrome-256x256.png
│ │ │ ├── android-chrome-384x384.png
│ │ │ ├── android-icon-144x144.png
│ │ │ ├── android-icon-192x192.png
│ │ │ ├── android-icon-36x36.png
│ │ │ ├── android-icon-48x48.png
│ │ │ ├── android-icon-72x72.png
│ │ │ ├── android-icon-96x96.png
│ │ │ ├── apple-icon-114x114.png
│ │ │ ├── apple-icon-120x120.png
│ │ │ ├── apple-icon-144x144.png
│ │ │ ├── apple-icon-152x152.png
│ │ │ ├── apple-icon-180x180.png
│ │ │ ├── apple-icon-57x57.png
│ │ │ ├── apple-icon-60x60.png
│ │ │ ├── apple-icon-72x72.png
│ │ │ ├── apple-icon-76x76.png
│ │ │ ├── apple-icon-precomposed.png
│ │ │ ├── apple-icon.png
│ │ │ ├── apple-touch-icon.png
│ │ │ ├── favicon-16x16.png
│ │ │ ├── favicon-32x32.png
│ │ │ ├── favicon-96x96.png
│ │ │ ├── favicon.ico
│ │ │ ├── icon-128x128.png
│ │ │ ├── icon-192x192.png
│ │ │ ├── icon-256x256.png
│ │ │ ├── icon-384x384.png
│ │ │ ├── icon-512x512.png
│ │ │ ├── ms-icon-144x144.png
│ │ │ ├── ms-icon-150x150.png
│ │ │ ├── ms-icon-310x310.png
│ │ │ ├── ms-icon-70x70.png
│ │ │ ├── mstile-150x150.png
│ │ │ └── safari-pinned-tab.svg
│ │ ├── logo-horizontal-white.png
│ │ ├── logo-horizontal.png
│ │ ├── logo.png
│ │ ├── site.webmanifest
│ │ └── version
│ └── store
│ │ ├── app
│ │ ├── actions.js
│ │ ├── getters.js
│ │ ├── index.js
│ │ ├── mutations.js
│ │ └── state.js
│ │ ├── index.js
│ │ └── store-flag.d.ts
├── tsconfig.json
├── version.ejs
└── yarn.lock
└── system.js
/.gitignore:
--------------------------------------------------------------------------------
1 | ###> symfony/framework-bundle ###
2 | /symfony/.env.local
3 | /symfony/.env.local.php
4 | /symfony/.env.*.local
5 | /symfony/public/bundles/
6 | /symfony/var/*
7 | /symfony/vendor/
8 | ###< symfony/framework-bundle ###
9 |
10 | .idea/
11 | /.bin/
12 | /docker-compose.override.yml
13 | /coverage
14 |
15 | !*.gitkeep
16 | *.log
17 | nbproject
18 | /@ignored
19 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "quasar/@devitools"]
2 | path = quasar/@devitools
3 | url = https://github.com/devitools/quasar.git
4 | [submodule "laravel/@devitools"]
5 | path = laravel/@devitools
6 | url = https://github.com/devitools/laravel.git
7 |
--------------------------------------------------------------------------------
/.tevun/hooks/install.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo " ~> [hooks\install.sh] on [${1}, ${2}]"
4 |
5 | cd "${1}" || exit
6 |
7 | docker exec devitools-nginx bash -c "su -c 'composer install --no-interaction' application"
8 | docker exec devitools-nginx bash -c "su -c 'php artisan migrate --force' application"
9 |
--------------------------------------------------------------------------------
/.tevun/hooks/post-checkout.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo " ~> [hooks\post-checkout.sh] on [${1}, ${2}]"
4 |
5 | cd "${1}" || exit
6 |
7 | docker-compose up -d
8 |
--------------------------------------------------------------------------------
/.tevun/hooks/pre-checkout.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo " ~> [hooks\pre-checkout.sh] on [${1}, ${2}]"
4 |
5 | cd "${1}" || exit
6 |
7 | docker-compose down
8 |
--------------------------------------------------------------------------------
/.tevun/hooks/setup.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo " ~> [hooks\setup.sh] on [${1}, ${2}]"
4 |
5 | cd "${1}" || exit
6 |
7 | docker exec -it devitools-nginx bash -c "su -c 'php artisan env' application"
8 | docker exec -it devitools-nginx bash -c "su -c 'php artisan key:generate' application"
9 | docker exec -it devitools-nginx bash -c "su -c 'php artisan jwt:secret' application"
10 | docker exec -it devitools-nginx bash -c "su -c 'php artisan migrate:fresh' application"
11 |
--------------------------------------------------------------------------------
/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/cover.jpg
--------------------------------------------------------------------------------
/laravel/.docker/devitools-nginx/opt/docker/etc/nginx/vhost.common.d/cache.conf:
--------------------------------------------------------------------------------
1 | location ~* (.*-worker\.js)$ {
2 | expires off;
3 | add_header Pragma no-cache;
4 | add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
5 | }
6 |
7 | location ~ ^/(css|js|fonts|img|images)/ {
8 | expires max;
9 | }
10 |
11 | location ~* ^.+\.(html|htm)$ {
12 | expires 5m;
13 | }
14 |
--------------------------------------------------------------------------------
/laravel/.docker/devitools-queue/opt/docker/etc/supervisor.d/php-fpm.conf:
--------------------------------------------------------------------------------
1 | [group:php-fpm]
2 | programs=php-fpmd
3 | priority=20
4 |
5 | [program:php-fpmd]
6 | command=/opt/docker/bin/service.d/php-fpm.sh
7 | process_name=%(program_name)s
8 | startsecs=0
9 | autostart=true
10 | autorestart=true
11 | stdout_logfile=/dev/stdout
12 | stdout_logfile_maxbytes=0
13 | stderr_logfile=/dev/stderr
14 | stderr_logfile_maxbytes=0
15 |
16 | [program:php-email]
17 | process_name=%(program_name)s_%(process_num)02d
18 | command=php /var/www/app/artisan queue:work --queue=email --timeout=86400 --memory=512 --tries=1 --daemon
19 | autostart=true
20 | autorestart=true
21 | numprocs=1
22 | redirect_stderr=true
23 | stdout_logfile=/var/www/app/storage/logs/email.log
24 |
25 | [program:php-generic]
26 | process_name=%(program_name)s_%(process_num)02d
27 | command=php /var/www/app/artisan queue:work --queue=generic --timeout=86400 --memory=512 --tries=1 --daemon
28 | autostart=true
29 | autorestart=true
30 | numprocs=1
31 | redirect_stderr=true
32 | stdout_logfile=/var/www/app/storage/logs/generic.log
33 |
--------------------------------------------------------------------------------
/laravel/.env.defaults:
--------------------------------------------------------------------------------
1 | # app constants
2 | APP_NAME="Devitools Demo"
3 | APP_ENV=development
4 | APP_KEY=
5 | APP_DEBUG=true
6 | APP_URL=http://localhost:8080
7 | APP_CLIENT=http://localhost:8000
8 | APP_DEV=true
9 |
10 | # log setings
11 | LOG_CHANNEL=stack
12 |
13 | # MySQL connection
14 | DB_CONNECTION=mysql
15 | DB_HOST=devitools-mysql
16 | DB_PORT=3306
17 | DB_DATABASE=database
18 | DB_USERNAME=user
19 | DB_PASSWORD=password
20 |
21 | # drivers
22 | BROADCAST_DRIVER=log
23 | CACHE_DRIVER=file
24 | SESSION_DRIVER=file
25 | SESSION_LIFETIME=120
26 | QUEUE_CONNECTION=redis
27 |
28 | # Redis connection
29 | REDIS_HOST=devitools-redis
30 | REDIS_PASSWORD=null
31 | REDIS_PORT=6379
32 |
33 | # mail credentials
34 | MAIL_DRIVER=smtp
35 | MAIL_HOST=smtp.mailtrap.io
36 | MAIL_PORT=2525
37 | MAIL_USERNAME=
38 | MAIL_PASSWORD=
39 | MAIL_FROM_NAME=
40 | MAIL_FROM_ADDRESS=
41 |
42 | # pusher credentials
43 | PUSHER_APP_CLUSTER=mt1
44 | PUSHER_APP_ID=
45 | PUSHER_APP_KEY=
46 | PUSHER_APP_SECRET=
47 |
48 | MIX_PUSHER_APP_KEY=
49 | MIX_PUSHER_APP_CLUSTER=
50 |
51 | # JWT and Sentry settings
52 | JWT_SECRET=
53 | SENTRY_LARAVEL_DSN=""
54 |
--------------------------------------------------------------------------------
/laravel/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | *.css linguist-vendored
3 | *.scss linguist-vendored
4 | *.js linguist-vendored
5 | CHANGELOG.md export-ignore
6 |
--------------------------------------------------------------------------------
/laravel/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | /public/hot
3 | /public/storage
4 | /storage/*.key
5 | /vendor
6 | /nbproject
7 | /.idea
8 | /.vscode
9 | /.vagrant
10 | Homestead.json
11 | Homestead.yaml
12 | npm-debug.log
13 | yarn-error.log
14 | /.env
15 | /docker-compose.override.yml
16 | *.cache
17 | /server
18 |
--------------------------------------------------------------------------------
/laravel/.styleci.yml:
--------------------------------------------------------------------------------
1 | php:
2 | preset: laravel
3 | disabled:
4 | - unused_use
5 | finder:
6 | not-name:
7 | - index.php
8 | - server.php
9 | js:
10 | finder:
11 | not-name:
12 | - webpack.mix.js
13 | css: true
14 |
--------------------------------------------------------------------------------
/laravel/bootstrap/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/laravel/config/sentry.php:
--------------------------------------------------------------------------------
1 | env('SENTRY_LARAVEL_DSN', env('SENTRY_DSN')),
6 |
7 | // capture release as git sha
8 | // 'release' => trim(exec('git --git-dir ' . base_path('.git') . ' log --pretty="%h" -n1 HEAD')),
9 |
10 | 'breadcrumbs' => [
11 | // Capture Laravel logs in breadcrumbs
12 | 'logs' => true,
13 |
14 | // Capture SQL queries in breadcrumbs
15 | 'sql_queries' => true,
16 |
17 | // Capture bindings on SQL queries logged in breadcrumbs
18 | 'sql_bindings' => true,
19 |
20 | // Capture queue job information in breadcrumbs
21 | 'queue_info' => true,
22 | ],
23 |
24 | ];
25 |
--------------------------------------------------------------------------------
/laravel/database/.gitignore:
--------------------------------------------------------------------------------
1 | *.sqlite
2 | *.sqlite-journal
3 |
--------------------------------------------------------------------------------
/laravel/database/factories/UserFactory.php:
--------------------------------------------------------------------------------
1 | define(User::class, function (Faker $faker) {
21 | return [
22 | 'name' => $faker->name,
23 | 'email' => $faker->unique()->safeEmail,
24 | 'email_verified_at' => now(),
25 | 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
26 | 'remember_token' => Str::random(10),
27 | ];
28 | });
29 |
--------------------------------------------------------------------------------
/laravel/database/migrations/0000_00_00_000000_profiles-create.php:
--------------------------------------------------------------------------------
1 | string('name');
29 | $table->string('reference');
30 | }
31 | }
32 |
33 |
--------------------------------------------------------------------------------
/laravel/database/migrations/0000_00_00_000001_users-create_table.php:
--------------------------------------------------------------------------------
1 | string('name');
29 | $table->string('username')->unique();
30 | $table->string('password')->nullable();
31 | $table->boolean('active')->default(0);
32 | $table->string('email')->nullable();
33 | $table->rememberToken();
34 |
35 | $table->efficientUuid('profileId')->nullable();
36 | $table->foreign('profileId', 'usersProFileId')
37 | ->references('uuid')
38 | ->on('profiles')
39 | ->onDelete('restrict');
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/laravel/database/migrations/0000_00_00_000002_password_resets-create.php:
--------------------------------------------------------------------------------
1 | string('email')->index();
34 | $table->string('token');
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/laravel/database/migrations/0000_00_00_000006_permissions-create.php:
--------------------------------------------------------------------------------
1 | efficientUuid('profileId');
29 |
30 | $table->string('namespace');
31 |
32 | $table->foreign('profileId', 'permissions_profileId')
33 | ->references('uuid')
34 | ->on('profiles')
35 | ->onDelete('cascade');
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/laravel/database/migrations/2020_06_06_120600_categories-create.php:
--------------------------------------------------------------------------------
1 | string('name');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/laravel/database/migrations/2020_06_23_111700_categories-add_description_active.php:
--------------------------------------------------------------------------------
1 | text('description')->nullable();
29 | $table->boolean('active')->default(false)->nullable();
30 | }
31 |
32 | /**
33 | * @param Table $table
34 | *
35 | * @return void
36 | */
37 | protected function onDown(Table $table)
38 | {
39 | $table->dropColumn('description');
40 | $table->dropColumn('active');
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/laravel/database/migrations/2020_06_23_134900_markers-create.php:
--------------------------------------------------------------------------------
1 | string('name');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/laravel/database/migrations/2020_07_05_202000_types-create.php:
--------------------------------------------------------------------------------
1 | string('name');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/laravel/database/migrations/3000_00_00_000000_seed_data.php:
--------------------------------------------------------------------------------
1 | run();
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | *
26 | * @return void
27 | */
28 | public function down()
29 | {
30 | //
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/laravel/public/.htaccess:
--------------------------------------------------------------------------------
1 |
2 |
3 | Options -MultiViews -Indexes
4 |
5 |
6 | RewriteEngine On
7 |
8 | # Handle Authorization Header
9 | RewriteCond %{HTTP:Authorization} .
10 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
11 |
12 | # Redirect Trailing Slashes If Not A Folder...
13 | RewriteCond %{REQUEST_FILENAME} !-d
14 | RewriteCond %{REQUEST_URI} (.+)/$
15 | RewriteRule ^ %1 [L,R=301]
16 |
17 | # Send Requests To Front Controller...
18 | RewriteCond %{REQUEST_FILENAME} !-d
19 | RewriteCond %{REQUEST_FILENAME} !-f
20 | RewriteRule ^ index.php [L]
21 |
22 |
--------------------------------------------------------------------------------
/laravel/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/laravel/public/favicon.ico
--------------------------------------------------------------------------------
/laravel/public/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/laravel/public/favicon.png
--------------------------------------------------------------------------------
/laravel/public/report/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/laravel/public/report/logo.png
--------------------------------------------------------------------------------
/laravel/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/laravel/public/vendor/horizon/img/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/laravel/public/vendor/horizon/img/favicon.png
--------------------------------------------------------------------------------
/laravel/public/vendor/horizon/mix-manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "/app.js": "/app.js?id=4f93645700a6c5485654",
3 | "/app.css": "/app.css?id=99048465add47d086ac7",
4 | "/app-dark.css": "/app-dark.css?id=f42b555818ed19478827"
5 | }
6 |
--------------------------------------------------------------------------------
/laravel/resources/assets/js/app.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * First we will load all of this project's JavaScript dependencies which
4 | * includes Vue and other libraries. It is a great starting point when
5 | * building robust, powerful web applications using Vue and Laravel.
6 | */
7 |
8 | require('./bootstrap');
9 |
10 | window.Vue = require('vue');
11 |
12 | /**
13 | * Next, we will create a fresh Vue application instance and attach it to
14 | * the page. Then, you may begin adding components to this application
15 | * or customize the JavaScript scaffolding to fit your unique needs.
16 | */
17 |
18 | Vue.component('example-component', require('./components/ExampleComponent.vue'));
19 |
20 | const app = new Vue({
21 | el: '#app'
22 | });
23 |
--------------------------------------------------------------------------------
/laravel/resources/assets/js/components/ExampleComponent.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | I'm an example component.
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
24 |
--------------------------------------------------------------------------------
/laravel/resources/assets/sass/_variables.scss:
--------------------------------------------------------------------------------
1 |
2 | // Body
3 | $body-bg: #f5f8fa;
4 |
5 | // Typography
6 | $font-family-sans-serif: "Raleway", sans-serif;
7 | $font-size-base: 0.9rem;
8 | $line-height-base: 1.6;
9 |
--------------------------------------------------------------------------------
/laravel/resources/assets/sass/app.scss:
--------------------------------------------------------------------------------
1 |
2 | // Fonts
3 | @import url("https://fonts.googleapis.com/css?family=Raleway:300,400,600");
4 |
5 | // Variables
6 | @import "variables";
7 |
8 | // Bootstrap
9 | @import '~bootstrap/scss/bootstrap';
10 |
11 | .navbar-laravel {
12 | background-color: #fff;
13 | box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
14 | }
15 |
--------------------------------------------------------------------------------
/laravel/resources/js/app.js:
--------------------------------------------------------------------------------
1 | require('./bootstrap');
2 |
--------------------------------------------------------------------------------
/laravel/resources/js/bootstrap.js:
--------------------------------------------------------------------------------
1 | window._ = require('lodash');
2 |
3 | /**
4 | * We'll load the axios HTTP library which allows us to easily issue requests
5 | * to our Laravel back-end. This library automatically handles sending the
6 | * CSRF token as a header based on the value of the "XSRF" token cookie.
7 | */
8 |
9 | window.axios = require('axios');
10 |
11 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
12 |
13 | /**
14 | * Echo exposes an expressive API for subscribing to channels and listening
15 | * for events that are broadcast by Laravel. Echo and event broadcasting
16 | * allows your team to easily build robust real-time web applications.
17 | */
18 |
19 | // import Echo from 'laravel-echo';
20 |
21 | // window.Pusher = require('pusher-js');
22 |
23 | // window.Echo = new Echo({
24 | // broadcaster: 'pusher',
25 | // key: process.env.MIX_PUSHER_APP_KEY,
26 | // cluster: process.env.MIX_PUSHER_APP_CLUSTER,
27 | // forceTLS: true
28 | // });
29 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/admin/user/created.php:
--------------------------------------------------------------------------------
1 | [
5 | 'subject' => 'Devitools :: registration confirmation',
6 | ],
7 | ];
8 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/admin/user/reset.php:
--------------------------------------------------------------------------------
1 | [
5 | 'subject' => 'Devitools :: reset password',
6 | ],
7 | ];
8 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/auth.php:
--------------------------------------------------------------------------------
1 | 'These credentials do not match our records.',
17 | 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/pagination.php:
--------------------------------------------------------------------------------
1 | '« Previous',
17 | 'next' => 'Next »',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/passwords.php:
--------------------------------------------------------------------------------
1 | 'Passwords must be at least six characters and match the confirmation.',
17 | 'reset' => 'Your password has been reset!',
18 | 'sent' => 'We have e-mailed your password reset link!',
19 | 'token' => 'This password reset token is invalid.',
20 | 'user' => "We can't find a user with that e-mail address.",
21 |
22 | ];
23 |
--------------------------------------------------------------------------------
/laravel/resources/lang/en/service.php:
--------------------------------------------------------------------------------
1 | [
17 | 'subject' => 'Devitools :: contact',
18 | ],
19 |
20 | 'notification' => [
21 | 'subject' => 'Devitools :: report problems',
22 | ],
23 |
24 | ];
25 |
--------------------------------------------------------------------------------
/laravel/resources/sass/app.scss:
--------------------------------------------------------------------------------
1 | //
2 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/401.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Unauthorized'))
4 | @section('code', '401')
5 | @section('message', __('Unauthorized'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/403.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Forbidden'))
4 | @section('code', '403')
5 | @section('message', __($exception->getMessage() ?: 'Forbidden'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/404.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Not Found'))
4 | @section('code', '404')
5 | @section('message', __('Not Found'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/419.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Page Expired'))
4 | @section('code', '419')
5 | @section('message', __('Page Expired'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/429.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Too Many Requests'))
4 | @section('code', '429')
5 | @section('message', __('Too Many Requests'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/500.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Server Error'))
4 | @section('code', '500')
5 | @section('message', __('Server Error'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/errors/503.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors::minimal')
2 |
3 | @section('title', __('Service Unavailable'))
4 | @section('code', '503')
5 | @section('message', __($exception->getMessage() ?: 'Service Unavailable'))
6 |
--------------------------------------------------------------------------------
/laravel/resources/views/report/layout/default.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{ $title }}
4 | @include('report.layout.style')
5 | @if($printing)
6 |
11 | @endif
12 |
13 |
14 |
15 |
16 |
20 |
23 |
24 | @yield('content')
25 |
26 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/laravel/resources/views/report/layout/empty.blade.php:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 | There is no data
11 |
12 |
--------------------------------------------------------------------------------
/laravel/routes/api.php:
--------------------------------------------------------------------------------
1 | group(static function () {
20 | Router::group([], __DIR__ . '/api/auth.php');
21 | Router::group([], __DIR__ . '/api/admin.php');
22 | Router::group([], __DIR__ . '/api/general.php');
23 | });
24 |
25 | Router::any('{any}', static function ($any) {
26 | return Answer::error("Route not found: {$any}", 404);
27 | })->where('any', '.*');
28 |
--------------------------------------------------------------------------------
/laravel/routes/api/admin.php:
--------------------------------------------------------------------------------
1 | group(static function () {
10 | Router::api('/admin/user', UserController::class);
11 | Router::api('/admin/profile', ProfileController::class);
12 | });
13 |
--------------------------------------------------------------------------------
/laravel/routes/api/auth.php:
--------------------------------------------------------------------------------
1 | group(static function () {
16 | Router::get('/auth/me', Me::class);
17 | });
18 |
--------------------------------------------------------------------------------
/laravel/routes/api/general.php:
--------------------------------------------------------------------------------
1 | group(static function () {
11 | Router::api('/general/category', CategoryController::class);
12 | Router::api('/general/marker', MarkerController::class);
13 | Router::api('/general/type', TypeController::class);
14 | });
15 |
--------------------------------------------------------------------------------
/laravel/routes/channels.php:
--------------------------------------------------------------------------------
1 | id === (int)$id;
22 | }
23 | );
24 |
--------------------------------------------------------------------------------
/laravel/routes/web/report.php:
--------------------------------------------------------------------------------
1 | middleware(['jwt.auth']);
--------------------------------------------------------------------------------
/laravel/routes/web/statics.php:
--------------------------------------------------------------------------------
1 | where('any', '.*');
10 | Router::post('/{any}', Upload::class)->where('any', '.*');
11 |
--------------------------------------------------------------------------------
/laravel/server.php:
--------------------------------------------------------------------------------
1 |
8 | */
9 |
10 | $uri = urldecode(
11 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)
12 | );
13 |
14 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the
15 | // built-in PHP web server. This provides a convenient way to test a Laravel
16 | // application without having installed a "real" web server software here.
17 | if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
18 | return false;
19 | }
20 |
21 | require_once __DIR__.'/public/index.php';
22 |
--------------------------------------------------------------------------------
/laravel/source/Domains/Admin/Profile/ProfileRepository.php:
--------------------------------------------------------------------------------
1 | model->where('reference', $reference)->first();
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/laravel/source/Domains/Admin/User/UserBefore.php:
--------------------------------------------------------------------------------
1 | configurePassword($user);
25 | }
26 |
27 | /**
28 | * @param User $user
29 | */
30 | private function configurePassword(User $user): void
31 | {
32 | $password = $user->getValue('password');
33 | if (!$password) {
34 | return;
35 | }
36 |
37 | $info = Hash::info($password);
38 | if (prop($info, 'algoName') !== 'unknown') {
39 | return;
40 | }
41 | $user->setValue('password', Hash::make($password));
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/laravel/source/Domains/Admin/User/UserCreating.php:
--------------------------------------------------------------------------------
1 | addField('name')
42 | ->validationRequired();
43 |
44 | $this->addField('description')
45 | ->isText();
46 |
47 | $this->addField('active')
48 | ->isToggle();
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/laravel/source/Domains/General/Category/CategoryRepository.php:
--------------------------------------------------------------------------------
1 | addField('name')
42 | ->validationRequired();
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/laravel/source/Domains/General/Marker/MarkerRepository.php:
--------------------------------------------------------------------------------
1 | addField('name')
42 | ->validationRequired();
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/laravel/source/Domains/General/Type/TypeRepository.php:
--------------------------------------------------------------------------------
1 | refresh();
28 |
29 | $payload = $auth->payload();
30 |
31 | /** @noinspection PhpUndefinedMethodInspection */
32 | $token_expires_at = JWTAuth::setToken($token)->getPayload()->get('exp');
33 |
34 | return $this->answerSuccess([
35 | 'token' => $token,
36 | 'token_type' => 'bearer',
37 | 'token_expires_at' => $token_expires_at,
38 | 'session' => $payload->get('session'),
39 | ]);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/laravel/source/Http/Controllers/General/CategoryController.php:
--------------------------------------------------------------------------------
1 | make(Kernel::class)->bootstrap();
27 |
28 | return $app;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/laravel/tests/Feature/ExampleTest.php:
--------------------------------------------------------------------------------
1 | get('/');
25 |
26 | $response->assertStatus(200);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/laravel/tests/Http/auth/me.http:
--------------------------------------------------------------------------------
1 | GET {{host}}/api/v1/auth/me
2 | Authorization: Bearer {{authorization}}
3 |
4 | ###
5 |
--------------------------------------------------------------------------------
/laravel/tests/Http/auth/register.http:
--------------------------------------------------------------------------------
1 | POST {{host}}/api/v1/auth/register HTTP/1.1
2 | Cookie: XDEBUG_SESSION=XDEBUG_ECLIPSE
3 | Content-Type: application/json
4 |
5 | {
6 | "username": "wil3"
7 | }
8 |
--------------------------------------------------------------------------------
/laravel/tests/Http/auth/sign-in.http:
--------------------------------------------------------------------------------
1 | POST http://localhost:8080/api/v1/auth/sign-in
2 | Content-Type: application/json
3 | Device: test
4 |
5 | {
6 | "username": "root",
7 | "password": "aq1sw2de3"
8 | }
9 | > {% client.global.set('authorization', response.body.data.token) %}
10 |
11 | ###
12 |
--------------------------------------------------------------------------------
/laravel/tests/Http/http-client.env.json:
--------------------------------------------------------------------------------
1 | {
2 | "development": {
3 | "host": "http://localhost:8080"
4 | }
5 | }
--------------------------------------------------------------------------------
/laravel/tests/TestCase.php:
--------------------------------------------------------------------------------
1 | assertTrue(true);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/laravel/webpack.mix.js:
--------------------------------------------------------------------------------
1 | const mix = require('laravel-mix');
2 |
3 | /*
4 | |--------------------------------------------------------------------------
5 | | Mix Asset Management
6 | |--------------------------------------------------------------------------
7 | |
8 | | Mix provides a clean, fluent API for defining some Webpack build steps
9 | | for your Laravel application. By default, we are compiling the Sass
10 | | file for the application as well as bundling up all the JS files.
11 | |
12 | */
13 |
14 | mix.js('resources/js/app.js', 'public/js')
15 | .sass('resources/sass/app.scss', 'public/css');
16 |
--------------------------------------------------------------------------------
/quasar/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": ["@babel/plugin-syntax-dynamic-import", "transform-class-properties"],
3 | "env": {
4 | "test": {
5 | "plugins": ["dynamic-import-node"],
6 | "presets": [
7 | [
8 | "@babel/preset-env",
9 | {
10 | "modules": "commonjs",
11 | "targets": {
12 | "node": "current"
13 | }
14 | }
15 | ]
16 | ]
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/quasar/.env.defaults:
--------------------------------------------------------------------------------
1 | # the path where the app is deployed
2 | VUE_APP_PUBLIC_PATH="/"
3 | # the name of app
4 | VUE_APP_NAME="Devitools"
5 | # sub title of app
6 | VUE_APP_SUB_TITLE="Devitools"
7 | # the messages group of language to use
8 | VUE_APP_LOCALE="pt-br"
9 | # the INTL reference locale (https://www.currency-iso.org/dam/downloads/lists/list_one.xml)
10 | VUE_APP_CURRENCY="USD"
11 | # the rest base url
12 | VUE_APP_REST_BASE_URL="http://localhost:8080"
13 | # the report base url
14 | VUE_APP_REPORT_BASE_URL="http://localhost:8080/report"
15 | # URL of external static resources
16 | VUE_APP_STATIC_URL="http://localhost:8080/statics"
17 | # Default title
18 | VUE_APP_DEFAULT_TITLE="Devitools"
19 | # Default mask to dates
20 | VUE_APP_DEFAULT_DATE_MASK="DD/MM/YYYY"
21 | # setup Sentry DSN
22 | VUE_APP_SENTRY_DSN=""
23 | # ipinfo access token
24 | VUE_APP_COUNTRY_CODE="BR"
25 | VUE_APP_IPINFO_TOKEN="afcf8c7bac20bb"
26 | # show all menu open by default
27 | VUE_APP_SIDEBAR_EXPANDED=false
28 |
29 | # activate dev resources
30 | VUE_APP_DEV_USERNAME=
31 | VUE_APP_DEV_PASSWORD=
32 |
33 | VUE_APP_DEVI_TOOLS=false
34 |
--------------------------------------------------------------------------------
/quasar/.env.production:
--------------------------------------------------------------------------------
1 | # the rest base url
2 | VUE_APP_REST_BASE_URL="https://demo.devi.tools"
3 | # the report base url
4 | VUE_APP_REPORT_BASE_URL="https://demo.devi.tools/report"
5 | # URL of extenal static ressources
6 | VUE_APP_STATIC_URL="https://demo.devi.tools/statics"
7 |
8 | # setup Sentry DSN
9 | VUE_APP_SENTRY_DSN=""
10 |
11 | # ipinfo access token
12 | VUE_APP_COUNTRY_CODE="BR"
13 | VUE_APP_IPINFO_TOKEN="afcf8c7bac20bb"
14 |
15 | VUE_APP_DEVI_TOOLS=true
16 |
--------------------------------------------------------------------------------
/quasar/.eslintignore:
--------------------------------------------------------------------------------
1 | /dist
2 | /src-bex/www
3 |
--------------------------------------------------------------------------------
/quasar/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | .thumbs.db
3 | node_modules
4 |
5 | # Quasar core related directories
6 | .quasar
7 | /dist
8 | /.env
9 |
10 | # Cordova related directories and files
11 | /src-cordova/node_modules
12 | /src-cordova/platforms
13 | /src-cordova/plugins
14 | /src-cordova/www
15 |
16 | # Capacitor related directories and files
17 | /src-capacitor/www
18 | /src-capacitor/node_modules
19 |
20 | # BEX related directories and files
21 | /src-bex/www
22 | /src-bex/js/core
23 |
24 | # Log files
25 | npm-debug.log*
26 | yarn-debug.log*
27 | yarn-error.log*
28 |
29 | # Editor directories and files
30 | .idea
31 | .vscode
32 | *.suo
33 | *.ntvs*
34 | *.njsproj
35 | *.sln
36 | .bin
37 | /docker-compose.override.yml
38 |
--------------------------------------------------------------------------------
/quasar/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | plugins: [
5 | // to edit target browsers: use "browserslist" field in package.json
6 | require('autoprefixer')
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/quasar/.stylintrc:
--------------------------------------------------------------------------------
1 | {
2 | "blocks": "never",
3 | "brackets": "never",
4 | "colons": "never",
5 | "colors": "always",
6 | "commaSpace": "always",
7 | "commentSpace": "always",
8 | "cssLiteral": "never",
9 | "depthLimit": false,
10 | "duplicates": true,
11 | "efficient": "always",
12 | "extendPref": false,
13 | "globalDupe": true,
14 | "indentPref": 2,
15 | "leadingZero": "never",
16 | "maxErrors": false,
17 | "maxWarnings": false,
18 | "mixed": false,
19 | "namingConvention": false,
20 | "namingConventionStrict": false,
21 | "none": "never",
22 | "noImportant": false,
23 | "parenSpace": "never",
24 | "placeholder": false,
25 | "prefixVarsWithDollar": "always",
26 | "quotePref": "single",
27 | "semicolons": "never",
28 | "sortOrder": false,
29 | "stackedProperties": "never",
30 | "trailingWhitespace": "never",
31 | "universal": "never",
32 | "valid": true,
33 | "zeroUnits": "never",
34 | "zIndexNormalize": false
35 | }
36 |
--------------------------------------------------------------------------------
/quasar/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "dbaeumer.vscode-eslint",
4 |
5 | "octref.vetur"
6 | ],
7 | "unwantedRecommendations": [
8 | "hookyqr.beautify",
9 | "dbaeumer.jshint",
10 | "ms-vscode.vscode-typescript-tslint-plugin"
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "vetur.validation.template": false,
3 |
4 | "eslint.validate": ["javascript", "javascriptreact", "typescript", "vue"],
5 | "typescript.tsdk": "node_modules/typescript/lib",
6 | "vetur.experimental.templateInterpolationService": true
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/babel.config.js:
--------------------------------------------------------------------------------
1 | /* eslint-env node */
2 | module.exports = {
3 | presets: [
4 | '@quasar/babel-preset-app'
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/quasar/docker-compose.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | if [[ ! -d /var/www/app/node_modules ]]; then
4 | echo "~> installing dependencies"
5 | yarn install
6 | fi
7 |
8 | if [[ ! -f /home/node/bin/node && -f /usr/local/bin/node ]]; then
9 | echo "~> expose bin"
10 | cp /usr/local/bin/node /home/node/bin/node
11 | echo "~> fix permissions"
12 | chown -R node:node .
13 | fi
14 |
15 | echo "Details: '$(pwd)' | '$(quasar -v)'"
16 |
17 | echo "~> starting dev"
18 | quasar dev
19 |
--------------------------------------------------------------------------------
/quasar/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3'
2 |
3 | # services
4 | services:
5 |
6 | # app
7 | quasar-app:
8 | container_name: ${DOCKER_SERVICE_APP}
9 | user: node
10 | image: tevun/quasar:latest
11 | working_dir: /var/www/app
12 | command: bash /var/www/app/docker-compose.sh
13 | volumes:
14 | - .:/var/www/app
15 | - ./.bin:/home/node/bin
16 | ports:
17 | - 8000:8000
18 |
--------------------------------------------------------------------------------
/quasar/quasar.extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "qdecimal": {}
3 | }
--------------------------------------------------------------------------------
/quasar/resources/lang/en-us/actions.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {Object}
3 | */
4 | export default {
5 | home: 'Home',
6 | general: 'General',
7 | 'general.category': 'Categories',
8 | 'general.product': 'Products',
9 | admin: 'Admin',
10 | 'admin.user': 'Users',
11 | 'admin.profile': 'Profiles'
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/resources/lang/en-us/app.js:
--------------------------------------------------------------------------------
1 | import { app } from '@devitools/Lang/en-us'
2 |
3 | /**
4 | * @type {Object}
5 | */
6 | export default {
7 | ...app,
8 | menu: {
9 | ...app.menu,
10 | balance: {
11 | label: 'My Balance',
12 | caption: 'Show your current balance'
13 | }
14 | },
15 | export: {
16 | error: 'Can not export your data'
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/quasar/resources/lang/en-us/domains.js:
--------------------------------------------------------------------------------
1 | // domains/Admin
2 | import profile from 'source/domains/Admin/Profile/en-us'
3 | import user from 'source/domains/Admin/User/en-us'
4 |
5 | // domains/General
6 | import category from 'source/domains/General/Category/en-us'
7 |
8 | // domains/Home
9 | import settingsAccount from 'source/domains/Settings/Account/en-us'
10 |
11 | // domains/Report
12 | import report from 'source/domains/Report/en-us'
13 |
14 | /**
15 | */
16 | export default {
17 | settings: {
18 | account: settingsAccount
19 | },
20 | admin: {
21 | profile, user
22 | },
23 | general: {
24 | category
25 | },
26 | report
27 | }
28 |
--------------------------------------------------------------------------------
/quasar/resources/lang/en-us/index.js:
--------------------------------------------------------------------------------
1 | import { agnostic, auth, geo, validation, worker } from '@devitools/Lang/en-us'
2 |
3 | import actions from 'resources/lang/en-us/actions'
4 | import app from 'resources/lang/en-us/app'
5 | import domains from 'resources/lang/en-us/domains'
6 | import pages from 'resources/lang/en-us/pages'
7 | import permissions from 'resources/lang/en-us/permissions'
8 |
9 | /**
10 | * put all messages together
11 | */
12 | export default { actions, agnostic, app, auth, domains, geo, pages, permissions, validation, worker }
13 |
--------------------------------------------------------------------------------
/quasar/resources/lang/en-us/pages.js:
--------------------------------------------------------------------------------
1 | /**
2 | * messages to routes
3 | * crumb is used in breadcrumb
4 | * @see AppBreadcrumb
5 | * title is used to update the document.title for update router middleware
6 | * @sse updateTitle
7 | */
8 | export default {
9 | '/': {
10 | title: 'Login | Devitools'
11 | },
12 | '/dashboard': {
13 | crumb: 'Home'
14 | },
15 | '/dashboard/home': {
16 | title: 'Welcome to Devitools'
17 | },
18 | dashboard: {
19 | index: {
20 | version: 'Version',
21 | transactionCard: {
22 | title: 'Transactions',
23 | subtitle: 'Manage your transactions',
24 | actionNew: 'Create a new Transaction',
25 | actionAll: 'My Transactions'
26 | }
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/quasar/resources/lang/pt-br/actions.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {Object}
3 | */
4 | export default {
5 | home: 'Início',
6 | general: 'Organizadores',
7 | 'general.category': 'Pastas',
8 | 'general.marker': 'Marcadores',
9 | 'general.type': 'Tipos de Movimento',
10 | wallet: 'Carteira',
11 | 'wallet.account': 'Dinheiro e Outros',
12 | 'wallet.card': 'Cartões',
13 | 'wallet.bank-account': 'Contas Bancárias',
14 | 'wallet.ticket': 'Tickets e Vales',
15 | 'wallet.investment': 'Investimentos',
16 | preview: 'Previsão',
17 | 'preview.input': 'Entradas',
18 | 'preview.output': 'Saídas',
19 | 'preview.alert': 'Alertas',
20 | 'preview.goal': 'Metas',
21 | 'preview.simulation': 'Simulações',
22 | movement: 'Movimentação',
23 | 'movement.revenue': 'Receitas',
24 | 'movement.expense': 'Despesas',
25 | 'movement.confirmation': 'Confirmações',
26 | 'movement.invoice': 'Faturas',
27 | admin: 'Administração',
28 | 'admin.user': 'Usuários',
29 | 'admin.profile': 'Perfis'
30 | }
31 |
--------------------------------------------------------------------------------
/quasar/resources/lang/pt-br/app.js:
--------------------------------------------------------------------------------
1 | import { app } from '@devitools/Lang/pt-br'
2 |
3 | /**
4 | * @type {Object}
5 | */
6 | export default {
7 | ...app,
8 | menu: {
9 | ...app.menu,
10 | balance: {
11 | label: 'Meu saldo',
12 | caption: 'Mostre seu saldo atual'
13 | }
14 | },
15 | export: {
16 | error: 'Não é possível exportar seus dados'
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/quasar/resources/lang/pt-br/domains.js:
--------------------------------------------------------------------------------
1 | // domains/Admin
2 | import profile from 'source/domains/Admin/Profile/pt-br'
3 | import user from 'source/domains/Admin/User/pt-br'
4 |
5 | // domains/General
6 | import category from 'source/domains/General/Category/pt-br'
7 | import marker from 'source/domains/General/Marker/pt-br'
8 | import type from 'source/domains/General/Type/pt-br'
9 |
10 | // domains/Settings
11 | import settingsAccount from 'source/domains/Settings/Account/pt-br'
12 |
13 | // domains/Report
14 | import report from 'source/domains/Report/pt-br'
15 |
16 | /**
17 | */
18 | export default {
19 | settings: {
20 | account: settingsAccount
21 | },
22 | admin: {
23 | profile, user
24 | },
25 | general: {
26 | category, marker, type
27 | },
28 | report
29 | }
30 |
--------------------------------------------------------------------------------
/quasar/resources/lang/pt-br/index.js:
--------------------------------------------------------------------------------
1 | import { agnostic, auth, geo, validation, worker } from '@devitools/Lang/pt-br'
2 |
3 | import actions from 'resources/lang/pt-br/actions'
4 | import app from 'resources/lang/pt-br/app'
5 | import domains from 'resources/lang/pt-br/domains'
6 | import pages from 'resources/lang/pt-br/pages'
7 | import permissions from 'resources/lang/pt-br/permissions'
8 |
9 | /**
10 | * put all messages together
11 | */
12 | export default { actions, agnostic, app, auth, domains, geo, pages, permissions, validation, worker }
13 |
--------------------------------------------------------------------------------
/quasar/resources/lang/pt-br/pages.js:
--------------------------------------------------------------------------------
1 | /**
2 | * messages to routes
3 | * crumb is used in breadcrumb
4 | * @see AppBreadcrumb
5 | * title is used to update the document.title for update router middleware
6 | * @sse updateTitle
7 | */
8 | export default {
9 | '/': {
10 | title: 'Login | Devitools'
11 | },
12 | '/dashboard': {
13 | crumb: 'Início'
14 | },
15 | '/dashboard/home': {
16 | title: 'Bem vindo ao Devitools'
17 | },
18 | dashboard: {
19 | index: {
20 | version: 'Versão',
21 | transactionCard: {
22 | title: 'Transações',
23 | subtitle: 'Gerenciar transações',
24 | actionNew: 'Criar uma nova transação',
25 | actionAll: 'Minhas transações'
26 | }
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/quasar/resources/views/Error404.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 | Not found
{{ $route.fullPath }}
11 |
12 |
17 | Go back
18 |
19 |
20 |
21 |
26 | Back Home
27 |
28 |
29 |
30 |
31 |
43 |
44 |
51 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/profile/ProfileForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/profile/ProfileTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/profile/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Admin/Profile/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/admin/profile'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'playlist_add_check'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/admin/profile/ProfileTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/admin/profile/ProfileForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/user/UserForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/user/UserTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/admin/user/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Admin/User/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/admin/user'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'group'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/admin/user/UserTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/admin/user/UserForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/category/CategoryForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/category/CategoryTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/category/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/General/Category/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/category'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'folder'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/general/category/CategoryTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/general/category/CategoryForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/marker/MarkerForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/marker/MarkerTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/marker/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/General/Marker/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/marker'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'beenhere'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/general/marker/MarkerTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/general/marker/MarkerForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/type/TypeForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/type/TypeTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/general/type/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/General/Type/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/type'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'local_offer'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/general/type/TypeTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/general/type/TypeForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/confirmation/ConfirmationForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/confirmation/ConfirmationTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/confirmation/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Movement/Confirmation/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/movement/confirmation'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'done_all'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/movement/confirmation/ConfirmationTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/movement/confirmation/ConfirmationForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/expense/ExpenseForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/expense/ExpenseTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/expense/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Movement/Expense/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/movement/expense'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'money_off'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/movement/expense/ExpenseTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/movement/expense/ExpenseForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/invoice/InvoiceForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/invoice/InvoiceTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/invoice/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Movement/Invoice/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/movement/invoice'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'payments'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/movement/invoice/InvoiceTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/movement/invoice/InvoiceForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/revenue/RevenueForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/revenue/RevenueTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/movement/revenue/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Movement/Revenue/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/movement/revenue'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'attach_money'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/movement/revenue/RevenueTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/movement/revenue/RevenueForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/alert/AlertForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/alert/AlertTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/alert/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Preview/Alert/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/alert'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'notifications_active'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/preview/alert/AlertTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/preview/alert/AlertForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/goal/GoalForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/goal/GoalTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/goal/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Preview/Goal/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/goal'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'military_tech' // follow_the_signs
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/preview/goal/GoalTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/preview/goal/GoalForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/input/InputForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/input/InputTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/input/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Preview/Input/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/input'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'attach_money'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/preview/input/InputTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/preview/input/InputForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/output/OutputForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/output/OutputTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/output/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Preview/Output/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/output'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'money_off'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/preview/output/OutputTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/preview/output/OutputForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/simulation/SimulationForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/simulation/SimulationTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/preview/simulation/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Preview/Simulation/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/general/simulation'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'calendar_today'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/preview/simulation/SimulationTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/preview/simulation/SimulationForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/report/ExampleReport.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
21 |
22 |
25 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/settings/MyAccountForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/account/AccountForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/account/AccountTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/account/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Wallet/Account/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/wallet/account'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'request_quote'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/wallet/account/AccountTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/wallet/account/AccountForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/bankAccount/BankAccountForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/bankAccount/BankAccountTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/bankAccount/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Wallet/BankAccount/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/wallet/bank-account'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'account_balance'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/wallet/bankAccount/BankAccountTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/wallet/bankAccount/BankAccountForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/card/CardForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/card/CardTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/card/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Wallet/Card/settings'
2 |
3 | /**
4 | * @Card {string}
5 | */
6 | export const path = '/dashboard/wallet/card'
7 |
8 | /**
9 | * @Card {string}
10 | */
11 | export const icon = 'credit_card'
12 |
13 | /**
14 | * @Card {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/wallet/card/CardTable.vue')
17 |
18 | /**
19 | * @Card {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/wallet/card/CardForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/investment/InvestmentForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/investment/InvestmentTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/investment/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Wallet/Investment/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/wallet/investment'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'insights'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('app/resources/views/dashboard/wallet/investment/InvestmentTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('app/resources/views/dashboard/wallet/investment/InvestmentForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/ticket/TicketForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/ticket/TicketTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/quasar/resources/views/dashboard/wallet/ticket/index.js:
--------------------------------------------------------------------------------
1 | export { domain } from 'source/domains/Wallet/Ticket/settings'
2 |
3 | /**
4 | * @type {string}
5 | */
6 | export const path = '/dashboard/wallet/ticket'
7 |
8 | /**
9 | * @type {string}
10 | */
11 | export const icon = 'redeem'
12 |
13 | /**
14 | * @type {function}
15 | */
16 | export const table = () => import('resources/views/dashboard/wallet/ticket/TicketTable.vue')
17 |
18 | /**
19 | * @type {function}
20 | */
21 | export const form = () => import('resources/views/dashboard/wallet/ticket/TicketForm.vue')
22 |
--------------------------------------------------------------------------------
/quasar/routes/auth.js:
--------------------------------------------------------------------------------
1 | import { checkSession, checkIsAlreadyConnected, checkPermission } from 'source/modules/Auth/router/middleware'
2 | import { otherwise } from 'src/router'
3 | import { signIn, signUp, layout } from 'source/modules/Auth/components'
4 | /**
5 | * @param {AppRouter} $router
6 | */
7 | export default ($router) => {
8 | $router.group(otherwise, layout, (group) => {
9 | group.route('', signIn, { name: 'sign-in', public: true })
10 | group.route('/sign-up', signUp, { name: 'sign-up', public: true })
11 | })
12 |
13 | // check user is logged in app
14 | $router.beforeThis(otherwise, checkIsAlreadyConnected)
15 |
16 | // check the user session
17 | $router.beforeEach(checkSession)
18 |
19 | // check the permission to route
20 | $router.beforeEach(checkPermission)
21 | }
22 |
--------------------------------------------------------------------------------
/quasar/routes/dashboard/admin.js:
--------------------------------------------------------------------------------
1 | import * as profile from 'resources/views/dashboard/admin/profile'
2 | import * as user from 'resources/views/dashboard/admin/user'
3 |
4 | /**
5 | * @param {AppRouterGroup} $router
6 | */
7 | export default ($router) => {
8 | $router.resource(profile)
9 | $router.resource(user)
10 | }
11 |
--------------------------------------------------------------------------------
/quasar/routes/dashboard/general.js:
--------------------------------------------------------------------------------
1 | import * as category from 'resources/views/dashboard/general/category'
2 | import * as marker from 'resources/views/dashboard/general/marker'
3 | import * as type from 'resources/views/dashboard/general/type'
4 |
5 | /**
6 | * @param {AppRouterGroup} $router
7 | */
8 | export default ($router) => {
9 | $router.resource(category)
10 | $router.resource(marker)
11 | $router.resource(type)
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/Profile/Schema/ProfileService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @type {ProfileService}
6 | */
7 | export default class ProfileService extends Rest {
8 | /**
9 | * @type {String}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/Profile/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Admin / Profiles'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Profiles'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Profile Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Profile',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Profile',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Profile',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Profile Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: 'Name',
36 | reference: {
37 | label: 'Reference',
38 | options: [
39 | { value: 'admin', label: 'ADMINISTRATOR' },
40 | { value: 'regular', label: 'REGULAR' }
41 | ]
42 | },
43 | permissions: {
44 | label: 'Permissions'
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/Profile/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Administração / Perfils'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Perfis'
12 | },
13 | [SCOPES.SCOPE_Trash]: {
14 | title: 'Perfil Lixeira',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Perfil',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_View]: {
22 | title: 'Ver Perfil',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_Edit]: {
26 | title: 'Editar Perfil',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Perfil'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: 'Nome',
36 | reference: {
37 | label: 'Referência',
38 | options: [
39 | { value: 'admin', label: 'ADMINISTRADOR' },
40 | { value: 'regular', label: 'REGULAR' }
41 | ]
42 | },
43 | permissions: {
44 | label: 'Permissões'
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/Profile/settings.js:
--------------------------------------------------------------------------------
1 | /** @type {string} */
2 | export const domain = 'admin.profile'
3 |
4 | /** @type {string} */
5 | export const resource = '/admin/profile'
6 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/User/Schema/UserService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @type {UserService}
6 | */
7 | export default class UserService extends Rest {
8 | /**
9 | * @type {String}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Admin/User/settings.js:
--------------------------------------------------------------------------------
1 | /** @type {string} */
2 | export const domain = 'admin.user'
3 |
4 | /** @type {string} */
5 | export const resource = '/admin/user'
6 |
--------------------------------------------------------------------------------
/quasar/source/domains/Auth/Mixin/Session.js:
--------------------------------------------------------------------------------
1 | import { primaryKey } from 'src/settings/schema'
2 |
3 | /**
4 | */
5 | export default {
6 | /**
7 | */
8 | data: () => ({
9 | userId: primaryKey
10 | }),
11 | /**
12 | */
13 | computed: {
14 | /**
15 | * @returns {string}
16 | */
17 | user () {
18 | if (!this.$store.getters['auth/getUser']) {
19 | return ''
20 | }
21 | const user = this.$store.getters['auth/getUser']
22 | return String(user[this.userId])
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/quasar/source/domains/Auth/Service/AuthService.js:
--------------------------------------------------------------------------------
1 | import Http from '@devitools/Services/Http'
2 |
3 | /**
4 | * @type {AuthService}
5 | */
6 | export default class AuthService extends Http {
7 | /**
8 | * @type {string}
9 | */
10 | path = '/api'
11 |
12 | /**
13 | * @param {string} username
14 | * @param {string} password
15 | * @return {Promise<*>}
16 | */
17 | signIn (username, password) {
18 | return this.post('/v1/auth/sign-in', { username, password })
19 | }
20 |
21 | /**
22 | * @param {Object} form
23 | * @returns {Promise}
24 | */
25 | signUp (form) {
26 | return this.post('/v1/auth/sign-up', form)
27 | }
28 |
29 | /**
30 | * @returns {Promise}
31 | */
32 | refresh () {
33 | return this.get('/v1/auth/refresh')
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/quasar/source/domains/Auth/Service/index.js:
--------------------------------------------------------------------------------
1 | import AuthService from '@devitools/Services/Http'
2 | import { $store } from 'src/store'
3 |
4 | /**
5 | * @returns {Promise}
6 | */
7 | export function me () {
8 | return AuthService.build().get('api/v1/auth/me')
9 | .then(({ data }) => data)
10 | .then((user) => $store.dispatch('auth/updateUser', user))
11 | }
12 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Category/Schema/CategoryService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {CategoryService}
6 | */
7 | export default class CategoryService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Category/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'general.category'
5 |
6 | /** @type {string} */
7 | export const resource = '/general/category'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Marker/Schema/MarkerSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import MarkerService from './MarkerService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {MarkerSchema}
8 | */
9 | export default class MarkerSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {MarkerService}
17 | */
18 | service = MarkerService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct () {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldIsInputPlan()
28 | .fieldTableShow()
29 | .fieldTableWhere()
30 | .fieldFormAutofocus()
31 | .fieldFormFill()
32 | .validationRequired()
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Marker/Schema/MarkerService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {MarkerService}
6 | */
7 | export default class MarkerService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Marker/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Organizers / Labels'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Labels'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Trash Labels',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Label',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Label',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Marker',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Print Marker'
32 | },
33 | fields: {
34 | name: {
35 | label: 'Name',
36 | placeholder: 'ex.: bakery, pharmacy'
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Marker/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Organizadores / Marcadores'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Marcadores'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Marcadores',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Marcador',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Marcador',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Marcador',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Marcador'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'ex.: padaria, farmácia'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Marker/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'general.marker'
5 |
6 | /** @type {string} */
7 | export const resource = '/general/marker'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Type/Schema/TypeSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import TypeService from './TypeService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {TypeSchema}
8 | */
9 | export default class TypeSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {TypeService}
17 | */
18 | service = TypeService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct () {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldIsInputPlan()
28 | .fieldTableShow()
29 | .fieldTableWhere()
30 | .fieldFormAutofocus()
31 | .fieldFormFill()
32 | .validationRequired()
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Type/Schema/TypeService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {TypeService}
6 | */
7 | export default class TypeService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Type/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Organizers / Labels Types'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Labels Types'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Trash Labels Types',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Label Type',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Label Type',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Label Type',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Print Label Type'
32 | },
33 | fields: {
34 | name: {
35 | label: 'Name',
36 | placeholder: 'ex.: food, medicines'
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Type/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Organizadores / Tipos de Marcadores'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Tipos de Marcadores'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Tipos de Marcadores',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Marcador',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Marcador',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Marcador',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Marcador'
32 | },
33 | fields: {
34 | name: {
35 | label: 'Nome',
36 | placeholder: 'ex.: alimentação, medicamentos'
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/quasar/source/domains/General/Type/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'general.type'
5 |
6 | /** @type {string} */
7 | export const resource = '/general/type'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Confirmation/Schema/ConfirmationSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import ConfirmationService from './ConfirmationService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {ConfirmationSchema}
8 | */
9 | export default class ConfirmationSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {ConfirmationService}
17 | */
18 | service = ConfirmationService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Confirmation/Schema/ConfirmationService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {ConfirmationService}
6 | */
7 | export default class ConfirmationService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Confirmation/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Confirmation/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Confirmation/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'movement.confirmation'
5 |
6 | /** @type {string} */
7 | export const resource = '/movement/confirmation'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Expense/Schema/ExpenseSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import ExpenseService from './ExpenseService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {ExpenseSchema}
8 | */
9 | export default class ExpenseSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {ExpenseService}
17 | */
18 | service = ExpenseService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Expense/Schema/ExpenseService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {ExpenseService}
6 | */
7 | export default class ExpenseService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Expense/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Expense/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Expense/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'movement.expense'
5 |
6 | /** @type {string} */
7 | export const resource = '/movement/expense'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Invoice/Schema/InvoiceSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import InvoiceService from './InvoiceService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {InvoiceSchema}
8 | */
9 | export default class InvoiceSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {InvoiceService}
17 | */
18 | service = InvoiceService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Invoice/Schema/InvoiceService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {InvoiceService}
6 | */
7 | export default class InvoiceService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Invoice/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Invoice/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Invoice/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'movement.invoice'
5 |
6 | /** @type {string} */
7 | export const resource = '/movement/invoice'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Revenue/Schema/RevenueSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import RevenueService from './RevenueService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {RevenueSchema}
8 | */
9 | export default class RevenueSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {RevenueService}
17 | */
18 | service = RevenueService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Revenue/Schema/RevenueService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {RevenueService}
6 | */
7 | export default class RevenueService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Revenue/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Revenue/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Movement/Revenue/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'movement.revenue'
5 |
6 | /** @type {string} */
7 | export const resource = '/movement/revenue'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Alert/Schema/AlertSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import AlertService from './AlertService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {AlertSchema}
8 | */
9 | export default class AlertSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {AlertService}
17 | */
18 | service = AlertService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Alert/Schema/AlertService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {AlertService}
6 | */
7 | export default class AlertService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Alert/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Alert/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Alert/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'preview.alert'
5 |
6 | /** @type {string} */
7 | export const resource = '/preview/alert'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Goal/Schema/GoalSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import GoalService from './GoalService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {GoalSchema}
8 | */
9 | export default class GoalSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {GoalService}
17 | */
18 | service = GoalService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Goal/Schema/GoalService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {GoalService}
6 | */
7 | export default class GoalService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Goal/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Goal/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Goal/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'preview.goal'
5 |
6 | /** @type {string} */
7 | export const resource = '/preview/goal'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Input/Schema/InputSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import InputService from './InputService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {InputSchema}
8 | */
9 | export default class InputSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {InputService}
17 | */
18 | service = InputService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Input/Schema/InputService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {InputService}
6 | */
7 | export default class InputService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Input/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Input/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Input/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'preview.input'
5 |
6 | /** @type {string} */
7 | export const resource = '/preview/input'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Output/Schema/OutputSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import OutputService from './OutputService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {OutputSchema}
8 | */
9 | export default class OutputSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {OutputService}
17 | */
18 | service = OutputService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Output/Schema/OutputService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {OutputService}
6 | */
7 | export default class OutputService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Output/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Output/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Output/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'preview.output'
5 |
6 | /** @type {string} */
7 | export const resource = '/preview/output'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Simulation/Schema/SimulationSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import SimulationService from './SimulationService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {SimulationSchema}
8 | */
9 | export default class SimulationSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {SimulationService}
17 | */
18 | service = SimulationService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Simulation/Schema/SimulationService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {SimulationService}
6 | */
7 | export default class SimulationService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Simulation/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Simulation/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Preview/Simulation/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'preview.simulation'
5 |
6 | /** @type {string} */
7 | export const resource = '/preview/simulation'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Report/en-us.js:
--------------------------------------------------------------------------------
1 | export default {
2 | routes: {
3 | group: {
4 | crumb: 'Reports'
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Report/index.js:
--------------------------------------------------------------------------------
1 | import { route } from '@devitools/Util/routing'
2 |
3 | /**
4 | * @param {string} path
5 | * @param {Function} component
6 | * @returns {[RouteConfig]}
7 | */
8 | export function report (path, component) {
9 | const reference = path.toCamelCase()
10 | const meta = {
11 | scope: 'report',
12 | namespace: `report.${reference}`
13 | }
14 | return [
15 | route(`/dashboard/report/${path}`, component, `report.${reference}`, meta)
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/quasar/source/domains/Report/pt-br.js:
--------------------------------------------------------------------------------
1 | export default {
2 | routes: {
3 | group: {
4 | crumb: 'Relatórios'
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Report/routes.js:
--------------------------------------------------------------------------------
1 | import { group } from '@devitools/Util/routing'
2 |
3 | /**
4 | * @param {AppRouter} router
5 | * @returns Array
6 | */
7 | export default (router) => {
8 | // index
9 | const index = () => import('@devitools/Components/Group/Group.vue')
10 |
11 | const children = [
12 | ]
13 | const meta = { namespace: 'report', scope: 'group', bread: false }
14 | return [
15 | group('/dashboard/report', index, children, meta)
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/quasar/source/domains/Settings/Account/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum.js'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | [SCOPES.SCOPE_EDIT]: {
8 | title: 'My Profile',
9 | crumb: 'Settings / My Profile'
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Settings/Account/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum.js'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | [SCOPES.SCOPE_EDIT]: {
8 | title: 'Meu perfil',
9 | crumb: 'Definições / Meu perfil'
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Settings/Account/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'settings.account'
5 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Account/Schema/AccountSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import AccountService from './AccountService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {AccountSchema}
8 | */
9 | export default class AccountSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {AccountService}
17 | */
18 | service = AccountService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Account/Schema/AccountService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {AccountService}
6 | */
7 | export default class AccountService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Account/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Account/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Account/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'wallet.account'
5 |
6 | /** @type {string} */
7 | export const resource = '/wallet/account'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/BankAccount/Schema/BankAccountSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import BankAccountService from './BankAccountService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {BankAccountSchema}
8 | */
9 | export default class BankAccountSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {BankAccountService}
17 | */
18 | service = BankAccountService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/BankAccount/Schema/BankAccountService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {BankAccountService}
6 | */
7 | export default class BankAccountService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/BankAccount/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/BankAccount/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/BankAccount/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'wallet.bank-account'
5 |
6 | /** @type {string} */
7 | export const resource = '/wallet/bank-account'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Card/Schema/CardSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import CardService from './CardService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {CardSchema}
8 | */
9 | export default class CardSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {CardService}
17 | */
18 | service = CardService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Card/Schema/CardService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {CardService}
6 | */
7 | export default class CardService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Card/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Card/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Card/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'wallet.card'
5 |
6 | /** @type {string} */
7 | export const resource = '/wallet/card'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Investment/Schema/InvestmentSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import InvestmentService from './InvestmentService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {InvestmentSchema}
8 | */
9 | export default class InvestmentSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {InvestmentService}
17 | */
18 | service = InvestmentService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Investment/Schema/InvestmentService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {InvestmentService}
6 | */
7 | export default class InvestmentService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Investment/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Investment/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Investment/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'wallet.investment'
5 |
6 | /** @type {string} */
7 | export const resource = '/wallet/investment'
8 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Ticket/Schema/TicketSchema.ts:
--------------------------------------------------------------------------------
1 | import Schema from '@devitools/Agnostic/Schema'
2 |
3 | import TicketService from './TicketService'
4 | import { domain } from '../settings'
5 |
6 | /**
7 | * @class {TicketSchema}
8 | */
9 | export default class TicketSchema extends Schema {
10 | /**
11 | * @type {string}
12 | */
13 | static domain = domain
14 |
15 | /**
16 | * @type {TicketService}
17 | */
18 | service = TicketService
19 |
20 | /**
21 | * Call schema builder method
22 | */
23 | construct (): void {
24 | // the magic happens
25 |
26 | this.addField('name')
27 | .fieldTableShow()
28 | .fieldTableWhere()
29 | .fieldFormAutofocus()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Ticket/Schema/TicketService.ts:
--------------------------------------------------------------------------------
1 | import Rest from '@devitools/Services/Rest'
2 | import { resource } from '../settings'
3 |
4 | /**
5 | * @class {TicketService}
6 | */
7 | export default class TicketService extends Rest {
8 | /**
9 | * @type {string}
10 | */
11 | resource = resource
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Ticket/en-us.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'General / Products'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Products'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Product Trash',
15 | crumb: 'Trash'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Create Product',
19 | crumb: 'Create'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'View Product',
23 | crumb: 'View'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Edit Product',
27 | crumb: 'Edit'
28 | }
29 | },
30 | print: {
31 | title: 'Product Printing'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Name',
37 | placeholder: 'Name of your product'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Ticket/pt-br.js:
--------------------------------------------------------------------------------
1 | import { SCOPES } from '@devitools/Agnostic/enum'
2 |
3 | /**
4 | */
5 | export default {
6 | routes: {
7 | group: {
8 | crumb: 'Geral / Produtos'
9 | },
10 | [SCOPES.SCOPE_INDEX]: {
11 | title: 'Produtos'
12 | },
13 | [SCOPES.SCOPE_TRASH]: {
14 | title: 'Lixeira dos Produtos',
15 | crumb: 'Lixeira'
16 | },
17 | [SCOPES.SCOPE_ADD]: {
18 | title: 'Criar Produto',
19 | crumb: 'Criar'
20 | },
21 | [SCOPES.SCOPE_VIEW]: {
22 | title: 'Ver Produto',
23 | crumb: 'Ver'
24 | },
25 | [SCOPES.SCOPE_EDIT]: {
26 | title: 'Editar Produto',
27 | crumb: 'Editar'
28 | }
29 | },
30 | print: {
31 | title: 'Impressão de Produto'
32 | },
33 | fields: {
34 | // [primaryKey]: 'Id',
35 | name: {
36 | label: 'Nome',
37 | placeholder: 'Nome do seu produto'
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/quasar/source/domains/Wallet/Ticket/settings.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const domain = 'wallet.ticket'
5 |
6 | /** @type {string} */
7 | export const resource = '/wallet/ticket'
8 |
--------------------------------------------------------------------------------
/quasar/source/modules/Auth/components/index.js:
--------------------------------------------------------------------------------
1 | // auth base layout
2 | export const layout = () => import('source/modules/Auth/AuthLayout.vue')
3 |
4 | // default page of auth
5 | export const signIn = () => import('resources/views/auth/AuthSignIn.vue')
6 |
7 | // default page of auth
8 | export const signUp = () => import('app/resources/views/auth/AuthSignUp.vue')
9 |
--------------------------------------------------------------------------------
/quasar/source/modules/Auth/store/actions.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @ref auth/login
3 | * @param {Object} context
4 | * @param {string} token
5 | */
6 | export const login = (context, token) => {
7 | context.commit('mutateToken', token)
8 | }
9 |
10 | /**
11 | * @ref auth/logout
12 | * @param {Object} context
13 | */
14 | export const logout = (context) => {
15 | context.commit('mutateToken', '')
16 | }
17 |
18 | /**
19 | * @ref auth/updateUser
20 | * @param {Object} context
21 | * @param {Object} user
22 | */
23 | export const updateUser = (context, user) => {
24 | context.commit('mutateUser', user)
25 | }
26 |
27 | /**
28 | * @ref auth/setUserName
29 | * @param {Object} context
30 | * @param {string} name
31 | */
32 | export const setNameUser = (context, name) => {
33 | context.commit('mutateNameUser', name)
34 | }
35 |
36 | /**
37 | * @ref auth/setUserName
38 | * @param {Object} context
39 | * @param {string} name
40 | */
41 | export const setUsernameUser = (context, name) => {
42 | context.commit('mutateUsernameUser', name)
43 | }
44 |
--------------------------------------------------------------------------------
/quasar/source/modules/Auth/store/index.js:
--------------------------------------------------------------------------------
1 | import state from './state'
2 | import * as getters from './getters'
3 | import * as mutations from './mutations'
4 | import * as actions from './actions'
5 |
6 | export default {
7 | namespaced: true,
8 | state,
9 | getters,
10 | mutations,
11 | actions
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/source/modules/Auth/store/mutations.js:
--------------------------------------------------------------------------------
1 | import { erase, write } from '@devitools/Util/storage'
2 |
3 | /**
4 | * @param {Object} state
5 | * @param {string} token
6 | */
7 | export const mutateToken = (state, token) => {
8 | state.token = token
9 | if (token) {
10 | write('token', state.token)
11 | return
12 | }
13 | erase('token')
14 | }
15 |
16 | /**
17 | * @param {Object} state
18 | * @param {Object} user
19 | */
20 | export const mutateUser = (state, user) => {
21 | state.user = user
22 | /*
23 | if (user) {
24 | write('user', state.user)
25 | return
26 | }
27 | erase('user')
28 | */
29 | }
30 |
31 | /**
32 | * @param {Object} state
33 | * @param {string} name
34 | */
35 | export const mutateNameUser = (state, name) => {
36 | state.user.name = name
37 | mutateUser(state, state.user)
38 | }
39 |
40 | /**
41 | * @param {Object} state
42 | * @param {string} username
43 | */
44 | export const mutateUsernameUser = (state, username) => {
45 | state.user.username = username
46 | mutateUser(state, state.user)
47 | }
48 |
--------------------------------------------------------------------------------
/quasar/source/modules/Auth/store/state.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {Object}
3 | */
4 | import { read } from '@devitools/Util/storage'
5 |
6 | export default {
7 | token: read('token'),
8 | user: read('user')
9 | }
10 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/components/index.js:
--------------------------------------------------------------------------------
1 | // dashboard base layout
2 | export const layout = () => import('source/modules/Dashboard/DashboardLayout.vue')
3 |
4 | // default page of dashboard
5 | export const index = () => import('resources/views/dashboard/DashboardIndex.vue')
6 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/router/middleware.js:
--------------------------------------------------------------------------------
1 | import { $store } from 'src/store'
2 |
3 | /**
4 | * @param {Object} to
5 | * @param {Object} from
6 | * @param {Function} next
7 | *
8 | * > It works better in beforeEach
9 | */
10 | export const changeRoute = (to, from, next) => {
11 | $store.dispatch('app/setRoute', to.path)
12 | next()
13 | }
14 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/actions.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param {Object} context
3 | * @param {string} transition
4 | */
5 | export const setTransition = (context, transition) => {
6 | context.commit('mutateTransition', transition)
7 | }
8 |
9 | /**
10 | * @param {Object} context
11 | * @param {string} report
12 | */
13 | export const setReport = (context, report) => {
14 | context.commit('mutateReport', report)
15 | }
16 |
17 | /**
18 | * @param {Object} context
19 | * @param {string} title
20 | */
21 | export const setTitle = (context, title) => {
22 | context.commit('mutateTitle', title)
23 | }
24 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/custom/actions.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param {Object} context
3 | * @param {string} unit
4 | */
5 | export const setUnit = (context, unit) => {
6 | context.commit('mutateUnit', unit)
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/custom/getters.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param state
3 | * @returns {string}
4 | */
5 | export const getUnit = (state) => state.unit
6 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/custom/mutations.js:
--------------------------------------------------------------------------------
1 | import { erase, write } from '@devitools/Util/storage'
2 |
3 | /**
4 | * @param {Object} state
5 | * @param {string} unit
6 | */
7 | export const mutateUnit = (state, unit) => {
8 | state.unit = unit
9 | if (unit) {
10 | write('unit', unit)
11 | return
12 | }
13 | erase('unit')
14 | }
15 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/custom/state.js:
--------------------------------------------------------------------------------
1 | import { read } from '@devitools/Util/storage'
2 |
3 | /**
4 | */
5 | export default {
6 | unit: read('unit')
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/getters.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param state
3 | * @returns {string}
4 | */
5 | export const getTransition = (state) => state.transition
6 |
7 | /**
8 | * @param state
9 | * @returns {string}
10 | */
11 | export const getReport = (state) => state.report
12 |
13 | /**
14 | * @param state
15 | * @returns {string}
16 | */
17 | export const getTitle = (state) => state.title
18 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/index.js:
--------------------------------------------------------------------------------
1 | import state from './state'
2 | import * as getters from './getters'
3 | import * as mutations from './mutations'
4 | import * as actions from './actions'
5 |
6 | import customState from './custom/state'
7 | import * as customGetters from './custom/getters'
8 | import * as customMutations from './custom/mutations'
9 | import * as customActions from './custom/actions'
10 |
11 | export default {
12 | namespaced: true,
13 | state: { ...state, ...customState },
14 | getters: { ...getters, ...customGetters },
15 | mutations: { ...mutations, ...customMutations },
16 | actions: { ...actions, ...customActions }
17 | }
18 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/mutations.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param {Object} state
3 | * @param {string} transition
4 | */
5 | export const mutateTransition = (state, transition) => {
6 | state.transition = transition
7 | }
8 |
9 | /**
10 | * @param {Object} state
11 | * @param {string} report
12 | */
13 | export const mutateReport = (state, report) => {
14 | state.report = report
15 | }
16 |
17 | /**
18 | * @param {Object} state
19 | * @param {string} title
20 | */
21 | export const mutateTitle = (state, title) => {
22 | state.title = title
23 | }
24 |
--------------------------------------------------------------------------------
/quasar/source/modules/Dashboard/store/state.js:
--------------------------------------------------------------------------------
1 | /**
2 | */
3 | export default {
4 | transition: '',
5 | report: '',
6 | title: ''
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/source/modules/General/version.js:
--------------------------------------------------------------------------------
1 | import $store from '@devitools/Util/store'
2 |
3 | /**
4 | * @type {*}
5 | */
6 | const store = $store({
7 | // the states of store
8 | state: {
9 | version: window.localStorage.getItem('version')
10 | },
11 | // the mutations to call with commit
12 | // ex.: $store.commit('updateVersion')
13 | mutations: {
14 | /**
15 | * @param {Object} state
16 | * @param {string} version
17 | */
18 | updateVersion (state, version) {
19 | state.version = version
20 | window.localStorage.setItem('version', version)
21 | }
22 | }
23 | })
24 |
25 | export default store
26 |
--------------------------------------------------------------------------------
/quasar/src-pwa/custom-service-worker.js:
--------------------------------------------------------------------------------
1 | /*
2 | * This file (which will be your service worker)
3 | * is picked up by the build system ONLY if
4 | * quasar.conf > pwa > workboxPluginMode is set to "InjectManifest"
5 | */
6 |
--------------------------------------------------------------------------------
/quasar/src-pwa/pwa-flag.d.ts:
--------------------------------------------------------------------------------
1 | // THIS FEATURE-FLAG FILE IS AUTOGENERATED,
2 | // REMOVAL OR CHANGES WILL CAUSE RELATED TYPES TO STOP WORKING
3 | import 'quasar/dist/types/feature-flag'
4 |
5 | declare module 'quasar/dist/types/feature-flag' {
6 | interface QuasarFeatureFlags {
7 | pwa: true;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/quasar/src/boot/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/boot/.gitkeep
--------------------------------------------------------------------------------
/quasar/src/boot/app.js:
--------------------------------------------------------------------------------
1 | import app from '@devitools/install'
2 |
3 | /**
4 | */
5 | export default app
6 |
--------------------------------------------------------------------------------
/quasar/src/boot/i18n.js:
--------------------------------------------------------------------------------
1 | import i18n from 'src/i18n'
2 |
3 | /**
4 | * @param {Vue} Vue
5 | */
6 | export default ({ Vue, app }) => {
7 | // Set i18n instance on app
8 | app.i18n = i18n
9 | }
10 |
--------------------------------------------------------------------------------
/quasar/src/boot/static.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @param {Vue} Vue
3 | */
4 | export default ({ Vue }) => {
5 | /**
6 | */
7 | Object.defineProperty(Vue.prototype, '$static', {
8 | get () {
9 | return (path, external = false) => {
10 | const separator = !String(path).startsWith('/') ? '/' : ''
11 | if (external) {
12 | return process.env.VUE_APP_STATIC_URL + separator + path
13 | }
14 | return process.env.VUE_APP_PUBLIC_PATH + 'statics' + separator + path
15 | }
16 | }
17 | })
18 | }
19 |
--------------------------------------------------------------------------------
/quasar/src/css/agnostic.styl:
--------------------------------------------------------------------------------
1 | @import "../../@devitools/Agnostic/Style/@variables.styl"
2 |
3 | @import "../../@devitools/Agnostic/Style/breadcrumb.styl"
4 |
5 | @import "../../@devitools/Agnostic/Style/element.styl"
6 |
7 | @import "../../@devitools/Agnostic/Style/form.styl"
8 |
9 | @import "../../@devitools/Agnostic/Style/field.styl"
10 |
11 | @import "../../@devitools/Agnostic/Style/fix.styl"
12 |
13 | @import "../../@devitools/Agnostic/Style/header.styl"
14 |
15 | @import "../../@devitools/Agnostic/Style/scrollbar.styl"
16 |
17 | @import "../../@devitools/Agnostic/Style/print.styl"
18 |
19 | @import "../../@devitools/Agnostic/Style/report.styl"
20 |
21 | @import "../../@devitools/Agnostic/Style/table.styl"
22 |
23 | @import "../../@devitools/Agnostic/Style/transition.styl"
24 |
25 | @import "../../@devitools/Agnostic/Style/typograph.styl"
26 |
--------------------------------------------------------------------------------
/quasar/src/css/app.styl:
--------------------------------------------------------------------------------
1 | // app global css
2 | @import "agnostic.styl"
3 |
4 | .fullscreen
5 | z-index 10000
6 |
7 | .app-page
8 | height calc(100vh - 95px)
9 | overflow auto
10 | background #fff
11 | border-radius 4px
12 | box-shadow 0 1px 5px rgba(0, 0, 0, 0.2), 0 2px 2px rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12)
13 |
14 | .p-10
15 | padding 10px
--------------------------------------------------------------------------------
/quasar/src/css/quasar.variables.styl:
--------------------------------------------------------------------------------
1 | // Quasar Stylus Variables
2 | // --------------------------------------------------
3 | // To customize the look and feel of this app, you can override
4 | // the Stylus variables found in Quasar's source Stylus files.
5 |
6 | // Check documentation for full list of Quasar variables
7 |
8 | // It's highly recommended to change the default colors
9 | // to match your app's branding.
10 | // Tip: Use the "Theme Builder" on Quasar's documentation website.
11 |
12 | $primary = #4c80c9
13 | $secondary = #323c78
14 | $accent = #4AC9BE
15 | // old
16 | $tertiary = #ffffff
17 |
18 | $positive = #59B259
19 | $negative = #D9534F
20 | $info = #31CCEC
21 | $warning = #F2C037
22 | // old
23 | $neutral = #E0E1E2
24 |
25 | $errorForeground = #c73b3a
26 | $errorBackground = rgba(255, 155, 138, 0.3)
27 |
28 | $break = 700px
29 |
--------------------------------------------------------------------------------
/quasar/src/env.d.ts:
--------------------------------------------------------------------------------
1 | declare namespace NodeJS {
2 | interface ProcessEnv {
3 | NODE_ENV: string;
4 | VUE_ROUTER_MODE: 'hash' | 'history' | 'abstract' | undefined;
5 | VUE_ROUTER_BASE: string | undefined;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/src/i18n/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueI18n from 'vue-i18n'
3 |
4 | import enUs from '../../resources/lang/en-us'
5 | import ptBr from '../../resources/lang/pt-br'
6 |
7 | Vue.use(VueI18n)
8 |
9 | /**
10 | */
11 | export default new VueI18n({
12 | locale: String(process.env.VUE_APP_LOCALE),
13 | fallbackLocale: 'en-us',
14 | messages: {
15 | 'en-us': enUs,
16 | 'pt-br': ptBr
17 | }
18 | })
19 |
--------------------------------------------------------------------------------
/quasar/src/router/middleware/updateDevice.js:
--------------------------------------------------------------------------------
1 | import Fingerprint2 from 'fingerprintjs2'
2 | import { $store } from 'src/store'
3 |
4 | /**
5 | * @param {Route} to
6 | * @param {Route} from
7 | * @param {Function} next
8 | *
9 | * BeforeEach middleware
10 | */
11 | export default (to, from, next) => {
12 | if ($store.getters['app/getDevice']) {
13 | next()
14 | return
15 | }
16 |
17 | Fingerprint2.get({}, (components) => {
18 | const values = components.map((component) => component.value)
19 | const device = Fingerprint2.x64hash128(values.join(''), 31)
20 |
21 | $store.dispatch('app/setDevice', device)
22 | .then(() => next())
23 | })
24 | }
25 |
--------------------------------------------------------------------------------
/quasar/src/settings/date.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {string}
3 | */
4 | export const dateEn = 'YYYY-MM-DD HH:mm'
5 |
6 | /**
7 | * @type {Array}
8 | */
9 | export const dateFormatDefault = [dateEn, 'YYYY-MM-DD HH:mm:ss', 'YYYY-MM-DD HH:mm:ss', 'YYYY-MM-DD']
10 |
--------------------------------------------------------------------------------
/quasar/src/settings/local.js:
--------------------------------------------------------------------------------
1 | import axios from 'axios'
2 |
3 | /**
4 | * @type {AxiosInstance}
5 | */
6 | const http = axios.create({ baseURL: `${window.location.origin}${window.location.pathname}` })
7 |
8 | /**
9 | * It is just an axios instance to execute the perform http local queries
10 | */
11 | export default http
12 |
--------------------------------------------------------------------------------
/quasar/src/settings/message.js:
--------------------------------------------------------------------------------
1 | import { notify } from '@devitools/message'
2 |
3 | /**
4 | * @param {string} message
5 | * @param options
6 | */
7 | export const notifyToast = (message, options = {}) => {
8 | notify({ message, ...options })
9 | }
10 |
11 | /**
12 | * @param {string} message
13 | * @param options
14 | */
15 | export const notifySuccess = (message, options = {}) => {
16 | notify({ message, icon: 'done', ...options, color: 'positive' })
17 | }
18 |
19 | /**
20 | * @param {string} message
21 | * @param options
22 | */
23 | export const notifyError = (message, options = {}) => {
24 | notify({ message, icon: 'error_outline', ...options, color: 'negative' })
25 | }
26 |
27 | /**
28 | * @param {string} message
29 | * @param options
30 | */
31 | export const notifyWarning = (message, options = {}) => {
32 | notify({ message, icon: 'priority_high', ...options, color: 'warning', textColor: 'dark' })
33 | }
34 |
--------------------------------------------------------------------------------
/quasar/src/settings/storage.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {boolean}
3 | */
4 | export const DEFAULT_REMEMBER = false
5 |
--------------------------------------------------------------------------------
/quasar/src/settings/table.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @type {number}
3 | */
4 | export const tableOuterHeight = 300
5 |
6 | /**
7 | * @type {number}
8 | */
9 | export const tableMinRowsPerPage = 10
10 |
11 | /**
12 | * @type {string}
13 | */
14 | export const tableSelection = 'single'
15 |
16 | /**
17 | * @type {boolean}
18 | */
19 | export const tableShowColumnsSelector = false
20 |
21 | /**
22 | * @type {boolean}
23 | */
24 | export const tableShowFilters = false
25 |
26 | /**
27 | * @type {boolean}
28 | */
29 | export const tableShowSearch = true
30 |
--------------------------------------------------------------------------------
/quasar/src/statics/app-logo-128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/app-logo-128x128.png
--------------------------------------------------------------------------------
/quasar/src/statics/auth/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/auth/background.jpg
--------------------------------------------------------------------------------
/quasar/src/statics/auth/background.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/auth/background.mp4
--------------------------------------------------------------------------------
/quasar/src/statics/browserconfig.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | #ffffff
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/quasar/src/statics/dashboard/header-logo-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/dashboard/header-logo-white.png
--------------------------------------------------------------------------------
/quasar/src/statics/dashboard/header-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/dashboard/header-logo.png
--------------------------------------------------------------------------------
/quasar/src/statics/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/favicon.ico
--------------------------------------------------------------------------------
/quasar/src/statics/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/favicon.png
--------------------------------------------------------------------------------
/quasar/src/statics/header-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/header-logo.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-chrome-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-chrome-192x192.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-chrome-256x256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-chrome-256x256.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-chrome-384x384.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-chrome-384x384.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-144x144.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-192x192.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-36x36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-36x36.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-48x48.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-72x72.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/android-icon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/android-icon-96x96.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-114x114.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-120x120.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-144x144.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-152x152.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-180x180.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-57x57.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-60x60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-60x60.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-72x72.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-76x76.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon-precomposed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon-precomposed.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-icon.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/apple-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/apple-touch-icon.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/favicon-16x16.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/favicon-32x32.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/favicon-96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/favicon-96x96.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/favicon.ico
--------------------------------------------------------------------------------
/quasar/src/statics/icons/icon-128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/icon-128x128.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/icon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/icon-192x192.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/icon-256x256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/icon-256x256.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/icon-384x384.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/icon-384x384.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/icon-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/icon-512x512.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/ms-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/ms-icon-144x144.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/ms-icon-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/ms-icon-150x150.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/ms-icon-310x310.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/ms-icon-310x310.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/ms-icon-70x70.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/ms-icon-70x70.png
--------------------------------------------------------------------------------
/quasar/src/statics/icons/mstile-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/icons/mstile-150x150.png
--------------------------------------------------------------------------------
/quasar/src/statics/logo-horizontal-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/logo-horizontal-white.png
--------------------------------------------------------------------------------
/quasar/src/statics/logo-horizontal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/logo-horizontal.png
--------------------------------------------------------------------------------
/quasar/src/statics/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/devitools/starter-kit/a6091487349311d839904622a0f813b13b32fe55/quasar/src/statics/logo.png
--------------------------------------------------------------------------------
/quasar/src/statics/site.webmanifest:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Devitools",
3 | "short_name": "Devitools",
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 | "theme_color": "#4c80c9",
17 | "background_color": "#ffffff",
18 | "display": "standalone"
19 | }
20 |
--------------------------------------------------------------------------------
/quasar/src/statics/version:
--------------------------------------------------------------------------------
1 | development
--------------------------------------------------------------------------------
/quasar/src/store/app/index.js:
--------------------------------------------------------------------------------
1 | import state from './state'
2 | import * as getters from './getters'
3 | import * as mutations from './mutations'
4 | import * as actions from './actions'
5 |
6 | export default {
7 | namespaced: true,
8 | state,
9 | getters,
10 | mutations,
11 | actions
12 | }
13 |
--------------------------------------------------------------------------------
/quasar/src/store/app/state.js:
--------------------------------------------------------------------------------
1 | import { read } from '@devitools/Util/storage'
2 |
3 | export default {
4 | name: process.env.VUE_APP_NAME,
5 | subTitle: process.env.VUE_APP_SUB_TITLE,
6 | drawer: read('appDrawer') || [],
7 | offline: !!read('appOffline'),
8 | options: [],
9 | clipboard: {},
10 | query: {},
11 | print: undefined,
12 | device: undefined,
13 | route: undefined
14 | }
15 |
--------------------------------------------------------------------------------
/quasar/src/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 |
4 | import app from './app'
5 | import auth from 'source/modules/Auth/store'
6 | import dashboard from 'source/modules/Dashboard/store'
7 |
8 | Vue.use(Vuex)
9 |
10 | /**
11 | * expose the store
12 | * use import { $store } from 'src/store'
13 | */
14 | export let $store
15 |
16 | /*
17 | * If not building with SSR mode, you can
18 | * directly export the Store instantiation
19 | */
20 |
21 | export default function (/* { ssrContext } */) {
22 | $store = new Vuex.Store({
23 | modules: {
24 | app,
25 | auth,
26 | dashboard
27 | },
28 | // enable strict mode (adds overhead!)
29 | // for dev mode only
30 | strict: process.env.DEV
31 | })
32 | return $store
33 | }
34 |
--------------------------------------------------------------------------------
/quasar/src/store/store-flag.d.ts:
--------------------------------------------------------------------------------
1 | // THIS FEATURE-FLAG FILE IS AUTOGENERATED,
2 | // REMOVAL OR CHANGES WILL CAUSE RELATED TYPES TO STOP WORKING
3 | import 'quasar/dist/types/feature-flag'
4 |
5 | declare module 'quasar/dist/types/feature-flag' {
6 | interface QuasarFeatureFlags {
7 | store: true;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/quasar/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@quasar/app/tsconfig-preset",
3 | "compilerOptions": {
4 | "baseUrl": ".",
5 | "target": "es5"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/quasar/version.ejs:
--------------------------------------------------------------------------------
1 | <%= package.version %>.<%= extras.build %>
--------------------------------------------------------------------------------
/system.js:
--------------------------------------------------------------------------------
1 | System.config({
2 | 'paths': {
3 | '@devitools/*': './quasar/@devitools/*',
4 | 'resources/*': './quasar/resources/*',
5 | 'routes/*': './quasar/routes/*',
6 | 'source/*': './quasar/source/*',
7 | 'src/*': './quasar/src/*',
8 | }
9 | })
10 |
--------------------------------------------------------------------------------