Skip to content

Commit 0e51d3a

Browse files
Merge pull request #680 from liberu-ecommerce/copilot/fix-mysql-install-workflow
[WIP] Fix MySQL installation and update dependencies for Filament 5
2 parents 4e05c7c + e855cbe commit 0e51d3a

File tree

7 files changed

+216
-117
lines changed

7 files changed

+216
-117
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
uses: docker/setup-buildx-action@v3
4444

4545
- name: Build and push Docker image
46-
uses: docker/build-push-action@263435318d21b8e681c14492fe198.562a7d2c83
46+
uses: docker/build-push-action@v6
4747
with:
4848
# context: "{{defaultContext}}:.docker/prod/app/"
4949
file: Dockerfile

.github/workflows/tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,5 +78,5 @@ jobs:
7878
files: ./coverage.xml
7979
flags: unittests
8080
name: codecov-umbrella
81-
fail_ci_if_error: true
81+
fail_ci_if_error: false
8282

Dockerfile

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,18 @@ ARG NODE_VERSION=20-alpine
99

1010
FROM composer:${COMPOSER_VERSION} AS vendor
1111

12+
FROM node:${NODE_VERSION} AS assets
13+
14+
WORKDIR /app
15+
16+
COPY package.json package-lock.json ./
17+
18+
RUN npm ci
19+
20+
COPY . .
21+
22+
RUN npm run build
23+
1224
FROM php:${PHP_VERSION}-cli-alpine
1325

1426
LABEL maintainer="SMortexa <seyed.me720@gmail.com>"
@@ -111,6 +123,7 @@ RUN composer install \
111123
--audit
112124

113125
COPY --chown=${USER}:${USER} . .
126+
COPY --chown=${USER}:${USER} --from=assets /app/public/build ./public/build
114127

115128
RUN mkdir -p \
116129
storage/framework/sessions \

app/Filament/Admin/Resources/ChatConversations/ChatConversationResource.php

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010
use Filament\Forms\Components\TextInput;
1111
use Filament\Forms\Components\Select;
1212
use Filament\Forms\Components\DateTimePicker;
13+
use Filament\Actions\ViewAction;
1314
use Filament\Tables\Columns\TextColumn;
14-
use Filament\Tables\Columns\BadgeColumn;
1515
use Filament\Tables\Table;
16-
use Filament\Tables\Actions\ViewAction;
1716
use Filament\Tables\Filters\SelectFilter;
1817
use Filament\Resources\Resource;
1918

@@ -74,12 +73,14 @@ public static function table(Table $table): Table
7473
TextColumn::make('id')
7574
->sortable()
7675
->searchable(),
77-
BadgeColumn::make('status')
78-
->colors([
79-
'warning' => 'queued',
80-
'success' => 'active',
81-
'secondary' => 'closed',
82-
]),
76+
TextColumn::make('status')
77+
->badge()
78+
->color(fn (string $state): string => match ($state) {
79+
'queued' => 'warning',
80+
'active' => 'success',
81+
'closed' => 'gray',
82+
default => 'secondary',
83+
}),
8384
TextColumn::make('customer.name')
8485
->label('Customer')
8586
->searchable()
@@ -118,7 +119,7 @@ public static function table(Table $table): Table
118119
->label('Agent')
119120
->relationship('agent', 'name'),
120121
])
121-
->actions([
122+
->recordActions([
122123
ViewAction::make(),
123124
]);
124125
}

app/Filament/Admin/Resources/TaxClasses/TaxClassResource.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
use Filament\Actions\DeleteBulkAction;
1010
use Filament\Actions\EditAction;
1111
use Filament\Forms;
12-
use Filament\Forms\Form;
1312
use Filament\Resources\Resource;
1413
use Filament\Schemas\Components\Section;
1514
use Filament\Schemas\Schema;

app/Filament/Resources/CustomerSegmentResource.php

Lines changed: 31 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,51 +4,57 @@
44

55
use App\Filament\Resources\CustomerSegmentResource\Pages;
66
use App\Models\CustomerSegment;
7+
use Filament\Actions\Action;
8+
use Filament\Actions\BulkActionGroup;
9+
use Filament\Actions\DeleteAction;
10+
use Filament\Actions\DeleteBulkAction;
11+
use Filament\Actions\EditAction;
712
use Filament\Forms;
8-
use Filament\Forms\Form;
913
use Filament\Resources\Resource;
14+
use Filament\Schemas\Components\Section;
15+
use Filament\Schemas\Schema;
1016
use Filament\Tables;
1117
use Filament\Tables\Table;
1218

1319
class CustomerSegmentResource extends Resource
1420
{
1521
protected static ?string $model = CustomerSegment::class;
1622

17-
protected static ?string $navigationIcon = 'heroicon-o-user-group';
23+
protected static string|\BackedEnum|null $navigationIcon = 'heroicon-o-user-group';
1824

19-
protected static ?string $navigationGroup = 'Marketing';
25+
protected static string|\UnitEnum|null $navigationGroup = 'Marketing';
2026

2127
protected static ?int $navigationSort = 1;
2228

23-
public static function form(Form $form): Form
29+
public static function form(Schema $schema): Schema
2430
{
25-
return $form
26-
->schema([
27-
Forms\Components\Section::make()
31+
return $schema
32+
->components([
33+
Section::make()
2834
->schema([
2935
Forms\Components\TextInput::make('name')
3036
->required()
3137
->maxLength(255),
32-
38+
3339
Forms\Components\Textarea::make('description')
3440
->rows(3)
3541
->columnSpanFull(),
36-
42+
3743
Forms\Components\Select::make('match_type')
3844
->options([
3945
'all' => 'Match ALL conditions',
4046
'any' => 'Match ANY condition',
4147
])
4248
->default('all')
4349
->required(),
44-
50+
4551
Forms\Components\Toggle::make('is_active')
4652
->default(true)
4753
->required(),
4854
])
4955
->columns(2),
5056

51-
Forms\Components\Section::make('Conditions')
57+
Section::make('Conditions')
5258
->schema([
5359
Forms\Components\Repeater::make('conditions')
5460
->schema([
@@ -60,7 +66,7 @@ public static function form(Form $form): Form
6066
'in_customer_group' => 'Customer Group',
6167
])
6268
->required(),
63-
69+
6470
Forms\Components\Select::make('operator')
6571
->options([
6672
'=' => 'Equals',
@@ -71,7 +77,7 @@ public static function form(Form $form): Form
7177
'<=' => 'Less or Equal',
7278
])
7379
->required(),
74-
80+
7581
Forms\Components\TextInput::make('value')
7682
->required(),
7783
])
@@ -88,22 +94,23 @@ public static function table(Table $table): Table
8894
Tables\Columns\TextColumn::make('name')
8995
->searchable()
9096
->sortable(),
91-
97+
9298
Tables\Columns\TextColumn::make('customer_count')
9399
->label('Members')
94100
->numeric()
95101
->sortable(),
96-
102+
97103
Tables\Columns\TextColumn::make('match_type')
98104
->badge()
99105
->color(fn (string $state): string => match ($state) {
100106
'all' => 'success',
101107
'any' => 'warning',
108+
default => 'gray',
102109
}),
103-
110+
104111
Tables\Columns\IconColumn::make('is_active')
105112
->boolean(),
106-
113+
107114
Tables\Columns\TextColumn::make('last_calculated_at')
108115
->dateTime()
109116
->sortable()
@@ -112,17 +119,17 @@ public static function table(Table $table): Table
112119
->filters([
113120
Tables\Filters\TernaryFilter::make('is_active'),
114121
])
115-
->actions([
116-
Tables\Actions\Action::make('calculate')
122+
->recordActions([
123+
Action::make('calculate')
117124
->icon('heroicon-o-calculator')
118125
->action(fn (CustomerSegment $record) => $record->calculateMembers())
119126
->requiresConfirmation(),
120-
Tables\Actions\EditAction::make(),
121-
Tables\Actions\DeleteAction::make(),
127+
EditAction::make(),
128+
DeleteAction::make(),
122129
])
123-
->bulkActions([
124-
Tables\Actions\BulkActionGroup::make([
125-
Tables\Actions\DeleteBulkAction::make(),
130+
->toolbarActions([
131+
BulkActionGroup::make([
132+
DeleteBulkAction::make(),
126133
]),
127134
]);
128135
}

0 commit comments

Comments
 (0)