Skip to content

Commit 48c783f

Browse files
committed
refactor: move config to statamic namespace (statamic.imageboss)
1 parent e4867db commit 48c783f

File tree

5 files changed

+37
-31
lines changed

5 files changed

+37
-31
lines changed

src/ImageBossBuilder.php

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -114,13 +114,13 @@ public function preset(ImagePreset|\BackedEnum|string $preset): self
114114
$config = $preset->config();
115115
} else {
116116
$presetName = $preset instanceof \BackedEnum ? $preset->value : $preset;
117-
$availablePresets = array_keys(config('statamic-imageboss.presets', []));
117+
$availablePresets = array_keys(config('statamic.imageboss.presets', []));
118118

119119
if (! in_array($presetName, $availablePresets, true)) {
120120
return $this;
121121
}
122122

123-
$config = config("statamic-imageboss.presets.{$presetName}", []);
123+
$config = config("statamic.imageboss.presets.{$presetName}", []);
124124
}
125125

126126
if (empty($config)) {
@@ -148,10 +148,10 @@ public function preset(ImagePreset|\BackedEnum|string $preset): self
148148

149149
public function url(): string
150150
{
151-
$width = $this->width ?? config('statamic-imageboss.default_width', 1000);
151+
$width = $this->width ?? config('statamic.imageboss.default_width', 1000);
152152
$height = $this->calculateHeight($width);
153153

154-
$source = config('statamic-imageboss.source');
154+
$source = config('statamic.imageboss.source');
155155

156156
if (! $source) {
157157
return $this->generateGlideUrl($width, $height);
@@ -173,7 +173,7 @@ public function srcset(): array
173173
->map(function (int $width) {
174174
$height = $this->calculateHeight($width);
175175

176-
$source = config('statamic-imageboss.source');
176+
$source = config('statamic.imageboss.source');
177177

178178
if (! $source) {
179179
$url = $this->generateGlideUrl($width, $height);
@@ -205,13 +205,13 @@ public function srcsetString(): string
205205
*/
206206
public function rias(): string
207207
{
208-
$source = config('statamic-imageboss.source');
208+
$source = config('statamic.imageboss.source');
209209

210210
if (! $source) {
211211
return $this->url();
212212
}
213213

214-
$baseUrl = config('statamic-imageboss.base_url', 'https://img.imageboss.me');
214+
$baseUrl = config('statamic.imageboss.base_url', 'https://img.imageboss.me');
215215
$height = ($this->height || $this->ratio) ? '{height}' : null;
216216

217217
$operations = collect(['', $source]);
@@ -240,7 +240,7 @@ public function rias(): string
240240

241241
private function buildImageBossPath(int $width, ?int $height): string
242242
{
243-
$source = config('statamic-imageboss.source');
243+
$source = config('statamic.imageboss.source');
244244
$operations = collect(['', $source]);
245245

246246
if ($height) {
@@ -275,8 +275,8 @@ private function sanitizePath(string $path): string
275275

276276
private function signPath(string $path): string
277277
{
278-
$baseUrl = config('statamic-imageboss.base_url', 'https://img.imageboss.me');
279-
$secret = config('statamic-imageboss.secret');
278+
$baseUrl = config('statamic.imageboss.base_url', 'https://img.imageboss.me');
279+
$secret = config('statamic.imageboss.secret');
280280

281281
if (! $secret) {
282282
return $baseUrl.$path;
@@ -303,9 +303,9 @@ private function generateGlideUrl(int $width, ?int $height): string
303303
*/
304304
private function generateWidths(): array
305305
{
306-
$min = $this->min ?? config('statamic-imageboss.presets.default.min', 320);
307-
$max = $this->max ?? config('statamic-imageboss.presets.default.max', 2560);
308-
$interval = $this->interval ?? config('statamic-imageboss.width_interval', 320);
306+
$min = $this->min ?? config('statamic.imageboss.presets.default.min', 320);
307+
$max = $this->max ?? config('statamic.imageboss.presets.default.max', 2560);
308+
$interval = $this->interval ?? config('statamic.imageboss.width_interval', 320);
309309

310310
$widths = [];
311311

src/StatamicImagebossServiceProvider.php

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,24 @@ class StatamicImagebossServiceProvider extends PackageServiceProvider
1111
{
1212
public function configurePackage(Package $package): void
1313
{
14-
$package
15-
->name('statamic-imageboss')
16-
->hasConfigFile();
14+
$package->name('statamic-imageboss');
1715
}
1816

1917
public function packageRegistered(): void
2018
{
19+
$this->mergeConfigFrom(__DIR__.'/../config/statamic/imageboss.php', 'statamic.imageboss');
20+
2121
$this->app->singleton(ImageBoss::class);
2222
}
2323

2424
public function packageBooted(): void
2525
{
26+
if ($this->app->runningInConsole()) {
27+
$this->publishes([
28+
__DIR__.'/../config/statamic/imageboss.php' => config_path('statamic/imageboss.php'),
29+
], 'statamic-imageboss');
30+
}
31+
2632
Statamic::tag('imageboss', ImagebossTag::class);
2733
}
2834
}

tests/Feature/ImageBossBuilderTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@
66
use Noo\StatamicImageboss\Tests\Fixtures\TestPreset;
77

88
beforeEach(function () {
9-
config()->set('statamic-imageboss.source', 'test-source');
10-
config()->set('statamic-imageboss.secret', null);
11-
config()->set('statamic-imageboss.base_url', 'https://img.imageboss.me');
12-
config()->set('statamic-imageboss.default_width', 1000);
13-
config()->set('statamic-imageboss.width_interval', 320);
14-
config()->set('statamic-imageboss.presets', [
9+
config()->set('statamic.imageboss.source', 'test-source');
10+
config()->set('statamic.imageboss.secret', null);
11+
config()->set('statamic.imageboss.base_url', 'https://img.imageboss.me');
12+
config()->set('statamic.imageboss.default_width', 1000);
13+
config()->set('statamic.imageboss.width_interval', 320);
14+
config()->set('statamic.imageboss.presets', [
1515
'default' => ['min' => 320, 'max' => 2560],
1616
'thumbnail' => ['min' => 200, 'max' => 700, 'ratio' => 1, 'interval' => 250],
1717
'card' => ['min' => 300, 'max' => 800, 'ratio' => 0.8],
@@ -126,7 +126,7 @@
126126
});
127127

128128
it('signs url when secret is configured', function () {
129-
config()->set('statamic-imageboss.secret', 'test-secret');
129+
config()->set('statamic.imageboss.secret', 'test-secret');
130130

131131
$asset = createMockAsset();
132132

@@ -138,7 +138,7 @@
138138
});
139139

140140
it('uses default width from config when no width specified', function () {
141-
config()->set('statamic-imageboss.default_width', 500);
141+
config()->set('statamic.imageboss.default_width', 500);
142142

143143
$asset = createMockAsset();
144144

@@ -216,7 +216,7 @@
216216
});
217217

218218
it('interface preset takes precedence over config lookup', function () {
219-
config()->set('statamic-imageboss.presets.custom', ['min' => 999, 'max' => 9999]);
219+
config()->set('statamic.imageboss.presets.custom', ['min' => 999, 'max' => 9999]);
220220

221221
$asset = createMockAsset();
222222

tests/TestCase.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ protected function getPackageProviders($app)
1616

1717
protected function getEnvironmentSetUp($app): void
1818
{
19-
$app['config']->set('statamic-imageboss.source', null);
20-
$app['config']->set('statamic-imageboss.secret', null);
21-
$app['config']->set('statamic-imageboss.base_url', 'https://img.imageboss.me');
22-
$app['config']->set('statamic-imageboss.default_width', 1000);
23-
$app['config']->set('statamic-imageboss.width_interval', 320);
24-
$app['config']->set('statamic-imageboss.presets', [
19+
$app['config']->set('statamic.imageboss.source', null);
20+
$app['config']->set('statamic.imageboss.secret', null);
21+
$app['config']->set('statamic.imageboss.base_url', 'https://img.imageboss.me');
22+
$app['config']->set('statamic.imageboss.default_width', 1000);
23+
$app['config']->set('statamic.imageboss.width_interval', 320);
24+
$app['config']->set('statamic.imageboss.presets', [
2525
'default' => ['min' => 320, 'max' => 2560],
2626
'thumbnail' => ['min' => 200, 'max' => 700, 'ratio' => 1, 'interval' => 250],
2727
'card' => ['min' => 300, 'max' => 800, 'ratio' => 0.8],

0 commit comments

Comments
 (0)