generator-folklore 3.0.3 → 3.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. package/lib/generators/app/index.js +3 -51
  2. package/lib/generators/babel/index.js +28 -101
  3. package/lib/generators/babel/templates/config.js +16 -0
  4. package/lib/generators/browserslist/index.js +4 -9
  5. package/lib/generators/build/index.js +40 -29
  6. package/lib/generators/cli/index.js +92 -0
  7. package/lib/generators/cli/templates/cli.js +22 -0
  8. package/lib/generators/cli/templates/commands/default.js +16 -0
  9. package/lib/generators/docs/index.js +1 -2
  10. package/lib/generators/editorconfig/index.js +12 -22
  11. package/lib/generators/eslint/index.js +12 -13
  12. package/lib/generators/{html → html-project}/index.js +60 -73
  13. package/lib/generators/{html → html-project}/templates/folklore.png +0 -0
  14. package/lib/generators/{html → html-project}/templates/gitignore +0 -0
  15. package/lib/generators/{html → html-project}/templates/index.html.ejs +4 -1
  16. package/lib/generators/intl/index.js +93 -0
  17. package/lib/generators/laravel/index.js +5 -5
  18. package/lib/generators/laravel-mediatheque/index.js +133 -0
  19. package/lib/generators/laravel-mediatheque/templates/app/Models/Media.php +9 -0
  20. package/lib/generators/laravel-mediatheque/templates/app/Models/MediaFile.php +9 -0
  21. package/lib/generators/laravel-panneau/index.js +49 -28
  22. package/lib/generators/laravel-panneau/templates/app/Contracts/Repositories/Pages.php +19 -0
  23. package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Blocks/Text.php +10 -0
  24. package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Page.php +10 -0
  25. package/lib/generators/laravel-panneau/templates/app/Contracts/Resources/Pages/Home.php +9 -0
  26. package/lib/generators/laravel-panneau/templates/app/Http/Resources/BlockResource.php +37 -0
  27. package/lib/generators/laravel-panneau/templates/app/Http/Resources/BlocksCollection.php +8 -0
  28. package/lib/generators/laravel-panneau/templates/app/Http/Resources/PageResource.php +47 -0
  29. package/lib/generators/laravel-panneau/templates/app/Http/Resources/PagesCollection.php +10 -0
  30. package/lib/generators/laravel-panneau/templates/app/Models/Block.php +3 -13
  31. package/lib/generators/laravel-panneau/templates/app/Models/Page.php +3 -60
  32. package/lib/generators/laravel-panneau/templates/app/Panneau/Composers/AppComposer.php +50 -0
  33. package/lib/generators/laravel-panneau/templates/app/Panneau/Fields/Block.php +22 -0
  34. package/lib/generators/laravel-panneau/templates/app/Panneau/Fields/Blocks.php +87 -0
  35. package/lib/generators/laravel-panneau/templates/app/Panneau/Fields/Page.php +51 -0
  36. package/lib/generators/laravel-panneau/templates/app/Panneau/Fields/PageSlug.php +34 -0
  37. package/lib/generators/laravel-panneau/templates/app/Panneau/Fields/PageSlugLocalized.php +18 -0
  38. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/AccountController.php +41 -0
  39. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/Controller.php +19 -0
  40. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/HomeController.php +16 -0
  41. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/PagesController.php +24 -0
  42. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/UploadController.php +27 -0
  43. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Controllers/UsersController.php +32 -0
  44. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Requests/AccountUpdateRequest.php +29 -0
  45. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Requests/UploadRequest.php +29 -0
  46. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/BlockResource.php +39 -0
  47. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/BlocksCollection.php +8 -0
  48. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/PageResource.php +56 -0
  49. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/PagesCollection.php +10 -0
  50. package/lib/generators/laravel-panneau/templates/app/Panneau/Http/Resources/UserResource.php +24 -0
  51. package/lib/generators/laravel-panneau/templates/app/Panneau/PanneauServiceProvider.php +48 -0
  52. package/lib/generators/laravel-panneau/templates/app/Panneau/Policies/PanneauPolicy.php +32 -0
  53. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Blocks/BlockWithBlocks.php +110 -0
  54. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Blocks/TextBlock.php +27 -0
  55. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Blocks.php +42 -0
  56. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Pages/Page.php +28 -0
  57. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Pages.php +92 -0
  58. package/lib/generators/laravel-panneau/templates/app/Panneau/Resources/Users.php +57 -0
  59. package/lib/generators/laravel-panneau/templates/app/Repositories/Pages.php +42 -0
  60. package/lib/generators/laravel-panneau/templates/app/Resources/Blocks/TextBlock.php +14 -0
  61. package/lib/generators/laravel-panneau/templates/app/Resources/Page.php +10 -0
  62. package/lib/generators/laravel-panneau/templates/app/Resources/Pages/HomePage.php +10 -0
  63. package/lib/generators/laravel-panneau/templates/app.blade.php +8 -0
  64. package/lib/generators/laravel-panneau/templates/index.js +32 -0
  65. package/lib/generators/laravel-panneau/templates/lang/en/panneau.php +62 -0
  66. package/lib/generators/laravel-panneau/templates/lang/fr/panneau.php +62 -0
  67. package/lib/generators/laravel-panneau/templates/layout.blade.php +17 -48
  68. package/lib/generators/laravel-panneau/templates/resources/assets/js/components/Panneau.jsx +68 -0
  69. package/lib/generators/{js/templates/src/lib/.gitkeep → laravel-panneau/templates/resources/assets/js/components/panneau/fields/PageSlug.jsx} +0 -0
  70. package/lib/generators/laravel-panneau/templates/resources/assets/js/components/panneau/fields/PageSlugLocalized.jsx +43 -0
  71. package/lib/generators/laravel-panneau/templates/resources/assets/js/components/panneau/fields/index.js +2 -0
  72. package/lib/generators/laravel-panneau/templates/resources/assets/styles/panneau.scss +2 -0
  73. package/lib/generators/laravel-panneau/templates/routes.php +30 -0
  74. package/lib/generators/laravel-project/index.js +504 -0
  75. package/lib/generators/laravel-project/templates/env +41 -0
  76. package/lib/generators/laravel-project/templates/laravel/app/Composers/AppComposer.php +48 -0
  77. package/lib/generators/laravel-project/templates/laravel/app/Composers/IntlComposer.php +10 -0
  78. package/lib/generators/laravel-project/templates/laravel/app/Composers/MetaComposer.php +48 -0
  79. package/lib/generators/laravel-project/templates/laravel/app/Composers/RoutesComposer.php +19 -0
  80. package/lib/generators/laravel-project/templates/laravel/app/Contracts/Resources/User.php +10 -0
  81. package/lib/generators/laravel-project/templates/laravel/app/Http/Controllers/HomeController.php +18 -0
  82. package/lib/generators/laravel-project/templates/laravel/app/Http/Middleware/TrustProxies.php +28 -0
  83. package/lib/generators/laravel-project/templates/laravel/app/Http/Resources/UserResource.php +21 -0
  84. package/lib/generators/laravel-project/templates/laravel/app/Models/User.php +50 -0
  85. package/lib/generators/laravel-project/templates/laravel/app/Providers/AppServiceProvider.php +45 -0
  86. package/lib/generators/laravel-project/templates/laravel/app/Providers/RouteServiceProvider.php +64 -0
  87. package/lib/generators/laravel-project/templates/laravel/app/Providers/ViewServiceProvider.php +33 -0
  88. package/lib/generators/laravel-project/templates/laravel/app/Repositories/Users.php +36 -0
  89. package/lib/generators/laravel-project/templates/laravel/app/Resources/User.php +11 -0
  90. package/lib/generators/laravel-project/templates/laravel/config/app.php +216 -0
  91. package/lib/generators/laravel-project/templates/laravel/config/auth.php +116 -0
  92. package/lib/generators/laravel-project/templates/laravel/config/services.php +39 -0
  93. package/lib/generators/laravel-project/templates/laravel/lang/en/content.php +5 -0
  94. package/lib/generators/laravel-project/templates/laravel/lang/en/errors.php +17 -0
  95. package/lib/generators/laravel-project/templates/laravel/lang/en/meta.php +11 -0
  96. package/lib/generators/laravel-project/templates/laravel/lang/en/routes.php +4 -0
  97. package/lib/generators/laravel-project/templates/laravel/lang/fr/auth.php +19 -0
  98. package/lib/generators/laravel-project/templates/laravel/lang/fr/content.php +5 -0
  99. package/lib/generators/laravel-project/templates/laravel/lang/fr/errors.php +17 -0
  100. package/lib/generators/laravel-project/templates/laravel/lang/fr/meta.php +11 -0
  101. package/lib/generators/laravel-project/templates/laravel/lang/fr/pagination.php +19 -0
  102. package/lib/generators/laravel-project/templates/laravel/lang/fr/passwords.php +22 -0
  103. package/lib/generators/laravel-project/templates/laravel/lang/fr/routes.php +12 -0
  104. package/lib/generators/laravel-project/templates/laravel/lang/fr/validation.php +146 -0
  105. package/lib/generators/{js/templates/styles → laravel-project/templates/laravel/resources/assets/fonts}/.gitkeep +0 -0
  106. package/lib/generators/{laravel-panneau/templates/app/Schemas/Fields → laravel-project/templates/laravel/resources/assets/img}/.gitkeep +0 -0
  107. package/lib/generators/laravel-project/templates/laravel/resources/assets/img/folklore.png +0 -0
  108. package/lib/generators/laravel-project/templates/laravel/resources/views/analytics/body.blade.php +3 -0
  109. package/lib/generators/laravel-project/templates/laravel/resources/views/analytics/gpt.blade.php +16 -0
  110. package/lib/generators/laravel-project/templates/laravel/resources/views/analytics/head.blade.php +1 -0
  111. package/lib/generators/laravel-project/templates/laravel/resources/views/app.blade.php +8 -0
  112. package/lib/generators/laravel-project/templates/laravel/resources/views/errors/401.blade.php +8 -0
  113. package/lib/generators/laravel-project/templates/laravel/resources/views/errors/403.blade.php +8 -0
  114. package/lib/generators/laravel-project/templates/laravel/resources/views/errors/404.blade.php +8 -0
  115. package/lib/generators/laravel-project/templates/laravel/resources/views/errors/500.blade.php +8 -0
  116. package/lib/generators/laravel-project/templates/laravel/resources/views/layout.blade.php +33 -0
  117. package/lib/generators/laravel-project/templates/laravel/resources/views/meta/all.blade.php +4 -0
  118. package/lib/generators/laravel-project/templates/laravel/resources/views/meta/base.blade.php +11 -0
  119. package/lib/generators/laravel-project/templates/laravel/resources/views/meta/facebook.blade.php +4 -0
  120. package/lib/generators/laravel-project/templates/laravel/resources/views/meta/opengraph.blade.php +9 -0
  121. package/lib/generators/laravel-project/templates/laravel/resources/views/meta/twitter.blade.php +5 -0
  122. package/lib/generators/laravel-project/templates/laravel/routes/web.php +12 -0
  123. package/lib/generators/lerna-package/index.js +1 -3
  124. package/lib/generators/lerna-repository/index.js +1 -3
  125. package/lib/generators/node-project/index.js +164 -0
  126. package/lib/generators/node-project/templates/index.js +0 -0
  127. package/lib/generators/npm-package/index.js +3 -5
  128. package/lib/generators/prettier/index.js +19 -6
  129. package/lib/generators/prettier/templates/prettierrc.json +3 -1
  130. package/lib/generators/{js → react-app}/index.js +22 -52
  131. package/lib/generators/{js → react-app}/templates/_package.json +0 -0
  132. package/lib/generators/react-app/templates/index.js +23 -0
  133. package/lib/generators/react-app/templates/src/components/App.jsx +46 -0
  134. package/lib/generators/react-app/templates/src/components/Container.jsx +40 -0
  135. package/lib/generators/{js → react-app}/templates/src/components/buttons/Button.jsx +4 -18
  136. package/lib/generators/react-app/templates/src/components/layouts/Main.jsx +27 -0
  137. package/lib/generators/react-app/templates/src/components/menus/Menu.jsx +62 -0
  138. package/lib/generators/{js → react-app}/templates/src/components/pages/Error.jsx +10 -14
  139. package/lib/generators/react-app/templates/src/components/pages/Home.jsx +32 -0
  140. package/lib/generators/{js → react-app}/templates/src/components/partials/PageMeta.jsx +11 -11
  141. package/lib/generators/{js → react-app}/templates/src/contexts/KeysContext.jsx +0 -0
  142. package/lib/generators/react-app/templates/src/lib/.gitkeep +0 -0
  143. package/lib/generators/{js → react-app}/templates/src/lib/PropTypes.js +0 -0
  144. package/lib/generators/{js → react-app}/templates/src/lib/utils.js +0 -0
  145. package/lib/generators/react-app/templates/src/polyfills/index.js +6 -0
  146. package/lib/generators/react-app/templates/src/polyfills/intl-en.js +2 -0
  147. package/lib/generators/react-app/templates/src/polyfills/intl-fr.js +2 -0
  148. package/lib/generators/react-app/templates/src/polyfills/should.js +14 -0
  149. package/lib/generators/react-app/templates/styles/.gitkeep +0 -0
  150. package/lib/generators/{js/templates/styles/buttons/button.scss → react-app/templates/styles/buttons/button.module.scss} +1 -0
  151. package/lib/generators/{js/templates/styles/layouts/main.scss → react-app/templates/styles/layouts/main.module.scss} +0 -0
  152. package/lib/generators/{js/templates/styles/menus/menu.scss → react-app/templates/styles/menus/menu.module.scss} +0 -0
  153. package/lib/generators/{js/templates/styles/pages/error.scss → react-app/templates/styles/pages/error.module.scss} +0 -0
  154. package/lib/generators/{js/templates/styles/pages/home.scss → react-app/templates/styles/pages/home.module.scss} +0 -0
  155. package/lib/generators/rollup/index.js +54 -0
  156. package/lib/generators/rollup/templates/config.js +50 -0
  157. package/lib/generators/scss/index.js +3 -16
  158. package/lib/generators/scss/templates/{main.scss → styles.scss} +0 -0
  159. package/lib/generators/server/index.js +81 -0
  160. package/lib/generators/server/templates/server.js +59 -0
  161. package/lib/generators/storybook/index.js +1 -7
  162. package/lib/generators/stylelint/index.js +13 -14
  163. package/lib/lib/generator.js +9 -0
  164. package/lib/lib/utils.js +17 -0
  165. package/package.json +2 -2
  166. package/lib/generators/babel/templates/babel-preset-react.js +0 -7
  167. package/lib/generators/babel/templates/babel-preset.js +0 -57
  168. package/lib/generators/babel/templates/babelrc +0 -5
  169. package/lib/generators/babel/templates/utils/processScss.js +0 -10
  170. package/lib/generators/babel/templates/utils/transformRequireIgnore.js +0 -80
  171. package/lib/generators/html/templates/index.js +0 -9
  172. package/lib/generators/html/templates/root.js +0 -23
  173. package/lib/generators/html/templates/utils.js +0 -7
  174. package/lib/generators/js/templates/browserslistrc +0 -9
  175. package/lib/generators/js/templates/config.js +0 -33
  176. package/lib/generators/js/templates/index.js +0 -41
  177. package/lib/generators/js/templates/src/actions/LayoutActions.js +0 -12
  178. package/lib/generators/js/templates/src/actions/SiteActions.js +0 -22
  179. package/lib/generators/js/templates/src/components/App.jsx +0 -52
  180. package/lib/generators/js/templates/src/components/Root.jsx +0 -70
  181. package/lib/generators/js/templates/src/components/layouts/Main.jsx +0 -52
  182. package/lib/generators/js/templates/src/components/menus/Menu.jsx +0 -60
  183. package/lib/generators/js/templates/src/components/messages/Success.jsx +0 -36
  184. package/lib/generators/js/templates/src/components/pages/Home.jsx +0 -32
  185. package/lib/generators/js/templates/src/components/partials/Label.jsx +0 -32
  186. package/lib/generators/js/templates/src/reducers/LayoutReducer.js +0 -32
  187. package/lib/generators/js/templates/src/reducers/SiteReducer.js +0 -36
  188. package/lib/generators/js/templates/src/reducers/index.js +0 -7
  189. package/lib/generators/js/templates/src/vendor/polyfills/intl-en.js +0 -2
  190. package/lib/generators/js/templates/src/vendor/polyfills/intl-fr.js +0 -2
  191. package/lib/generators/laravel-panneau/templates/_composer.json +0 -6
  192. package/lib/generators/laravel-panneau/templates/_package.json +0 -11
  193. package/lib/generators/laravel-panneau/templates/app/Http/Controllers/Panneau/HomeController.php +0 -14
  194. package/lib/generators/laravel-panneau/templates/app/Http/Controllers/Panneau/PagesController.php +0 -11
  195. package/lib/generators/laravel-panneau/templates/app/Models/Mediatheque/File.php +0 -13
  196. package/lib/generators/laravel-panneau/templates/app/Models/Mediatheque/Picture.php +0 -13
  197. package/lib/generators/laravel-panneau/templates/app/Models/Mediatheque/Video.php +0 -34
  198. package/lib/generators/laravel-panneau/templates/app/Providers/PanneauServiceProvider.php +0 -23
  199. package/lib/generators/laravel-panneau/templates/app/Reducers/SlugExtractReducer.php +0 -18
  200. package/lib/generators/laravel-panneau/templates/app/Resources/Pages.php +0 -54
  201. package/lib/generators/laravel-panneau/templates/app/Schemas/Blocks/Base.php +0 -22
  202. package/lib/generators/laravel-panneau/templates/app/Schemas/Bubbles/Base.php +0 -22
  203. package/lib/generators/laravel-panneau/templates/app/Schemas/Pages/Base.php +0 -36
  204. package/lib/generators/laravel-panneau/templates/resources/lang/en/panneau.php +0 -12
  205. package/lib/generators/laravel-panneau/templates/resources/lang/fr/panneau.php +0 -12
@@ -0,0 +1,11 @@
1
+ <?php
2
+
3
+ return [
4
+ 'title' => 'Folklore',
5
+ 'description' => '',
6
+
7
+ 'title_401' => 'Not authorized',
8
+ 'title_403' => 'Forbidden',
9
+ 'title_404' => 'Page not found',
10
+ 'title_500' => 'Error'
11
+ ];
@@ -0,0 +1,19 @@
1
+ <?php
2
+
3
+ return [
4
+
5
+ /*
6
+ |--------------------------------------------------------------------------
7
+ | Authentication Language Lines
8
+ |--------------------------------------------------------------------------
9
+ |
10
+ | The following language lines are used during authentication for various
11
+ | messages that we need to display to the user. You are free to modify
12
+ | these language lines according to your application's requirements.
13
+ |
14
+ */
15
+
16
+ 'failed' => 'Les informations de connexion sont invalides.',
17
+ 'throttle' => 'Vous avez fait trop de tentatives de connexion. Réessayez dans :seconds secondes.',
18
+
19
+ ];
@@ -0,0 +1,17 @@
1
+ <?php
2
+
3
+ return [
4
+ 'title_401' => 'Accès non-autorisé',
5
+ 'description_401' => 'Vous n’êtes pas autorisé à accéder à cette page.',
6
+
7
+ 'title_403' => 'Accès interdit',
8
+ 'description_403' => 'Cette page n’est pas accessible.',
9
+
10
+ 'title_404' => 'Page non-trouvée',
11
+ 'description_404' => 'Cette page n’existe pas.',
12
+
13
+ 'title_500' => 'Erreur',
14
+ 'description_500' => 'Il s’est produit une erreur avec votre requête.',
15
+
16
+ 'goto_home' => 'Aller à la page d’accueil',
17
+ ];
@@ -0,0 +1,11 @@
1
+ <?php
2
+
3
+ return [
4
+ 'title' => 'Folklore',
5
+ 'description' => '',
6
+
7
+ 'title_401' => 'Accès non-autorisé',
8
+ 'title_403' => 'Accès interdit',
9
+ 'title_404' => 'Page non-trouvée',
10
+ 'title_500' => 'Erreur'
11
+ ];
@@ -0,0 +1,19 @@
1
+ <?php
2
+
3
+ return [
4
+
5
+ /*
6
+ |--------------------------------------------------------------------------
7
+ | Pagination Language Lines
8
+ |--------------------------------------------------------------------------
9
+ |
10
+ | The following language lines are used by the paginator library to build
11
+ | the simple pagination links. You are free to change them to anything
12
+ | you want to customize your views to better match your application.
13
+ |
14
+ */
15
+
16
+ 'previous' => '&laquo; Précédent',
17
+ 'next' => 'Suivant &raquo;',
18
+
19
+ ];
@@ -0,0 +1,22 @@
1
+ <?php
2
+
3
+ return [
4
+
5
+ /*
6
+ |--------------------------------------------------------------------------
7
+ | Password Reset Language Lines
8
+ |--------------------------------------------------------------------------
9
+ |
10
+ | The following language lines are the default lines which match reasons
11
+ | that are given by the password broker for a password update attempt
12
+ | has failed, such as for an invalid token or invalid new password.
13
+ |
14
+ */
15
+
16
+ 'password' => 'Le mot de passe doit contenir au minimum 6 caractères et être identique à la confirmation',
17
+ 'reset' => 'Votre mot de passe a été réinitialisé',
18
+ 'sent' => 'Nous vous avons envoyé un courriel pour réinitialiser votre mot de passe',
19
+ 'token' => 'Ce lien est invalide',
20
+ 'user' => 'Cette adresse courriel est invalide',
21
+
22
+ ];
@@ -0,0 +1,12 @@
1
+ <?php
2
+
3
+ return [
4
+ 'login' => 'connexion',
5
+ 'logout' => 'deconnexion',
6
+ 'password/reset' => 'mot-de-passe/reinitialiser',
7
+ 'password/email' => 'mot-de-passe/courriel',
8
+ 'password/reset/{token}' => 'mot-de-passe/reinitialiser/{token}',
9
+ 'verify' => 'verification',
10
+ 'verify/resend' => 'verification/reenvoyer',
11
+ 'verify/{id}' => 'verification/{id}',
12
+ ];
@@ -0,0 +1,146 @@
1
+ <?php
2
+
3
+ return [
4
+ /*
5
+ |--------------------------------------------------------------------------
6
+ | Validation Language Lines
7
+ |--------------------------------------------------------------------------
8
+ |
9
+ | The following language lines contain the default error messages used by
10
+ | the validator class. Some of these rules have multiple versions such
11
+ | as the size rules. Feel free to tweak each of these messages.
12
+ |
13
+ */
14
+
15
+ 'accepted' => 'Le champ :attribute doit être accepté.',
16
+ 'active_url' => "Le champ :attribute n'est pas une URL valide.",
17
+ 'after' => 'Le champ :attribute doit être une date postérieure au :date.',
18
+ 'after_or_equal' => 'Le champ :attribute doit être une date postérieure ou égale au :date.',
19
+ 'alpha' => 'Le champ :attribute doit contenir uniquement des lettres.',
20
+ 'alpha_dash' => 'Le champ :attribute doit contenir uniquement des lettres, des chiffres et des tirets.',
21
+ 'alpha_num' => 'Le champ :attribute doit contenir uniquement des chiffres et des lettres.',
22
+ 'array' => 'Le champ :attribute doit être un tableau.',
23
+ 'before' => 'Le champ :attribute doit être une date antérieure au :date.',
24
+ 'before_or_equal' => 'Le champ :attribute doit être une date antérieure ou égale au :date.',
25
+ 'between' => [
26
+ 'numeric' => 'La valeur de :attribute doit être comprise entre :min et :max.',
27
+ 'file' => 'La taille du fichier de :attribute doit être comprise entre :min et :max kilo-octets.',
28
+ 'string' => 'Le texte :attribute doit contenir entre :min et :max caractères.',
29
+ 'array' => 'Le tableau :attribute doit contenir entre :min et :max éléments.',
30
+ ],
31
+ 'boolean' => 'Le champ :attribute doit être vrai ou faux.',
32
+ 'confirmed' => 'Le champ de confirmation :attribute ne correspond pas.',
33
+ 'date' => "Le champ :attribute n'est pas une date valide.",
34
+ 'date_format' => 'Le champ :attribute ne correspond pas au format :format.',
35
+ 'different' => 'Les champs :attribute et :other doivent être différents.',
36
+ 'digits' => 'Le champ :attribute doit contenir :digits chiffres.',
37
+ 'digits_between' => 'Le champ :attribute doit contenir entre :min et :max chiffres.',
38
+ 'dimensions' => "La taille de l'image :attribute n'est pas conforme.",
39
+ 'distinct' => 'Le champ :attribute a une valeur en double.',
40
+ 'email' => 'Le champ :attribute doit être une adresse courriel valide.',
41
+ 'exists' => 'Le champ :attribute sélectionné est invalide.',
42
+ 'file' => 'Le champ :attribute doit être un fichier.',
43
+ 'filled' => 'Le champ :attribute doit avoir une valeur.',
44
+ 'gt' => [
45
+ 'numeric' => 'La valeur de :attribute doit être supérieure à :value.',
46
+ 'file' => 'La taille du fichier de :attribute doit être supérieure à :value kilo-octets.',
47
+ 'string' => 'Le texte :attribute doit contenir plus de :value caractères.',
48
+ 'array' => 'Le tableau :attribute doit contenir plus de :value éléments.',
49
+ ],
50
+ 'gte' => [
51
+ 'numeric' => 'La valeur de :attribute doit être supérieure ou égale à :value.',
52
+ 'file' => 'La taille du fichier de :attribute doit être supérieure ou égale à :value kilo-octets.',
53
+ 'string' => 'Le texte :attribute doit contenir au moins :value caractères.',
54
+ 'array' => 'Le tableau :attribute doit contenir au moins :value éléments.',
55
+ ],
56
+ 'image' => 'Le champ :attribute doit être une image.',
57
+ 'in' => 'Le champ :attribute est invalide.',
58
+ 'in_array' => "Le champ :attribute n'existe pas dans :other.",
59
+ 'integer' => 'Le champ :attribute doit être un entier.',
60
+ 'ip' => 'Le champ :attribute doit être une adresse IP valide.',
61
+ 'ipv4' => 'Le champ :attribute doit être une adresse IPv4 valide.',
62
+ 'ipv6' => 'Le champ :attribute doit être une adresse IPv6 valide.',
63
+ 'json' => 'Le champ :attribute doit être un document JSON valide.',
64
+ 'lt' => [
65
+ 'numeric' => 'La valeur de :attribute doit être inférieure à :value.',
66
+ 'file' => 'La taille du fichier de :attribute doit être inférieure à :value kilo-octets.',
67
+ 'string' => 'Le texte :attribute doit contenir moins de :value caractères.',
68
+ 'array' => 'Le tableau :attribute doit contenir moins de :value éléments.',
69
+ ],
70
+ 'lte' => [
71
+ 'numeric' => 'La valeur de :attribute doit être inférieure ou égale à :value.',
72
+ 'file' => 'La taille du fichier de :attribute doit être inférieure ou égale à :value kilo-octets.',
73
+ 'string' => 'Le texte :attribute doit contenir au plus :value caractères.',
74
+ 'array' => 'Le tableau :attribute doit contenir au plus :value éléments.',
75
+ ],
76
+ 'max' => [
77
+ 'numeric' => 'La valeur de :attribute ne peut être supérieure à :max.',
78
+ 'file' => 'La taille du fichier de :attribute ne peut pas dépasser :max kilo-octets.',
79
+ 'string' => 'Le texte de :attribute ne peut contenir plus de :max caractères.',
80
+ 'array' => 'Le tableau :attribute ne peut contenir plus de :max éléments.',
81
+ ],
82
+ 'mimes' => 'Le champ :attribute doit être un fichier de type : :values.',
83
+ 'mimetypes' => 'Le champ :attribute doit être un fichier de type : :values.',
84
+ 'min' => [
85
+ 'numeric' => 'La valeur de :attribute doit être supérieure ou égale à :min.',
86
+ 'file' => 'La taille du fichier de :attribute doit être supérieure à :min kilo-octets.',
87
+ 'string' => 'Le texte :attribute doit contenir au moins :min caractères.',
88
+ 'array' => 'Le tableau :attribute doit contenir au moins :min éléments.',
89
+ ],
90
+ 'not_in' => "Le champ :attribute sélectionné n'est pas valide.",
91
+ 'not_regex' => "Le format du champ :attribute n'est pas valide.",
92
+ 'numeric' => 'Le champ :attribute doit contenir un nombre.',
93
+ 'present' => 'Le champ :attribute doit être présent.',
94
+ 'regex' => 'Le format du champ :attribute est invalide.',
95
+ 'required' => 'Le champ :attribute est obligatoire.',
96
+ 'required_if' => 'Le champ :attribute est obligatoire quand la valeur de :other est :value.',
97
+ 'required_unless' => 'Le champ :attribute est obligatoire sauf si :other est :values.',
98
+ 'required_with' => 'Le champ :attribute est obligatoire quand :values est présent.',
99
+ 'required_with_all' => 'Le champ :attribute est obligatoire quand :values est présent.',
100
+ 'required_without' => "Le champ :attribute est obligatoire quand :values n'est pas présent.",
101
+ 'required_without_all' => "Le champ :attribute est requis quand aucun de :values n'est présent.",
102
+ 'same' => 'Les champs :attribute et :other doivent être identiques.',
103
+ 'size' => [
104
+ 'numeric' => 'La valeur de :attribute doit être :size.',
105
+ 'file' => 'La taille du fichier de :attribute doit être de :size kilo-octets.',
106
+ 'string' => 'Le texte de :attribute doit contenir :size caractères.',
107
+ 'array' => 'Le tableau :attribute doit contenir :size éléments.',
108
+ ],
109
+ 'string' => 'Le champ :attribute doit être une chaîne de caractères.',
110
+ 'timezone' => 'Le champ :attribute doit être un fuseau horaire valide.',
111
+ 'unique' => 'La valeur du champ :attribute est déjà utilisée.',
112
+ 'uploaded' => "Le fichier du champ :attribute n'a pu être téléversé.",
113
+ 'url' => "Le format de l'URL de :attribute n'est pas valide.",
114
+
115
+ /*
116
+ |--------------------------------------------------------------------------
117
+ | Custom Validation Language Lines
118
+ |--------------------------------------------------------------------------
119
+ |
120
+ | Here you may specify custom validation messages for attributes using the
121
+ | convention "attribute.rule" to name the lines. This makes it quick to
122
+ | specify a specific custom language line for a given attribute rule.
123
+ |
124
+ */
125
+
126
+ 'custom' => [
127
+ 'attribute-name' => [
128
+ 'rule-name' => 'custom-message',
129
+ ],
130
+ ],
131
+
132
+ /*
133
+ |--------------------------------------------------------------------------
134
+ | Custom Validation Attributes
135
+ |--------------------------------------------------------------------------
136
+ |
137
+ | The following language lines are used to swap attribute place-holders
138
+ | with something more reader friendly such as E-Mail Address instead
139
+ | of "email". This simply helps us make messages a little cleaner.
140
+ |
141
+ */
142
+
143
+ 'attributes' => [
144
+
145
+ ],
146
+ ];
@@ -0,0 +1,3 @@
1
+ @include('analytics.gpt', [
2
+ 'body' => true
3
+ ])
@@ -0,0 +1,16 @@
1
+ @if(!empty($tagManagerId) && (!isset($body) || !$body))
2
+ <!-- Google Tag Manager -->
3
+ <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
4
+ new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
5
+ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
6
+ 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
7
+ })(window,document,'script','dataLayer','{{ $tagManagerId }}');</script>
8
+ <!-- End Google Tag Manager -->
9
+ @endif
10
+
11
+ @if (!empty($tagManagerId) && isset($body) && $body)
12
+ <!-- Google Tag Manager (noscript) -->
13
+ <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-P2CF52F"
14
+ height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
15
+ <!-- End Google Tag Manager (noscript) -->
16
+ @endif
@@ -0,0 +1,8 @@
1
+ @extends('layout')
2
+
3
+ @section('body')
4
+ <div id="app"></div>
5
+ <script type="text/javascript">
6
+ var props = @json($props);
7
+ </script>
8
+ @endsection
@@ -0,0 +1,8 @@
1
+ @extends('layout')
2
+
3
+ @section('body')
4
+ <div id="app"></div>
5
+ <script type="text/javascript">
6
+ var props = @json($props);
7
+ </script>
8
+ @endsection
@@ -0,0 +1,8 @@
1
+ @extends('layout')
2
+
3
+ @section('body')
4
+ <div id="app"></div>
5
+ <script type="text/javascript">
6
+ var props = @json($props);
7
+ </script>
8
+ @endsection
@@ -0,0 +1,8 @@
1
+ @extends('layout')
2
+
3
+ @section('body')
4
+ <div id="app"></div>
5
+ <script type="text/javascript">
6
+ var props = @json($props);
7
+ </script>
8
+ @endsection
@@ -0,0 +1,8 @@
1
+ @extends('layout')
2
+
3
+ @section('body')
4
+ <div id="app"></div>
5
+ <script type="text/javascript">
6
+ var props = @json($props);
7
+ </script>
8
+ @endsection
@@ -0,0 +1,33 @@
1
+ <!doctype html>
2
+ <!--[if IE ]> <html class="ie" lang="{{ $locale }}"> <![endif]-->
3
+ <!--[if !(IE) ]><!--> <html lang="{{ $locale }}"> <!--<![endif]-->
4
+ <head>
5
+ <meta charset="utf-8">
6
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
7
+ <meta name="viewport" content="width=device-width, initial-scale=1">
8
+
9
+ @include('meta.all')
10
+
11
+ @include('analytics.head')
12
+
13
+ @if(!isset($inWebpack) || !$inWebpack)
14
+ @include('assets.head')
15
+ @endif
16
+ </head>
17
+ <body>
18
+ @include('analytics.body')
19
+
20
+ @section('body')
21
+ <div id="app"></div>
22
+ <script type="text/javascript">
23
+ var props = @json($props);
24
+ </script>
25
+ @show
26
+
27
+ @if(isset($inWebpack) && $inWebpack)
28
+ <script type="text/javascript" src="/static/js/bundle.js"></script>
29
+ @else
30
+ @include('assets.body')
31
+ @endif
32
+ </body>
33
+ </html>
@@ -0,0 +1,4 @@
1
+ @include('meta.base')
2
+ @include('meta.opengraph')
3
+ @include('meta.facebook')
4
+ @include('meta.twitter')
@@ -0,0 +1,11 @@
1
+ <title>{{ $title }}</title>
2
+
3
+ <meta name="language" content="{{ $locale }}">
4
+ <meta name="description" content="{{ $description }}" data-react-helmet="true">
5
+
6
+ @if (isset($keywords) && sizeof($keywords))
7
+ <meta name="keywords" content="{{ $keywords->implode(',') }}" data-react-helmet="true">
8
+ @endif
9
+
10
+ <link rel="shortcut icon" href="{{ asset('static/media/favicon/favicon.ico') }}" type="image/x-ico" data-react-helmet="true">
11
+ <link rel="icon" href="{{ asset('static/media/favicon/favicon.png') }}" type="image/png" data-react-helmet="true">
@@ -0,0 +1,4 @@
1
+ <!-- Facebook -->
2
+ @if($appId)
3
+ <meta property="fb:app_id" content="{{ $appId }}">
4
+ @endif
@@ -0,0 +1,9 @@
1
+ <!-- Open Graph -->
2
+ <meta property="og:locale" content="{{$locale}}">
3
+ <meta property="og:title" content="{{ $title }}" data-react-helmet="true">
4
+ <meta property="og:type" content="website" data-react-helmet="true">
5
+ <meta property="og:description" content="{{ $description }}" data-react-helmet="true">
6
+ <meta property="og:url" content="{{ $url }}" data-react-helmet="true">
7
+ @if(isset($image))
8
+ <meta property="og:image" content="{{ $image }}" data-react-helmet="true">
9
+ @endif
@@ -0,0 +1,5 @@
1
+ <!-- Twitter -->
2
+ <meta name="twitter:card" content="summary" />
3
+ @if (isset($siteUsername))
4
+ <meta name="twitter:site" content="{{ $siteUsername }}" />
5
+ @endif
@@ -0,0 +1,12 @@
1
+ <?php
2
+
3
+ use App\Http\Controllers\HomeController;
4
+
5
+ //Redirect to current langage home
6
+ Route::get('/', [HomeController::class, 'redirect'])->name('home');
7
+
8
+ Route::groupWithLocales(function () {
9
+ Route::getTrans('/', [HomeController::class, 'index'])->nameWithLocale('home');
10
+ Route::getTrans('/test', [HomeController::class, 'index'])->nameWithLocale('test');
11
+ Route::getTrans('/test/{with_param}', [HomeController::class, 'index'])->nameWithLocale('test_with_param');
12
+ });
@@ -160,7 +160,6 @@ module.exports = class LernaPackageGenerator extends _generator.default {
160
160
  type
161
161
  } = this.options;
162
162
  const srcPath = this.templatePath('_package.json');
163
- const destPath = this.packagePath('package.json');
164
163
  const packageJSON = this.fs.readJSON(srcPath);
165
164
  packageJSON.name = this.options['package-name'];
166
165
 
@@ -177,8 +176,7 @@ module.exports = class LernaPackageGenerator extends _generator.default {
177
176
  };
178
177
  }
179
178
 
180
- const currentPackageJSON = this.fs.exists(destPath) ? this.fs.readJSON(destPath) : {};
181
- this.fs.writeJSON(destPath, _lodash.default.merge(packageJSON, currentPackageJSON));
179
+ this.packageJson.merge(packageJSON);
182
180
  },
183
181
 
184
182
  webpackConfig() {
@@ -164,11 +164,9 @@ module.exports = class LernaRepositoryGenerator extends _generator.default {
164
164
 
165
165
  packageJSON() {
166
166
  const srcPath = this.templatePath('_package.json');
167
- const destPath = this.destinationPath('package.json');
168
167
  const packageJSON = this.fs.readJSON(srcPath);
169
168
  packageJSON.name = this.options['project-name'];
170
- const currentPackageJSON = this.fs.exists(destPath) ? this.fs.readJSON(destPath) : {};
171
- this.fs.writeJSON(destPath, _lodash.default.merge(packageJSON, currentPackageJSON));
169
+ this.packageJson.merge(packageJSON);
172
170
  },
173
171
 
174
172
  jest() {
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+
3
+ var _chalk = _interopRequireDefault(require("chalk"));
4
+
5
+ var _lodash = _interopRequireDefault(require("lodash"));
6
+
7
+ var _path = _interopRequireDefault(require("path"));
8
+
9
+ var _generator = _interopRequireDefault(require("../../lib/generator"));
10
+
11
+ var _utils = require("../../lib/utils");
12
+
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+
15
+ module.exports = class NodeProjectGenerator extends _generator.default {
16
+ // The name `constructor` is important here
17
+ constructor(...args) {
18
+ super(...args);
19
+ this.argument('project-name', {
20
+ type: String,
21
+ required: false
22
+ });
23
+ this.option('src-path', {
24
+ type: String,
25
+ desc: 'Path for source',
26
+ defaults: './src'
27
+ });
28
+ this.option('dest-path', {
29
+ type: String,
30
+ desc: 'Path for build',
31
+ defaults: './dist'
32
+ });
33
+ this.option('html-path', {
34
+ type: String,
35
+ desc: 'Path for the HTML',
36
+ defaults: './web'
37
+ });
38
+ this.option('server-path', {
39
+ type: String,
40
+ desc: 'Path for the server',
41
+ defaults: ''
42
+ });
43
+ this.option('cli-path', {
44
+ type: String,
45
+ desc: 'Path for the cli',
46
+ defaults: ''
47
+ });
48
+
49
+ this.srcPath = filePath => this.destinationPath(_path.default.join(this.options['src-path'], filePath));
50
+ }
51
+
52
+ get prompting() {
53
+ return {
54
+ welcome() {
55
+ if (this.options.quiet) {
56
+ return;
57
+ }
58
+
59
+ console.log(_chalk.default.yellow('\n----------------------'));
60
+ console.log('Node Project Generator');
61
+ console.log(_chalk.default.yellow('----------------------\n'));
62
+ },
63
+
64
+ prompts() {
65
+ const prompts = [];
66
+
67
+ if (!this.options['project-name']) {
68
+ prompts.push(_generator.default.prompts.project_name);
69
+ }
70
+
71
+ if (!prompts.length) {
72
+ return null;
73
+ }
74
+
75
+ return this.prompt(prompts).then(answers => {
76
+ if (answers['project-name']) {
77
+ this.options['project-name'] = answers['project-name'];
78
+ }
79
+ });
80
+ }
81
+
82
+ };
83
+ }
84
+
85
+ configuring() {
86
+ const {
87
+ 'project-name': projectName,
88
+ 'src-path': srcPath,
89
+ 'dest-path': destPath,
90
+ 'html-path': htmlPath,
91
+ 'server-path': serverPath,
92
+ 'cli-path': cliPath
93
+ } = this.options;
94
+
95
+ const htmlSrcPath = _path.default.join(srcPath, htmlPath);
96
+
97
+ const serverSrcPath = _path.default.join(srcPath, serverPath);
98
+
99
+ const cliSrcPath = _path.default.join(srcPath, cliPath);
100
+
101
+ this.composeWith('folklore:html-project', {
102
+ 'skip-install': true,
103
+ quiet: true,
104
+ 'project-name': projectName,
105
+ 'src-path': htmlSrcPath,
106
+ 'dest-path': destPath
107
+ });
108
+ this.composeWith('folklore:server', {
109
+ 'skip-install': true,
110
+ quiet: true,
111
+ path: serverSrcPath
112
+ });
113
+ this.composeWith('folklore:cli', {
114
+ 'skip-install': true,
115
+ quiet: true,
116
+ path: cliSrcPath
117
+ });
118
+ this.composeWith('folklore:rollup', {
119
+ 'skip-install': true,
120
+ quiet: true
121
+ });
122
+ }
123
+
124
+ get writing() {
125
+ return {
126
+ index() {
127
+ this.fs.copyTpl(this.templatePath('index.js'), this.srcPath('index.js'));
128
+ },
129
+
130
+ packageJson() {
131
+ const {
132
+ 'src-path': srcPath,
133
+ 'html-path': htmlPath,
134
+ 'server-path': serverPath
135
+ } = this.options;
136
+
137
+ const webEntryPath = _path.default.join(srcPath, htmlPath, 'index.js');
138
+
139
+ const serverEntryPath = _path.default.join(srcPath, serverPath, 'server.js');
140
+
141
+ const scripts = {
142
+ 'build:web': `flklr build --load-env ${(0, _utils.ensureLeadingDotSlash)(webEntryPath)}`,
143
+ 'build:rollup': `rollup --config rollup.config.js`,
144
+ 'build': 'npm run build:web && npm run build:rollup',
145
+ 'server': `babel-node ${(0, _utils.ensureLeadingDotSlash)(serverEntryPath)}`,
146
+ 'start': `flklr serve --load-env ${(0, _utils.ensureLeadingDotSlash)(webEntryPath)}`
147
+ };
148
+ this.packageJson.merge({
149
+ scripts
150
+ });
151
+ }
152
+
153
+ };
154
+ }
155
+
156
+ async install() {
157
+ if (this.options['skip-install']) {
158
+ return;
159
+ }
160
+
161
+ await this.spawnCommand('npm', ['install']);
162
+ }
163
+
164
+ };
File without changes