Skip to content

Commit 88b0552

Browse files
committed
refactor: move logic to class
1 parent 0cd7860 commit 88b0552

File tree

2 files changed

+27
-7
lines changed

2 files changed

+27
-7
lines changed

resources/views/reference.blade.php

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -142,15 +142,11 @@
142142
</head>
143143

144144
<body>
145-
<script id="api-reference" data-url="{{ config('scalar.url') }}"></script>
145+
<script id="api-reference" data-url="{{ Scalar::url() }}"></script>
146146

147147
<!-- Optional: You can set a full configuration object like this: -->
148148
<script>
149-
var configuration = {!! json_encode(
150-
array_merge(config('scalar.configuration'), [
151-
'theme' => config('scalar.configuration.theme') === 'laravel' ? 'none' : config('scalar.configuration.theme'),
152-
]),
153-
) !!}
149+
var configuration = {!! Scalar::configurationJson() !!}
154150
155151
document.getElementById('api-reference').dataset.configuration =
156152
JSON.stringify(configuration)

src/Scalar.php

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,28 @@
22

33
namespace Scalar\Scalar;
44

5-
class Scalar {}
5+
class Scalar
6+
{
7+
public static function url()
8+
{
9+
return config('scalar.url');
10+
}
11+
12+
public static function configurationJson()
13+
{
14+
/** Get the Scalar API Reference configuration */
15+
$configuration = config('scalar.configuration');
16+
17+
/** Don’t add a theme if `laravel` is selected */
18+
$theme = config('scalar.configuration.theme') === 'laravel' ?
19+
'none' :
20+
config('scalar.configuration.theme');
21+
22+
/** Render as JSON */
23+
return json_encode(
24+
array_merge($configuration, [
25+
'theme' => $theme,
26+
]),
27+
);
28+
}
29+
}

0 commit comments

Comments
 (0)