Skip to content

Commit f0c23b9

Browse files
simonhampclaude
andcommitted
Merge remote-tracking branch 'origin/main' into feature/support-tickets
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2 parents 836ec89 + 02d34b0 commit f0c23b9

235 files changed

Lines changed: 12517 additions & 7480 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.cursor/rules/laravel-boost.mdc

Lines changed: 29 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ The Laravel Boost guidelines are specifically curated by Laravel maintainers for
1111
## Foundational Context
1212
This application is a Laravel application and its main Laravel ecosystems package & versions are below. You are an expert with them all. Ensure you abide by these specific packages & versions.
1313

14-
- php - 8.4.18
15-
- filament/filament (FILAMENT) - v3
14+
- php - 8.4.19
15+
- filament/filament (FILAMENT) - v5
1616
- laravel/cashier (CASHIER) - v15
1717
- laravel/framework (LARAVEL) - v12
1818
- laravel/horizon (HORIZON) - v5
@@ -21,7 +21,9 @@ This application is a Laravel application and its main Laravel ecosystems packag
2121
- laravel/prompts (PROMPTS) - v0
2222
- laravel/sanctum (SANCTUM) - v4
2323
- laravel/socialite (SOCIALITE) - v5
24-
- livewire/livewire (LIVEWIRE) - v3
24+
- livewire/flux (FLUXUI_FREE) - v2
25+
- livewire/flux-pro (FLUXUI_PRO) - v2
26+
- livewire/livewire (LIVEWIRE) - v4
2527
- laravel/mcp (MCP) - v0
2628
- laravel/pint (PINT) - v1
2729
- laravel/sail (SAIL) - v1
@@ -208,6 +210,28 @@ protected function isAccessible(User $user, ?string $path = null): bool
208210
- This application uses Laravel Pennant for feature flag management, providing a flexible system for controlling feature availability across different organizations and user types.
209211
- Use the `search-docs` tool, in combination with existing codebase conventions, to assist the user effectively with feature flags.
210212

213+
=== fluxui-pro/core rules ===
214+
215+
## Flux UI Pro
216+
217+
- This project is using the Pro version of Flux UI. It has full access to the free components and variants, as well as full access to the Pro components and variants.
218+
- Flux UI is a component library for Livewire. Flux is a robust, hand-crafted UI component library for your Livewire applications. It's built using Tailwind CSS and provides a set of components that are easy to use and customize.
219+
- You should use Flux UI components when available.
220+
- Fallback to standard Blade components if Flux is unavailable.
221+
- If available, use the `search-docs` tool to get the exact documentation and code snippets available for this project.
222+
- Flux UI components look like this:
223+
224+
<code-snippet name="Flux UI Component Example" lang="blade">
225+
<flux:button variant="primary"/>
226+
</code-snippet>
227+
228+
### Available Components
229+
This is correct as of Boost installation, but there may be additional components within the codebase.
230+
231+
<available-flux-components>
232+
accordion, autocomplete, avatar, badge, brand, breadcrumbs, button, calendar, callout, card, chart, checkbox, command, composer, context, date-picker, dropdown, editor, field, file-upload, heading, icon, input, kanban, modal, navbar, otp-input, pagination, pillbox, popover, profile, radio, select, separator, skeleton, slider, switch, table, tabs, text, textarea, time-picker, toast, tooltip
233+
</available-flux-components>
234+
211235
=== livewire/core rules ===
212236

213237
## Livewire
@@ -253,47 +277,12 @@ protected function isAccessible(User $user, ?string $path = null): bool
253277
->assertSeeLivewire(CreatePost::class);
254278
</code-snippet>
255279

256-
=== livewire/v3 rules ===
257-
258-
## Livewire 3
259-
260-
### Key Changes From Livewire 2
261-
- These things changed in Livewire 3, but may not have been updated in this application. Verify this application's setup to ensure you conform with application conventions.
262-
- Use `wire:model.live` for real-time updates, `wire:model` is now deferred by default.
263-
- Components now use the `App\Livewire` namespace (not `App\Http\Livewire`).
264-
- Use `$this->dispatch()` to dispatch events (not `emit` or `dispatchBrowserEvent`).
265-
- Use the `components.layouts.app` view as the typical layout path (not `layouts.app`).
266-
267-
### New Directives
268-
- `wire:show`, `wire:transition`, `wire:cloak`, `wire:offline`, `wire:target` are available for use. Use the documentation to find usage examples.
269-
270-
### Alpine
271-
- Alpine is now included with Livewire; don't manually include Alpine.js.
272-
- Plugins included with Alpine: persist, intersect, collapse, and focus.
273-
274-
### Lifecycle Hooks
275-
- You can listen for `livewire:init` to hook into Livewire initialization, and `fail.status === 419` for the page expiring:
276-
277-
<code-snippet name="Livewire Init Hook Example" lang="js">
278-
document.addEventListener('livewire:init', function () {
279-
Livewire.hook('request', ({ fail }) => {
280-
if (fail && fail.status === 419) {
281-
alert('Your session expired');
282-
}
283-
});
284-
285-
Livewire.hook('message.failed', (message, component) => {
286-
console.error(message);
287-
});
288-
});
289-
</code-snippet>
290-
291280
=== pint/core rules ===
292281

293282
## Laravel Pint Code Formatter
294283

295-
- You must run `vendor/bin/pint --dirty` before finalizing changes to ensure your code matches the project's expected style.
296-
- Do not run `vendor/bin/pint --test`, simply run `vendor/bin/pint` to fix any formatting issues.
284+
- You must run `vendor/bin/pint --dirty --format agent` before finalizing changes to ensure your code matches the project's expected style.
285+
- Do not run `vendor/bin/pint --test --format agent`, simply run `vendor/bin/pint --format agent` to fix any formatting issues.
297286

298287
=== phpunit/core rules ===
299288

.env.example

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,11 @@ STRIPE_MINI_PRICE_ID_EAP=
6767
STRIPE_PRO_PRICE_ID=
6868
STRIPE_PRO_PRICE_ID_EAP=
6969
STRIPE_MAX_PRICE_ID=
70+
STRIPE_MAX_PRICE_ID_MONTHLY=
7071
STRIPE_MAX_PRICE_ID_EAP=
72+
STRIPE_ULTRA_COMP_PRICE_ID=
73+
STRIPE_EXTRA_SEAT_PRICE_ID=
74+
STRIPE_EXTRA_SEAT_PRICE_ID_MONTHLY=
7175
STRIPE_FOREVER_PRICE_ID=
7276
STRIPE_TRIAL_PRICE_ID=
7377
STRIPE_MINI_PAYMENT_LINK=

.github/copilot-instructions.md

Lines changed: 29 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ The Laravel Boost guidelines are specifically curated by Laravel maintainers for
88
## Foundational Context
99
This application is a Laravel application and its main Laravel ecosystems package & versions are below. You are an expert with them all. Ensure you abide by these specific packages & versions.
1010

11-
- php - 8.4.18
12-
- filament/filament (FILAMENT) - v3
11+
- php - 8.4.19
12+
- filament/filament (FILAMENT) - v5
1313
- laravel/cashier (CASHIER) - v15
1414
- laravel/framework (LARAVEL) - v12
1515
- laravel/horizon (HORIZON) - v5
@@ -18,7 +18,9 @@ This application is a Laravel application and its main Laravel ecosystems packag
1818
- laravel/prompts (PROMPTS) - v0
1919
- laravel/sanctum (SANCTUM) - v4
2020
- laravel/socialite (SOCIALITE) - v5
21-
- livewire/livewire (LIVEWIRE) - v3
21+
- livewire/flux (FLUXUI_FREE) - v2
22+
- livewire/flux-pro (FLUXUI_PRO) - v2
23+
- livewire/livewire (LIVEWIRE) - v4
2224
- laravel/mcp (MCP) - v0
2325
- laravel/pint (PINT) - v1
2426
- laravel/sail (SAIL) - v1
@@ -205,6 +207,28 @@ protected function isAccessible(User $user, ?string $path = null): bool
205207
- This application uses Laravel Pennant for feature flag management, providing a flexible system for controlling feature availability across different organizations and user types.
206208
- Use the `search-docs` tool, in combination with existing codebase conventions, to assist the user effectively with feature flags.
207209

210+
=== fluxui-pro/core rules ===
211+
212+
## Flux UI Pro
213+
214+
- This project is using the Pro version of Flux UI. It has full access to the free components and variants, as well as full access to the Pro components and variants.
215+
- Flux UI is a component library for Livewire. Flux is a robust, hand-crafted UI component library for your Livewire applications. It's built using Tailwind CSS and provides a set of components that are easy to use and customize.
216+
- You should use Flux UI components when available.
217+
- Fallback to standard Blade components if Flux is unavailable.
218+
- If available, use the `search-docs` tool to get the exact documentation and code snippets available for this project.
219+
- Flux UI components look like this:
220+
221+
<code-snippet name="Flux UI Component Example" lang="blade">
222+
<flux:button variant="primary"/>
223+
</code-snippet>
224+
225+
### Available Components
226+
This is correct as of Boost installation, but there may be additional components within the codebase.
227+
228+
<available-flux-components>
229+
accordion, autocomplete, avatar, badge, brand, breadcrumbs, button, calendar, callout, card, chart, checkbox, command, composer, context, date-picker, dropdown, editor, field, file-upload, heading, icon, input, kanban, modal, navbar, otp-input, pagination, pillbox, popover, profile, radio, select, separator, skeleton, slider, switch, table, tabs, text, textarea, time-picker, toast, tooltip
230+
</available-flux-components>
231+
208232
=== livewire/core rules ===
209233

210234
## Livewire
@@ -250,47 +274,12 @@ protected function isAccessible(User $user, ?string $path = null): bool
250274
->assertSeeLivewire(CreatePost::class);
251275
</code-snippet>
252276
253-
=== livewire/v3 rules ===
254-
255-
## Livewire 3
256-
257-
### Key Changes From Livewire 2
258-
- These things changed in Livewire 3, but may not have been updated in this application. Verify this application's setup to ensure you conform with application conventions.
259-
- Use `wire:model.live` for real-time updates, `wire:model` is now deferred by default.
260-
- Components now use the `App\Livewire` namespace (not `App\Http\Livewire`).
261-
- Use `$this->dispatch()` to dispatch events (not `emit` or `dispatchBrowserEvent`).
262-
- Use the `components.layouts.app` view as the typical layout path (not `layouts.app`).
263-
264-
### New Directives
265-
- `wire:show`, `wire:transition`, `wire:cloak`, `wire:offline`, `wire:target` are available for use. Use the documentation to find usage examples.
266-
267-
### Alpine
268-
- Alpine is now included with Livewire; don't manually include Alpine.js.
269-
- Plugins included with Alpine: persist, intersect, collapse, and focus.
270-
271-
### Lifecycle Hooks
272-
- You can listen for `livewire:init` to hook into Livewire initialization, and `fail.status === 419` for the page expiring:
273-
274-
<code-snippet name="Livewire Init Hook Example" lang="js">
275-
document.addEventListener('livewire:init', function () {
276-
Livewire.hook('request', ({ fail }) => {
277-
if (fail && fail.status === 419) {
278-
alert('Your session expired');
279-
}
280-
});
281-
282-
Livewire.hook('message.failed', (message, component) => {
283-
console.error(message);
284-
});
285-
});
286-
</code-snippet>
287-
288277
=== pint/core rules ===
289278
290279
## Laravel Pint Code Formatter
291280
292-
- You must run `vendor/bin/pint --dirty` before finalizing changes to ensure your code matches the project's expected style.
293-
- Do not run `vendor/bin/pint --test`, simply run `vendor/bin/pint` to fix any formatting issues.
281+
- You must run `vendor/bin/pint --dirty --format agent` before finalizing changes to ensure your code matches the project's expected style.
282+
- Do not run `vendor/bin/pint --test --format agent`, simply run `vendor/bin/pint --format agent` to fix any formatting issues.
294283
295284
=== phpunit/core rules ===
296285

.github/funding.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
github: nativephp
12
open_collective: nativephp

.github/workflows/linting.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ jobs:
3737
key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
3838
restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer-
3939

40+
- name: Configure Flux Pro auth
41+
run: composer config http-basic.composer.fluxui.dev "${{ secrets.FLUX_EMAIL }}" "${{ secrets.FLUX_LICENSE_KEY }}"
42+
4043
- name: Install Dependencies
4144
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
4245

.github/workflows/tests.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ jobs:
4747
key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
4848
restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer-
4949

50+
- name: Configure Flux Pro auth
51+
run: composer config http-basic.composer.fluxui.dev "${{ secrets.FLUX_EMAIL }}" "${{ secrets.FLUX_LICENSE_KEY }}"
52+
5053
- name: Install Dependencies
5154
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
5255

.junie/guidelines.md

Lines changed: 29 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ The Laravel Boost guidelines are specifically curated by Laravel maintainers for
88
## Foundational Context
99
This application is a Laravel application and its main Laravel ecosystems package & versions are below. You are an expert with them all. Ensure you abide by these specific packages & versions.
1010

11-
- php - 8.4.18
12-
- filament/filament (FILAMENT) - v3
11+
- php - 8.4.19
12+
- filament/filament (FILAMENT) - v5
1313
- laravel/cashier (CASHIER) - v15
1414
- laravel/framework (LARAVEL) - v12
1515
- laravel/horizon (HORIZON) - v5
@@ -18,7 +18,9 @@ This application is a Laravel application and its main Laravel ecosystems packag
1818
- laravel/prompts (PROMPTS) - v0
1919
- laravel/sanctum (SANCTUM) - v4
2020
- laravel/socialite (SOCIALITE) - v5
21-
- livewire/livewire (LIVEWIRE) - v3
21+
- livewire/flux (FLUXUI_FREE) - v2
22+
- livewire/flux-pro (FLUXUI_PRO) - v2
23+
- livewire/livewire (LIVEWIRE) - v4
2224
- laravel/mcp (MCP) - v0
2325
- laravel/pint (PINT) - v1
2426
- laravel/sail (SAIL) - v1
@@ -205,6 +207,28 @@ protected function isAccessible(User $user, ?string $path = null): bool
205207
- This application uses Laravel Pennant for feature flag management, providing a flexible system for controlling feature availability across different organizations and user types.
206208
- Use the `search-docs` tool, in combination with existing codebase conventions, to assist the user effectively with feature flags.
207209

210+
=== fluxui-pro/core rules ===
211+
212+
## Flux UI Pro
213+
214+
- This project is using the Pro version of Flux UI. It has full access to the free components and variants, as well as full access to the Pro components and variants.
215+
- Flux UI is a component library for Livewire. Flux is a robust, hand-crafted UI component library for your Livewire applications. It's built using Tailwind CSS and provides a set of components that are easy to use and customize.
216+
- You should use Flux UI components when available.
217+
- Fallback to standard Blade components if Flux is unavailable.
218+
- If available, use the `search-docs` tool to get the exact documentation and code snippets available for this project.
219+
- Flux UI components look like this:
220+
221+
<code-snippet name="Flux UI Component Example" lang="blade">
222+
<flux:button variant="primary"/>
223+
</code-snippet>
224+
225+
### Available Components
226+
This is correct as of Boost installation, but there may be additional components within the codebase.
227+
228+
<available-flux-components>
229+
accordion, autocomplete, avatar, badge, brand, breadcrumbs, button, calendar, callout, card, chart, checkbox, command, composer, context, date-picker, dropdown, editor, field, file-upload, heading, icon, input, kanban, modal, navbar, otp-input, pagination, pillbox, popover, profile, radio, select, separator, skeleton, slider, switch, table, tabs, text, textarea, time-picker, toast, tooltip
230+
</available-flux-components>
231+
208232
=== livewire/core rules ===
209233

210234
## Livewire
@@ -250,47 +274,12 @@ protected function isAccessible(User $user, ?string $path = null): bool
250274
->assertSeeLivewire(CreatePost::class);
251275
</code-snippet>
252276
253-
=== livewire/v3 rules ===
254-
255-
## Livewire 3
256-
257-
### Key Changes From Livewire 2
258-
- These things changed in Livewire 3, but may not have been updated in this application. Verify this application's setup to ensure you conform with application conventions.
259-
- Use `wire:model.live` for real-time updates, `wire:model` is now deferred by default.
260-
- Components now use the `App\Livewire` namespace (not `App\Http\Livewire`).
261-
- Use `$this->dispatch()` to dispatch events (not `emit` or `dispatchBrowserEvent`).
262-
- Use the `components.layouts.app` view as the typical layout path (not `layouts.app`).
263-
264-
### New Directives
265-
- `wire:show`, `wire:transition`, `wire:cloak`, `wire:offline`, `wire:target` are available for use. Use the documentation to find usage examples.
266-
267-
### Alpine
268-
- Alpine is now included with Livewire; don't manually include Alpine.js.
269-
- Plugins included with Alpine: persist, intersect, collapse, and focus.
270-
271-
### Lifecycle Hooks
272-
- You can listen for `livewire:init` to hook into Livewire initialization, and `fail.status === 419` for the page expiring:
273-
274-
<code-snippet name="Livewire Init Hook Example" lang="js">
275-
document.addEventListener('livewire:init', function () {
276-
Livewire.hook('request', ({ fail }) => {
277-
if (fail && fail.status === 419) {
278-
alert('Your session expired');
279-
}
280-
});
281-
282-
Livewire.hook('message.failed', (message, component) => {
283-
console.error(message);
284-
});
285-
});
286-
</code-snippet>
287-
288277
=== pint/core rules ===
289278
290279
## Laravel Pint Code Formatter
291280
292-
- You must run `vendor/bin/pint --dirty` before finalizing changes to ensure your code matches the project's expected style.
293-
- Do not run `vendor/bin/pint --test`, simply run `vendor/bin/pint` to fix any formatting issues.
281+
- You must run `vendor/bin/pint --dirty --format agent` before finalizing changes to ensure your code matches the project's expected style.
282+
- Do not run `vendor/bin/pint --test --format agent`, simply run `vendor/bin/pint --format agent` to fix any formatting issues.
294283
295284
=== phpunit/core rules ===
296285

0 commit comments

Comments
 (0)