Skip to content

Commit d41c1de

Browse files
Merge pull request #62 from crynobone/nova5
Support Laravel Nova 5
2 parents 9803647 + 49345a0 commit d41c1de

18 files changed

+50
-65
lines changed

.github/workflows/main.yaml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,10 @@ jobs:
1313
- uses: actions/checkout@v4
1414
- uses: shivammathur/setup-php@v2
1515
with:
16-
php-version: 8.0
16+
php-version: 8.3
1717
- run: composer config http-basic.nova.laravel.com $NOVA_USERNAME $NOVA_PASSWORD
1818
env:
1919
NOVA_USERNAME: ${{ secrets.NOVA_USERNAME }}
2020
NOVA_PASSWORD: ${{ secrets.NOVA_PASSWORD }}
21-
- run: composer require laravel/nova:4.22.2 --no-update
22-
- uses: ramsey/composer-install@v2
21+
- uses: ramsey/composer-install@v3
2322
- run: vendor/bin/phpunit --testdox --colors=always

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/node_modules
22
/vendor
33
.phpunit.result.cache
4+
auth.json
45
composer.lock
56
package-lock.json

composer.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,14 @@
2222
}
2323
],
2424
"require": {
25-
"php": "^7.3|^8.0",
26-
"laravel/nova": "^4.0",
25+
"php": "^8.1",
26+
"laravel/nova": "^5.0",
2727
"spatie/valuestore": "^1.3"
2828
},
2929
"require-dev": {
30-
"orchestra/testbench": "^7.29|^8.9",
31-
"phpunit/phpunit": "^9.5"
30+
"laravel/nova-devtool": "^1.4",
31+
"orchestra/testbench": "^8.30|^9.8",
32+
"phpunit/phpunit": "^10.5"
3233
},
3334
"autoload": {
3435
"psr-4": {

dist/js/tool.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,15 @@
66
"prod": "mix --production"
77
},
88
"devDependencies": {
9-
"@vue/compiler-sfc": "^3.4.19",
10-
"autoprefixer": "^10.4.17",
11-
"codemirror": "^5.65.16",
12-
"laravel-mix": "^6.0.49",
9+
"@tailwindcss/container-queries": "^0.1.1",
10+
"@tailwindcss/typography": "^0.5.16",
11+
"autoprefixer": "^10.4.20",
12+
"codemirror": "^5.65.18",
13+
"laravel-nova-devtool": "file:vendor/laravel/nova-devtool",
1314
"lodash": "^4.17.21",
14-
"postcss": "^8.4.35",
15-
"prettier": "^3.2.5",
16-
"tailwindcss": "^3.4.1",
17-
"vue": "^3.4.19",
18-
"vue-loader": "^17.4.2"
15+
"prettier": "^3.4.2",
16+
"tailwindcss": "^3.4.17",
17+
"vue": "^3.5.13"
1918
},
2019
"prettier": {
2120
"printWidth": 140,

postcss.config.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
module.exports = {
2+
plugins: {
3+
'postcss-import': {},
4+
tailwindcss: {},
5+
autoprefixer: {},
6+
}
7+
};

resources/js/CodeSetting.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<DefaultSetting :setting="setting" :errors="errors || []">
3-
<div class="form-input form-input-bordered px-0 overflow-hidden">
3+
<div class="form-input form-control-bordered px-0 overflow-hidden">
44
<textarea ref="txt" :id="setting.key" />
55
</div>
66
</DefaultSetting>

resources/js/LoadingButton.vue

Lines changed: 0 additions & 23 deletions
This file was deleted.

resources/js/NumberSetting.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
})
1212
"
1313
:placeholder="setting.placeholder"
14-
class="w-full form-control form-input form-input-bordered"
14+
class="w-full form-control form-input form-control-bordered"
1515
/>
1616
</DefaultSetting>
1717
</template>

resources/js/SelectSetting.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,16 @@
1010
value: $event.target.value,
1111
})
1212
"
13-
class="w-full block form-control form-select form-select-bordered"
13+
class="w-full block form-control form-control-bordered form-input"
1414
>
1515
<option value="" selected>{{ setting.placeholder || __('Choose an option') }}</option>
1616
<option v-for="(label, option) in setting.options" :key="option" :value="option">
1717
{{ __(label) }}
1818
</option>
1919
</select>
20-
<IconArrow class="pointer-events-none form-select-arrow" />
20+
<span class="pointer-events-none absolute inset-y-0 right-[11px] flex items-center">
21+
<IconArrow />
22+
</span>
2123
</div>
2224
</DefaultSetting>
2325
</template>

resources/js/SettingWrapper.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<div class="field-wrapper flex flex-col border-b border-gray-100 dark:border-gray-700" :class="{ 'md:flex-row': !stacked }">
2+
<div class="flex flex-col border-b border-gray-100 dark:border-gray-700" :class="{ 'md:flex-row': !stacked }">
33
<slot />
44
</div>
55
</template>

resources/js/TextSetting.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
})
1212
"
1313
:placeholder="setting.placeholder"
14-
class="w-full form-control form-input form-input-bordered"
14+
class="w-full form-control form-input form-control-bordered"
1515
/>
1616
</DefaultSetting>
1717
</template>

resources/js/TextareaSetting.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
})
1111
"
1212
:placeholder="setting.placeholder"
13-
class="w-full form-control form-input form-input-bordered py-3 h-auto"
13+
class="w-full form-control form-input form-control-bordered py-3 h-auto"
1414
rows="6"
1515
/>
1616
</DefaultSetting>

resources/js/Tool.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@
1515
</Card>
1616
</template>
1717
<div class="flex">
18-
<LoadingButton class="ml-auto" @click="saveSettings" :processing="saving">
18+
<Button class="ml-auto" @click="saveSettings" :loading="saving">
1919
{{ __('Save') }}
20-
</LoadingButton>
20+
</Button>
2121
</div>
2222
</div>
2323
</template>
@@ -30,17 +30,17 @@ import SelectSetting from './SelectSetting.vue';
3030
import TextSetting from './TextSetting.vue';
3131
import TextareaSetting from './TextareaSetting.vue';
3232
import ToggleSetting from './ToggleSetting.vue';
33-
import LoadingButton from './LoadingButton.vue';
33+
import { Button } from 'laravel-nova-ui';
3434
3535
export default {
3636
components: {
37+
Button,
3738
CodeSetting,
3839
NumberSetting,
3940
SelectSetting,
4041
TextSetting,
4142
TextareaSetting,
4243
ToggleSetting,
43-
LoadingButton,
4444
},
4545
data: () => ({
4646
saving: false,

resources/js/tool.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
11
import Tool from './Tool.vue';
22

3-
Nova.booting((app, store) => {
4-
Nova.inertia('NovaSettingsTool', Tool);
5-
});
3+
Nova.inertia('NovaSettingsTool', Tool);

testbench.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
1+
laravel: '@testbench'
2+
13
providers:
4+
- Laravel\Nova\NovaServiceProvider
5+
- Laravel\Nova\NovaCoreServiceProvider
26
- Workbench\App\Providers\NovaServiceProvider
7+
- Bakerkretzmar\NovaSettingsTool\SettingsToolServiceProvider
38

49
migrations: true
510
seeders:

webpack.mix.js

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,10 @@
11
const mix = require('laravel-mix');
2-
const { join } = require('path');
2+
3+
mix.extend('nova', new require('laravel-nova-devtool'));
34

45
mix.setPublicPath('dist').disableNotifications();
56

67
mix.vue({ version: 3 })
78
.js('resources/js/tool.js', 'js')
89
.css('resources/css/tool.css', 'css', [require('tailwindcss'), require('autoprefixer')])
9-
.webpackConfig({
10-
externals: {
11-
vue: 'Vue',
12-
},
13-
output: {
14-
uniqueName: 'bakerkretzmar/nova-settings-tool',
15-
},
16-
});
10+
.nova('bakerkretzmar/nova-settings-tool');

workbench/app/Providers/NovaServiceProvider.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public function boot()
2828
protected function routes()
2929
{
3030
Nova::routes()
31-
->withAuthenticationRoutes()
31+
->withAuthenticationRoutes(default: true)
3232
->withPasswordResetRoutes()
3333
->register();
3434
}
@@ -65,7 +65,7 @@ protected function dashboards()
6565
public function tools()
6666
{
6767
return [
68-
new \Bakerkretzmar\NovaSettingsTool\SettingsTool(),
68+
new \Bakerkretzmar\NovaSettingsTool\SettingsTool,
6969
];
7070
}
7171

@@ -88,6 +88,8 @@ protected function resources()
8888
*/
8989
public function register()
9090
{
91+
parent::register();
92+
9193
//
9294
}
9395
}

0 commit comments

Comments
 (0)