瀏覽代碼

wip Cash Flow Statement

3.x
Andrew Wallo 11 月之前
父節點
當前提交
461c4026b2

+ 44
- 0
app/Enums/Accounting/AccountType.php 查看文件

85
             default => false,
85
             default => false,
86
         };
86
         };
87
     }
87
     }
88
+
89
+    public function isNormalDebitBalance(): bool
90
+    {
91
+        return in_array($this, [
92
+            self::CurrentAsset,
93
+            self::NonCurrentAsset,
94
+            self::ContraLiability,
95
+            self::ContraEquity,
96
+            self::ContraRevenue,
97
+            self::OperatingExpense,
98
+            self::NonOperatingExpense,
99
+            self::UncategorizedExpense,
100
+        ], true);
101
+    }
102
+
103
+    public function isNormalCreditBalance(): bool
104
+    {
105
+        return ! $this->isNormalDebitBalance();
106
+    }
107
+
108
+    /**
109
+     * Determines if the account is a nominal account.
110
+     *
111
+     * In accounting, nominal accounts are temporary accounts that are closed at the end of each accounting period,
112
+     * with their net balances transferred to Retained Earnings (a real account).
113
+     */
114
+    public function isNominal(): bool
115
+    {
116
+        return in_array($this->getCategory(), [
117
+            AccountCategory::Revenue,
118
+            AccountCategory::Expense,
119
+        ], true);
120
+    }
121
+
122
+    /**
123
+     * Determines if the account is a real account.
124
+     *
125
+     * In accounting, assets, liabilities, and equity are real accounts which are permanent accounts that retain their balances across accounting periods.
126
+     * They are not closed at the end of each accounting period.
127
+     */
128
+    public function isReal(): bool
129
+    {
130
+        return ! $this->isNominal();
131
+    }
88
 }
132
 }

+ 2
- 0
app/Models/Accounting/AccountSubtype.php 查看文件

21
     protected $fillable = [
21
     protected $fillable = [
22
         'company_id',
22
         'company_id',
23
         'multi_currency',
23
         'multi_currency',
24
+        'inverse_cash_flow',
24
         'category',
25
         'category',
25
         'type',
26
         'type',
26
         'name',
27
         'name',
29
 
30
 
30
     protected $casts = [
31
     protected $casts = [
31
         'multi_currency' => 'boolean',
32
         'multi_currency' => 'boolean',
33
+        'inverse_cash_flow' => 'boolean',
32
         'category' => AccountCategory::class,
34
         'category' => AccountCategory::class,
33
         'type' => AccountType::class,
35
         'type' => AccountType::class,
34
     ];
36
     ];

+ 1
- 1
app/Services/AccountService.php 查看文件

171
                     ->where('transactions.posted_at', '<=', $endDate);
171
                     ->where('transactions.posted_at', '<=', $endDate);
172
             })
172
             })
173
             ->groupBy('accounts.id')
173
             ->groupBy('accounts.id')
174
-            ->with(['subtype:id,name']);
174
+            ->with(['subtype:id,name,inverse_cash_flow']);
175
 
175
 
176
         if (! empty($accountIds)) {
176
         if (! empty($accountIds)) {
177
             $query->whereIn('accounts.id', $accountIds);
177
             $query->whereIn('accounts.id', $accountIds);

+ 1
- 0
app/Services/ChartOfAccountsService.php 查看文件

21
                 $subtype = $company->accountSubtypes()
21
                 $subtype = $company->accountSubtypes()
22
                     ->createQuietly([
22
                     ->createQuietly([
23
                         'multi_currency' => $subtypeConfig['multi_currency'] ?? false,
23
                         'multi_currency' => $subtypeConfig['multi_currency'] ?? false,
24
+                        'inverse_cash_flow' => $subtypeConfig['inverse_cash_flow'] ?? false,
24
                         'category' => AccountType::from($type)->getCategory()->value,
25
                         'category' => AccountType::from($type)->getCategory()->value,
25
                         'type' => $type,
26
                         'type' => $type,
26
                         'name' => $subtypeName,
27
                         'name' => $subtypeName,

+ 47
- 66
app/Services/ReportService.php 查看文件

442
 
442
 
443
         $totalCashFlows = $this->calculateTotalCashFlows($sections);
443
         $totalCashFlows = $this->calculateTotalCashFlows($sections);
444
 
444
 
445
-        ray($sections);
446
-
447
         return new ReportDTO($sections, $totalCashFlows, $columns);
445
         return new ReportDTO($sections, $totalCashFlows, $columns);
448
     }
446
     }
449
 
447
 
471
             ->orderByRaw('LENGTH(code), code')
469
             ->orderByRaw('LENGTH(code), code')
472
             ->get();
470
             ->get();
473
 
471
 
474
-        return $this->formatSectionAccounts('Operating Activities', $accounts, $adjustments, $startDate, $endDate);
472
+        return $this->formatSectionAccounts($accounts, $adjustments, $startDate, $endDate);
475
     }
473
     }
476
 
474
 
477
     private function buildInvestingActivities(string $startDate, string $endDate): AccountCategoryDTO
475
     private function buildInvestingActivities(string $startDate, string $endDate): AccountCategoryDTO
486
             ->orderByRaw('LENGTH(code), code')
484
             ->orderByRaw('LENGTH(code), code')
487
             ->get();
485
             ->get();
488
 
486
 
489
-        return $this->formatSectionAccounts('Investing Activities', $accounts, $adjustments, $startDate, $endDate);
487
+        return $this->formatSectionAccounts($accounts, $adjustments, $startDate, $endDate);
490
     }
488
     }
491
 
489
 
492
     private function buildFinancingActivities(string $startDate, string $endDate): AccountCategoryDTO
490
     private function buildFinancingActivities(string $startDate, string $endDate): AccountCategoryDTO
505
             ->orderByRaw('LENGTH(code), code')
503
             ->orderByRaw('LENGTH(code), code')
506
             ->get();
504
             ->get();
507
 
505
 
508
-        return $this->formatSectionAccounts('Financing Activities', $accounts, [], $startDate, $endDate);
506
+        return $this->formatSectionAccounts($accounts, [], $startDate, $endDate);
509
     }
507
     }
510
 
508
 
511
-    private function formatSectionAccounts(
512
-        string $sectionName,
513
-        $accounts,
514
-        $adjustments,
515
-        string $startDate,
516
-        string $endDate
517
-    ): AccountCategoryDTO {
518
-        $accountTypes = [];
509
+    private function formatSectionAccounts($accounts, $adjustments, string $startDate, string $endDate): AccountCategoryDTO
510
+    {
511
+        $categoryAccountsByType = [];
519
         $sectionTotal = 0;
512
         $sectionTotal = 0;
513
+        $subCategoryTotals = [];
514
+
515
+        // Process accounts and adjustments
516
+        /** @var Account[] $entries */
517
+        foreach ([$accounts, $adjustments] as $entries) {
518
+            foreach ($entries as $entry) {
519
+                $accountCategory = $entry->type->getCategory();
520
+                $accountBalances = $this->calculateAccountBalances($entry, $accountCategory);
521
+                $netCashFlow = $accountBalances['net_movement'] ?? 0;
522
+
523
+                if ($entry->subtype->inverse_cash_flow) {
524
+                    $netCashFlow *= -1;
525
+                }
520
 
526
 
521
-        foreach ($accounts as $account) {
522
-            $accountCategory = $account->type->getCategory();
523
-            $accountBalances = $this->calculateAccountBalances($account, $accountCategory);
524
-            $netCashFlow = $accountBalances['ending_balance'] ?? $accountBalances['net_movement'] ?? 0;
525
-            $sectionTotal += $netCashFlow;
526
-
527
-            $formattedAccountBalances = $this->formatBalances(['net_movement' => $netCashFlow]);
528
-
529
-            $accountDTO = new AccountDTO(
530
-                $account->name,
531
-                $account->code,
532
-                $account->id,
533
-                $formattedAccountBalances,
534
-                $startDate,
535
-                $endDate,
536
-            );
527
+                // Accumulate totals
528
+                $sectionTotal += $netCashFlow;
529
+                $accountTypeName = $entry->subtype->name;
530
+                $subCategoryTotals[$accountTypeName] = ($subCategoryTotals[$accountTypeName] ?? 0) + $netCashFlow;
531
+
532
+                // Create AccountDTO and group by account type
533
+                $accountDTO = new AccountDTO(
534
+                    $entry->name,
535
+                    $entry->code,
536
+                    $entry->id,
537
+                    $this->formatBalances(['net_movement' => $netCashFlow]),
538
+                    $startDate,
539
+                    $endDate
540
+                );
537
 
541
 
538
-            $accountTypeName = $account->subtype->name;
539
-            $accountTypes[$accountTypeName]['accounts'][] = $accountDTO;
542
+                $categoryAccountsByType[$accountTypeName][] = $accountDTO;
543
+            }
540
         }
544
         }
541
 
545
 
542
-        foreach ($adjustments as $adjustment) {
543
-            $accountCategory = $adjustment->type->getCategory();
544
-            $adjustmentBalances = $this->calculateAccountBalances($adjustment, $accountCategory);
545
-            $netCashFlow = $adjustmentBalances['ending_balance'] ?? $adjustmentBalances['net_movement'] ?? 0;
546
-            $sectionTotal += $netCashFlow;
547
-
548
-            $formattedAdjustmentBalances = $this->formatBalances(['net_movement' => $netCashFlow]);
549
-
550
-            $accountDTO = new AccountDTO(
551
-                $adjustment->name,
552
-                $adjustment->code,
553
-                $adjustment->id,
554
-                $formattedAdjustmentBalances,
555
-                $startDate,
556
-                $endDate,
546
+        // Prepare AccountTypeDTO for each account type with the accumulated totals
547
+        $subCategories = [];
548
+        foreach ($categoryAccountsByType as $typeName => $accountsInType) {
549
+            $typeTotal = $subCategoryTotals[$typeName] ?? 0;
550
+            $formattedTypeTotal = $this->formatBalances(['net_movement' => $typeTotal]);
551
+            $subCategories[$typeName] = new AccountTypeDTO(
552
+                accounts: $accountsInType,
553
+                summary: $formattedTypeTotal
557
             );
554
             );
558
-
559
-            $accountTypeName = $adjustment->subtype->name;
560
-            $accountTypes[$accountTypeName]['accounts'][] = $accountDTO;
561
         }
555
         }
562
 
556
 
557
+        // Format the overall section total as the section summary
563
         $formattedSectionTotal = $this->formatBalances(['net_movement' => $sectionTotal]);
558
         $formattedSectionTotal = $this->formatBalances(['net_movement' => $sectionTotal]);
564
 
559
 
565
-        // Convert each type array to AccountTypeDTO with summary balance
566
-        foreach ($accountTypes as $typeName => &$typeData) {
567
-            $typeNetMovement = array_reduce($typeData['accounts'], function ($carry, $account) {
568
-                return $carry + (float) \money($account->balance->netMovement, CurrencyAccessor::getDefaultCurrency(), true)->getAmount();
569
-            }, 0);
570
-
571
-            $formattedTypeBalance = $this->formatBalances(['net_movement' => $typeNetMovement]);
572
-
573
-            $typeData = new AccountTypeDTO(
574
-                accounts: $typeData['accounts'],
575
-                summary: $formattedTypeBalance
576
-            );
577
-        }
578
-
579
         return new AccountCategoryDTO(
560
         return new AccountCategoryDTO(
580
-            accounts: [], // No direct accounts, only types in cash flow
581
-            types: $accountTypes, // Structured by AccountTypeDTO
561
+            accounts: [], // No direct accounts at the section level
562
+            types: $subCategories, // Grouped by AccountTypeDTO
582
             summary: $formattedSectionTotal,
563
             summary: $formattedSectionTotal,
583
         );
564
         );
584
     }
565
     }
590
         foreach ($sections as $section) {
571
         foreach ($sections as $section) {
591
             $netMovement = $section->summary->netMovement ?? 0;
572
             $netMovement = $section->summary->netMovement ?? 0;
592
 
573
 
593
-            $numericNetMovement = money($netMovement, CurrencyAccessor::getDefaultCurrency())->getAmount();
574
+            $numericNetMovement = money($netMovement, CurrencyAccessor::getDefaultCurrency(), true)->getAmount();
594
 
575
 
595
             $totalCashFlow += $numericNetMovement;
576
             $totalCashFlow += $numericNetMovement;
596
         }
577
         }

+ 4
- 9
app/Transformers/CashFlowStatementReportTransformer.php 查看文件

6
 use App\DTO\ReportCategoryDTO;
6
 use App\DTO\ReportCategoryDTO;
7
 use App\DTO\ReportDTO;
7
 use App\DTO\ReportDTO;
8
 use App\DTO\ReportTypeDTO;
8
 use App\DTO\ReportTypeDTO;
9
-use App\Utilities\Currency\CurrencyAccessor;
9
+use App\Utilities\Currency\CurrencyConverter;
10
 
10
 
11
 class CashFlowStatementReportTransformer extends SummaryReportTransformer
11
 class CashFlowStatementReportTransformer extends SummaryReportTransformer
12
 {
12
 {
38
         $cashOutflow = 0;
38
         $cashOutflow = 0;
39
 
39
 
40
         foreach ($this->report->categories as $categoryName => $category) {
40
         foreach ($this->report->categories as $categoryName => $category) {
41
-            $netMovement = (float) money($category->summary->netMovement, CurrencyAccessor::getDefaultCurrency())->getAmount();
41
+            $netMovement = CurrencyConverter::convertToCents($category->summary->netMovement);
42
 
42
 
43
             match ($categoryName) {
43
             match ($categoryName) {
44
                 'Operating Activities' => $this->totalOperatingActivities = $netMovement,
44
                 'Operating Activities' => $this->totalOperatingActivities = $netMovement,
55
         }
55
         }
56
 
56
 
57
         // Store gross totals
57
         // Store gross totals
58
-        $this->grossCashInflow = money($cashInflow, CurrencyAccessor::getDefaultCurrency())->format();
59
-        $this->grossCashOutflow = money($cashOutflow, CurrencyAccessor::getDefaultCurrency())->format();
58
+        $this->grossCashInflow = CurrencyConverter::formatCentsToMoney($cashInflow);
59
+        $this->grossCashOutflow = CurrencyConverter::formatCentsToMoney(abs($cashOutflow));
60
     }
60
     }
61
 
61
 
62
     public function getCategories(): array
62
     public function getCategories(): array
104
 
104
 
105
             // Subcategories (types) under the main category
105
             // Subcategories (types) under the main category
106
             $types = [];
106
             $types = [];
107
-            ray($accountCategory->types);
108
             foreach ($accountCategory->types as $typeName => $type) {
107
             foreach ($accountCategory->types as $typeName => $type) {
109
                 // Header for subcategory (type)
108
                 // Header for subcategory (type)
110
                 $typeHeader = [];
109
                 $typeHeader = [];
112
                     $typeHeader[$column->getName()] = $column->getName() === 'account_name' ? $typeName : '';
111
                     $typeHeader[$column->getName()] = $column->getName() === 'account_name' ? $typeName : '';
113
                 }
112
                 }
114
 
113
 
115
-                ray($typeHeader);
116
-
117
                 // Account data for the subcategory
114
                 // Account data for the subcategory
118
                 $typeData = array_map(function (AccountDTO $account) {
115
                 $typeData = array_map(function (AccountDTO $account) {
119
                     $row = [];
116
                     $row = [];
135
                     return $row;
132
                     return $row;
136
                 }, $type->accounts ?? []);
133
                 }, $type->accounts ?? []);
137
 
134
 
138
-                ray($typeData);
139
-
140
                 // Subcategory (type) summary
135
                 // Subcategory (type) summary
141
                 $typeSummary = [];
136
                 $typeSummary = [];
142
                 foreach ($this->getColumns() as $column) {
137
                 foreach ($this->getColumns() as $column) {

+ 22
- 8
app/Utilities/Currency/CurrencyConverter.php 查看文件

15
 
15
 
16
         $old_attr = currency($oldCurrency);
16
         $old_attr = currency($oldCurrency);
17
         $new_attr = currency($newCurrency);
17
         $new_attr = currency($newCurrency);
18
-        $temp_balance = str_replace([$old_attr->getThousandsSeparator(), $old_attr->getDecimalMark()], ['', '.'], $amount);
18
+        $temp_amount = str_replace([$old_attr->getThousandsSeparator(), $old_attr->getDecimalMark()], ['', '.'], $amount);
19
 
19
 
20
-        return number_format((float) $temp_balance, $new_attr->getPrecision(), $new_attr->getDecimalMark(), $new_attr->getThousandsSeparator());
20
+        return number_format((float) $temp_amount, $new_attr->getPrecision(), $new_attr->getDecimalMark(), $new_attr->getThousandsSeparator());
21
     }
21
     }
22
 
22
 
23
-    public static function convertBalance(int $balance, string $oldCurrency, string $newCurrency): int
23
+    public static function convertBalance(int $amount, string $oldCurrency, string $newCurrency): int
24
     {
24
     {
25
-        return money($balance, $oldCurrency)->swapAmountFor($newCurrency);
25
+        return money($amount, $oldCurrency)->swapAmountFor($newCurrency);
26
     }
26
     }
27
 
27
 
28
-    public static function prepareForMutator(int $balance, string $currency): string
28
+    public static function prepareForMutator(int $amount, string $currency): string
29
     {
29
     {
30
-        return money($balance, $currency)->formatSimple();
30
+        return money($amount, $currency)->formatSimple();
31
     }
31
     }
32
 
32
 
33
-    public static function prepareForAccessor(string $balance, string $currency): int
33
+    public static function prepareForAccessor(string $amount, string $currency): int
34
     {
34
     {
35
-        return money($balance, $currency, true)->getAmount();
35
+        return money($amount, $currency, true)->getAmount();
36
+    }
37
+
38
+    public static function convertToCents(string | float $amount, ?string $currency = null): int
39
+    {
40
+        $currency ??= CurrencyAccessor::getDefaultCurrency();
41
+
42
+        return money($amount, $currency, true)->getAmount();
43
+    }
44
+
45
+    public static function formatCentsToMoney(int $amount, ?string $currency = null): string
46
+    {
47
+        $currency ??= CurrencyAccessor::getDefaultCurrency();
48
+
49
+        return money($amount, $currency)->format();
36
     }
50
     }
37
 
51
 
38
     public static function handleCurrencyChange(Set $set, $state): void
52
     public static function handleCurrencyChange(Set $set, $state): void

+ 67
- 67
composer.lock 查看文件

497
         },
497
         },
498
         {
498
         {
499
             "name": "aws/aws-sdk-php",
499
             "name": "aws/aws-sdk-php",
500
-            "version": "3.324.11",
500
+            "version": "3.325.2",
501
             "source": {
501
             "source": {
502
                 "type": "git",
502
                 "type": "git",
503
                 "url": "https://github.com/aws/aws-sdk-php.git",
503
                 "url": "https://github.com/aws/aws-sdk-php.git",
504
-                "reference": "a667ca29db288af083c3d8cff2e7f32d89fd4cf0"
504
+                "reference": "9e354a5e0cd1d563ec85245e3000e98e16a44fce"
505
             },
505
             },
506
             "dist": {
506
             "dist": {
507
                 "type": "zip",
507
                 "type": "zip",
508
-                "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a667ca29db288af083c3d8cff2e7f32d89fd4cf0",
509
-                "reference": "a667ca29db288af083c3d8cff2e7f32d89fd4cf0",
508
+                "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/9e354a5e0cd1d563ec85245e3000e98e16a44fce",
509
+                "reference": "9e354a5e0cd1d563ec85245e3000e98e16a44fce",
510
                 "shasum": ""
510
                 "shasum": ""
511
             },
511
             },
512
             "require": {
512
             "require": {
589
             "support": {
589
             "support": {
590
                 "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
590
                 "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
591
                 "issues": "https://github.com/aws/aws-sdk-php/issues",
591
                 "issues": "https://github.com/aws/aws-sdk-php/issues",
592
-                "source": "https://github.com/aws/aws-sdk-php/tree/3.324.11"
592
+                "source": "https://github.com/aws/aws-sdk-php/tree/3.325.2"
593
             },
593
             },
594
-            "time": "2024-10-25T18:07:16+00:00"
594
+            "time": "2024-11-01T18:08:38+00:00"
595
         },
595
         },
596
         {
596
         {
597
             "name": "aws/aws-sdk-php-laravel",
597
             "name": "aws/aws-sdk-php-laravel",
1664
         },
1664
         },
1665
         {
1665
         {
1666
             "name": "filament/actions",
1666
             "name": "filament/actions",
1667
-            "version": "v3.2.121",
1667
+            "version": "v3.2.122",
1668
             "source": {
1668
             "source": {
1669
                 "type": "git",
1669
                 "type": "git",
1670
                 "url": "https://github.com/filamentphp/actions.git",
1670
                 "url": "https://github.com/filamentphp/actions.git",
1671
-                "reference": "1c79f2ffefdee6a21995717a52f006a541b971bc"
1671
+                "reference": "3badf1a1589bf70fdc625130f6dfc1ca2146a32f"
1672
             },
1672
             },
1673
             "dist": {
1673
             "dist": {
1674
                 "type": "zip",
1674
                 "type": "zip",
1675
-                "url": "https://api.github.com/repos/filamentphp/actions/zipball/1c79f2ffefdee6a21995717a52f006a541b971bc",
1676
-                "reference": "1c79f2ffefdee6a21995717a52f006a541b971bc",
1675
+                "url": "https://api.github.com/repos/filamentphp/actions/zipball/3badf1a1589bf70fdc625130f6dfc1ca2146a32f",
1676
+                "reference": "3badf1a1589bf70fdc625130f6dfc1ca2146a32f",
1677
                 "shasum": ""
1677
                 "shasum": ""
1678
             },
1678
             },
1679
             "require": {
1679
             "require": {
1713
                 "issues": "https://github.com/filamentphp/filament/issues",
1713
                 "issues": "https://github.com/filamentphp/filament/issues",
1714
                 "source": "https://github.com/filamentphp/filament"
1714
                 "source": "https://github.com/filamentphp/filament"
1715
             },
1715
             },
1716
-            "time": "2024-10-24T13:46:52+00:00"
1716
+            "time": "2024-10-31T13:38:12+00:00"
1717
         },
1717
         },
1718
         {
1718
         {
1719
             "name": "filament/filament",
1719
             "name": "filament/filament",
1720
-            "version": "v3.2.121",
1720
+            "version": "v3.2.122",
1721
             "source": {
1721
             "source": {
1722
                 "type": "git",
1722
                 "type": "git",
1723
                 "url": "https://github.com/filamentphp/panels.git",
1723
                 "url": "https://github.com/filamentphp/panels.git",
1724
-                "reference": "5e9a946d0b64c1ef9a7ef1cb256a427f2838dbc2"
1724
+                "reference": "076f5367a3dfe5f6864d117f6826ca7821586931"
1725
             },
1725
             },
1726
             "dist": {
1726
             "dist": {
1727
                 "type": "zip",
1727
                 "type": "zip",
1728
-                "url": "https://api.github.com/repos/filamentphp/panels/zipball/5e9a946d0b64c1ef9a7ef1cb256a427f2838dbc2",
1729
-                "reference": "5e9a946d0b64c1ef9a7ef1cb256a427f2838dbc2",
1728
+                "url": "https://api.github.com/repos/filamentphp/panels/zipball/076f5367a3dfe5f6864d117f6826ca7821586931",
1729
+                "reference": "076f5367a3dfe5f6864d117f6826ca7821586931",
1730
                 "shasum": ""
1730
                 "shasum": ""
1731
             },
1731
             },
1732
             "require": {
1732
             "require": {
1778
                 "issues": "https://github.com/filamentphp/filament/issues",
1778
                 "issues": "https://github.com/filamentphp/filament/issues",
1779
                 "source": "https://github.com/filamentphp/filament"
1779
                 "source": "https://github.com/filamentphp/filament"
1780
             },
1780
             },
1781
-            "time": "2024-10-24T13:47:13+00:00"
1781
+            "time": "2024-10-31T13:38:14+00:00"
1782
         },
1782
         },
1783
         {
1783
         {
1784
             "name": "filament/forms",
1784
             "name": "filament/forms",
1785
-            "version": "v3.2.121",
1785
+            "version": "v3.2.122",
1786
             "source": {
1786
             "source": {
1787
                 "type": "git",
1787
                 "type": "git",
1788
                 "url": "https://github.com/filamentphp/forms.git",
1788
                 "url": "https://github.com/filamentphp/forms.git",
1789
-                "reference": "68c9f7f4bd9677f6f99d21396dfbe69cfa142584"
1789
+                "reference": "c863b5765b871485a2c624c43a0eb6e957a04b54"
1790
             },
1790
             },
1791
             "dist": {
1791
             "dist": {
1792
                 "type": "zip",
1792
                 "type": "zip",
1793
-                "url": "https://api.github.com/repos/filamentphp/forms/zipball/68c9f7f4bd9677f6f99d21396dfbe69cfa142584",
1794
-                "reference": "68c9f7f4bd9677f6f99d21396dfbe69cfa142584",
1793
+                "url": "https://api.github.com/repos/filamentphp/forms/zipball/c863b5765b871485a2c624c43a0eb6e957a04b54",
1794
+                "reference": "c863b5765b871485a2c624c43a0eb6e957a04b54",
1795
                 "shasum": ""
1795
                 "shasum": ""
1796
             },
1796
             },
1797
             "require": {
1797
             "require": {
1834
                 "issues": "https://github.com/filamentphp/filament/issues",
1834
                 "issues": "https://github.com/filamentphp/filament/issues",
1835
                 "source": "https://github.com/filamentphp/filament"
1835
                 "source": "https://github.com/filamentphp/filament"
1836
             },
1836
             },
1837
-            "time": "2024-10-24T13:47:01+00:00"
1837
+            "time": "2024-10-31T13:38:16+00:00"
1838
         },
1838
         },
1839
         {
1839
         {
1840
             "name": "filament/infolists",
1840
             "name": "filament/infolists",
1841
-            "version": "v3.2.121",
1841
+            "version": "v3.2.122",
1842
             "source": {
1842
             "source": {
1843
                 "type": "git",
1843
                 "type": "git",
1844
                 "url": "https://github.com/filamentphp/infolists.git",
1844
                 "url": "https://github.com/filamentphp/infolists.git",
1889
         },
1889
         },
1890
         {
1890
         {
1891
             "name": "filament/notifications",
1891
             "name": "filament/notifications",
1892
-            "version": "v3.2.121",
1892
+            "version": "v3.2.122",
1893
             "source": {
1893
             "source": {
1894
                 "type": "git",
1894
                 "type": "git",
1895
                 "url": "https://github.com/filamentphp/notifications.git",
1895
                 "url": "https://github.com/filamentphp/notifications.git",
1941
         },
1941
         },
1942
         {
1942
         {
1943
             "name": "filament/support",
1943
             "name": "filament/support",
1944
-            "version": "v3.2.121",
1944
+            "version": "v3.2.122",
1945
             "source": {
1945
             "source": {
1946
                 "type": "git",
1946
                 "type": "git",
1947
                 "url": "https://github.com/filamentphp/support.git",
1947
                 "url": "https://github.com/filamentphp/support.git",
1948
-                "reference": "fa8ada5101be964daa8f112616945a8f2ca5929e"
1948
+                "reference": "e7174cee7e1d08205f7120d0dcc0d00d9bdd4d32"
1949
             },
1949
             },
1950
             "dist": {
1950
             "dist": {
1951
                 "type": "zip",
1951
                 "type": "zip",
1952
-                "url": "https://api.github.com/repos/filamentphp/support/zipball/fa8ada5101be964daa8f112616945a8f2ca5929e",
1953
-                "reference": "fa8ada5101be964daa8f112616945a8f2ca5929e",
1952
+                "url": "https://api.github.com/repos/filamentphp/support/zipball/e7174cee7e1d08205f7120d0dcc0d00d9bdd4d32",
1953
+                "reference": "e7174cee7e1d08205f7120d0dcc0d00d9bdd4d32",
1954
                 "shasum": ""
1954
                 "shasum": ""
1955
             },
1955
             },
1956
             "require": {
1956
             "require": {
1996
                 "issues": "https://github.com/filamentphp/filament/issues",
1996
                 "issues": "https://github.com/filamentphp/filament/issues",
1997
                 "source": "https://github.com/filamentphp/filament"
1997
                 "source": "https://github.com/filamentphp/filament"
1998
             },
1998
             },
1999
-            "time": "2024-10-24T13:47:33+00:00"
1999
+            "time": "2024-10-31T13:38:25+00:00"
2000
         },
2000
         },
2001
         {
2001
         {
2002
             "name": "filament/tables",
2002
             "name": "filament/tables",
2003
-            "version": "v3.2.121",
2003
+            "version": "v3.2.122",
2004
             "source": {
2004
             "source": {
2005
                 "type": "git",
2005
                 "type": "git",
2006
                 "url": "https://github.com/filamentphp/tables.git",
2006
                 "url": "https://github.com/filamentphp/tables.git",
2007
-                "reference": "7800832d8507a418787c5f05bd562b65d4601827"
2007
+                "reference": "56a852f7992a01ad8d7b85034cdbb2ae8a21086a"
2008
             },
2008
             },
2009
             "dist": {
2009
             "dist": {
2010
                 "type": "zip",
2010
                 "type": "zip",
2011
-                "url": "https://api.github.com/repos/filamentphp/tables/zipball/7800832d8507a418787c5f05bd562b65d4601827",
2012
-                "reference": "7800832d8507a418787c5f05bd562b65d4601827",
2011
+                "url": "https://api.github.com/repos/filamentphp/tables/zipball/56a852f7992a01ad8d7b85034cdbb2ae8a21086a",
2012
+                "reference": "56a852f7992a01ad8d7b85034cdbb2ae8a21086a",
2013
                 "shasum": ""
2013
                 "shasum": ""
2014
             },
2014
             },
2015
             "require": {
2015
             "require": {
2048
                 "issues": "https://github.com/filamentphp/filament/issues",
2048
                 "issues": "https://github.com/filamentphp/filament/issues",
2049
                 "source": "https://github.com/filamentphp/filament"
2049
                 "source": "https://github.com/filamentphp/filament"
2050
             },
2050
             },
2051
-            "time": "2024-10-24T13:47:33+00:00"
2051
+            "time": "2024-10-31T13:38:27+00:00"
2052
         },
2052
         },
2053
         {
2053
         {
2054
             "name": "filament/widgets",
2054
             "name": "filament/widgets",
2055
-            "version": "v3.2.121",
2055
+            "version": "v3.2.122",
2056
             "source": {
2056
             "source": {
2057
                 "type": "git",
2057
                 "type": "git",
2058
                 "url": "https://github.com/filamentphp/widgets.git",
2058
                 "url": "https://github.com/filamentphp/widgets.git",
2908
         },
2908
         },
2909
         {
2909
         {
2910
             "name": "laravel/framework",
2910
             "name": "laravel/framework",
2911
-            "version": "v11.29.0",
2911
+            "version": "v11.30.0",
2912
             "source": {
2912
             "source": {
2913
                 "type": "git",
2913
                 "type": "git",
2914
                 "url": "https://github.com/laravel/framework.git",
2914
                 "url": "https://github.com/laravel/framework.git",
2915
-                "reference": "425054512c362835ba9c0307561973c8eeac7385"
2915
+                "reference": "dff716442d9c229d716be82ccc9a7de52eb97193"
2916
             },
2916
             },
2917
             "dist": {
2917
             "dist": {
2918
                 "type": "zip",
2918
                 "type": "zip",
2919
-                "url": "https://api.github.com/repos/laravel/framework/zipball/425054512c362835ba9c0307561973c8eeac7385",
2920
-                "reference": "425054512c362835ba9c0307561973c8eeac7385",
2919
+                "url": "https://api.github.com/repos/laravel/framework/zipball/dff716442d9c229d716be82ccc9a7de52eb97193",
2920
+                "reference": "dff716442d9c229d716be82ccc9a7de52eb97193",
2921
                 "shasum": ""
2921
                 "shasum": ""
2922
             },
2922
             },
2923
             "require": {
2923
             "require": {
3113
                 "issues": "https://github.com/laravel/framework/issues",
3113
                 "issues": "https://github.com/laravel/framework/issues",
3114
                 "source": "https://github.com/laravel/framework"
3114
                 "source": "https://github.com/laravel/framework"
3115
             },
3115
             },
3116
-            "time": "2024-10-22T14:13:31+00:00"
3116
+            "time": "2024-10-30T15:00:34+00:00"
3117
         },
3117
         },
3118
         {
3118
         {
3119
             "name": "laravel/prompts",
3119
             "name": "laravel/prompts",
9622
         },
9622
         },
9623
         {
9623
         {
9624
             "name": "laravel/sail",
9624
             "name": "laravel/sail",
9625
-            "version": "v1.37.0",
9625
+            "version": "v1.37.1",
9626
             "source": {
9626
             "source": {
9627
                 "type": "git",
9627
                 "type": "git",
9628
                 "url": "https://github.com/laravel/sail.git",
9628
                 "url": "https://github.com/laravel/sail.git",
9629
-                "reference": "5d385f2e698f0f774cdead82aff5d989fb95309b"
9629
+                "reference": "7efa151ea0d16f48233d6a6cd69f81270acc6e93"
9630
             },
9630
             },
9631
             "dist": {
9631
             "dist": {
9632
                 "type": "zip",
9632
                 "type": "zip",
9633
-                "url": "https://api.github.com/repos/laravel/sail/zipball/5d385f2e698f0f774cdead82aff5d989fb95309b",
9634
-                "reference": "5d385f2e698f0f774cdead82aff5d989fb95309b",
9633
+                "url": "https://api.github.com/repos/laravel/sail/zipball/7efa151ea0d16f48233d6a6cd69f81270acc6e93",
9634
+                "reference": "7efa151ea0d16f48233d6a6cd69f81270acc6e93",
9635
                 "shasum": ""
9635
                 "shasum": ""
9636
             },
9636
             },
9637
             "require": {
9637
             "require": {
9681
                 "issues": "https://github.com/laravel/sail/issues",
9681
                 "issues": "https://github.com/laravel/sail/issues",
9682
                 "source": "https://github.com/laravel/sail"
9682
                 "source": "https://github.com/laravel/sail"
9683
             },
9683
             },
9684
-            "time": "2024-10-21T17:13:38+00:00"
9684
+            "time": "2024-10-29T20:18:14+00:00"
9685
         },
9685
         },
9686
         {
9686
         {
9687
             "name": "mockery/mockery",
9687
             "name": "mockery/mockery",
9925
         },
9925
         },
9926
         {
9926
         {
9927
             "name": "pestphp/pest",
9927
             "name": "pestphp/pest",
9928
-            "version": "v3.5.0",
9928
+            "version": "v3.5.1",
9929
             "source": {
9929
             "source": {
9930
                 "type": "git",
9930
                 "type": "git",
9931
                 "url": "https://github.com/pestphp/pest.git",
9931
                 "url": "https://github.com/pestphp/pest.git",
9932
-                "reference": "eaeb133c77f3f5382620f0307c3b45b34961bcfc"
9932
+                "reference": "179d46ce97d52bcb3f791449ae94025c3f32e3e3"
9933
             },
9933
             },
9934
             "dist": {
9934
             "dist": {
9935
                 "type": "zip",
9935
                 "type": "zip",
9936
-                "url": "https://api.github.com/repos/pestphp/pest/zipball/eaeb133c77f3f5382620f0307c3b45b34961bcfc",
9937
-                "reference": "eaeb133c77f3f5382620f0307c3b45b34961bcfc",
9936
+                "url": "https://api.github.com/repos/pestphp/pest/zipball/179d46ce97d52bcb3f791449ae94025c3f32e3e3",
9937
+                "reference": "179d46ce97d52bcb3f791449ae94025c3f32e3e3",
9938
                 "shasum": ""
9938
                 "shasum": ""
9939
             },
9939
             },
9940
             "require": {
9940
             "require": {
9945
                 "pestphp/pest-plugin-arch": "^3.0.0",
9945
                 "pestphp/pest-plugin-arch": "^3.0.0",
9946
                 "pestphp/pest-plugin-mutate": "^3.0.5",
9946
                 "pestphp/pest-plugin-mutate": "^3.0.5",
9947
                 "php": "^8.2.0",
9947
                 "php": "^8.2.0",
9948
-                "phpunit/phpunit": "^11.4.2"
9948
+                "phpunit/phpunit": "^11.4.3"
9949
             },
9949
             },
9950
             "conflict": {
9950
             "conflict": {
9951
                 "filp/whoops": "<2.16.0",
9951
                 "filp/whoops": "<2.16.0",
9952
-                "phpunit/phpunit": ">11.4.2",
9952
+                "phpunit/phpunit": ">11.4.3",
9953
                 "sebastian/exporter": "<6.0.0",
9953
                 "sebastian/exporter": "<6.0.0",
9954
                 "webmozart/assert": "<1.11.0"
9954
                 "webmozart/assert": "<1.11.0"
9955
             },
9955
             },
9956
             "require-dev": {
9956
             "require-dev": {
9957
                 "pestphp/pest-dev-tools": "^3.3.0",
9957
                 "pestphp/pest-dev-tools": "^3.3.0",
9958
                 "pestphp/pest-plugin-type-coverage": "^3.1.0",
9958
                 "pestphp/pest-plugin-type-coverage": "^3.1.0",
9959
-                "symfony/process": "^7.1.5"
9959
+                "symfony/process": "^7.1.6"
9960
             },
9960
             },
9961
             "bin": [
9961
             "bin": [
9962
                 "bin/pest"
9962
                 "bin/pest"
10021
             ],
10021
             ],
10022
             "support": {
10022
             "support": {
10023
                 "issues": "https://github.com/pestphp/pest/issues",
10023
                 "issues": "https://github.com/pestphp/pest/issues",
10024
-                "source": "https://github.com/pestphp/pest/tree/v3.5.0"
10024
+                "source": "https://github.com/pestphp/pest/tree/v3.5.1"
10025
             },
10025
             },
10026
             "funding": [
10026
             "funding": [
10027
                 {
10027
                 {
10033
                     "type": "github"
10033
                     "type": "github"
10034
                 }
10034
                 }
10035
             ],
10035
             ],
10036
-            "time": "2024-10-22T14:33:27+00:00"
10036
+            "time": "2024-10-31T16:12:45+00:00"
10037
         },
10037
         },
10038
         {
10038
         {
10039
             "name": "pestphp/pest-plugin",
10039
             "name": "pestphp/pest-plugin",
11164
         },
11164
         },
11165
         {
11165
         {
11166
             "name": "phpunit/phpunit",
11166
             "name": "phpunit/phpunit",
11167
-            "version": "11.4.2",
11167
+            "version": "11.4.3",
11168
             "source": {
11168
             "source": {
11169
                 "type": "git",
11169
                 "type": "git",
11170
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
11170
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
11171
-                "reference": "1863643c3f04ad03dcb9c6996c294784cdda4805"
11171
+                "reference": "e8e8ed1854de5d36c088ec1833beae40d2dedd76"
11172
             },
11172
             },
11173
             "dist": {
11173
             "dist": {
11174
                 "type": "zip",
11174
                 "type": "zip",
11175
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1863643c3f04ad03dcb9c6996c294784cdda4805",
11176
-                "reference": "1863643c3f04ad03dcb9c6996c294784cdda4805",
11175
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e8e8ed1854de5d36c088ec1833beae40d2dedd76",
11176
+                "reference": "e8e8ed1854de5d36c088ec1833beae40d2dedd76",
11177
                 "shasum": ""
11177
                 "shasum": ""
11178
             },
11178
             },
11179
             "require": {
11179
             "require": {
11244
             "support": {
11244
             "support": {
11245
                 "issues": "https://github.com/sebastianbergmann/phpunit/issues",
11245
                 "issues": "https://github.com/sebastianbergmann/phpunit/issues",
11246
                 "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
11246
                 "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
11247
-                "source": "https://github.com/sebastianbergmann/phpunit/tree/11.4.2"
11247
+                "source": "https://github.com/sebastianbergmann/phpunit/tree/11.4.3"
11248
             },
11248
             },
11249
             "funding": [
11249
             "funding": [
11250
                 {
11250
                 {
11260
                     "type": "tidelift"
11260
                     "type": "tidelift"
11261
                 }
11261
                 }
11262
             ],
11262
             ],
11263
-            "time": "2024-10-19T13:05:19+00:00"
11263
+            "time": "2024-10-28T13:07:50+00:00"
11264
         },
11264
         },
11265
         {
11265
         {
11266
             "name": "rector/rector",
11266
             "name": "rector/rector",
11493
         },
11493
         },
11494
         {
11494
         {
11495
             "name": "sebastian/comparator",
11495
             "name": "sebastian/comparator",
11496
-            "version": "6.1.1",
11496
+            "version": "6.2.1",
11497
             "source": {
11497
             "source": {
11498
                 "type": "git",
11498
                 "type": "git",
11499
                 "url": "https://github.com/sebastianbergmann/comparator.git",
11499
                 "url": "https://github.com/sebastianbergmann/comparator.git",
11500
-                "reference": "5ef523a49ae7a302b87b2102b72b1eda8918d686"
11500
+                "reference": "43d129d6a0f81c78bee378b46688293eb7ea3739"
11501
             },
11501
             },
11502
             "dist": {
11502
             "dist": {
11503
                 "type": "zip",
11503
                 "type": "zip",
11504
-                "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5ef523a49ae7a302b87b2102b72b1eda8918d686",
11505
-                "reference": "5ef523a49ae7a302b87b2102b72b1eda8918d686",
11504
+                "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/43d129d6a0f81c78bee378b46688293eb7ea3739",
11505
+                "reference": "43d129d6a0f81c78bee378b46688293eb7ea3739",
11506
                 "shasum": ""
11506
                 "shasum": ""
11507
             },
11507
             },
11508
             "require": {
11508
             "require": {
11513
                 "sebastian/exporter": "^6.0"
11513
                 "sebastian/exporter": "^6.0"
11514
             },
11514
             },
11515
             "require-dev": {
11515
             "require-dev": {
11516
-                "phpunit/phpunit": "^11.3"
11516
+                "phpunit/phpunit": "^11.4"
11517
             },
11517
             },
11518
             "type": "library",
11518
             "type": "library",
11519
             "extra": {
11519
             "extra": {
11520
                 "branch-alias": {
11520
                 "branch-alias": {
11521
-                    "dev-main": "6.1-dev"
11521
+                    "dev-main": "6.2-dev"
11522
                 }
11522
                 }
11523
             },
11523
             },
11524
             "autoload": {
11524
             "autoload": {
11558
             "support": {
11558
             "support": {
11559
                 "issues": "https://github.com/sebastianbergmann/comparator/issues",
11559
                 "issues": "https://github.com/sebastianbergmann/comparator/issues",
11560
                 "security": "https://github.com/sebastianbergmann/comparator/security/policy",
11560
                 "security": "https://github.com/sebastianbergmann/comparator/security/policy",
11561
-                "source": "https://github.com/sebastianbergmann/comparator/tree/6.1.1"
11561
+                "source": "https://github.com/sebastianbergmann/comparator/tree/6.2.1"
11562
             },
11562
             },
11563
             "funding": [
11563
             "funding": [
11564
                 {
11564
                 {
11566
                     "type": "github"
11566
                     "type": "github"
11567
                 }
11567
                 }
11568
             ],
11568
             ],
11569
-            "time": "2024-10-18T15:00:48+00:00"
11569
+            "time": "2024-10-31T05:30:08+00:00"
11570
         },
11570
         },
11571
         {
11571
         {
11572
             "name": "sebastian/complexity",
11572
             "name": "sebastian/complexity",

+ 44
- 0
config/chart-of-accounts.php 查看文件

8
                 'multi_currency' => true,
8
                 'multi_currency' => true,
9
                 'base_code' => '1000',
9
                 'base_code' => '1000',
10
                 'bank_account_type' => 'depository',
10
                 'bank_account_type' => 'depository',
11
+                'inverse_cash_flow' => false,
11
                 'accounts' => [
12
                 'accounts' => [
12
                     'Cash on Hand' => [
13
                     'Cash on Hand' => [
13
                         'description' => 'The amount of money held by the company in the form of cash.',
14
                         'description' => 'The amount of money held by the company in the form of cash.',
18
                 'description' => 'Amounts owed to the company for goods sold or services rendered, including accounts receivable, notes receivable, and other receivables.',
19
                 'description' => 'Amounts owed to the company for goods sold or services rendered, including accounts receivable, notes receivable, and other receivables.',
19
                 'multi_currency' => false,
20
                 'multi_currency' => false,
20
                 'base_code' => '1100',
21
                 'base_code' => '1100',
22
+                'inverse_cash_flow' => true,
21
                 'accounts' => [
23
                 'accounts' => [
22
                     'Accounts Receivable' => [
24
                     'Accounts Receivable' => [
23
                         'description' => 'The amount of money owed to the company by customers who have not yet paid for goods or services received.',
25
                         'description' => 'The amount of money owed to the company by customers who have not yet paid for goods or services received.',
28
                 'description' => 'The raw materials, work-in-progress goods and completely finished goods that are considered to be the portion of a business\'s assets that are ready or will be ready for sale.',
30
                 'description' => 'The raw materials, work-in-progress goods and completely finished goods that are considered to be the portion of a business\'s assets that are ready or will be ready for sale.',
29
                 'multi_currency' => true,
31
                 'multi_currency' => true,
30
                 'base_code' => '1200',
32
                 'base_code' => '1200',
33
+                'inverse_cash_flow' => true,
31
             ],
34
             ],
32
             'Prepaid and Deferred Charges' => [
35
             'Prepaid and Deferred Charges' => [
33
                 'description' => 'Payments made in advance for future goods or services, such as insurance premiums, rent, and prepaid taxes.',
36
                 'description' => 'Payments made in advance for future goods or services, such as insurance premiums, rent, and prepaid taxes.',
34
                 'multi_currency' => true,
37
                 'multi_currency' => true,
35
                 'base_code' => '1300',
38
                 'base_code' => '1300',
39
+                'inverse_cash_flow' => true,
36
             ],
40
             ],
37
             'Other Current Assets' => [
41
             'Other Current Assets' => [
38
                 'description' => 'Other assets that are expected to be converted to cash, sold, or consumed within one year or the business\'s operating cycle.',
42
                 'description' => 'Other assets that are expected to be converted to cash, sold, or consumed within one year or the business\'s operating cycle.',
39
                 'multi_currency' => true,
43
                 'multi_currency' => true,
40
                 'base_code' => '1400',
44
                 'base_code' => '1400',
45
+                'inverse_cash_flow' => true,
41
             ],
46
             ],
42
         ],
47
         ],
43
         'non_current_asset' => [
48
         'non_current_asset' => [
45
                 'description' => 'Investments in securities like bonds and stocks, investments in other companies, or real estate held for more than one year, aiming for long-term benefits.',
50
                 'description' => 'Investments in securities like bonds and stocks, investments in other companies, or real estate held for more than one year, aiming for long-term benefits.',
46
                 'multi_currency' => true,
51
                 'multi_currency' => true,
47
                 'base_code' => '1500',
52
                 'base_code' => '1500',
53
+                'inverse_cash_flow' => true,
48
             ],
54
             ],
49
             'Fixed Assets' => [
55
             'Fixed Assets' => [
50
                 'description' => 'Physical, tangible assets used in the business\'s operations with a useful life exceeding one year, such as buildings, machinery, and vehicles. These assets are subject to depreciation.',
56
                 'description' => 'Physical, tangible assets used in the business\'s operations with a useful life exceeding one year, such as buildings, machinery, and vehicles. These assets are subject to depreciation.',
51
                 'multi_currency' => true,
57
                 'multi_currency' => true,
52
                 'base_code' => '1600',
58
                 'base_code' => '1600',
59
+                'inverse_cash_flow' => true,
53
             ],
60
             ],
54
             'Intangible Assets' => [
61
             'Intangible Assets' => [
55
                 'description' => 'Assets lacking physical substance but offering value to the business, like patents, copyrights, trademarks, software, and goodwill.',
62
                 'description' => 'Assets lacking physical substance but offering value to the business, like patents, copyrights, trademarks, software, and goodwill.',
56
                 'multi_currency' => true,
63
                 'multi_currency' => true,
57
                 'base_code' => '1700',
64
                 'base_code' => '1700',
65
+                'inverse_cash_flow' => true,
58
             ],
66
             ],
59
             'Other Non-Current Assets' => [
67
             'Other Non-Current Assets' => [
60
                 'description' => 'Includes long-term assets not classified in the above categories, such as long-term prepaid expenses, deferred tax assets, and loans made to other entities that are not expected to be settled within the next year.',
68
                 'description' => 'Includes long-term assets not classified in the above categories, such as long-term prepaid expenses, deferred tax assets, and loans made to other entities that are not expected to be settled within the next year.',
61
                 'multi_currency' => true,
69
                 'multi_currency' => true,
62
                 'base_code' => '1800',
70
                 'base_code' => '1800',
71
+                'inverse_cash_flow' => true,
63
             ],
72
             ],
64
         ],
73
         ],
65
         'contra_asset' => [
74
         'contra_asset' => [
67
                 'description' => 'Accounts that accumulate depreciation of tangible assets and amortization of intangible assets, reflecting the reduction in value over time.',
76
                 'description' => 'Accounts that accumulate depreciation of tangible assets and amortization of intangible assets, reflecting the reduction in value over time.',
68
                 'multi_currency' => false,
77
                 'multi_currency' => false,
69
                 'base_code' => '1900',
78
                 'base_code' => '1900',
79
+                'inverse_cash_flow' => false,
70
                 'accounts' => [
80
                 'accounts' => [
71
                     'Accumulated Depreciation' => [
81
                     'Accumulated Depreciation' => [
72
                         'description' => 'Used to account for the depreciation of fixed assets over time, offsetting assets like equipment or property.',
82
                         'description' => 'Used to account for the depreciation of fixed assets over time, offsetting assets like equipment or property.',
77
                 'description' => 'Accounts representing estimated uncollected receivables, used to adjust the value of gross receivables to a realistic collectible amount.',
87
                 'description' => 'Accounts representing estimated uncollected receivables, used to adjust the value of gross receivables to a realistic collectible amount.',
78
                 'multi_currency' => false,
88
                 'multi_currency' => false,
79
                 'base_code' => '1940',
89
                 'base_code' => '1940',
90
+                'inverse_cash_flow' => false,
80
                 'accounts' => [
91
                 'accounts' => [
81
                     'Allowance for Doubtful Accounts' => [
92
                     'Allowance for Doubtful Accounts' => [
82
                         'description' => 'Used to account for potential bad debts that may not be collectable, offsetting receivables.',
93
                         'description' => 'Used to account for potential bad debts that may not be collectable, offsetting receivables.',
87
                 'description' => 'Accounts used to record adjustments in asset values due to impairments, market changes, or other factors affecting their recoverable amount.',
98
                 'description' => 'Accounts used to record adjustments in asset values due to impairments, market changes, or other factors affecting their recoverable amount.',
88
                 'multi_currency' => false,
99
                 'multi_currency' => false,
89
                 'base_code' => '1950',
100
                 'base_code' => '1950',
101
+                'inverse_cash_flow' => false,
90
             ],
102
             ],
91
         ],
103
         ],
92
         'current_liability' => [
104
         'current_liability' => [
94
                 'description' => 'Liabilities arising from purchases of goods or services from suppliers, not yet paid for. This can include individual accounts payable and trade credits.',
106
                 'description' => 'Liabilities arising from purchases of goods or services from suppliers, not yet paid for. This can include individual accounts payable and trade credits.',
95
                 'multi_currency' => true,
107
                 'multi_currency' => true,
96
                 'base_code' => '2000',
108
                 'base_code' => '2000',
109
+                'inverse_cash_flow' => false,
97
                 'accounts' => [
110
                 'accounts' => [
98
                     'Accounts Payable' => [
111
                     'Accounts Payable' => [
99
                         'description' => 'The amount of money owed by the company to suppliers for goods or services received.',
112
                         'description' => 'The amount of money owed by the company to suppliers for goods or services received.',
104
                 'description' => 'Expenses that have been incurred but not yet paid, including wages, utilities, interest, and taxes. This category can house various accrued expense accounts.',
117
                 'description' => 'Expenses that have been incurred but not yet paid, including wages, utilities, interest, and taxes. This category can house various accrued expense accounts.',
105
                 'multi_currency' => false,
118
                 'multi_currency' => false,
106
                 'base_code' => '2100',
119
                 'base_code' => '2100',
120
+                'inverse_cash_flow' => false,
107
                 'accounts' => [
121
                 'accounts' => [
108
                     'Sales Tax Payable' => [
122
                     'Sales Tax Payable' => [
109
                         'description' => 'The amount of money owed to the government for sales tax collected from customers.',
123
                         'description' => 'The amount of money owed to the government for sales tax collected from customers.',
114
                 'description' => 'Debt obligations due within the next year, such as bank loans, lines of credit, and short-term notes. This category can cover multiple short-term debt accounts.',
128
                 'description' => 'Debt obligations due within the next year, such as bank loans, lines of credit, and short-term notes. This category can cover multiple short-term debt accounts.',
115
                 'multi_currency' => true,
129
                 'multi_currency' => true,
116
                 'base_code' => '2200',
130
                 'base_code' => '2200',
131
+                'inverse_cash_flow' => false,
117
             ],
132
             ],
118
             'Customer Deposits and Advances' => [
133
             'Customer Deposits and Advances' => [
119
                 'description' => 'Funds received in advance for goods or services to be provided in the future, including customer deposits and prepayments.',
134
                 'description' => 'Funds received in advance for goods or services to be provided in the future, including customer deposits and prepayments.',
120
                 'multi_currency' => true,
135
                 'multi_currency' => true,
121
                 'base_code' => '2300',
136
                 'base_code' => '2300',
137
+                'inverse_cash_flow' => false,
122
             ],
138
             ],
123
             'Other Current Liabilities' => [
139
             'Other Current Liabilities' => [
124
                 'description' => 'A grouping for miscellaneous short-term liabilities not covered in other categories, like the current portion of long-term debts, short-term provisions, and other similar obligations.',
140
                 'description' => 'A grouping for miscellaneous short-term liabilities not covered in other categories, like the current portion of long-term debts, short-term provisions, and other similar obligations.',
125
                 'multi_currency' => true,
141
                 'multi_currency' => true,
126
                 'base_code' => '2400',
142
                 'base_code' => '2400',
143
+                'inverse_cash_flow' => false,
127
             ],
144
             ],
128
         ],
145
         ],
129
         'non_current_liability' => [
146
         'non_current_liability' => [
131
                 'description' => 'Obligations such as bonds, mortgages, and loans with a maturity of more than one year, covering various types of long-term debt instruments.',
148
                 'description' => 'Obligations such as bonds, mortgages, and loans with a maturity of more than one year, covering various types of long-term debt instruments.',
132
                 'multi_currency' => true,
149
                 'multi_currency' => true,
133
                 'base_code' => '2500',
150
                 'base_code' => '2500',
151
+                'inverse_cash_flow' => false,
134
             ],
152
             ],
135
             'Deferred Tax Liabilities' => [
153
             'Deferred Tax Liabilities' => [
136
                 'description' => 'Taxes incurred in the current period but payable in a future period, typically due to differences in accounting methods between tax reporting and financial reporting.',
154
                 'description' => 'Taxes incurred in the current period but payable in a future period, typically due to differences in accounting methods between tax reporting and financial reporting.',
137
                 'multi_currency' => false,
155
                 'multi_currency' => false,
138
                 'base_code' => '2600',
156
                 'base_code' => '2600',
157
+                'inverse_cash_flow' => false,
139
             ],
158
             ],
140
             'Other Long-Term Liabilities' => [
159
             'Other Long-Term Liabilities' => [
141
                 'description' => 'Liabilities not due within the next year and not classified as long-term debt or deferred taxes, including pension liabilities, lease obligations, and long-term provisions.',
160
                 'description' => 'Liabilities not due within the next year and not classified as long-term debt or deferred taxes, including pension liabilities, lease obligations, and long-term provisions.',
142
                 'multi_currency' => true,
161
                 'multi_currency' => true,
143
                 'base_code' => '2700',
162
                 'base_code' => '2700',
163
+                'inverse_cash_flow' => false,
144
             ],
164
             ],
145
         ],
165
         ],
146
         'contra_liability' => [
166
         'contra_liability' => [
148
                 'description' => 'Accumulated amount representing the reduction of bond or loan liabilities, reflecting the difference between the face value and the discounted issuance price over time.',
168
                 'description' => 'Accumulated amount representing the reduction of bond or loan liabilities, reflecting the difference between the face value and the discounted issuance price over time.',
149
                 'multi_currency' => false,
169
                 'multi_currency' => false,
150
                 'base_code' => '2900',
170
                 'base_code' => '2900',
171
+                'inverse_cash_flow' => false,
151
             ],
172
             ],
152
             'Valuation Adjustments for Liabilities' => [
173
             'Valuation Adjustments for Liabilities' => [
153
                 'description' => 'Adjustments made to the recorded value of liabilities, such as changes in fair value of derivative liabilities or adjustments for hedging activities.',
174
                 'description' => 'Adjustments made to the recorded value of liabilities, such as changes in fair value of derivative liabilities or adjustments for hedging activities.',
154
                 'multi_currency' => false,
175
                 'multi_currency' => false,
155
                 'base_code' => '2950',
176
                 'base_code' => '2950',
177
+                'inverse_cash_flow' => false,
156
             ],
178
             ],
157
         ],
179
         ],
158
         'equity' => [
180
         'equity' => [
160
                 'description' => 'Funds provided by owners or shareholders for starting the business and subsequent capital injections. Reflects the financial commitment of the owner(s) or shareholders to the business.',
182
                 'description' => 'Funds provided by owners or shareholders for starting the business and subsequent capital injections. Reflects the financial commitment of the owner(s) or shareholders to the business.',
161
                 'multi_currency' => true,
183
                 'multi_currency' => true,
162
                 'base_code' => '3000',
184
                 'base_code' => '3000',
185
+                'inverse_cash_flow' => false,
163
                 'accounts' => [
186
                 'accounts' => [
164
                     'Owner\'s Investment' => [
187
                     'Owner\'s Investment' => [
165
                         'description' => 'The amount of money invested by the owner(s) or shareholders to start or expand the business.',
188
                         'description' => 'The amount of money invested by the owner(s) or shareholders to start or expand the business.',
172
                 'description' => 'Equity that is deducted from gross equity to arrive at net equity. This includes treasury stock, which is stock that has been repurchased by the company.',
195
                 'description' => 'Equity that is deducted from gross equity to arrive at net equity. This includes treasury stock, which is stock that has been repurchased by the company.',
173
                 'multi_currency' => false,
196
                 'multi_currency' => false,
174
                 'base_code' => '3900',
197
                 'base_code' => '3900',
198
+                'inverse_cash_flow' => true,
175
                 'accounts' => [
199
                 'accounts' => [
176
                     'Owner\'s Drawings' => [
200
                     'Owner\'s Drawings' => [
177
                         'description' => 'The amount of money withdrawn by the owner(s) or shareholders from the business for personal use, reducing equity.',
201
                         'description' => 'The amount of money withdrawn by the owner(s) or shareholders from the business for personal use, reducing equity.',
184
                 'description' => 'Income from selling physical or digital products. Includes revenue from all product lines or categories.',
208
                 'description' => 'Income from selling physical or digital products. Includes revenue from all product lines or categories.',
185
                 'multi_currency' => false,
209
                 'multi_currency' => false,
186
                 'base_code' => '4000',
210
                 'base_code' => '4000',
211
+                'inverse_cash_flow' => false,
187
                 'accounts' => [
212
                 'accounts' => [
188
                     'Product Sales' => [
213
                     'Product Sales' => [
189
                         'description' => 'The amount of money earned from selling physical or digital products.',
214
                         'description' => 'The amount of money earned from selling physical or digital products.',
194
                 'description' => 'Income earned from providing services, encompassing activities like consulting, maintenance, and repair services.',
219
                 'description' => 'Income earned from providing services, encompassing activities like consulting, maintenance, and repair services.',
195
                 'multi_currency' => false,
220
                 'multi_currency' => false,
196
                 'base_code' => '4100',
221
                 'base_code' => '4100',
222
+                'inverse_cash_flow' => false,
197
             ],
223
             ],
198
             'Other Operating Revenue' => [
224
             'Other Operating Revenue' => [
199
                 'description' => 'Income from other business operations not classified as product sales or services, such as rental income, royalties, or income from licensing agreements.',
225
                 'description' => 'Income from other business operations not classified as product sales or services, such as rental income, royalties, or income from licensing agreements.',
200
                 'multi_currency' => false,
226
                 'multi_currency' => false,
201
                 'base_code' => '4200',
227
                 'base_code' => '4200',
228
+                'inverse_cash_flow' => false,
202
             ],
229
             ],
203
         ],
230
         ],
204
         'non_operating_revenue' => [
231
         'non_operating_revenue' => [
206
                 'description' => 'Earnings from investments, including dividends, interest from securities, and profits from real estate investments.',
233
                 'description' => 'Earnings from investments, including dividends, interest from securities, and profits from real estate investments.',
207
                 'multi_currency' => false,
234
                 'multi_currency' => false,
208
                 'base_code' => '4500',
235
                 'base_code' => '4500',
236
+                'inverse_cash_flow' => false,
209
                 'accounts' => [
237
                 'accounts' => [
210
                     'Dividends' => [
238
                     'Dividends' => [
211
                         'description' => 'The amount of money received from investments in shares of other companies.',
239
                         'description' => 'The amount of money received from investments in shares of other companies.',
219
                 'description' => 'Profits from selling assets like property, equipment, or investments, excluding regular sales of inventory.',
247
                 'description' => 'Profits from selling assets like property, equipment, or investments, excluding regular sales of inventory.',
220
                 'multi_currency' => false,
248
                 'multi_currency' => false,
221
                 'base_code' => '4600',
249
                 'base_code' => '4600',
250
+                'inverse_cash_flow' => false,
222
             ],
251
             ],
223
             'Other Non-Operating Revenue' => [
252
             'Other Non-Operating Revenue' => [
224
                 'description' => 'Income from sources not related to the main business activities, such as legal settlements, insurance recoveries, or gains from foreign exchange transactions.',
253
                 'description' => 'Income from sources not related to the main business activities, such as legal settlements, insurance recoveries, or gains from foreign exchange transactions.',
225
                 'multi_currency' => false,
254
                 'multi_currency' => false,
226
                 'base_code' => '4700',
255
                 'base_code' => '4700',
256
+                'inverse_cash_flow' => false,
227
                 'accounts' => [
257
                 'accounts' => [
228
                     'Gain on Foreign Exchange' => [
258
                     'Gain on Foreign Exchange' => [
229
                         'description' => 'The amount of money earned from foreign exchange transactions due to favorable exchange rate changes.',
259
                         'description' => 'The amount of money earned from foreign exchange transactions due to favorable exchange rate changes.',
236
                 'description' => 'Revenue that is deducted from gross revenue to arrive at net revenue. This includes sales discounts, returns, and allowances.',
266
                 'description' => 'Revenue that is deducted from gross revenue to arrive at net revenue. This includes sales discounts, returns, and allowances.',
237
                 'multi_currency' => false,
267
                 'multi_currency' => false,
238
                 'base_code' => '4900',
268
                 'base_code' => '4900',
269
+                'inverse_cash_flow' => true,
239
                 'accounts' => [
270
                 'accounts' => [
240
                     'Sales Returns and Allowances' => [
271
                     'Sales Returns and Allowances' => [
241
                         'description' => 'The amount of money returned to customers or deducted from sales due to returned goods or allowances granted.',
272
                         'description' => 'The amount of money returned to customers or deducted from sales due to returned goods or allowances granted.',
251
                 'description' => 'Revenue that has not been categorized into other revenue categories.',
282
                 'description' => 'Revenue that has not been categorized into other revenue categories.',
252
                 'multi_currency' => false,
283
                 'multi_currency' => false,
253
                 'base_code' => '4950',
284
                 'base_code' => '4950',
285
+                'inverse_cash_flow' => false,
254
                 'accounts' => [
286
                 'accounts' => [
255
                     'Uncategorized Income' => [
287
                     'Uncategorized Income' => [
256
                         'description' => 'Revenue from other business operations that don\'t fall under regular sales or services. This account is used as the default for all new transactions.',
288
                         'description' => 'Revenue from other business operations that don\'t fall under regular sales or services. This account is used as the default for all new transactions.',
263
                 'description' => 'Direct costs attributable to the production of goods sold by a company. This includes material costs and direct labor.',
295
                 'description' => 'Direct costs attributable to the production of goods sold by a company. This includes material costs and direct labor.',
264
                 'multi_currency' => false,
296
                 'multi_currency' => false,
265
                 'base_code' => '5000',
297
                 'base_code' => '5000',
298
+                'inverse_cash_flow' => true,
266
             ],
299
             ],
267
             'Payroll and Employee Benefits' => [
300
             'Payroll and Employee Benefits' => [
268
                 'description' => 'Expenses related to employee compensation, including salaries, wages, bonuses, commissions, and payroll taxes.',
301
                 'description' => 'Expenses related to employee compensation, including salaries, wages, bonuses, commissions, and payroll taxes.',
269
                 'multi_currency' => false,
302
                 'multi_currency' => false,
270
                 'base_code' => '5050',
303
                 'base_code' => '5050',
304
+                'inverse_cash_flow' => true,
271
                 'accounts' => [
305
                 'accounts' => [
272
                     'Salaries and Wages' => [
306
                     'Salaries and Wages' => [
273
                         'description' => 'The amount of money paid to employees for their work, including regular salaries and hourly wages.',
307
                         'description' => 'The amount of money paid to employees for their work, including regular salaries and hourly wages.',
287
                 'description' => 'Costs incurred for business premises, including rent or lease payments, property taxes, utilities, and building maintenance.',
321
                 'description' => 'Costs incurred for business premises, including rent or lease payments, property taxes, utilities, and building maintenance.',
288
                 'multi_currency' => false,
322
                 'multi_currency' => false,
289
                 'base_code' => '5100',
323
                 'base_code' => '5100',
324
+                'inverse_cash_flow' => true,
290
                 'accounts' => [
325
                 'accounts' => [
291
                     'Rent or Lease Payments' => [
326
                     'Rent or Lease Payments' => [
292
                         'description' => 'The amount of money paid for renting or leasing business premises.',
327
                         'description' => 'The amount of money paid for renting or leasing business premises.',
309
                 'description' => 'Expenses related to general business operations, such as office supplies, insurance, and professional fees.',
344
                 'description' => 'Expenses related to general business operations, such as office supplies, insurance, and professional fees.',
310
                 'multi_currency' => false,
345
                 'multi_currency' => false,
311
                 'base_code' => '5150',
346
                 'base_code' => '5150',
347
+                'inverse_cash_flow' => true,
312
                 'accounts' => [
348
                 'accounts' => [
313
                     'Food and Drink' => [
349
                     'Food and Drink' => [
314
                         'description' => 'The amount of money spent on food and drink for business purposes, such as office snacks, meals, and catering.',
350
                         'description' => 'The amount of money spent on food and drink for business purposes, such as office snacks, meals, and catering.',
340
                 'description' => 'Expenses related to marketing and advertising activities, such as advertising campaigns, promotional events, and marketing materials.',
376
                 'description' => 'Expenses related to marketing and advertising activities, such as advertising campaigns, promotional events, and marketing materials.',
341
                 'multi_currency' => false,
377
                 'multi_currency' => false,
342
                 'base_code' => '5200',
378
                 'base_code' => '5200',
379
+                'inverse_cash_flow' => true,
343
                 'accounts' => [
380
                 'accounts' => [
344
                     'Advertising' => [
381
                     'Advertising' => [
345
                         'description' => 'The amount of money spent on advertising campaigns, including print, digital, and outdoor advertising.',
382
                         'description' => 'The amount of money spent on advertising campaigns, including print, digital, and outdoor advertising.',
353
                 'description' => 'Expenses incurred in the process of researching and developing new products or services.',
390
                 'description' => 'Expenses incurred in the process of researching and developing new products or services.',
354
                 'multi_currency' => false,
391
                 'multi_currency' => false,
355
                 'base_code' => '5250',
392
                 'base_code' => '5250',
393
+                'inverse_cash_flow' => true,
356
             ],
394
             ],
357
             'Other Operating Expenses' => [
395
             'Other Operating Expenses' => [
358
                 'description' => 'Miscellaneous expenses not categorized elsewhere, such as research and development costs, legal fees, and other irregular expenses.',
396
                 'description' => 'Miscellaneous expenses not categorized elsewhere, such as research and development costs, legal fees, and other irregular expenses.',
359
                 'multi_currency' => false,
397
                 'multi_currency' => false,
360
                 'base_code' => '5300',
398
                 'base_code' => '5300',
399
+                'inverse_cash_flow' => true,
361
             ],
400
             ],
362
         ],
401
         ],
363
         'non_operating_expense' => [
402
         'non_operating_expense' => [
365
                 'description' => 'Expenses related to borrowing and financing, such as interest payments on loans, bonds, and credit lines.',
404
                 'description' => 'Expenses related to borrowing and financing, such as interest payments on loans, bonds, and credit lines.',
366
                 'multi_currency' => false,
405
                 'multi_currency' => false,
367
                 'base_code' => '5500',
406
                 'base_code' => '5500',
407
+                'inverse_cash_flow' => true,
368
             ],
408
             ],
369
             'Tax Expenses' => [
409
             'Tax Expenses' => [
370
                 'description' => 'Various taxes incurred by the business, including income tax, sales tax, property tax, and payroll tax.',
410
                 'description' => 'Various taxes incurred by the business, including income tax, sales tax, property tax, and payroll tax.',
371
                 'multi_currency' => false,
411
                 'multi_currency' => false,
372
                 'base_code' => '5600',
412
                 'base_code' => '5600',
413
+                'inverse_cash_flow' => true,
373
             ],
414
             ],
374
             'Other Non-Operating Expense' => [
415
             'Other Non-Operating Expense' => [
375
                 'description' => 'Expenses not related to primary business activities, like losses from asset disposals, legal settlements, restructuring costs, or foreign exchange losses.',
416
                 'description' => 'Expenses not related to primary business activities, like losses from asset disposals, legal settlements, restructuring costs, or foreign exchange losses.',
376
                 'multi_currency' => false,
417
                 'multi_currency' => false,
377
                 'base_code' => '5700',
418
                 'base_code' => '5700',
419
+                'inverse_cash_flow' => true,
378
                 'accounts' => [
420
                 'accounts' => [
379
                     'Loss on Foreign Exchange' => [
421
                     'Loss on Foreign Exchange' => [
380
                         'description' => 'The amount of money lost from foreign exchange transactions due to unfavorable exchange rate changes.',
422
                         'description' => 'The amount of money lost from foreign exchange transactions due to unfavorable exchange rate changes.',
387
                 'description' => 'Expenses that are deducted from gross expenses to arrive at net expenses. This includes purchase discounts, returns, and allowances.',
429
                 'description' => 'Expenses that are deducted from gross expenses to arrive at net expenses. This includes purchase discounts, returns, and allowances.',
388
                 'multi_currency' => false,
430
                 'multi_currency' => false,
389
                 'base_code' => '5900',
431
                 'base_code' => '5900',
432
+                'inverse_cash_flow' => false,
390
                 'accounts' => [
433
                 'accounts' => [
391
                     'Purchase Returns and Allowances' => [
434
                     'Purchase Returns and Allowances' => [
392
                         'description' => 'The amount of money returned to suppliers or deducted from purchases due to returned goods or allowances granted.',
435
                         'description' => 'The amount of money returned to suppliers or deducted from purchases due to returned goods or allowances granted.',
402
                 'description' => 'Expenses that have not been categorized into other expense categories.',
445
                 'description' => 'Expenses that have not been categorized into other expense categories.',
403
                 'multi_currency' => false,
446
                 'multi_currency' => false,
404
                 'base_code' => '5950',
447
                 'base_code' => '5950',
448
+                'inverse_cash_flow' => true,
405
                 'accounts' => [
449
                 'accounts' => [
406
                     'Uncategorized Expense' => [
450
                     'Uncategorized Expense' => [
407
                         'description' => 'Expenses not classified into regular expense categories. This account is used as the default for all new transactions.',
451
                         'description' => 'Expenses not classified into regular expense categories. This account is used as the default for all new transactions.',

+ 28
- 0
database/migrations/2024_11_02_182328_add_inverse_cash_flow_to_account_subtypes_table.php 查看文件

1
+<?php
2
+
3
+use Illuminate\Database\Migrations\Migration;
4
+use Illuminate\Database\Schema\Blueprint;
5
+use Illuminate\Support\Facades\Schema;
6
+
7
+return new class extends Migration
8
+{
9
+    /**
10
+     * Run the migrations.
11
+     */
12
+    public function up(): void
13
+    {
14
+        Schema::table('account_subtypes', function (Blueprint $table) {
15
+            $table->boolean('inverse_cash_flow')->default(false)->after('multi_currency');
16
+        });
17
+    }
18
+
19
+    /**
20
+     * Reverse the migrations.
21
+     */
22
+    public function down(): void
23
+    {
24
+        Schema::table('account_subtypes', function (Blueprint $table) {
25
+            $table->dropColumn('inverse_cash_flow');
26
+        });
27
+    }
28
+};

+ 81
- 81
package-lock.json 查看文件

541
             }
541
             }
542
         },
542
         },
543
         "node_modules/@rollup/rollup-android-arm-eabi": {
543
         "node_modules/@rollup/rollup-android-arm-eabi": {
544
-            "version": "4.24.2",
545
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.2.tgz",
546
-            "integrity": "sha512-ufoveNTKDg9t/b7nqI3lwbCG/9IJMhADBNjjz/Jn6LxIZxD7T5L8l2uO/wD99945F1Oo8FvgbbZJRguyk/BdzA==",
544
+            "version": "4.24.3",
545
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.3.tgz",
546
+            "integrity": "sha512-ufb2CH2KfBWPJok95frEZZ82LtDl0A6QKTa8MoM+cWwDZvVGl5/jNb79pIhRvAalUu+7LD91VYR0nwRD799HkQ==",
547
             "cpu": [
547
             "cpu": [
548
                 "arm"
548
                 "arm"
549
             ],
549
             ],
555
             ]
555
             ]
556
         },
556
         },
557
         "node_modules/@rollup/rollup-android-arm64": {
557
         "node_modules/@rollup/rollup-android-arm64": {
558
-            "version": "4.24.2",
559
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.2.tgz",
560
-            "integrity": "sha512-iZoYCiJz3Uek4NI0J06/ZxUgwAfNzqltK0MptPDO4OR0a88R4h0DSELMsflS6ibMCJ4PnLvq8f7O1d7WexUvIA==",
558
+            "version": "4.24.3",
559
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.3.tgz",
560
+            "integrity": "sha512-iAHpft/eQk9vkWIV5t22V77d90CRofgR2006UiCjHcHJFVI1E0oBkQIAbz+pLtthFw3hWEmVB4ilxGyBf48i2Q==",
561
             "cpu": [
561
             "cpu": [
562
                 "arm64"
562
                 "arm64"
563
             ],
563
             ],
569
             ]
569
             ]
570
         },
570
         },
571
         "node_modules/@rollup/rollup-darwin-arm64": {
571
         "node_modules/@rollup/rollup-darwin-arm64": {
572
-            "version": "4.24.2",
573
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.2.tgz",
574
-            "integrity": "sha512-/UhrIxobHYCBfhi5paTkUDQ0w+jckjRZDZ1kcBL132WeHZQ6+S5v9jQPVGLVrLbNUebdIRpIt00lQ+4Z7ys4Rg==",
572
+            "version": "4.24.3",
573
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.3.tgz",
574
+            "integrity": "sha512-QPW2YmkWLlvqmOa2OwrfqLJqkHm7kJCIMq9kOz40Zo9Ipi40kf9ONG5Sz76zszrmIZZ4hgRIkez69YnTHgEz1w==",
575
             "cpu": [
575
             "cpu": [
576
                 "arm64"
576
                 "arm64"
577
             ],
577
             ],
583
             ]
583
             ]
584
         },
584
         },
585
         "node_modules/@rollup/rollup-darwin-x64": {
585
         "node_modules/@rollup/rollup-darwin-x64": {
586
-            "version": "4.24.2",
587
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.2.tgz",
588
-            "integrity": "sha512-1F/jrfhxJtWILusgx63WeTvGTwE4vmsT9+e/z7cZLKU8sBMddwqw3UV5ERfOV+H1FuRK3YREZ46J4Gy0aP3qDA==",
586
+            "version": "4.24.3",
587
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.3.tgz",
588
+            "integrity": "sha512-KO0pN5x3+uZm1ZXeIfDqwcvnQ9UEGN8JX5ufhmgH5Lz4ujjZMAnxQygZAVGemFWn+ZZC0FQopruV4lqmGMshow==",
589
             "cpu": [
589
             "cpu": [
590
                 "x64"
590
                 "x64"
591
             ],
591
             ],
597
             ]
597
             ]
598
         },
598
         },
599
         "node_modules/@rollup/rollup-freebsd-arm64": {
599
         "node_modules/@rollup/rollup-freebsd-arm64": {
600
-            "version": "4.24.2",
601
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.2.tgz",
602
-            "integrity": "sha512-1YWOpFcGuC6iGAS4EI+o3BV2/6S0H+m9kFOIlyFtp4xIX5rjSnL3AwbTBxROX0c8yWtiWM7ZI6mEPTI7VkSpZw==",
600
+            "version": "4.24.3",
601
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.3.tgz",
602
+            "integrity": "sha512-CsC+ZdIiZCZbBI+aRlWpYJMSWvVssPuWqrDy/zi9YfnatKKSLFCe6fjna1grHuo/nVaHG+kiglpRhyBQYRTK4A==",
603
             "cpu": [
603
             "cpu": [
604
                 "arm64"
604
                 "arm64"
605
             ],
605
             ],
611
             ]
611
             ]
612
         },
612
         },
613
         "node_modules/@rollup/rollup-freebsd-x64": {
613
         "node_modules/@rollup/rollup-freebsd-x64": {
614
-            "version": "4.24.2",
615
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.2.tgz",
616
-            "integrity": "sha512-3qAqTewYrCdnOD9Gl9yvPoAoFAVmPJsBvleabvx4bnu1Kt6DrB2OALeRVag7BdWGWLhP1yooeMLEi6r2nYSOjg==",
614
+            "version": "4.24.3",
615
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.3.tgz",
616
+            "integrity": "sha512-F0nqiLThcfKvRQhZEzMIXOQG4EeX61im61VYL1jo4eBxv4aZRmpin6crnBJQ/nWnCsjH5F6J3W6Stdm0mBNqBg==",
617
             "cpu": [
617
             "cpu": [
618
                 "x64"
618
                 "x64"
619
             ],
619
             ],
625
             ]
625
             ]
626
         },
626
         },
627
         "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
627
         "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
628
-            "version": "4.24.2",
629
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.2.tgz",
630
-            "integrity": "sha512-ArdGtPHjLqWkqQuoVQ6a5UC5ebdX8INPuJuJNWRe0RGa/YNhVvxeWmCTFQ7LdmNCSUzVZzxAvUznKaYx645Rig==",
628
+            "version": "4.24.3",
629
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.3.tgz",
630
+            "integrity": "sha512-KRSFHyE/RdxQ1CSeOIBVIAxStFC/hnBgVcaiCkQaVC+EYDtTe4X7z5tBkFyRoBgUGtB6Xg6t9t2kulnX6wJc6A==",
631
             "cpu": [
631
             "cpu": [
632
                 "arm"
632
                 "arm"
633
             ],
633
             ],
639
             ]
639
             ]
640
         },
640
         },
641
         "node_modules/@rollup/rollup-linux-arm-musleabihf": {
641
         "node_modules/@rollup/rollup-linux-arm-musleabihf": {
642
-            "version": "4.24.2",
643
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.2.tgz",
644
-            "integrity": "sha512-B6UHHeNnnih8xH6wRKB0mOcJGvjZTww1FV59HqJoTJ5da9LCG6R4SEBt6uPqzlawv1LoEXSS0d4fBlHNWl6iYw==",
642
+            "version": "4.24.3",
643
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.3.tgz",
644
+            "integrity": "sha512-h6Q8MT+e05zP5BxEKz0vi0DhthLdrNEnspdLzkoFqGwnmOzakEHSlXfVyA4HJ322QtFy7biUAVFPvIDEDQa6rw==",
645
             "cpu": [
645
             "cpu": [
646
                 "arm"
646
                 "arm"
647
             ],
647
             ],
653
             ]
653
             ]
654
         },
654
         },
655
         "node_modules/@rollup/rollup-linux-arm64-gnu": {
655
         "node_modules/@rollup/rollup-linux-arm64-gnu": {
656
-            "version": "4.24.2",
657
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.2.tgz",
658
-            "integrity": "sha512-kr3gqzczJjSAncwOS6i7fpb4dlqcvLidqrX5hpGBIM1wtt0QEVtf4wFaAwVv8QygFU8iWUMYEoJZWuWxyua4GQ==",
656
+            "version": "4.24.3",
657
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.3.tgz",
658
+            "integrity": "sha512-fKElSyXhXIJ9pqiYRqisfirIo2Z5pTTve5K438URf08fsypXrEkVmShkSfM8GJ1aUyvjakT+fn2W7Czlpd/0FQ==",
659
             "cpu": [
659
             "cpu": [
660
                 "arm64"
660
                 "arm64"
661
             ],
661
             ],
667
             ]
667
             ]
668
         },
668
         },
669
         "node_modules/@rollup/rollup-linux-arm64-musl": {
669
         "node_modules/@rollup/rollup-linux-arm64-musl": {
670
-            "version": "4.24.2",
671
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.2.tgz",
672
-            "integrity": "sha512-TDdHLKCWgPuq9vQcmyLrhg/bgbOvIQ8rtWQK7MRxJ9nvaxKx38NvY7/Lo6cYuEnNHqf6rMqnivOIPIQt6H2AoA==",
670
+            "version": "4.24.3",
671
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.3.tgz",
672
+            "integrity": "sha512-YlddZSUk8G0px9/+V9PVilVDC6ydMz7WquxozToozSnfFK6wa6ne1ATUjUvjin09jp34p84milxlY5ikueoenw==",
673
             "cpu": [
673
             "cpu": [
674
                 "arm64"
674
                 "arm64"
675
             ],
675
             ],
681
             ]
681
             ]
682
         },
682
         },
683
         "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
683
         "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
684
-            "version": "4.24.2",
685
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.2.tgz",
686
-            "integrity": "sha512-xv9vS648T3X4AxFFZGWeB5Dou8ilsv4VVqJ0+loOIgDO20zIhYfDLkk5xoQiej2RiSQkld9ijF/fhLeonrz2mw==",
684
+            "version": "4.24.3",
685
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.3.tgz",
686
+            "integrity": "sha512-yNaWw+GAO8JjVx3s3cMeG5Esz1cKVzz8PkTJSfYzE5u7A+NvGmbVFEHP+BikTIyYWuz0+DX9kaA3pH9Sqxp69g==",
687
             "cpu": [
687
             "cpu": [
688
                 "ppc64"
688
                 "ppc64"
689
             ],
689
             ],
695
             ]
695
             ]
696
         },
696
         },
697
         "node_modules/@rollup/rollup-linux-riscv64-gnu": {
697
         "node_modules/@rollup/rollup-linux-riscv64-gnu": {
698
-            "version": "4.24.2",
699
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.2.tgz",
700
-            "integrity": "sha512-tbtXwnofRoTt223WUZYiUnbxhGAOVul/3StZ947U4A5NNjnQJV5irKMm76G0LGItWs6y+SCjUn/Q0WaMLkEskg==",
698
+            "version": "4.24.3",
699
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.3.tgz",
700
+            "integrity": "sha512-lWKNQfsbpv14ZCtM/HkjCTm4oWTKTfxPmr7iPfp3AHSqyoTz5AgLemYkWLwOBWc+XxBbrU9SCokZP0WlBZM9lA==",
701
             "cpu": [
701
             "cpu": [
702
                 "riscv64"
702
                 "riscv64"
703
             ],
703
             ],
709
             ]
709
             ]
710
         },
710
         },
711
         "node_modules/@rollup/rollup-linux-s390x-gnu": {
711
         "node_modules/@rollup/rollup-linux-s390x-gnu": {
712
-            "version": "4.24.2",
713
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.2.tgz",
714
-            "integrity": "sha512-gc97UebApwdsSNT3q79glOSPdfwgwj5ELuiyuiMY3pEWMxeVqLGKfpDFoum4ujivzxn6veUPzkGuSYoh5deQ2Q==",
712
+            "version": "4.24.3",
713
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.3.tgz",
714
+            "integrity": "sha512-HoojGXTC2CgCcq0Woc/dn12wQUlkNyfH0I1ABK4Ni9YXyFQa86Fkt2Q0nqgLfbhkyfQ6003i3qQk9pLh/SpAYw==",
715
             "cpu": [
715
             "cpu": [
716
                 "s390x"
716
                 "s390x"
717
             ],
717
             ],
723
             ]
723
             ]
724
         },
724
         },
725
         "node_modules/@rollup/rollup-linux-x64-gnu": {
725
         "node_modules/@rollup/rollup-linux-x64-gnu": {
726
-            "version": "4.24.2",
727
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.2.tgz",
728
-            "integrity": "sha512-jOG/0nXb3z+EM6SioY8RofqqmZ+9NKYvJ6QQaa9Mvd3RQxlH68/jcB/lpyVt4lCiqr04IyaC34NzhUqcXbB5FQ==",
726
+            "version": "4.24.3",
727
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.3.tgz",
728
+            "integrity": "sha512-mnEOh4iE4USSccBOtcrjF5nj+5/zm6NcNhbSEfR3Ot0pxBwvEn5QVUXcuOwwPkapDtGZ6pT02xLoPaNv06w7KQ==",
729
             "cpu": [
729
             "cpu": [
730
                 "x64"
730
                 "x64"
731
             ],
731
             ],
737
             ]
737
             ]
738
         },
738
         },
739
         "node_modules/@rollup/rollup-linux-x64-musl": {
739
         "node_modules/@rollup/rollup-linux-x64-musl": {
740
-            "version": "4.24.2",
741
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.2.tgz",
742
-            "integrity": "sha512-XAo7cJec80NWx9LlZFEJQxqKOMz/lX3geWs2iNT5CHIERLFfd90f3RYLLjiCBm1IMaQ4VOX/lTC9lWfzzQm14Q==",
740
+            "version": "4.24.3",
741
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.3.tgz",
742
+            "integrity": "sha512-rMTzawBPimBQkG9NKpNHvquIUTQPzrnPxPbCY1Xt+mFkW7pshvyIS5kYgcf74goxXOQk0CP3EoOC1zcEezKXhw==",
743
             "cpu": [
743
             "cpu": [
744
                 "x64"
744
                 "x64"
745
             ],
745
             ],
751
             ]
751
             ]
752
         },
752
         },
753
         "node_modules/@rollup/rollup-win32-arm64-msvc": {
753
         "node_modules/@rollup/rollup-win32-arm64-msvc": {
754
-            "version": "4.24.2",
755
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.2.tgz",
756
-            "integrity": "sha512-A+JAs4+EhsTjnPQvo9XY/DC0ztaws3vfqzrMNMKlwQXuniBKOIIvAAI8M0fBYiTCxQnElYu7mLk7JrhlQ+HeOw==",
754
+            "version": "4.24.3",
755
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.3.tgz",
756
+            "integrity": "sha512-2lg1CE305xNvnH3SyiKwPVsTVLCg4TmNCF1z7PSHX2uZY2VbUpdkgAllVoISD7JO7zu+YynpWNSKAtOrX3AiuA==",
757
             "cpu": [
757
             "cpu": [
758
                 "arm64"
758
                 "arm64"
759
             ],
759
             ],
765
             ]
765
             ]
766
         },
766
         },
767
         "node_modules/@rollup/rollup-win32-ia32-msvc": {
767
         "node_modules/@rollup/rollup-win32-ia32-msvc": {
768
-            "version": "4.24.2",
769
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.2.tgz",
770
-            "integrity": "sha512-ZhcrakbqA1SCiJRMKSU64AZcYzlZ/9M5LaYil9QWxx9vLnkQ9Vnkve17Qn4SjlipqIIBFKjBES6Zxhnvh0EAEw==",
768
+            "version": "4.24.3",
769
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.3.tgz",
770
+            "integrity": "sha512-9SjYp1sPyxJsPWuhOCX6F4jUMXGbVVd5obVpoVEi8ClZqo52ViZewA6eFz85y8ezuOA+uJMP5A5zo6Oz4S5rVQ==",
771
             "cpu": [
771
             "cpu": [
772
                 "ia32"
772
                 "ia32"
773
             ],
773
             ],
779
             ]
779
             ]
780
         },
780
         },
781
         "node_modules/@rollup/rollup-win32-x64-msvc": {
781
         "node_modules/@rollup/rollup-win32-x64-msvc": {
782
-            "version": "4.24.2",
783
-            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.2.tgz",
784
-            "integrity": "sha512-2mLH46K1u3r6uwc95hU+OR9q/ggYMpnS7pSp83Ece1HUQgF9Nh/QwTK5rcgbFnV9j+08yBrU5sA/P0RK2MSBNA==",
782
+            "version": "4.24.3",
783
+            "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.3.tgz",
784
+            "integrity": "sha512-HGZgRFFYrMrP3TJlq58nR1xy8zHKId25vhmm5S9jETEfDf6xybPxsavFTJaufe2zgOGYJBskGlj49CwtEuFhWQ==",
785
             "cpu": [
785
             "cpu": [
786
                 "x64"
786
                 "x64"
787
             ],
787
             ],
1026
             }
1026
             }
1027
         },
1027
         },
1028
         "node_modules/caniuse-lite": {
1028
         "node_modules/caniuse-lite": {
1029
-            "version": "1.0.30001672",
1030
-            "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001672.tgz",
1031
-            "integrity": "sha512-XhW1vRo1ob6aeK2w3rTohwTPBLse/rvjq+s3RTSBwnlZqoFFjx9cHsShJjAIbLsLjyoacaTxpLZy9v3gg6zypw==",
1029
+            "version": "1.0.30001676",
1030
+            "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001676.tgz",
1031
+            "integrity": "sha512-Qz6zwGCiPghQXGJvgQAem79esjitvJ+CxSbSQkW9H/UX5hg8XM88d4lp2W+MEQ81j+Hip58Il+jGVdazk1z9cw==",
1032
             "dev": true,
1032
             "dev": true,
1033
             "funding": [
1033
             "funding": [
1034
                 {
1034
                 {
1187
             "license": "MIT"
1187
             "license": "MIT"
1188
         },
1188
         },
1189
         "node_modules/electron-to-chromium": {
1189
         "node_modules/electron-to-chromium": {
1190
-            "version": "1.5.47",
1191
-            "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.47.tgz",
1192
-            "integrity": "sha512-zS5Yer0MOYw4rtK2iq43cJagHZ8sXN0jDHDKzB+86gSBSAI4v07S97mcq+Gs2vclAxSh1j7vOAHxSVgduiiuVQ==",
1190
+            "version": "1.5.50",
1191
+            "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.50.tgz",
1192
+            "integrity": "sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw==",
1193
             "dev": true,
1193
             "dev": true,
1194
             "license": "ISC"
1194
             "license": "ISC"
1195
         },
1195
         },
2199
             }
2199
             }
2200
         },
2200
         },
2201
         "node_modules/rollup": {
2201
         "node_modules/rollup": {
2202
-            "version": "4.24.2",
2203
-            "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.2.tgz",
2204
-            "integrity": "sha512-do/DFGq5g6rdDhdpPq5qb2ecoczeK6y+2UAjdJ5trjQJj5f1AiVdLRWRc9A9/fFukfvJRgM0UXzxBIYMovm5ww==",
2202
+            "version": "4.24.3",
2203
+            "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.3.tgz",
2204
+            "integrity": "sha512-HBW896xR5HGmoksbi3JBDtmVzWiPAYqp7wip50hjQ67JbDz61nyoMPdqu1DvVW9asYb2M65Z20ZHsyJCMqMyDg==",
2205
             "dev": true,
2205
             "dev": true,
2206
             "license": "MIT",
2206
             "license": "MIT",
2207
             "dependencies": {
2207
             "dependencies": {
2215
                 "npm": ">=8.0.0"
2215
                 "npm": ">=8.0.0"
2216
             },
2216
             },
2217
             "optionalDependencies": {
2217
             "optionalDependencies": {
2218
-                "@rollup/rollup-android-arm-eabi": "4.24.2",
2219
-                "@rollup/rollup-android-arm64": "4.24.2",
2220
-                "@rollup/rollup-darwin-arm64": "4.24.2",
2221
-                "@rollup/rollup-darwin-x64": "4.24.2",
2222
-                "@rollup/rollup-freebsd-arm64": "4.24.2",
2223
-                "@rollup/rollup-freebsd-x64": "4.24.2",
2224
-                "@rollup/rollup-linux-arm-gnueabihf": "4.24.2",
2225
-                "@rollup/rollup-linux-arm-musleabihf": "4.24.2",
2226
-                "@rollup/rollup-linux-arm64-gnu": "4.24.2",
2227
-                "@rollup/rollup-linux-arm64-musl": "4.24.2",
2228
-                "@rollup/rollup-linux-powerpc64le-gnu": "4.24.2",
2229
-                "@rollup/rollup-linux-riscv64-gnu": "4.24.2",
2230
-                "@rollup/rollup-linux-s390x-gnu": "4.24.2",
2231
-                "@rollup/rollup-linux-x64-gnu": "4.24.2",
2232
-                "@rollup/rollup-linux-x64-musl": "4.24.2",
2233
-                "@rollup/rollup-win32-arm64-msvc": "4.24.2",
2234
-                "@rollup/rollup-win32-ia32-msvc": "4.24.2",
2235
-                "@rollup/rollup-win32-x64-msvc": "4.24.2",
2218
+                "@rollup/rollup-android-arm-eabi": "4.24.3",
2219
+                "@rollup/rollup-android-arm64": "4.24.3",
2220
+                "@rollup/rollup-darwin-arm64": "4.24.3",
2221
+                "@rollup/rollup-darwin-x64": "4.24.3",
2222
+                "@rollup/rollup-freebsd-arm64": "4.24.3",
2223
+                "@rollup/rollup-freebsd-x64": "4.24.3",
2224
+                "@rollup/rollup-linux-arm-gnueabihf": "4.24.3",
2225
+                "@rollup/rollup-linux-arm-musleabihf": "4.24.3",
2226
+                "@rollup/rollup-linux-arm64-gnu": "4.24.3",
2227
+                "@rollup/rollup-linux-arm64-musl": "4.24.3",
2228
+                "@rollup/rollup-linux-powerpc64le-gnu": "4.24.3",
2229
+                "@rollup/rollup-linux-riscv64-gnu": "4.24.3",
2230
+                "@rollup/rollup-linux-s390x-gnu": "4.24.3",
2231
+                "@rollup/rollup-linux-x64-gnu": "4.24.3",
2232
+                "@rollup/rollup-linux-x64-musl": "4.24.3",
2233
+                "@rollup/rollup-win32-arm64-msvc": "4.24.3",
2234
+                "@rollup/rollup-win32-ia32-msvc": "4.24.3",
2235
+                "@rollup/rollup-win32-x64-msvc": "4.24.3",
2236
                 "fsevents": "~2.3.2"
2236
                 "fsevents": "~2.3.2"
2237
             }
2237
             }
2238
         },
2238
         },

Loading…
取消
儲存