Skip to content

Commit 4657c3d

Browse files
committed
update
1 parent bf7354f commit 4657c3d

File tree

6 files changed

+71
-15
lines changed

6 files changed

+71
-15
lines changed

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,14 @@ php artisan vendor:publish --tag=laravel-admin-code-mirror
3838
```php
3939
$form->js('code');
4040

41+
// alias of `js` method
4142
$form->javascript('code');
43+
44+
$form->json('code');
45+
46+
$form->jsond('code');
47+
48+
$form->typescript('code');
4249
```
4350

4451
设置高度

src/Editor.php

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,20 @@
33
namespace Encore\JsEditor;
44

55
use Encore\Admin\Form\Field;
6+
use Jxlwqq\CodeMirror\CodeMirror;
67

78
class Editor extends Field
89
{
10+
protected $options = [
11+
'mode' => 'javascript',
12+
'lineNumbers' => true,
13+
'matchBrackets' => true,
14+
'continueComments' => true,
15+
'extraKeys' => [
16+
'Ctrl-Q' => 'toggleComment',
17+
],
18+
];
19+
920
/**
1021
* {@inheritdoc}
1122
*/
@@ -15,18 +26,18 @@ class Editor extends Field
1526
* {@inheritdoc}
1627
*/
1728
protected static $css = [
18-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/lib/codemirror.css',
29+
CodeMirror::ASSETS_PATH.'lib/codemirror.css',
1930
];
2031

2132
/**
2233
* {@inheritdoc}
2334
*/
2435
protected static $js = [
25-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/lib/codemirror.js',
26-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/addon/edit/matchbrackets.js',
27-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/addon/comment/continuecomment.js',
28-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/addon/comment/comment.js',
29-
'vendor/laravel-admin-ext/code-mirror/codemirror-5.40.0/mode/javascript/javascript.js',
36+
CodeMirror::ASSETS_PATH.'lib/codemirror.js',
37+
CodeMirror::ASSETS_PATH.'addon/edit/matchbrackets.js',
38+
CodeMirror::ASSETS_PATH.'addon/comment/continuecomment.js',
39+
CodeMirror::ASSETS_PATH.'addon/comment/comment.js',
40+
CodeMirror::ASSETS_PATH.'mode/javascript/javascript.js',
3041
];
3142

3243
/**
@@ -46,15 +57,7 @@ public function height($height = 10)
4657
public function render()
4758
{
4859
$options = array_merge(
49-
[
50-
'mode' => 'javascript',
51-
'lineNumbers' => true,
52-
'matchBrackets' => true,
53-
'continueComments' => true,
54-
'extraKeys' => [
55-
'Ctrl-Q' => 'toggleComment',
56-
],
57-
],
60+
$this->options,
5861
JsEditor::config('config', [])
5962
);
6063

src/JsEditorServiceProvider.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ public function boot(JsEditor $extension)
2020
Admin::booting(function () {
2121
Form::extend('js', Editor::class);
2222
Form::alias('js', 'javascript');
23+
24+
Form::extend('json', Json::class);
25+
Form::extend('jsond', Jsond::class);
26+
Form::extend('typescript', Typescript::class);
2327
});
2428
}
2529
}

src/Json.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
3+
namespace Encore\JsEditor;
4+
5+
class Json extends Editor
6+
{
7+
protected $options = [
8+
'matchBrackets' => true,
9+
'autoCloseBrackets' => true,
10+
'lineNumbers' => true,
11+
'mode' => 'application/json',
12+
'lineWrapping' => true,
13+
];
14+
}

src/Jsond.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
3+
namespace Encore\JsEditor;
4+
5+
class Jsond extends Editor
6+
{
7+
protected $options = [
8+
'matchBrackets' => true,
9+
'autoCloseBrackets' => true,
10+
'lineNumbers' => true,
11+
'mode' => 'application/ld+json',
12+
'lineWrapping' => true,
13+
];
14+
}

src/Typescript.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
3+
namespace Encore\JsEditor;
4+
5+
class Typescript extends Editor
6+
{
7+
protected $options = [
8+
'matchBrackets' => true,
9+
'autoCloseBrackets' => true,
10+
'lineNumbers' => true,
11+
'mode' => 'text/typescript',
12+
'lineWrapping' => true,
13+
];
14+
}

0 commit comments

Comments
 (0)