Merge pull request #39 from FahimAnzamDip/dev

Merged dev
This commit is contained in:
Fahim Anzam Dip 2023-07-28 19:19:17 +06:00 committed by GitHub
commit 9c1184adf3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 2746 additions and 2349 deletions

12
.htaccess Normal file
View File

@ -0,0 +1,12 @@
DirectoryIndex index.php
RewriteEngine On
RewriteRule ^$ public/index.php [L]
RewriteRule ^((?!public/).*)$ public/$1 [L,NC]
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php74” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php74 .php .php7 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit

View File

@ -67,7 +67,7 @@ class AdjustmentsDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Adjustments_' . date('YmdHis');
}
}

View File

@ -72,7 +72,7 @@ class CurrencyDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Currency_' . date('YmdHis');
}
}

View File

@ -66,7 +66,7 @@ class ExpenseCategoriesDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'ExpenseCategories_' . date('YmdHis');
}
}

View File

@ -76,7 +76,7 @@ class ExpensesDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Expenses_' . date('YmdHis');
}
}

View File

@ -67,7 +67,7 @@ class CustomersDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Customers_' . date('YmdHis');
}
}

View File

@ -67,7 +67,7 @@ class SuppliersDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Suppliers_' . date('YmdHis');
}
}

View File

@ -66,7 +66,7 @@ class ProductCategoriesDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'ProductCategories_' . date('YmdHis');
}
}

View File

@ -101,7 +101,7 @@ class ProductDataTable extends DataTable
*
* @return string
*/
protected function filename()
protected function filename(): string
{
return 'Product_' . date('YmdHis');
}

View File

@ -22,6 +22,11 @@
</div>
<div class="row mt-4">
<div class="col-md-12">
<div class="alert alert-info">
<strong>NOTE: Product Code must be a number to generate barcodes!</strong>
</div>
</div>
<div class="col-md-12">
<livewire:barcode.product-table/>
</div>

View File

@ -94,7 +94,7 @@ class PurchaseDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Purchase_' . date('YmdHis');
}
}

View File

@ -71,7 +71,7 @@ class PurchasePaymentsDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'PurchasePayments_' . date('YmdHis');
}
}

View File

@ -11,6 +11,7 @@ use Yajra\DataTables\Services\DataTable;
class PurchaseReturnPaymentsDataTable extends DataTable
{
public function dataTable($query) {
return datatables()
->eloquent($query)
@ -71,8 +72,7 @@ class PurchaseReturnPaymentsDataTable extends DataTable
];
}
protected function filename()
{
protected function filename(): string {
return 'PurchaseReturnPayments_' . date('YmdHis');
}
}

View File

@ -11,6 +11,7 @@ use Yajra\DataTables\Services\DataTable;
class PurchaseReturnsDataTable extends DataTable
{
public function dataTable($query) {
return datatables()
->eloquent($query)
@ -92,8 +93,8 @@ class PurchaseReturnsDataTable extends DataTable
->visible(false)
];
}
protected function filename()
{
protected function filename(): string {
return 'PurchaseReturns_' . date('YmdHis');
}
}

View File

@ -79,7 +79,7 @@ class QuotationsDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Quotations_' . date('YmdHis');
}
}

View File

@ -72,7 +72,7 @@ class SalePaymentsDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'SalePayments_' . date('YmdHis');
}
}

View File

@ -94,7 +94,7 @@ class SalesDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Sales_' . date('YmdHis');
}
}

View File

@ -108,7 +108,7 @@
<td class="right">{{ format_currency($sale->tax_amount) }}</td>
</tr>
<tr>
<td class="left"><strong>Shipping)</strong></td>
<td class="left"><strong>Shipping</strong></td>
<td class="right">{{ format_currency($sale->shipping_amount) }}</td>
</tr>
<tr>

View File

@ -11,6 +11,7 @@ use Yajra\DataTables\Services\DataTable;
class SaleReturnPaymentsDataTable extends DataTable
{
public function dataTable($query) {
return datatables()
->eloquent($query)
@ -71,8 +72,7 @@ class SaleReturnPaymentsDataTable extends DataTable
];
}
protected function filename()
{
protected function filename(): string {
return 'SaleReturnPayments_' . date('YmdHis');
}
}

View File

@ -11,6 +11,7 @@ use Yajra\DataTables\Services\DataTable;
class SaleReturnsDataTable extends DataTable
{
public function dataTable($query) {
return datatables()
->eloquent($query)
@ -93,8 +94,7 @@ class SaleReturnsDataTable extends DataTable
];
}
protected function filename()
{
protected function filename(): string {
return 'SaleReturns_' . date('YmdHis');
}
}

View File

@ -79,7 +79,7 @@ class RolesDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Roles_' . date('YmdHis');
}
}

View File

@ -96,7 +96,7 @@ class UsersDataTable extends DataTable
];
}
protected function filename() {
protected function filename(): string {
return 'Users_' . date('YmdHis');
}
}

View File

@ -1,5 +1,10 @@
![Triangle POS](public/images/logo-dark.png)
> This Project is ready for Production. If you find any bug or have any suggestion please create an Issue.
<picture>
<source srcset="public/images/logo.png"
media="(prefers-color-scheme: dark)">
<img src="public/images/logo-dark.png" alt="App Logo">
</picture>
> **Important Note:** This Project is ready for Production. But use code from main branch only. If you find any bug or have any suggestion please create an Issue.
# Local Installation

View File

@ -16,7 +16,7 @@ class Kernel extends HttpKernel
protected $middleware = [
// \App\Http\Middleware\TrustHosts::class,
\App\Http\Middleware\TrustProxies::class,
\Fruitcake\Cors\HandleCors::class,
\Illuminate\Http\Middleware\HandleCors::class,
\App\Http\Middleware\PreventRequestsDuringMaintenance::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,

View File

@ -35,6 +35,10 @@ class ProductTable extends Component
return session()->flash('message', 'Max quantity is 100 per barcode generation!');
}
if (!is_numeric($product->product_code)) {
return session()->flash('message', 'Can not generate Barcode with this type of Product Code');
}
$this->barcodes = [];
for ($i = 1; $i <= $quantity; $i++) {

View File

@ -2,7 +2,7 @@
namespace App\Http\Middleware;
use Fideloper\Proxy\TrustProxies as Middleware;
use Illuminate\Http\Middleware\TrustProxies as Middleware;
use Illuminate\Http\Request;
class TrustProxies extends Middleware

View File

@ -5,32 +5,30 @@
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"php": "^7.3|^8.0",
"barryvdh/laravel-snappy": "^0.4.8",
"bumbummen99/shoppingcart": "^4.0",
"fideloper/proxy": "^4.4",
"fruitcake/laravel-cors": "^2.0",
"php": "^8.1",
"anayarojo/shoppingcart": "^4.2",
"barryvdh/laravel-snappy": "^1.0",
"guzzlehttp/guzzle": "^7.0.1",
"h4cc/wkhtmltopdf-amd64": "^0.12.4",
"laravel/framework": "^8.40",
"laravel/framework": "^10.0",
"laravel/tinker": "^2.5",
"laravel/ui": "^3.3",
"laravel/ui": "^4.0",
"livewire/livewire": "^2.5",
"milon/barcode": "^8.0",
"nwidart/laravel-modules": "8.2",
"realrashid/sweet-alert": "^4.0",
"spatie/laravel-medialibrary": "^9.0.0",
"spatie/laravel-permission": "^4.2",
"yajra/laravel-datatables": "^1.5"
"milon/barcode": "^10.0",
"nwidart/laravel-modules": "^10.0",
"realrashid/sweet-alert": "^6.0",
"spatie/laravel-medialibrary": "^10.0",
"spatie/laravel-permission": "^5.0",
"yajra/laravel-datatables": "^10.0"
},
"require-dev": {
"barryvdh/laravel-debugbar": "^3.6",
"facade/ignition": "^2.5",
"spatie/laravel-ignition": "^2.0",
"fakerphp/faker": "^1.9.1",
"laravel/sail": "^1.0.1",
"mockery/mockery": "^1.4.2",
"nunomaduro/collision": "^5.0",
"phpunit/phpunit": "^9.3.3"
"nunomaduro/collision": "^7.0",
"phpunit/phpunit": "^10.0"
},
"autoload": {
"psr-4": {
@ -70,6 +68,6 @@
"preferred-install": "dist",
"sort-packages": true
},
"minimum-stability": "dev",
"minimum-stability": "stable",
"prefer-stable": true
}

4013
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,7 @@
<?php
use Nwidart\Modules\Activators\FileActivator;
use Nwidart\Modules\Commands;
return [
@ -141,47 +142,49 @@ return [
|
*/
'commands' => [
CommandMakeCommand::class,
ControllerMakeCommand::class,
DisableCommand::class,
DumpCommand::class,
EnableCommand::class,
EventMakeCommand::class,
JobMakeCommand::class,
ListenerMakeCommand::class,
MailMakeCommand::class,
MiddlewareMakeCommand::class,
NotificationMakeCommand::class,
ProviderMakeCommand::class,
RouteProviderMakeCommand::class,
InstallCommand::class,
ListCommand::class,
ModuleDeleteCommand::class,
ModuleMakeCommand::class,
FactoryMakeCommand::class,
PolicyMakeCommand::class,
RequestMakeCommand::class,
RuleMakeCommand::class,
MigrateCommand::class,
MigrateRefreshCommand::class,
MigrateResetCommand::class,
MigrateRollbackCommand::class,
MigrateStatusCommand::class,
MigrationMakeCommand::class,
ModelMakeCommand::class,
PublishCommand::class,
PublishConfigurationCommand::class,
PublishMigrationCommand::class,
PublishTranslationCommand::class,
SeedCommand::class,
SeedMakeCommand::class,
SetupCommand::class,
UnUseCommand::class,
UpdateCommand::class,
UseCommand::class,
ResourceMakeCommand::class,
TestMakeCommand::class,
LaravelModulesV6Migrator::class,
Commands\CommandMakeCommand::class,
Commands\ComponentClassMakeCommand::class,
Commands\ComponentViewMakeCommand::class,
Commands\ControllerMakeCommand::class,
Commands\DisableCommand::class,
Commands\DumpCommand::class,
Commands\EnableCommand::class,
Commands\EventMakeCommand::class,
Commands\JobMakeCommand::class,
Commands\ListenerMakeCommand::class,
Commands\MailMakeCommand::class,
Commands\MiddlewareMakeCommand::class,
Commands\NotificationMakeCommand::class,
Commands\ProviderMakeCommand::class,
Commands\RouteProviderMakeCommand::class,
Commands\InstallCommand::class,
Commands\ListCommand::class,
Commands\ModuleDeleteCommand::class,
Commands\ModuleMakeCommand::class,
Commands\FactoryMakeCommand::class,
Commands\PolicyMakeCommand::class,
Commands\RequestMakeCommand::class,
Commands\RuleMakeCommand::class,
Commands\MigrateCommand::class,
Commands\MigrateRefreshCommand::class,
Commands\MigrateResetCommand::class,
Commands\MigrateRollbackCommand::class,
Commands\MigrateStatusCommand::class,
Commands\MigrationMakeCommand::class,
Commands\ModelMakeCommand::class,
Commands\PublishCommand::class,
Commands\PublishConfigurationCommand::class,
Commands\PublishMigrationCommand::class,
Commands\PublishTranslationCommand::class,
Commands\SeedCommand::class,
Commands\SeedMakeCommand::class,
Commands\SetupCommand::class,
Commands\UnUseCommand::class,
Commands\UpdateCommand::class,
Commands\UseCommand::class,
Commands\ResourceMakeCommand::class,
Commands\TestMakeCommand::class,
Commands\LaravelModulesV6Migrator::class,
],
/*

View File

@ -35,8 +35,8 @@ return [
'pdf' => [
'enabled' => true,
'binary' => env('WKHTML_PDF_BINARY', base_path('vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64'),),
//'binary' => env('WKHTML_PDF_BINARY', base_path('"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe"'),),
//'binary' => env('WKHTML_PDF_BINARY', base_path('vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64'),),
'binary' => env('WKHTML_PDF_BINARY', 'C:\\wkhtmltopdf\\bin\\wkhtmltopdf.exe'),
'timeout' => false,
'options' => [
'enable-local-file-access' => true,
@ -47,7 +47,7 @@ return [
'image' => [
'enabled' => true,
'binary' => env('WKHTML_IMG_BINARY', '"C:\Program Files\wkhtmltopdf\bin\wkhtmltoimage.exe"'),
'binary' => env('WKHTML_IMG_BINARY', ''),
'timeout' => false,
'options' => [
'enable-local-file-access' => true

699
package-lock.json generated
View File

@ -5,24 +5,18 @@
"packages": {
"": {
"dependencies": {
"autoprefixer": "^10.3.1",
"datatables.net-bs4": "^3.2.2",
"datatables.net-buttons-bs4": "^1.7.1"
"autoprefixer": "^10.3.1"
},
"devDependencies": {
"@coreui/coreui": "^3.2.2",
"@coreui/icons": "^1.0.1",
"axios": "^0.21",
"bootstrap": "^4.1.0",
"jquery": "^3.2",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"laravel-vite-plugin": "^0.7.8",
"popper.js": "^1.12",
"postcss": "^8.1.14",
"resolve-url-loader": "^4.0.0",
"sass": "^1.15.2",
"sass-loader": "^8.0.0",
"webpack-cli": "^4.7.2"
"vite": "^4.4.7"
}
},
"node_modules/@ampproject/remapping": {
@ -1902,6 +1896,358 @@
"node": ">=10.0.0"
}
},
"node_modules/@esbuild/android-arm": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz",
"integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==",
"cpu": [
"arm"
],
"dev": true,
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/android-arm64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz",
"integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/android-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz",
"integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/darwin-arm64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz",
"integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/darwin-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz",
"integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/freebsd-arm64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz",
"integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/freebsd-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz",
"integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-arm": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz",
"integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==",
"cpu": [
"arm"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-arm64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz",
"integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-ia32": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz",
"integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==",
"cpu": [
"ia32"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-loong64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz",
"integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==",
"cpu": [
"loong64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-mips64el": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz",
"integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==",
"cpu": [
"mips64el"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-ppc64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz",
"integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==",
"cpu": [
"ppc64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-riscv64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz",
"integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==",
"cpu": [
"riscv64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-s390x": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz",
"integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==",
"cpu": [
"s390x"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz",
"integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/netbsd-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz",
"integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"netbsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/openbsd-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz",
"integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"openbsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/sunos-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz",
"integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"sunos"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-arm64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz",
"integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-ia32": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz",
"integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==",
"cpu": [
"ia32"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-x64": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz",
"integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@jridgewell/gen-mapping": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
@ -2563,19 +2909,6 @@
"acorn": "^8"
}
},
"node_modules/adjust-sourcemap-loader": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz",
"integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==",
"dev": true,
"dependencies": {
"loader-utils": "^2.0.0",
"regex-parser": "^2.2.11"
},
"engines": {
"node": ">=8.9"
}
},
"node_modules/ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@ -3920,52 +4253,6 @@
"node": ">=8.0.0"
}
},
"node_modules/datatables.net": {
"version": "1.13.4",
"resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.4.tgz",
"integrity": "sha512-yzhArTOB6tPO2QFKm1z3hA4vabtt2hRvgw8XLsT1xqEirinfGYqWDiWXlkTPTaJv2e7gG+Kf985sXkzBFlGrGQ==",
"dependencies": {
"jquery": ">=1.7"
}
},
"node_modules/datatables.net-bs4": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/datatables.net-bs4/-/datatables.net-bs4-3.2.2.tgz",
"integrity": "sha512-gyusH+EckzR4A8aqT/p6D3B3bUQxgLSoItt1RsPcSsT7DFgPUKjSjf3ZOFYWx0fYnleiLQNGQq8dnyMUySw/yg==",
"deprecated": "Incorrect version published. Please use the latest non-deprecated version - 1.10.13 at the time of writing",
"dependencies": {
"datatables.net": ">=1.10.13",
"jquery": ">=1.7"
}
},
"node_modules/datatables.net-buttons": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-1.7.1.tgz",
"integrity": "sha512-D2OxZeR18jhSx+l0xcfAJzfUH7l3LHCu0e606fV7+v3hMhphOfljjZYLaiRmGiR9lqO/f5xE/w2a+OtG/QMavw==",
"dependencies": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"node_modules/datatables.net-buttons-bs4": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/datatables.net-buttons-bs4/-/datatables.net-buttons-bs4-1.7.1.tgz",
"integrity": "sha512-s+fwsgAAWp7mOKwuztPH06kaw2JNAJ71VNTw/TqGQTL6BK9FshweDKZSRIB/ePcc/Psiy8fhNEj3XHxx4OO6BA==",
"dependencies": {
"datatables.net-bs4": "^1.10.15",
"datatables.net-buttons": "1.7.1",
"jquery": ">=1.7"
}
},
"node_modules/datatables.net-buttons-bs4/node_modules/datatables.net-bs4": {
"version": "1.13.4",
"resolved": "https://registry.npmjs.org/datatables.net-bs4/-/datatables.net-bs4-1.13.4.tgz",
"integrity": "sha512-xRImAzF0Ra+JYc1oUeZtFv/XzUATk3CUyVSIDr2OYh0FwSTEU48S94bUBiTUJFvzwPFreqcTZb0IyMFWQvI1GA==",
"dependencies": {
"datatables.net": ">=1.12.1",
"jquery": ">=1.7"
}
},
"node_modules/debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
@ -4311,6 +4598,43 @@
"integrity": "sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==",
"dev": true
},
"node_modules/esbuild": {
"version": "0.18.17",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz",
"integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==",
"dev": true,
"hasInstallScript": true,
"bin": {
"esbuild": "bin/esbuild"
},
"engines": {
"node": ">=12"
},
"optionalDependencies": {
"@esbuild/android-arm": "0.18.17",
"@esbuild/android-arm64": "0.18.17",
"@esbuild/android-x64": "0.18.17",
"@esbuild/darwin-arm64": "0.18.17",
"@esbuild/darwin-x64": "0.18.17",
"@esbuild/freebsd-arm64": "0.18.17",
"@esbuild/freebsd-x64": "0.18.17",
"@esbuild/linux-arm": "0.18.17",
"@esbuild/linux-arm64": "0.18.17",
"@esbuild/linux-ia32": "0.18.17",
"@esbuild/linux-loong64": "0.18.17",
"@esbuild/linux-mips64el": "0.18.17",
"@esbuild/linux-ppc64": "0.18.17",
"@esbuild/linux-riscv64": "0.18.17",
"@esbuild/linux-s390x": "0.18.17",
"@esbuild/linux-x64": "0.18.17",
"@esbuild/netbsd-x64": "0.18.17",
"@esbuild/openbsd-x64": "0.18.17",
"@esbuild/sunos-x64": "0.18.17",
"@esbuild/win32-arm64": "0.18.17",
"@esbuild/win32-ia32": "0.18.17",
"@esbuild/win32-x64": "0.18.17"
}
},
"node_modules/escalade": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
@ -5639,7 +5963,9 @@
"node_modules/jquery": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.0.tgz",
"integrity": "sha512-umpJ0/k8X0MvD1ds0P9SfowREz2LenHsQaxSohMZ5OMNEU2r0tf8pdeEFTHMFxWVxKNyU9rTtK3CWzUCTKJUeQ=="
"integrity": "sha512-umpJ0/k8X0MvD1ds0P9SfowREz2LenHsQaxSohMZ5OMNEU2r0tf8pdeEFTHMFxWVxKNyU9rTtK3CWzUCTKJUeQ==",
"dev": true,
"peer": true
},
"node_modules/js-tokens": {
"version": "4.0.0",
@ -5797,6 +6123,22 @@
"webpack-cli": "^4.9.1"
}
},
"node_modules/laravel-vite-plugin": {
"version": "0.7.8",
"resolved": "https://registry.npmjs.org/laravel-vite-plugin/-/laravel-vite-plugin-0.7.8.tgz",
"integrity": "sha512-HWYqpQYHR3kEQ1LsHX7gHJoNNf0bz5z5mDaHBLzS+PGLCTmYqlU5/SZyeEgObV7z7bC/cnStYcY9H1DI1D5Udg==",
"dev": true,
"dependencies": {
"picocolors": "^1.0.0",
"vite-plugin-full-reload": "^1.0.5"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
"vite": "^3.0.0 || ^4.0.0"
}
},
"node_modules/launch-editor": {
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz",
@ -6670,9 +7012,9 @@
}
},
"node_modules/postcss": {
"version": "8.4.24",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz",
"integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==",
"version": "8.4.27",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz",
"integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==",
"funding": [
{
"type": "opencollective",
@ -7484,12 +7826,6 @@
"@babel/runtime": "^7.8.4"
}
},
"node_modules/regex-parser": {
"version": "2.2.11",
"resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz",
"integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==",
"dev": true
},
"node_modules/regexpu-core": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
@ -7617,57 +7953,6 @@
"node": ">=4"
}
},
"node_modules/resolve-url-loader": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz",
"integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==",
"dev": true,
"dependencies": {
"adjust-sourcemap-loader": "^4.0.0",
"convert-source-map": "^1.7.0",
"loader-utils": "^2.0.0",
"postcss": "^7.0.35",
"source-map": "0.6.1"
},
"engines": {
"node": ">=8.9"
},
"peerDependencies": {
"rework": "1.0.1",
"rework-visit": "1.0.0"
},
"peerDependenciesMeta": {
"rework": {
"optional": true
},
"rework-visit": {
"optional": true
}
}
},
"node_modules/resolve-url-loader/node_modules/picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"node_modules/resolve-url-loader/node_modules/postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"dependencies": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
},
"engines": {
"node": ">=6.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
}
},
"node_modules/retry": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
@ -7712,6 +7997,22 @@
"inherits": "^2.0.1"
}
},
"node_modules/rollup": {
"version": "3.26.3",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz",
"integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==",
"dev": true,
"bin": {
"rollup": "dist/bin/rollup"
},
"engines": {
"node": ">=14.18.0",
"npm": ">=8.0.0"
},
"optionalDependencies": {
"fsevents": "~2.3.2"
}
},
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
@ -7778,78 +8079,6 @@
"node": ">=14.0.0"
}
},
"node_modules/sass-loader": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz",
"integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==",
"dev": true,
"dependencies": {
"clone-deep": "^4.0.1",
"loader-utils": "^1.2.3",
"neo-async": "^2.6.1",
"schema-utils": "^2.6.1",
"semver": "^6.3.0"
},
"engines": {
"node": ">= 8.9.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/webpack"
},
"peerDependencies": {
"fibers": ">= 3.1.0",
"node-sass": "^4.0.0",
"sass": "^1.3.0",
"webpack": "^4.36.0 || ^5.0.0"
},
"peerDependenciesMeta": {
"fibers": {
"optional": true
},
"node-sass": {
"optional": true
},
"sass": {
"optional": true
}
}
},
"node_modules/sass-loader/node_modules/json5": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
"dev": true,
"dependencies": {
"minimist": "^1.2.0"
},
"bin": {
"json5": "lib/cli.js"
}
},
"node_modules/sass-loader/node_modules/loader-utils": {
"version": "1.4.2",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
"dev": true,
"dependencies": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^1.0.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/sass-loader/node_modules/semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"dev": true,
"bin": {
"semver": "bin/semver.js"
}
},
"node_modules/schema-utils": {
"version": "2.7.1",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
@ -8771,6 +9000,74 @@
"node": ">= 0.8"
}
},
"node_modules/vite": {
"version": "4.4.7",
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz",
"integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==",
"dev": true,
"dependencies": {
"esbuild": "^0.18.10",
"postcss": "^8.4.26",
"rollup": "^3.25.2"
},
"bin": {
"vite": "bin/vite.js"
},
"engines": {
"node": "^14.18.0 || >=16.0.0"
},
"funding": {
"url": "https://github.com/vitejs/vite?sponsor=1"
},
"optionalDependencies": {
"fsevents": "~2.3.2"
},
"peerDependencies": {
"@types/node": ">= 14",
"less": "*",
"lightningcss": "^1.21.0",
"sass": "*",
"stylus": "*",
"sugarss": "*",
"terser": "^5.4.0"
},
"peerDependenciesMeta": {
"@types/node": {
"optional": true
},
"less": {
"optional": true
},
"lightningcss": {
"optional": true
},
"sass": {
"optional": true
},
"stylus": {
"optional": true
},
"sugarss": {
"optional": true
},
"terser": {
"optional": true
}
}
},
"node_modules/vite-plugin-full-reload": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.0.5.tgz",
"integrity": "sha512-kVZFDFWr0DxiHn6MuDVTQf7gnWIdETGlZh0hvTiMXzRN80vgF4PKbONSq8U1d0WtHsKaFODTQgJeakLacoPZEQ==",
"dev": true,
"dependencies": {
"picocolors": "^1.0.0",
"picomatch": "^2.3.1"
},
"peerDependencies": {
"vite": "^2 || ^3 || ^4"
}
},
"node_modules/vm-browserify": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",

View File

@ -1,32 +1,22 @@
{
"private": true,
"scripts": {
"dev": "npm run development",
"development": "mix",
"watch": "mix watch",
"watch-poll": "mix watch -- --watch-options-poll=1000",
"hot": "mix watch --hot",
"prod": "npm run production",
"production": "mix --production"
"dev": "vite",
"build": "vite build"
},
"devDependencies": {
"@coreui/coreui": "^3.2.2",
"@coreui/icons": "^1.0.1",
"axios": "^0.21",
"bootstrap": "^4.1.0",
"jquery": "^3.2",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"laravel-vite-plugin": "^0.7.8",
"popper.js": "^1.12",
"postcss": "^8.1.14",
"resolve-url-loader": "^4.0.0",
"sass": "^1.15.2",
"sass-loader": "^8.0.0",
"webpack-cli": "^4.7.2"
"vite": "^4.4.7"
},
"dependencies": {
"autoprefixer": "^10.3.1",
"datatables.net-bs4": "^3.2.2",
"datatables.net-buttons-bs4": "^1.7.1"
}
"autoprefixer": "^10.3.1"
},
"type": "module"
}

View File

@ -12,7 +12,7 @@
<directory suffix="Test.php">./tests/Feature</directory>
</testsuite>
</testsuites>
<coverage processUncoveredFiles="true">
<coverage>
<include>
<directory suffix=".php">./app</directory>
</include>

7
public/build/assets/app-296d3b42.css vendored Normal file

File diff suppressed because one or more lines are too long

48
public/build/assets/app-4bd38d4a.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
$(document).ready(function(){let e=document.getElementById("salesPurchasesChart");$.get("/sales-purchases/chart-data",function(a){new Chart(e,{type:"bar",data:{labels:a.sales.original.days,datasets:[{label:"Sales",data:a.sales.original.data,backgroundColor:["#6366F1"],borderColor:["#6366F1"],borderWidth:1},{label:"Purchases",data:a.purchases.original.data,backgroundColor:["#A5B4FC"],borderColor:["#A5B4FC"],borderWidth:1}]},options:{scales:{y:{beginAtZero:!0}}}})});let t=document.getElementById("currentMonthChart");$.get("/current-month/chart-data",function(a){new Chart(t,{type:"doughnut",data:{labels:["Sales","Purchases","Expenses"],datasets:[{data:[a.sales,a.purchases,a.expenses],backgroundColor:["#F59E0B","#0284C7","#EF4444"],hoverBackgroundColor:["#F59E0B","#0284C7","#EF4444"]}]}})});let r=document.getElementById("paymentChart");$.get("/payment-flow/chart-data",function(a){new Chart(r,{type:"line",data:{labels:a.months,datasets:[{label:"Payment Sent",data:a.payment_sent,fill:!1,borderColor:"#EA580C",tension:0},{label:"Payment Received",data:a.payment_received,fill:!1,borderColor:"#2563EB",tension:0}]}})})});

View File

@ -0,0 +1,17 @@
{
"resources/js/app.js": {
"file": "assets/app-4bd38d4a.js",
"isEntry": true,
"src": "resources/js/app.js"
},
"resources/js/chart-config.js": {
"file": "assets/chart-config-5c99e0a8.js",
"isEntry": true,
"src": "resources/js/chart-config.js"
},
"resources/sass/app.scss": {
"file": "assets/app-296d3b42.css",
"isEntry": true,
"src": "resources/sass/app.scss"
}
}

6
resources/js/app.js vendored
View File

@ -1,7 +1,5 @@
require('./bootstrap');
require('@coreui/coreui/dist/js/coreui.bundle.min');
require('datatables.net-bs4');
require('datatables.net-buttons-bs4');
import './bootstrap.js';
import '@coreui/coreui/dist/js/coreui.bundle.min.js';
$(function () {
$('[data-toggle="tooltip"]').tooltip()

View File

@ -1,4 +1,5 @@
window._ = require('lodash');
import Popper from "popper.js";
import * as bootstrap from 'bootstrap';
/**
* We'll load jQuery and the Bootstrap jQuery plugin which provides support
@ -7,26 +8,7 @@ window._ = require('lodash');
*/
try {
window.Popper = require('popper.js').default;
window.$ = window.jQuery = require('jquery');
require('bootstrap');
window.Popper = Popper;
} catch (e) {
console.log(e);
}
/**
* Echo exposes an expressive API for subscribing to channels and listening
* for events that are broadcast by Laravel. Echo and event broadcasting
* allows your team to easily build robust real-time web applications.
*/
// import Echo from 'laravel-echo';
// window.Pusher = require('pusher-js');
// window.Echo = new Echo({
// broadcaster: 'pusher',
// key: process.env.MIX_PUSHER_APP_KEY,
// cluster: process.env.MIX_PUSHER_APP_CLUSTER,
// encrypted: true
// });

View File

@ -64,7 +64,6 @@ $(document).ready(function () {
let paymentChart = document.getElementById('paymentChart');
$.get('/payment-flow/chart-data', function (response) {
console.log(response)
let cashflowChart = new Chart(paymentChart, {
type: 'line',
data: {

View File

@ -1,5 +1,5 @@
// CoreUI
@import '~@coreui/coreui/scss/coreui';
@import '@coreui/coreui/scss/coreui';
//Extra Overrides
//.c-sidebar {

View File

@ -125,5 +125,5 @@
@endsection
@push('page_scripts')
<script src="{{ mix('js/chart-config.js') }}"></script>
@vite('resources/js/chart-config.js')
@endpush

View File

@ -1,7 +1,8 @@
<!-- Dropezone CSS -->
<link rel="stylesheet" href="{{ asset('css/dropzone.css') }}">
<!-- CoreUI CSS -->
<link rel="stylesheet" href="{{ mix('css/app.css') }}" crossorigin="anonymous">
@vite('resources/sass/app.scss')
<link href="https://cdn.datatables.net/v/bs4/jszip-3.10.1/dt-1.13.5/b-2.4.1/b-html5-2.4.1/b-print-2.4.1/sl-1.7.0/datatables.min.css" rel="stylesheet">
<!-- Bootstrap Icons -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.5.0/font/bootstrap-icons.css">

View File

@ -1,6 +1,10 @@
<script src="{{ mix('js/app.js') }}"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.perfect-scrollbar/1.4.0/perfect-scrollbar.js"></script>
<script src="{{ asset('vendor/datatables/buttons.server-side.js') }}"></script>
<script src="https://code.jquery.com/jquery-3.7.0.min.js" integrity="sha256-2Pmvv0kuTBOenSvLm6bvfBSSHrUJ+3A7x6P5Ebd07/g=" crossorigin="anonymous"></script>
@vite('resources/js/app.js')
<script defer src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/pdfmake.min.js"></script>
<script defer src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/vfs_fonts.js"></script>
<script defer src="https://cdn.datatables.net/v/bs4/jszip-3.10.1/dt-1.13.5/b-2.4.1/b-html5-2.4.1/b-print-2.4.1/sl-1.7.0/datatables.min.js"></script>
<script defer src="https://cdnjs.cloudflare.com/ajax/libs/jquery.perfect-scrollbar/1.4.0/perfect-scrollbar.js"></script>
<script defer src="{{ asset('vendor/datatables/buttons.server-side.js') }}"></script>
@include('sweetalert::alert')

View File

@ -1,5 +1,5 @@
<footer class="c-footer">
<div>Triangle Pos © {{ date('Y') }} || Developed by <strong><a target="_blank" href="https://fahimanzamdip.github.io">Fahim Anzam Dip</a></strong></div>
<div class="mfs-auto d-md-down-none">Version <strong class="text-danger">1.0.0</strong></div>
<div class="mfs-auto d-md-down-none">Version <strong class="text-danger">1.1.0</strong></div>
</footer>

View File

@ -9,7 +9,7 @@
</div>
</div>
@forelse($products as $product)
<div wire:click.prevent="selectProduct({{ $product }})" class="col-lg-4 col-md-6" style="cursor: pointer;">
<div wire:click.prevent="selectProduct({{ $product }})" class="col-lg-4 col-md-6 col-xl-3" style="cursor: pointer;">
<div class="card border-0 shadow h-100">
<div class="position-relative">
<img height="200" src="{{ $product->getFirstMediaUrl('images') }}" class="card-img-top" alt="Product Image">

12
vite.config.js vendored Normal file
View File

@ -0,0 +1,12 @@
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [
laravel([
'resources/sass/app.scss',
'resources/js/app.js',
'resources/js/chart-config.js',
]),
],
});

16
webpack.mix.js vendored
View File

@ -1,16 +0,0 @@
const mix = require('laravel-mix');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/js/app.js', 'public/js')
.js('resources/js/chart-config.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css');