Skip to content

Commit 3677539

Browse files
authored
fix(engine-twig-php): twig include function syntax not matched by findPartials (#1472)
Closes: #1471
1 parent cc1a2bd commit 3677539

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

packages/engine-twig-php/lib/engine_twig_php.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ const engine_twig_php = {
2828
engineFileExtension: '.twig',
2929
expandPartials: false,
3030
findPartialsRE:
31-
/{%\s*(?:extends|include|embed)\s+('[^']+'|"[^"]+").*?(with|%}|\s*%})/g,
32-
findPartialKeyRE: /"((?:\\.|[^"\\])*)"|'((?:\\.|[^"\\])*)'/,
31+
/{[%{]\s*.*?(?:extends|include|embed|from|import|use)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g,
3332
namespaces: [],
3433

3534
/**
@@ -180,9 +179,7 @@ const engine_twig_php = {
180179
// return it.
181180
findPartial: function (partialString) {
182181
try {
183-
let partial = partialString.match(this.findPartialKeyRE)[0];
184-
partial = partial.replace(/"/g, '');
185-
partial = partial.replace(/'/g, '');
182+
const partial = partialString.replace(this.findPartialsRE, '$1');
186183

187184
// Check if namespaces is not empty.
188185
const selectedNamespace = this.namespaces.filter((namespace) => {

0 commit comments

Comments
 (0)