generator-folklore 3.0.26 → 3.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/generators/build/index.js +2 -1
- package/lib/generators/eslint/index.js +15 -17
- package/lib/generators/eslint/templates/.eslint.config.js +62 -0
- package/lib/generators/intl/index.js +1 -1
- package/lib/generators/laravel-mediatheque/index.js +1 -1
- package/lib/generators/laravel-panneau/index.js +5 -5
- package/lib/generators/laravel-panneau/templates/app/Contracts/Entities/Block.php +9 -0
- package/lib/generators/laravel-panneau/templates/app/Contracts/{Resources → Entities}/Blocks/Image.php +3 -3
- package/lib/generators/laravel-panneau/templates/app/Contracts/{Resources → Entities}/Blocks/Text.php +2 -2
- package/lib/generators/laravel-panneau/templates/app/Contracts/Entities/Page.php +9 -0
- package/lib/generators/laravel-panneau/templates/app/Contracts/Entities/Pages/Home.php +9 -0
- package/lib/generators/laravel-panneau/templates/app/Contracts/Repositories/Pages.php +1 -1
- package/lib/generators/laravel-panneau/templates/app/Entities/Block.php +10 -0
- package/lib/generators/laravel-panneau/templates/app/{Resources → Entities}/Blocks/ImageBlock.php +5 -5
- package/lib/generators/laravel-panneau/templates/app/{Resources → Entities}/Blocks/TextBlock.php +3 -3
- package/lib/generators/laravel-panneau/templates/app/Entities/Page.php +10 -0
- package/lib/generators/laravel-panneau/templates/app/Entities/Pages/HomePage.php +10 -0
- package/lib/generators/laravel-panneau/templates/app/Http/Resources/BlockResource.php +3 -3
- package/lib/generators/laravel-panneau/templates/app/Http/Resources/PageResource.php +2 -2
- package/lib/generators/laravel-panneau/templates/app/Models/Block.php +6 -6
- package/lib/generators/laravel-panneau/templates/app/Models/Page.php +4 -4
- package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/BlockResource.php +3 -3
- package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/PageResource.php +3 -3
- package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/ParentPageResource.php +1 -1
- package/lib/generators/laravel-panneau/templates/app/Panneau/Policies/PanneauPolicy.php +1 -1
- package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Blocks.php +1 -1
- package/lib/generators/laravel-panneau/templates/app/Repositories/Pages.php +1 -1
- package/lib/generators/laravel-project/index.js +2 -2
- package/lib/generators/laravel-project/templates/laravel/app/Contracts/Entities/User.php +9 -0
- package/lib/generators/laravel-project/templates/laravel/app/Contracts/Repositories/Users.php +1 -1
- package/lib/generators/laravel-project/templates/laravel/app/Entities/User.php +10 -0
- package/lib/generators/laravel-project/templates/laravel/app/Models/User.php +2 -2
- package/lib/generators/laravel-project/templates/laravel/app/Repositories/Users.php +1 -1
- package/lib/generators/prettier/index.js +4 -3
- package/lib/generators/prettier/templates/prettierrc.json +10 -3
- package/lib/generators/react-app/index.js +16 -16
- package/lib/generators/stylelint/index.js +2 -2
- package/lib/generators/stylelint/templates/stylelintrc +4 -2
- package/package.json +2 -2
- package/lib/generators/eslint/templates/eslintignore +0 -7
- package/lib/generators/eslint/templates/eslintrc +0 -44
- package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Block.php +0 -10
- package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Page.php +0 -10
- package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Pages/Home.php +0 -9
- package/lib/generators/laravel-panneau/templates/app/Resources/Block.php +0 -10
- package/lib/generators/laravel-panneau/templates/app/Resources/Page.php +0 -10
- package/lib/generators/laravel-panneau/templates/app/Resources/Pages/HomePage.php +0 -10
- package/lib/generators/laravel-project/templates/laravel/app/Contracts/Resources/User.php +0 -10
- package/lib/generators/laravel-project/templates/laravel/app/Resources/User.php +0 -11
@@ -70,6 +70,7 @@ module.exports = class AppGenerator extends _generator.default {
|
|
70
70
|
this.packageJson.merge({
|
71
71
|
scripts,
|
72
72
|
build: {
|
73
|
+
typescript: true,
|
73
74
|
outputPath: (0, _utils.ensureLeadingDotSlash)(buildPath),
|
74
75
|
srcPath: (0, _utils.ensureLeadingDotSlash)(srcPath),
|
75
76
|
htmlPath: (0, _utils.ensureLeadingDotSlash)(htmlPath),
|
@@ -80,7 +81,7 @@ module.exports = class AppGenerator extends _generator.default {
|
|
80
81
|
},
|
81
82
|
dependencies() {
|
82
83
|
this.addDevDependencies({
|
83
|
-
'@folklore/cli': '^0.1.
|
84
|
+
'@folklore/cli': '^0.1.28'
|
84
85
|
});
|
85
86
|
}
|
86
87
|
};
|
@@ -14,28 +14,26 @@ module.exports = class EslintGenerator extends _generator.default {
|
|
14
14
|
}
|
15
15
|
get writing() {
|
16
16
|
return {
|
17
|
-
|
18
|
-
const srcPath = this.templatePath('
|
19
|
-
const destPath = this.destinationPath('.
|
20
|
-
this.fs.copy(srcPath, destPath);
|
21
|
-
},
|
22
|
-
eslintignore() {
|
23
|
-
const srcPath = this.templatePath('eslintignore');
|
24
|
-
const destPath = this.destinationPath('.eslintignore');
|
17
|
+
eslintConfig() {
|
18
|
+
const srcPath = this.templatePath('.eslint.config.js');
|
19
|
+
const destPath = this.destinationPath('eslint.config.js');
|
25
20
|
this.fs.copy(srcPath, destPath);
|
26
21
|
},
|
27
22
|
dependencies() {
|
28
23
|
this.addDevDependencies({
|
29
|
-
'babel-preset-airbnb': '^5.0.0',
|
30
24
|
'@babel/eslint-parser': '^7.18.9',
|
31
|
-
|
32
|
-
'eslint-
|
33
|
-
'eslint-
|
34
|
-
|
35
|
-
'eslint-
|
36
|
-
'eslint-plugin-
|
37
|
-
'eslint-plugin-
|
38
|
-
'eslint-plugin-
|
25
|
+
'@babel/preset-typescript': '^7.26.0',
|
26
|
+
'@eslint-react/eslint-plugin': '^1.53.0',
|
27
|
+
'eslint-plugin-react': '^7.37.5',
|
28
|
+
eslint: '^9.36.0',
|
29
|
+
'eslint-config-prettier': '^10.1.8',
|
30
|
+
'eslint-plugin-formatjs': '^5.4.0',
|
31
|
+
'eslint-plugin-import': '^2.32.0',
|
32
|
+
'eslint-plugin-jsx-a11y': '^6.10.2',
|
33
|
+
'eslint-plugin-prettier': '^5.5.4',
|
34
|
+
'eslint-plugin-react': '^7.37.5',
|
35
|
+
typescript: '^5.7.3',
|
36
|
+
'typescript-eslint': '^8.25.0'
|
39
37
|
});
|
40
38
|
}
|
41
39
|
};
|
@@ -0,0 +1,62 @@
|
|
1
|
+
const reactPlugin = require('eslint-plugin-react');
|
2
|
+
const formatjs = require('eslint-plugin-formatjs');
|
3
|
+
const globals = require('globals');
|
4
|
+
const babelParser = require('@babel/eslint-parser');
|
5
|
+
const importPlugin = require('eslint-plugin-import');
|
6
|
+
const js = require('@eslint/js');
|
7
|
+
const tseslint = require('typescript-eslint');
|
8
|
+
const eslintPluginPrettierRecommended = require('eslint-plugin-prettier/recommended');
|
9
|
+
const eslintReact = require('@eslint-react/eslint-plugin');
|
10
|
+
|
11
|
+
module.exports = tseslint.config(
|
12
|
+
{
|
13
|
+
files: ['**/*.js', '**/*.jsx', '**/*.ts', '**/*.tsx'],
|
14
|
+
},
|
15
|
+
{
|
16
|
+
ignores: ['**/*.config.js'],
|
17
|
+
},
|
18
|
+
{
|
19
|
+
settings: {
|
20
|
+
react: {
|
21
|
+
defaultVersion: '19',
|
22
|
+
},
|
23
|
+
},
|
24
|
+
languageOptions: {
|
25
|
+
globals: {
|
26
|
+
...Object.keys(globals.browser).reduce(
|
27
|
+
(map, key) => ({
|
28
|
+
...map,
|
29
|
+
[key.trim()]: globals.browser[key],
|
30
|
+
}),
|
31
|
+
{},
|
32
|
+
),
|
33
|
+
},
|
34
|
+
},
|
35
|
+
},
|
36
|
+
{
|
37
|
+
languageOptions: {
|
38
|
+
parser: babelParser,
|
39
|
+
parserOptions: {
|
40
|
+
ecmaVersion: 'latest',
|
41
|
+
requireConfigFile: false,
|
42
|
+
babelOptions: {
|
43
|
+
presets: ['@babel/preset-react', '@babel/preset-typescript'],
|
44
|
+
},
|
45
|
+
},
|
46
|
+
},
|
47
|
+
},
|
48
|
+
js.configs.recommended,
|
49
|
+
tseslint.configs.recommended,
|
50
|
+
eslintReact.configs['recommended-typescript'],
|
51
|
+
importPlugin.flatConfigs.typescript,
|
52
|
+
importPlugin.flatConfigs.recommended,
|
53
|
+
formatjs.configs.recommended,
|
54
|
+
reactPlugin.configs.flat.recommended,
|
55
|
+
reactPlugin.configs.flat['jsx-runtime'],
|
56
|
+
eslintPluginPrettierRecommended,
|
57
|
+
{
|
58
|
+
rules: {
|
59
|
+
'formatjs/no-literal-string-in-jsx': 'off',
|
60
|
+
},
|
61
|
+
},
|
62
|
+
);
|
@@ -55,7 +55,7 @@ module.exports = class LaravelMediathequeGenerator extends _generator.default {
|
|
55
55
|
composerJSON() {
|
56
56
|
this.composerJson.merge({
|
57
57
|
require: {
|
58
|
-
'folklore/laravel-folklore': 'v1.x-dev',
|
58
|
+
'folklore/laravel-folklore': 'v1.1.x-dev',
|
59
59
|
'folklore/laravel-mediatheque': 'v1.1.x-dev'
|
60
60
|
}
|
61
61
|
});
|
@@ -53,11 +53,11 @@ module.exports = class LaravelPanneauGenerator extends _generator.default {
|
|
53
53
|
},
|
54
54
|
packageJSON() {
|
55
55
|
this.addDependencies({
|
56
|
-
'@panneau/app': '^
|
57
|
-
'@panneau/core': '^
|
58
|
-
'@panneau/data': '^
|
59
|
-
'@panneau/field-text': '^
|
60
|
-
'@panneau/field-localized': '^
|
56
|
+
'@panneau/app': '^3.0.293',
|
57
|
+
'@panneau/core': '^3.0.292',
|
58
|
+
'@panneau/data': '^3.0.292',
|
59
|
+
'@panneau/field-text': '^3.0.293',
|
60
|
+
'@panneau/field-localized': '^3.0.293'
|
61
61
|
});
|
62
62
|
},
|
63
63
|
config() {
|
@@ -1,9 +1,9 @@
|
|
1
1
|
<?php
|
2
2
|
|
3
|
-
namespace App\Contracts\
|
3
|
+
namespace App\Contracts\Entities\Blocks;
|
4
4
|
|
5
|
-
use App\Contracts\
|
6
|
-
use Folklore\Contracts\
|
5
|
+
use App\Contracts\Entities\Block as BaseBlock;
|
6
|
+
use Folklore\Contracts\Entities\Image as ImageContract;
|
7
7
|
|
8
8
|
interface Image extends BaseBlock
|
9
9
|
{
|
package/lib/generators/laravel-panneau/templates/app/{Resources → Entities}/Blocks/ImageBlock.php
RENAMED
@@ -1,11 +1,11 @@
|
|
1
1
|
<?php
|
2
2
|
|
3
|
-
namespace App\
|
3
|
+
namespace App\Entities\Blocks;
|
4
4
|
|
5
|
-
use App\
|
6
|
-
use App\Contracts\
|
7
|
-
use Folklore\Contracts\
|
8
|
-
use Folklore\
|
5
|
+
use App\Entities\Block;
|
6
|
+
use App\Contracts\Entities\Blocks\Image as ImageBlockContract;
|
7
|
+
use Folklore\Contracts\Entities\Image as ImageContract;
|
8
|
+
use Folklore\Entities\Image;
|
9
9
|
|
10
10
|
class ImageBlock extends Block implements ImageBlockContract
|
11
11
|
{
|
package/lib/generators/laravel-panneau/templates/app/{Resources → Entities}/Blocks/TextBlock.php
RENAMED
@@ -1,9 +1,9 @@
|
|
1
1
|
<?php
|
2
2
|
|
3
|
-
namespace App\
|
3
|
+
namespace App\Entities\Blocks;
|
4
4
|
|
5
|
-
use App\
|
6
|
-
use App\Contracts\
|
5
|
+
use App\Entities\Block;
|
6
|
+
use App\Contracts\Entities\Blocks\Text as TextBlockContract;
|
7
7
|
|
8
8
|
class TextBlock extends Block implements TextBlockContract
|
9
9
|
{
|
@@ -3,10 +3,10 @@
|
|
3
3
|
namespace App\Http\Resources;
|
4
4
|
|
5
5
|
use Illuminate\Http\Resources\Json\JsonResource;
|
6
|
-
use Folklore\Contracts\
|
6
|
+
use Folklore\Contracts\Entities\HasBlocks;
|
7
7
|
use Folklore\Http\Resources\LocalizedResource;
|
8
|
-
use App\Contracts\
|
9
|
-
use App\Contracts\
|
8
|
+
use App\Contracts\Entities\Blocks\Text as TextBlock;
|
9
|
+
use App\Contracts\Entities\Blocks\ImageBlock as ImageBlock;
|
10
10
|
use Folklore\Http\Resources\MediaResource;
|
11
11
|
|
12
12
|
class BlockResource extends JsonResource
|
@@ -3,8 +3,8 @@
|
|
3
3
|
namespace App\Http\Resources;
|
4
4
|
|
5
5
|
use Illuminate\Http\Resources\Json\JsonResource;
|
6
|
-
use App\Contracts\
|
7
|
-
use App\Contracts\
|
6
|
+
use App\Contracts\Entities\Page;
|
7
|
+
use App\Contracts\Entities\Pages\Home as HomePage;
|
8
8
|
use Folklore\Http\Resources\MediaResource;
|
9
9
|
use Folklore\Contracts\Resources\HasBlocks;
|
10
10
|
|
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
namespace App\Models;
|
4
4
|
|
5
|
-
use App\Contracts\
|
6
|
-
use App\
|
5
|
+
use App\Contracts\Entities\Block as BlockContract;
|
6
|
+
use App\Entities\Block as BlockResource;
|
7
7
|
use Folklore\Models\Block as BaseBlock;
|
8
8
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
9
9
|
|
@@ -11,13 +11,13 @@ class Block extends BaseBlock
|
|
11
11
|
{
|
12
12
|
use HasFactory;
|
13
13
|
|
14
|
-
protected $
|
15
|
-
'text' => \App\
|
16
|
-
'image' => \App\
|
14
|
+
protected $entitiesByType = [
|
15
|
+
'text' => \App\Entities\Blocks\TextBlock::class,
|
16
|
+
'image' => \App\Entities\Blocks\ImageBlock::class,
|
17
17
|
];
|
18
18
|
|
19
19
|
public function toResource(): BlockContract
|
20
20
|
{
|
21
|
-
return $this->
|
21
|
+
return $this->toTypedEntity() ?? new BlockResource($this);
|
22
22
|
}
|
23
23
|
}
|
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
namespace App\Models;
|
4
4
|
|
5
|
-
use App\Contracts\
|
6
|
-
use App\
|
5
|
+
use App\Contracts\Entities\Page as PageContract;
|
6
|
+
use App\Entities\Page as PageResource;
|
7
7
|
use Folklore\Models\Page as BasePage;
|
8
8
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
9
9
|
|
@@ -11,13 +11,13 @@ class Page extends BasePage
|
|
11
11
|
{
|
12
12
|
use HasFactory;
|
13
13
|
|
14
|
-
protected $
|
14
|
+
protected $entitiesByType = [
|
15
15
|
'home' => \App\Resources\Pages\HomePage::class,
|
16
16
|
];
|
17
17
|
|
18
18
|
public function toResource(): PageContract
|
19
19
|
{
|
20
|
-
return $this->
|
20
|
+
return $this->toTypedEntity() ?? new PageResource($this);
|
21
21
|
}
|
22
22
|
|
23
23
|
public function blocks()
|
package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/BlockResource.php
CHANGED
@@ -3,10 +3,10 @@
|
|
3
3
|
namespace App\Panneau\Http\Resources;
|
4
4
|
|
5
5
|
use Illuminate\Http\Resources\Json\JsonResource;
|
6
|
-
use Folklore\Contracts\
|
6
|
+
use Folklore\Contracts\Entities\HasBlocks;
|
7
7
|
use Folklore\Http\Resources\LocalizedResource;
|
8
|
-
use App\Contracts\
|
9
|
-
use App\Contracts\
|
8
|
+
use App\Contracts\Entities\Blocks\Text as TextBlock;
|
9
|
+
use App\Contracts\Entities\Blocks\Image as ImageBlock;
|
10
10
|
use Folklore\Http\Resources\MediaResource;
|
11
11
|
|
12
12
|
class BlockResource extends JsonResource
|
package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/PageResource.php
CHANGED
@@ -4,10 +4,10 @@ namespace App\Panneau\Http\Resources;
|
|
4
4
|
|
5
5
|
use Illuminate\Http\Resources\Json\JsonResource;
|
6
6
|
use Folklore\Http\Resources\MediaResource;
|
7
|
-
use App\Contracts\
|
8
|
-
use Folklore\Contracts\
|
7
|
+
use App\Contracts\Entities\Page;
|
8
|
+
use Folklore\Contracts\Entities\HasBlocks;
|
9
9
|
use Folklore\Http\Resources\LocalizedResource;
|
10
|
-
use App\Contracts\
|
10
|
+
use App\Contracts\Entities\Pages\Home as HomePage;
|
11
11
|
|
12
12
|
class PageResource extends JsonResource
|
13
13
|
{
|
package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/ParentPageResource.php
CHANGED
@@ -4,7 +4,7 @@ namespace App\Panneau\Http\Resources;
|
|
4
4
|
|
5
5
|
use Illuminate\Http\Resources\Json\JsonResource;
|
6
6
|
use Folklore\Http\Resources\MediaResource;
|
7
|
-
use App\Contracts\
|
7
|
+
use App\Contracts\Entities\Page;
|
8
8
|
use Folklore\Http\Resources\LocalizedResource;
|
9
9
|
|
10
10
|
class ParentPageResource extends JsonResource
|
@@ -6,7 +6,7 @@ use Panneau\Support\Resource;
|
|
6
6
|
|
7
7
|
class Blocks extends Resource
|
8
8
|
{
|
9
|
-
public static $repository = \App\Contracts\
|
9
|
+
public static $repository = \App\Contracts\Entities\Blocks::class;
|
10
10
|
|
11
11
|
public static $jsonResource = \App\Panneau\Http\Resources\BlockResource::class;
|
12
12
|
|
@@ -6,7 +6,7 @@ use Folklore\Repositories\Pages as BasePages;
|
|
6
6
|
use App\Contracts\Repositories\Pages as PagesContract;
|
7
7
|
use Folklore\Models\Page as PageBaseModel;
|
8
8
|
use App\Models\Page as PageModel;
|
9
|
-
use App\Contracts\
|
9
|
+
use App\Contracts\Entities\Page as PageContract;
|
10
10
|
|
11
11
|
class Pages extends BasePages implements PagesContract
|
12
12
|
{
|
@@ -301,12 +301,12 @@ module.exports = class LaravelProjectGenerator extends _generator.default {
|
|
301
301
|
composerJSON() {
|
302
302
|
this.composerJson.merge({
|
303
303
|
require: {
|
304
|
-
'folklore/laravel-folklore': 'v1.x-dev',
|
304
|
+
'folklore/laravel-folklore': 'v1.1.x-dev',
|
305
305
|
'folklore/laravel-locale': 'v8.x-dev',
|
306
306
|
'folklore/laravel-image': 'v1.x-dev'
|
307
307
|
},
|
308
308
|
'require-dev': {
|
309
|
-
'laravel/telescope': '^
|
309
|
+
'laravel/telescope': '^5.0'
|
310
310
|
},
|
311
311
|
extra: {
|
312
312
|
laravel: {
|
@@ -6,8 +6,8 @@ namespace App\Models;
|
|
6
6
|
use Folklore\Models\User as BaseUser;
|
7
7
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
8
8
|
use Laravel\Sanctum\HasApiTokens;
|
9
|
-
use App\Contracts\
|
10
|
-
use App\
|
9
|
+
use App\Contracts\Entities\User as UserContract;
|
10
|
+
use App\Entities\User as UserResource;
|
11
11
|
|
12
12
|
class User extends BaseUser
|
13
13
|
{
|
@@ -6,7 +6,7 @@ use Folklore\Repositories\Users as BaseUsers;
|
|
6
6
|
use App\Contracts\Repositories\Users as UsersContract;
|
7
7
|
use Illuminate\Database\Eloquent\Model;
|
8
8
|
use App\Models\User as UserModel;
|
9
|
-
use App\Contracts\
|
9
|
+
use App\Contracts\Entities\User as UserContract;
|
10
10
|
|
11
11
|
class Users extends BaseUsers implements UsersContract
|
12
12
|
{
|
@@ -25,9 +25,10 @@ module.exports = class PrettierGenerator extends _generator.default {
|
|
25
25
|
},
|
26
26
|
dependencies() {
|
27
27
|
this.addDevDependencies({
|
28
|
-
prettier: '^3.2
|
29
|
-
'@prettier/plugin-php': '^0.
|
30
|
-
'@trivago/prettier-plugin-sort-imports': '^
|
28
|
+
prettier: '^3.6.2',
|
29
|
+
'@prettier/plugin-php': '^0.24.0',
|
30
|
+
'@trivago/prettier-plugin-sort-imports': '^5.2.2',
|
31
|
+
'stylelint-prettier': '^5.0.3'
|
31
32
|
});
|
32
33
|
}
|
33
34
|
};
|
@@ -5,12 +5,19 @@
|
|
5
5
|
"trailingComma": "all",
|
6
6
|
"tabWidth": 4,
|
7
7
|
"importOrder": [
|
8
|
-
"styles\\.s?css$",
|
9
8
|
"<THIRD_PARTY_MODULES>",
|
10
9
|
"^[./](.*)?/(utils|hooks|lib)",
|
11
10
|
"^[./].*(?<!(\\.[a-z]+))$",
|
12
|
-
"\\.
|
11
|
+
"\\.scss$",
|
13
12
|
"\\.[a-z]+$"
|
14
13
|
],
|
15
|
-
"importOrderSeparation": true
|
14
|
+
"importOrderSeparation": true,
|
15
|
+
"overrides": [
|
16
|
+
{
|
17
|
+
"files": "*.svg",
|
18
|
+
"options": {
|
19
|
+
"parser": "html"
|
20
|
+
}
|
21
|
+
}
|
22
|
+
]
|
16
23
|
}
|
@@ -88,25 +88,25 @@ module.exports = class ReactAppGenerator extends _generator.default {
|
|
88
88
|
},
|
89
89
|
dependencies() {
|
90
90
|
this.addDependencies({
|
91
|
-
react: '^
|
92
|
-
'react-dom': '^
|
93
|
-
'
|
94
|
-
|
95
|
-
'
|
96
|
-
|
97
|
-
|
98
|
-
'@folklore/
|
99
|
-
'@folklore/
|
100
|
-
'@folklore/
|
101
|
-
'@folklore/
|
102
|
-
'@folklore/
|
103
|
-
'@folklore/tracking': '^0.0.16',
|
91
|
+
react: '^19.1.1',
|
92
|
+
'react-dom': '^19.1.1',
|
93
|
+
'react-intl': '^7.1.1',
|
94
|
+
wouter: '^3.7.1',
|
95
|
+
'react-helmet': '^6.1.0',
|
96
|
+
classnames: '^2.5.1',
|
97
|
+
'@folklore/routes': '^0.2.43',
|
98
|
+
'@folklore/fonts': '^0.0.16',
|
99
|
+
'@folklore/forms': '^0.0.29',
|
100
|
+
'@folklore/fetch': '^0.1.21',
|
101
|
+
'@folklore/hooks': '^0.0.75',
|
102
|
+
'@folklore/tracking': '^0.0.33',
|
104
103
|
// Polyfills
|
105
104
|
intl: '^1.2.5',
|
106
|
-
'@formatjs/intl-locale': '^
|
107
|
-
'@formatjs/intl-pluralrules': '^5.
|
105
|
+
'@formatjs/intl-locale': '^4.2.11',
|
106
|
+
'@formatjs/intl-pluralrules': '^5.4.4',
|
108
107
|
'intersection-observer': '^0.12.2',
|
109
|
-
'resize-observer-polyfill': '^1.5.1'
|
108
|
+
'resize-observer-polyfill': '^1.5.1',
|
109
|
+
'sanitize.css': '^13.0.0'
|
110
110
|
});
|
111
111
|
}
|
112
112
|
};
|
@@ -31,9 +31,9 @@ module.exports = class StylelintGenerator extends _generator.default {
|
|
31
31
|
},
|
32
32
|
dependencies() {
|
33
33
|
this.addDevDependencies({
|
34
|
-
stylelint: '^16.
|
34
|
+
stylelint: '^16.24.0',
|
35
35
|
'stylelint-config-idiomatic-order': '^10.0.0',
|
36
|
-
'stylelint-config-standard': '^
|
36
|
+
'stylelint-config-standard': '^39.0.0'
|
37
37
|
});
|
38
38
|
}
|
39
39
|
};
|
@@ -1,9 +1,11 @@
|
|
1
1
|
{
|
2
2
|
"extends": [
|
3
3
|
"stylelint-config-idiomatic-order",
|
4
|
-
"stylelint-config-standard"
|
4
|
+
"stylelint-config-standard",
|
5
|
+
"stylelint-prettier/recommended"
|
5
6
|
],
|
6
7
|
"rules": {
|
8
|
+
"order/properties-alphabetical-order": null,
|
7
9
|
"declaration-property-value-no-unknown": true,
|
8
10
|
"alpha-value-notation": "number",<% if (camelCase) {%>
|
9
11
|
"selector-class-pattern": [
|
@@ -12,7 +14,7 @@
|
|
12
14
|
"message": "Selector should be written in camel-case (selector-class-pattern)"
|
13
15
|
}
|
14
16
|
],<% } %>
|
15
|
-
"max-nesting-depth": 4,
|
17
|
+
"max-nesting-depth": [4, { "ignoreAtRules": ["each", "media", "supports", "include"] }],
|
16
18
|
"import-notation": ["string", "url"]
|
17
19
|
}
|
18
20
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "generator-folklore",
|
3
|
-
"version": "3.0.
|
3
|
+
"version": "3.0.28",
|
4
4
|
"description": "Yeoman generator for projects at Folklore",
|
5
5
|
"keywords": [
|
6
6
|
"yeoman-generator"
|
@@ -40,5 +40,5 @@
|
|
40
40
|
"yeoman-generator": "5.9.0",
|
41
41
|
"yeoman-remote": "^1.0.1"
|
42
42
|
},
|
43
|
-
"gitHead": "
|
43
|
+
"gitHead": "92aaca1c13705e1ffe87c14add800189ef04b5da"
|
44
44
|
}
|
@@ -1,44 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"extends": ["airbnb", "prettier"],
|
3
|
-
"plugins": ["formatjs"],
|
4
|
-
"parser": "@babel/eslint-parser",
|
5
|
-
"parserOptions": {
|
6
|
-
"ecmaVersion": "latest",
|
7
|
-
"requireConfigFile": false,
|
8
|
-
"babelOptions": {
|
9
|
-
"presets": ["@babel/preset-react"]
|
10
|
-
}
|
11
|
-
},
|
12
|
-
"env": {
|
13
|
-
"browser": true,
|
14
|
-
"node": true,
|
15
|
-
"commonjs": true,
|
16
|
-
"jest": true
|
17
|
-
},
|
18
|
-
"rules": {
|
19
|
-
"react/jsx-indent": ["error", 4],
|
20
|
-
"react/jsx-indent-props": ["error", 4],
|
21
|
-
"react/function-component-definition": [
|
22
|
-
"error",
|
23
|
-
{
|
24
|
-
"namedComponents": [
|
25
|
-
"arrow-function",
|
26
|
-
"function-declaration",
|
27
|
-
"function-expression"
|
28
|
-
],
|
29
|
-
"unnamedComponents": "function-expression"
|
30
|
-
}
|
31
|
-
],
|
32
|
-
"no-console": [
|
33
|
-
"error",
|
34
|
-
{
|
35
|
-
"allow": ["warn", "error"]
|
36
|
-
}
|
37
|
-
],
|
38
|
-
"formatjs/enforce-default-message": ["error", "literal"],
|
39
|
-
"formatjs/no-camel-case": ["error"]
|
40
|
-
},
|
41
|
-
"globals": {
|
42
|
-
"__DEV__": true
|
43
|
-
}
|
44
|
-
}
|