wp-studio 1.7.8-beta2 → 1.7.8-beta4
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/README.md +54 -1
- package/assets/demo.gif +0 -0
- package/dist/cli/{_events-BRGCap7g.mjs → _events-C2dFSpKE.mjs} +2 -2
- package/dist/cli/{certificate-manager-Dd4zv2_k.mjs → certificate-manager-BMngpL-s.mjs} +12 -4
- package/dist/cli/{index-9Oz-0bqF.mjs → index-CkFXAp-n.mjs} +5 -5
- package/dist/cli/{index-CT4S2538.mjs → index-odShRBgM.mjs} +171 -117
- package/dist/cli/{login-D4E3GoXe.mjs → login-BeT1uKwW.mjs} +2 -2
- package/dist/cli/{logout-DE-RoshK.mjs → logout-BFQJBJD0.mjs} +2 -2
- package/dist/cli/main.mjs +3 -2
- package/dist/cli/proxy-daemon.mjs +1 -1
- package/dist/cli/{resume-DLoXmzNG.mjs → resume-D_K0QEl5.mjs} +1 -1
- package/dist/cli/{set-B8YYUENH.mjs → set-C5l116L7.mjs} +2 -2
- package/dist/cli/{set-B0L-QiXT.mjs → set-DzcR6sFr.mjs} +2 -2
- package/dist/cli/{status-DEOAA0yx.mjs → status-CbXnAskz.mjs} +1 -1
- package/dist/cli/{wp-CobSX6C6.mjs → wp-CUKyZNTP.mjs} +1 -1
- package/dist/cli/wp-files/latest/available-site-translations.json +1 -1
- package/dist/cli/wp-files/latest/languages/admin-de_DE.l10n.php +2 -2
- package/dist/cli/wp-files/latest/languages/admin-network-de_DE.l10n.php +1 -1
- package/dist/cli/wp-files/latest/languages/admin-pl_PL.l10n.php +2 -2
- package/dist/cli/wp-files/latest/languages/de_DE-0cc31205f20441b3df1d1b46100f6b8d.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-0ce75ad2f775d1cac9696967d484808c.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-0eebe503220d4a00341eb011b92769b4.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-17179a5f2930647c89151e365f843b6e.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-1780a2033cf98d69ce13c2e5c8510004.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-1a0cd6a7128913b15c1a10dd68951869.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-1bba9045bb07c89671c88a3f328548e8.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-1c4303f02ff93b290e9faad991eeb06f.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-1d17475f620f63a92e2c5d2681c51ee8.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-2617ce121227a46077ede6c69aa9fcb5.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-270d72d1cff17227d37f3244759cbecb.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-28b3c3d595952907e08d98287077426c.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-2b390f85a3048c5b4255fb45960b6514.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-2c5d274ea625dd91556554ad82901529.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-320f4ad9792aaa6dedb1e71cbdf85d57.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-440127dd25bde48a531ded36f33e927b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-49c6d4acf36cf3aca9f0b2a77617304f.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-4a38fe1c0c45989e44682ba6109d9f46.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-4bfa11da57ff2600004bb500368247f4.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-50278328b502f4eb3f2b8b7ab49324a1.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-5251f7623766a714c8207c7edb938628.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-529362903a5a05b34b06b5e793fb4cf8.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-569e85ef168299eb8c8f24d8ef8c8a78.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-6025add6bde16aaeb12787d250f9b414.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-60d06fac6f98e8e8f0ec5a945738b660.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-68f2cec7514bf8563c723a4d675fcfe6.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7233008897033de5ee0d14f86a42a65a.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7289286ed59e90a8f36ae797df62220b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7436b7ee9e4f11ac0d618d8cc886eb66.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-77fdfadaf2e1ca3a027d1956b910bc50.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7b74c8457eaa7fcc50db41b431f8a003.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7c90cd4398ee2d9d3628c387a87a70e5.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7d5ca435e60d92f024d46c9257aaa0f7.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-7f13c36c641b114bf18cd0bcc9ecc7e0.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-803bf1ce2131e13efc590c1bc47851fc.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-81c889563f09dd13de1701135dc62941.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-81d6f084cb273e02e15b01bd9ece87f7.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-8240df461220d1d3a028a9a4c5652a5b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-8860e58c20c6a2ab5876a0f07be43bd9.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-93882e8f9976382d7f724ac595ed7151.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-947c76bb5095da30e16668eec15406b2.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-9b256ea9cd54df92095e04c76758ceb0.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-9c3519f4870fac83dc0dbf18cb6bd4c4.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-9d47a87c240c1d10701cd6a02b28aa1b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-a25d1cc7bf7ca0b4e114f6bea64943f4.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-a2796e57f680e25d84c4b352ee6d7280.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-a9dc201dcd011fe71849743133052619.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-aabfce98c410957228848dc581e3c420.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-ac23eee47530ac63a1178c827db28087.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-bf0f094965d3d4a95b47babcb35fc136.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-bf23b24175490c2e46aaf92ff6a0c70f.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-c31d5f185753910c14afebc6deb2ce24.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-ca28138671823450e87dfd354f7afc6b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-daeb084aab42199d26393a56c3465bc0.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-e2791ba830489d23043be8650a22a22b.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-e2e4c4b80f3adf2c70b431bfdb1b4872.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-e53526243551a102928735ec9eed4edf.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-f575f481034e90e21d832e415fd95fcf.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-f70806bf0c7d62f2908bd5a1c3fe4efc.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE-f8f49d9fc4a9cf7d78ec99285417bd9c.json +1 -1
- package/dist/cli/wp-files/latest/languages/de_DE.l10n.php +27 -27
- package/dist/cli/wp-files/latest/languages/pl_PL-0cc31205f20441b3df1d1b46100f6b8d.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-0eebe503220d4a00341eb011b92769b4.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-1c4303f02ff93b290e9faad991eeb06f.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-1d17475f620f63a92e2c5d2681c51ee8.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-2b390f85a3048c5b4255fb45960b6514.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-4a38fe1c0c45989e44682ba6109d9f46.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-4bfa11da57ff2600004bb500368247f4.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-50278328b502f4eb3f2b8b7ab49324a1.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-5251f7623766a714c8207c7edb938628.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-529362903a5a05b34b06b5e793fb4cf8.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-569e85ef168299eb8c8f24d8ef8c8a78.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-6025add6bde16aaeb12787d250f9b414.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-7436b7ee9e4f11ac0d618d8cc886eb66.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-77fdfadaf2e1ca3a027d1956b910bc50.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-7b74c8457eaa7fcc50db41b431f8a003.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-7d5ca435e60d92f024d46c9257aaa0f7.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-81d6f084cb273e02e15b01bd9ece87f7.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-8240df461220d1d3a028a9a4c5652a5b.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-9b256ea9cd54df92095e04c76758ceb0.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-9c3519f4870fac83dc0dbf18cb6bd4c4.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-9d47a87c240c1d10701cd6a02b28aa1b.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-a9dc201dcd011fe71849743133052619.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-aabfce98c410957228848dc581e3c420.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-ca28138671823450e87dfd354f7afc6b.json +1 -1
- package/dist/cli/wp-files/latest/languages/pl_PL-e2e4c4b80f3adf2c70b431bfdb1b4872.json +1 -1
- package/dist/cli/wp-files/sqlite-command/composer.json +4 -3
- package/dist/cli/wp-files/sqlite-command/composer.lock +132 -80
- package/dist/cli/wp-files/sqlite-command/vendor/autoload.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_classmap.php +58 -70
- package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_namespaces.php +1 -0
- package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_psr4.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_real.php +5 -5
- package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_static.php +78 -80
- package/dist/cli/wp-files/sqlite-command/vendor/composer/installed.json +104 -49
- package/dist/cli/wp-files/sqlite-command/vendor/composer/installed.php +29 -16
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/CHANGELOG.md +103 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/Comparator.php +62 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/DateComparator.php +50 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/NumberComparator.php +78 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Exception/AccessDeniedException.php +19 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Exception/DirectoryNotFoundException.php +19 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Finder.php +851 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Gitignore.php +91 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Glob.php +116 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/CustomFilterIterator.php +61 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/DateRangeFilterIterator.php +58 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/DepthRangeFilterIterator.php +48 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php +110 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php +51 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php +58 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FilenameFilterIterator.php +45 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/LazyIterator.php +32 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php +107 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/PathFilterIterator.php +56 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php +134 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/SizeRangeFilterIterator.php +57 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/SortableIterator.php +115 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php +173 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/LICENSE +19 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/README.md +14 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/SplFileInfo.php +80 -0
- package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/composer.json +31 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/.gitattributes +8 -0
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache → wp-cli}/mustache/LICENSE +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/README.md +76 -0
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache → wp-cli}/mustache/composer.json +6 -16
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/src/Mustache/Autoloader.php +88 -0
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/AbstractCache.php +7 -15
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/FilesystemCache.php +15 -20
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/NoopCache.php +4 -8
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache.php +7 -10
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Compiler.php +87 -144
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Context.php +19 -23
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Engine.php +134 -251
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/InvalidArgumentException.php +2 -6
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/LogicException.php +2 -6
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/RuntimeException.php +2 -6
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/SyntaxException.php +8 -7
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownFilterException.php +7 -7
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownHelperException.php +7 -7
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownTemplateException.php +7 -7
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception.php +5 -4
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/HelperCollection.php +17 -22
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/LambdaHelper.php +8 -28
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/ArrayLoader.php +9 -12
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/CascadingLoader.php +15 -18
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/FilesystemLoader.php +18 -24
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/InlineLoader.php +13 -19
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/MutableLoader.php +7 -4
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/ProductionFilesystemLoader.php +16 -23
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/StringLoader.php +4 -8
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader.php +7 -8
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger/AbstractLogger.php +26 -22
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger/StreamLogger.php +20 -25
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger.php +37 -13
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Parser.php +93 -100
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Source/FilesystemSource.php +7 -11
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Source.php +5 -4
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Template.php +32 -39
- package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Tokenizer.php +29 -33
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.actrc +3 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.gitattributes +6 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.mailmap +234 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/README.md +4 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/VERSION +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/CHANGELOG.md +0 -65
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/README.md +1 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/certificates/cacert.pem +372 -315
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/certificates/cacert.pem.sha256 +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/composer.json +5 -7
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Iri.php +18 -20
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Requests.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Response/Headers.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Transport/Curl.php +1 -5
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Transport/Fsockopen.php +0 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Utility/CaseInsensitiveDictionary.php +0 -12
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Utility/FilteredIterator.php +2 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/composer.json +13 -30
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/dependencies.yml +6 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/manifest.json +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Autoloader.php +2 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/AutoloaderStep.php +1 -10
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/CheckRoot.php +2 -20
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/DefineProtectedCommands.php +3 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/IncludeFrameworkAutoloader.php +4 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/IncludeRequestsAutoloader.php +3 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/InitializeContexts.php +0 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/InitializeLogger.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php +3 -6
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/{RegisterShutdownHandler.php → LoadDispatcher.php} +4 -6
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LoadRequiredCommand.php +5 -9
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LoadUtilityFunctions.php +0 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Completions.php +6 -149
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Configurator.php +49 -202
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Admin.php +21 -113
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Auto.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Cli.php +1 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Frontend.php +1 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php +26 -63
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CompositeCommand.php +9 -19
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php +19 -284
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/DocParser.php +5 -17
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Exception/NonExistentKeyException.php +3 -6
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Extractor.php +54 -30
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Base.php +3 -7
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Comment.php +2 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Post.php +3 -8
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Signup.php +1 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Site.php +4 -12
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/User.php +1 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/FileCache.php +33 -135
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Formatter.php +57 -221
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Inflector.php +4 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/CSV.php +1 -6
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Query.php +1 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Table.php +1 -7
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Transform.php +0 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Base.php +0 -15
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Quiet.php +3 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Regular.php +3 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/NoOp.php +0 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Process.php +7 -40
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/RequestsLibrary.php +1 -4
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php +234 -795
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/SynopsisParser.php +26 -116
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/SynopsisValidator.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Traverser/RecursiveDataStructureTraverser.php +26 -69
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/UpgraderSkin.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/WpHttpCacheManager.php +5 -67
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/WpOrgApi.php +3 -3
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/boot-fs.php +2 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/bootstrap.php +2 -5
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/class-wp-cli.php +62 -311
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Alias_Command.php +60 -292
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Cache_Command.php +1 -1
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Command.php +31 -191
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/Help_Command.php +35 -177
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/config-spec.php +4 -28
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/utils-wp.php +47 -81
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/utils.php +200 -512
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/wp-cli.php +2 -2
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/wp-settings-cli.php +465 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/templates/man-params.mustache +4 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/templates/man.mustache +0 -8
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ArgValidationTest.php +74 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/CommandFactoryTest.php +420 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ConfiguratorTest.php +87 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/DocParserTest.php +213 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ExtractorTest.php +293 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/FileCacheTest.php +207 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/HelpTest.php +119 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/InflectorTest.php +37 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/LoggingTest.php +124 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ProcessTest.php +30 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/SynopsisParserTest.php +194 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/UtilsTest.php +1092 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WPCLITest.php +16 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/Iterators/CSVTest.php +109 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/Traversers/RecursiveDataStructureTraverserTest.php +151 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/WpOrgApiTest.php +166 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WpVersionCompareTest.php +78 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/bootstrap.php +17 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-class-win.php +70 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-class.php +70 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-function-win.php +19 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-function.php +19 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/bar.ab2 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.ab1 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.ac1 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.efg2 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.ab1 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.ab2 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.efg1 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.efg2 +0 -0
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/mock-requests-transport.php +34 -0
- package/dist/cli/wp-files/sqlite-command/version +1 -1
- package/package.json +4 -3
- package/patches/archiver+7.0.1.patch +14 -0
- package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/.php-cs-fixer.php +0 -20
- package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/README.md +0 -94
- package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/src/RenderedString.php +0 -51
- package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/src/compat.php +0 -282
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.typos.toml +0 -14
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/AGENTS.md +0 -121
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/proxy.py +0 -5
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/start.sh +0 -19
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/stop.sh +0 -10
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Path.php +0 -260
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/ShutdownHandler.php +0 -329
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/schemas/wp-cli-config.json +0 -218
- package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/schemas/wp-cli.example.yml +0 -55
- /package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/{codecov.yml → tests/data/expand_globs/bar.ab1} +0 -0
|
@@ -3,28 +3,16 @@
|
|
|
3
3
|
/*
|
|
4
4
|
* This file is part of Mustache.php.
|
|
5
5
|
*
|
|
6
|
-
* (c) 2010-
|
|
6
|
+
* (c) 2010-2017 Justin Hileman
|
|
7
7
|
*
|
|
8
8
|
* For the full copyright and license information, please view the LICENSE
|
|
9
9
|
* file that was distributed with this source code.
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
namespace Mustache;
|
|
13
|
-
|
|
14
|
-
use Mustache\Cache\FilesystemCache;
|
|
15
|
-
use Mustache\Cache\NoopCache;
|
|
16
|
-
use Mustache\Exception\InvalidArgumentException;
|
|
17
|
-
use Mustache\Exception\RuntimeException;
|
|
18
|
-
use Mustache\Exception\UnknownTemplateException;
|
|
19
|
-
use Mustache\Loader\ArrayLoader;
|
|
20
|
-
use Mustache\Loader\MutableLoader;
|
|
21
|
-
use Mustache\Loader\StringLoader;
|
|
22
|
-
use Psr\Log\LoggerInterface;
|
|
23
|
-
|
|
24
12
|
/**
|
|
25
13
|
* A Mustache implementation in PHP.
|
|
26
14
|
*
|
|
27
|
-
* {@link
|
|
15
|
+
* {@link http://defunkt.github.com/mustache}
|
|
28
16
|
*
|
|
29
17
|
* Mustache is a framework-agnostic logic-less templating language. It enforces separation of view
|
|
30
18
|
* logic from template files. In fact, it is not even possible to embed logic in the template.
|
|
@@ -33,35 +21,32 @@ use Psr\Log\LoggerInterface;
|
|
|
33
21
|
*
|
|
34
22
|
* @author Justin Hileman {@link http://justinhileman.com}
|
|
35
23
|
*/
|
|
36
|
-
class
|
|
24
|
+
class Mustache_Engine
|
|
37
25
|
{
|
|
38
|
-
const VERSION = '
|
|
39
|
-
const SPEC_VERSION = '1.
|
|
26
|
+
const VERSION = '2.14.2';
|
|
27
|
+
const SPEC_VERSION = '1.3.0';
|
|
40
28
|
|
|
41
29
|
const PRAGMA_FILTERS = 'FILTERS';
|
|
30
|
+
const PRAGMA_BLOCKS = 'BLOCKS';
|
|
42
31
|
const PRAGMA_ANCHORED_DOT = 'ANCHORED-DOT';
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* @deprecated PRAGMA_BLOCKS is now part of the Mustache spec, and is enabled by default
|
|
46
|
-
*/
|
|
47
|
-
const PRAGMA_BLOCKS = 'BLOCKS';
|
|
32
|
+
const PRAGMA_DYNAMIC_NAMES = 'DYNAMIC-NAMES';
|
|
48
33
|
|
|
49
34
|
// Known pragmas
|
|
50
|
-
private static $knownPragmas =
|
|
35
|
+
private static $knownPragmas = array(
|
|
51
36
|
self::PRAGMA_FILTERS => true,
|
|
52
|
-
self::PRAGMA_ANCHORED_DOT => true,
|
|
53
37
|
self::PRAGMA_BLOCKS => true,
|
|
54
|
-
|
|
38
|
+
self::PRAGMA_ANCHORED_DOT => true,
|
|
39
|
+
self::PRAGMA_DYNAMIC_NAMES => true,
|
|
40
|
+
);
|
|
55
41
|
|
|
56
42
|
// Template cache
|
|
57
|
-
private $templates =
|
|
43
|
+
private $templates = array();
|
|
58
44
|
|
|
59
45
|
// Environment
|
|
60
46
|
private $templateClassPrefix = '__Mustache_';
|
|
61
47
|
private $cache;
|
|
62
48
|
private $lambdaCache;
|
|
63
49
|
private $cacheLambdaTemplates = false;
|
|
64
|
-
private $doubleRenderLambdas = false;
|
|
65
50
|
private $loader;
|
|
66
51
|
private $partialsLoader;
|
|
67
52
|
private $helpers;
|
|
@@ -69,16 +54,11 @@ class Engine
|
|
|
69
54
|
private $entityFlags = ENT_COMPAT;
|
|
70
55
|
private $charset = 'UTF-8';
|
|
71
56
|
private $logger;
|
|
72
|
-
private $strictCallables =
|
|
73
|
-
private $pragmas =
|
|
57
|
+
private $strictCallables = false;
|
|
58
|
+
private $pragmas = array();
|
|
74
59
|
private $delimiters;
|
|
75
60
|
private $buggyPropertyShadowing = false;
|
|
76
61
|
|
|
77
|
-
// Optional Mustache specs
|
|
78
|
-
private $dynamicNames = true;
|
|
79
|
-
private $inheritance = true;
|
|
80
|
-
private $lambdas = true;
|
|
81
|
-
|
|
82
62
|
// Services
|
|
83
63
|
private $tokenizer;
|
|
84
64
|
private $parser;
|
|
@@ -89,13 +69,13 @@ class Engine
|
|
|
89
69
|
*
|
|
90
70
|
* Passing an $options array allows overriding certain Mustache options during instantiation:
|
|
91
71
|
*
|
|
92
|
-
* $options =
|
|
72
|
+
* $options = array(
|
|
93
73
|
* // The class prefix for compiled templates. Defaults to '__Mustache_'.
|
|
94
74
|
* 'template_class_prefix' => '__MyTemplates_',
|
|
95
75
|
*
|
|
96
76
|
* // A Mustache cache instance or a cache directory string for compiled templates.
|
|
97
77
|
* // Mustache will not cache templates unless this is set.
|
|
98
|
-
* 'cache' =>
|
|
78
|
+
* 'cache' => dirname(__FILE__).'/tmp/cache/mustache',
|
|
99
79
|
*
|
|
100
80
|
* // Override default permissions for cache files. Defaults to using the system-defined umask. It is
|
|
101
81
|
* // *strongly* recommended that you configure your umask properly rather than overriding permissions here.
|
|
@@ -114,21 +94,21 @@ class Engine
|
|
|
114
94
|
* 'delimiters' => '<% %>',
|
|
115
95
|
*
|
|
116
96
|
* // A Mustache template loader instance. Uses a StringLoader if not specified.
|
|
117
|
-
* 'loader' => new
|
|
97
|
+
* 'loader' => new Mustache_Loader_FilesystemLoader(dirname(__FILE__).'/views'),
|
|
118
98
|
*
|
|
119
99
|
* // A Mustache loader instance for partials.
|
|
120
|
-
* 'partials_loader' => new
|
|
100
|
+
* 'partials_loader' => new Mustache_Loader_FilesystemLoader(dirname(__FILE__).'/views/partials'),
|
|
121
101
|
*
|
|
122
102
|
* // An array of Mustache partials. Useful for quick-and-dirty string template loading, but not as
|
|
123
103
|
* // efficient or lazy as a Filesystem (or database) loader.
|
|
124
|
-
* 'partials' =>
|
|
104
|
+
* 'partials' => array('foo' => file_get_contents(dirname(__FILE__).'/views/partials/foo.mustache')),
|
|
125
105
|
*
|
|
126
106
|
* // An array of 'helpers'. Helpers can be global variables or objects, closures (e.g. for higher order
|
|
127
107
|
* // sections), or any other valid Mustache context value. They will be prepended to the context stack,
|
|
128
108
|
* // so they will be available in any template loaded by this Mustache instance.
|
|
129
|
-
* 'helpers' =>
|
|
109
|
+
* 'helpers' => array('i18n' => function ($text) {
|
|
130
110
|
* // do something translatey here...
|
|
131
|
-
* }
|
|
111
|
+
* }),
|
|
132
112
|
*
|
|
133
113
|
* // An 'escape' callback, responsible for escaping double-mustache variables.
|
|
134
114
|
* 'escape' => function ($value) {
|
|
@@ -144,83 +124,29 @@ class Engine
|
|
|
144
124
|
* // A Mustache Logger instance. No logging will occur unless this is set. Using a PSR-3 compatible
|
|
145
125
|
* // logging library -- such as Monolog -- is highly recommended. A simple stream logger implementation is
|
|
146
126
|
* // available as well:
|
|
147
|
-
* 'logger' => new
|
|
148
|
-
*
|
|
149
|
-
*
|
|
150
|
-
* // OPTIONAL MUSTACHE FEATURES:
|
|
151
|
-
*
|
|
152
|
-
* // Enable dynamic names. By default, variables and sections like `{{*name}}` will be resolved dynamically.
|
|
153
|
-
* //
|
|
154
|
-
* // To disable dynamic name resolution, set this to false.
|
|
155
|
-
* 'dynamic_names' => true,
|
|
156
|
-
*
|
|
157
|
-
* // Enable template inheritance. By default, templates can extend other templates using the `{{< name}}` and
|
|
158
|
-
* // `{{$ block}}` tags.
|
|
159
|
-
* //
|
|
160
|
-
* // To disable inheritance, set this to false.
|
|
161
|
-
* 'inheritance' => true,
|
|
162
|
-
*
|
|
163
|
-
* // Enable lambda sections and values. By default, "lambdas" are enabled; if a variable resolves to a
|
|
164
|
-
* // callable value, that callable is called before interpolation. If a section name resolves to a callable
|
|
165
|
-
* // value, it is treated as a "higher order section", and the section content is passed to the callable
|
|
166
|
-
* // for processing prior to rendering.
|
|
167
|
-
* //
|
|
168
|
-
* // Note that the FILTERS pragma requires lambdas to function, so using FILTERS without lambdas enabled
|
|
169
|
-
* // will throw an invalid argument exception.
|
|
170
|
-
* //
|
|
171
|
-
* // To disable lambdas and higher order sections entirely, set this to false.
|
|
172
|
-
* 'lambdas' => true,
|
|
173
|
-
*
|
|
174
|
-
* // Enable pragmas across all templates, regardless of the presence of pragma tags in the individual
|
|
175
|
-
* // templates.
|
|
176
|
-
* 'pragmas' => [\Mustache\Engine::PRAGMA_FILTERS],
|
|
177
|
-
*
|
|
127
|
+
* 'logger' => new Mustache_Logger_StreamLogger('php://stderr'),
|
|
178
128
|
*
|
|
179
|
-
* //
|
|
180
|
-
*
|
|
181
|
-
* // Only treat \Closure instances and invokable classes as callable. If true, values like
|
|
182
|
-
* // `['ClassName', 'methodName']` and `[$classInstance, 'methodName']`, which are traditionally
|
|
129
|
+
* // Only treat Closure instances and invokable classes as callable. If true, values like
|
|
130
|
+
* // `array('ClassName', 'methodName')` and `array($classInstance, 'methodName')`, which are traditionally
|
|
183
131
|
* // "callable" in PHP, are not called to resolve variables for interpolation or section contexts. This
|
|
184
132
|
* // helps protect against arbitrary code execution when user input is passed directly into the template.
|
|
185
|
-
* //
|
|
186
|
-
* // Defaults to true, but can be set to false to preserve Mustache.php v2.x behavior.
|
|
187
|
-
* //
|
|
188
|
-
* // THIS IS NOT RECOMMENDED.
|
|
133
|
+
* // This currently defaults to false, but will default to true in v3.0.
|
|
189
134
|
* 'strict_callables' => true,
|
|
190
135
|
*
|
|
191
|
-
* // Enable
|
|
192
|
-
* //
|
|
193
|
-
*
|
|
194
|
-
*
|
|
195
|
-
* //
|
|
196
|
-
* // Setting the value of an array key to null prevents lookups higher in the context stack. The behavior
|
|
197
|
-
* // should have been identical for object properties (and ArrayAccess) as well, but a bug in the context
|
|
198
|
-
* // lookup logic meant that a property which exists but is set to null would not prevent further context
|
|
199
|
-
* // lookup.
|
|
200
|
-
* //
|
|
201
|
-
* // This bug was fixed in Mustache.php v3.x, but the previous buggy behavior can be preserved by setting this
|
|
202
|
-
* // option to true.
|
|
203
|
-
* //
|
|
204
|
-
* // THIS IS NOT RECOMMENDED.
|
|
205
|
-
* 'buggy_property_shadowing' => false,
|
|
136
|
+
* // Enable pragmas across all templates, regardless of the presence of pragma tags in the individual
|
|
137
|
+
* // templates.
|
|
138
|
+
* 'pragmas' => [Mustache_Engine::PRAGMA_FILTERS],
|
|
139
|
+
* );
|
|
206
140
|
*
|
|
207
|
-
*
|
|
208
|
-
* // rendered via the lambda helper will *not* be re-rendered.
|
|
209
|
-
* //
|
|
210
|
-
* // To preserve the behavior of Mustache.php v2.x, set this to true.
|
|
211
|
-
* //
|
|
212
|
-
* // THIS IS NOT RECOMMENDED.
|
|
213
|
-
* 'double_render_lambdas' => false,
|
|
214
|
-
* ];
|
|
141
|
+
* @throws Mustache_Exception_InvalidArgumentException If `escape` option is not callable
|
|
215
142
|
*
|
|
216
|
-
* @
|
|
217
|
-
* @throws InvalidArgumentException If `lambdas` is disabled but the `FILTERS` pragma is enabled
|
|
143
|
+
* @param array $options (default: array())
|
|
218
144
|
*/
|
|
219
|
-
public function __construct(array $options =
|
|
145
|
+
public function __construct(array $options = array())
|
|
220
146
|
{
|
|
221
147
|
if (isset($options['template_class_prefix'])) {
|
|
222
148
|
if ((string) $options['template_class_prefix'] === '') {
|
|
223
|
-
throw new
|
|
149
|
+
throw new Mustache_Exception_InvalidArgumentException('Mustache Constructor "template_class_prefix" must not be empty');
|
|
224
150
|
}
|
|
225
151
|
|
|
226
152
|
$this->templateClassPrefix = $options['template_class_prefix'];
|
|
@@ -231,7 +157,7 @@ class Engine
|
|
|
231
157
|
|
|
232
158
|
if (is_string($cache)) {
|
|
233
159
|
$mode = isset($options['cache_file_mode']) ? $options['cache_file_mode'] : null;
|
|
234
|
-
$cache = new
|
|
160
|
+
$cache = new Mustache_Cache_FilesystemCache($cache, $mode);
|
|
235
161
|
}
|
|
236
162
|
|
|
237
163
|
$this->setCache($cache);
|
|
@@ -259,7 +185,7 @@ class Engine
|
|
|
259
185
|
|
|
260
186
|
if (isset($options['escape'])) {
|
|
261
187
|
if (!is_callable($options['escape'])) {
|
|
262
|
-
throw new
|
|
188
|
+
throw new Mustache_Exception_InvalidArgumentException('Mustache Constructor "escape" option must be callable');
|
|
263
189
|
}
|
|
264
190
|
|
|
265
191
|
$this->escape = $options['escape'];
|
|
@@ -277,50 +203,26 @@ class Engine
|
|
|
277
203
|
$this->setLogger($options['logger']);
|
|
278
204
|
}
|
|
279
205
|
|
|
280
|
-
if (isset($options['
|
|
281
|
-
$this->
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
// Optional Mustache features
|
|
285
|
-
|
|
286
|
-
if (isset($options['dynamic_names'])) {
|
|
287
|
-
$this->dynamicNames = $options['dynamic_names'] !== false;
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
if (isset($options['inheritance'])) {
|
|
291
|
-
$this->inheritance = $options['inheritance'] !== false;
|
|
206
|
+
if (isset($options['strict_callables'])) {
|
|
207
|
+
$this->strictCallables = $options['strict_callables'];
|
|
292
208
|
}
|
|
293
209
|
|
|
294
|
-
if (isset($options['
|
|
295
|
-
$this->
|
|
210
|
+
if (isset($options['delimiters'])) {
|
|
211
|
+
$this->delimiters = $options['delimiters'];
|
|
296
212
|
}
|
|
297
213
|
|
|
298
214
|
if (isset($options['pragmas'])) {
|
|
299
215
|
foreach ($options['pragmas'] as $pragma) {
|
|
300
216
|
if (!isset(self::$knownPragmas[$pragma])) {
|
|
301
|
-
throw new
|
|
217
|
+
throw new Mustache_Exception_InvalidArgumentException(sprintf('Unknown pragma: "%s".', $pragma));
|
|
302
218
|
}
|
|
303
219
|
$this->pragmas[$pragma] = true;
|
|
304
220
|
}
|
|
305
221
|
}
|
|
306
222
|
|
|
307
|
-
if (!$this->lambdas && isset($this->pragmas[self::PRAGMA_FILTERS])) {
|
|
308
|
-
throw new InvalidArgumentException('The FILTERS pragma requires lambda support');
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
// Backwards compatibility
|
|
312
|
-
|
|
313
|
-
if (isset($options['strict_callables'])) {
|
|
314
|
-
$this->strictCallables = (bool) $options['strict_callables'];
|
|
315
|
-
}
|
|
316
|
-
|
|
317
223
|
if (isset($options['buggy_property_shadowing'])) {
|
|
318
224
|
$this->buggyPropertyShadowing = (bool) $options['buggy_property_shadowing'];
|
|
319
225
|
}
|
|
320
|
-
|
|
321
|
-
if (isset($options['double_render_lambdas'])) {
|
|
322
|
-
$this->doubleRenderLambdas = (bool) $options['double_render_lambdas'];
|
|
323
|
-
}
|
|
324
226
|
}
|
|
325
227
|
|
|
326
228
|
/**
|
|
@@ -328,14 +230,15 @@ class Engine
|
|
|
328
230
|
*
|
|
329
231
|
* Equivalent to calling `$mustache->loadTemplate($template)->render($context);`
|
|
330
232
|
*
|
|
331
|
-
* @see
|
|
332
|
-
* @see
|
|
233
|
+
* @see Mustache_Engine::loadTemplate
|
|
234
|
+
* @see Mustache_Template::render
|
|
333
235
|
*
|
|
334
236
|
* @param string $template
|
|
237
|
+
* @param mixed $context (default: array())
|
|
335
238
|
*
|
|
336
239
|
* @return string Rendered template
|
|
337
240
|
*/
|
|
338
|
-
public function render($template, $context =
|
|
241
|
+
public function render($template, $context = array())
|
|
339
242
|
{
|
|
340
243
|
return $this->loadTemplate($template)->render($context);
|
|
341
244
|
}
|
|
@@ -351,7 +254,7 @@ class Engine
|
|
|
351
254
|
}
|
|
352
255
|
|
|
353
256
|
/**
|
|
354
|
-
* Get the current Mustache
|
|
257
|
+
* Get the current Mustache entitity type to escape.
|
|
355
258
|
*
|
|
356
259
|
* @return int
|
|
357
260
|
*/
|
|
@@ -370,46 +273,16 @@ class Engine
|
|
|
370
273
|
return $this->charset;
|
|
371
274
|
}
|
|
372
275
|
|
|
373
|
-
/**
|
|
374
|
-
* Check whether to double-render higher-order sections.
|
|
375
|
-
*
|
|
376
|
-
* By default, the return value of higher order sections that are rendered
|
|
377
|
-
* via the lambda helper will *not* be re-rendered. To preserve the
|
|
378
|
-
* behavior of Mustache.php v2.x, set this to true.
|
|
379
|
-
*
|
|
380
|
-
* THIS IS NOT RECOMMENDED.
|
|
381
|
-
*/
|
|
382
|
-
public function getDoubleRenderLambdas()
|
|
383
|
-
{
|
|
384
|
-
return $this->doubleRenderLambdas;
|
|
385
|
-
}
|
|
386
|
-
|
|
387
276
|
/**
|
|
388
277
|
* Check whether to use buggy property shadowing.
|
|
389
278
|
*
|
|
390
|
-
* THIS IS NOT RECOMMENDED.
|
|
391
|
-
*
|
|
392
279
|
* See https://github.com/bobthecow/mustache.php/pull/410
|
|
393
280
|
*/
|
|
394
|
-
public function
|
|
281
|
+
public function useBuggyPropertyShadowing()
|
|
395
282
|
{
|
|
396
283
|
return $this->buggyPropertyShadowing;
|
|
397
284
|
}
|
|
398
285
|
|
|
399
|
-
/**
|
|
400
|
-
* Get currently enabled optional features.
|
|
401
|
-
*
|
|
402
|
-
* @return array
|
|
403
|
-
*/
|
|
404
|
-
public function getOptions()
|
|
405
|
-
{
|
|
406
|
-
return [
|
|
407
|
-
'dynamic_names' => $this->dynamicNames,
|
|
408
|
-
'inheritance' => $this->inheritance,
|
|
409
|
-
'lambdas' => $this->lambdas,
|
|
410
|
-
];
|
|
411
|
-
}
|
|
412
|
-
|
|
413
286
|
/**
|
|
414
287
|
* Get the current globally enabled pragmas.
|
|
415
288
|
*
|
|
@@ -422,8 +295,10 @@ class Engine
|
|
|
422
295
|
|
|
423
296
|
/**
|
|
424
297
|
* Set the Mustache template Loader instance.
|
|
298
|
+
*
|
|
299
|
+
* @param Mustache_Loader $loader
|
|
425
300
|
*/
|
|
426
|
-
public function setLoader(
|
|
301
|
+
public function setLoader(Mustache_Loader $loader)
|
|
427
302
|
{
|
|
428
303
|
$this->loader = $loader;
|
|
429
304
|
}
|
|
@@ -434,12 +309,12 @@ class Engine
|
|
|
434
309
|
* If no Loader instance has been explicitly specified, this method will instantiate and return
|
|
435
310
|
* a StringLoader instance.
|
|
436
311
|
*
|
|
437
|
-
* @return
|
|
312
|
+
* @return Mustache_Loader
|
|
438
313
|
*/
|
|
439
314
|
public function getLoader()
|
|
440
315
|
{
|
|
441
316
|
if (!isset($this->loader)) {
|
|
442
|
-
$this->loader = new
|
|
317
|
+
$this->loader = new Mustache_Loader_StringLoader();
|
|
443
318
|
}
|
|
444
319
|
|
|
445
320
|
return $this->loader;
|
|
@@ -447,8 +322,10 @@ class Engine
|
|
|
447
322
|
|
|
448
323
|
/**
|
|
449
324
|
* Set the Mustache partials Loader instance.
|
|
325
|
+
*
|
|
326
|
+
* @param Mustache_Loader $partialsLoader
|
|
450
327
|
*/
|
|
451
|
-
public function setPartialsLoader(
|
|
328
|
+
public function setPartialsLoader(Mustache_Loader $partialsLoader)
|
|
452
329
|
{
|
|
453
330
|
$this->partialsLoader = $partialsLoader;
|
|
454
331
|
}
|
|
@@ -459,12 +336,12 @@ class Engine
|
|
|
459
336
|
* If no Loader instance has been explicitly specified, this method will instantiate and return
|
|
460
337
|
* an ArrayLoader instance.
|
|
461
338
|
*
|
|
462
|
-
* @return
|
|
339
|
+
* @return Mustache_Loader
|
|
463
340
|
*/
|
|
464
341
|
public function getPartialsLoader()
|
|
465
342
|
{
|
|
466
343
|
if (!isset($this->partialsLoader)) {
|
|
467
|
-
$this->partialsLoader = new
|
|
344
|
+
$this->partialsLoader = new Mustache_Loader_ArrayLoader();
|
|
468
345
|
}
|
|
469
346
|
|
|
470
347
|
return $this->partialsLoader;
|
|
@@ -473,16 +350,18 @@ class Engine
|
|
|
473
350
|
/**
|
|
474
351
|
* Set partials for the current partials Loader instance.
|
|
475
352
|
*
|
|
476
|
-
* @throws
|
|
353
|
+
* @throws Mustache_Exception_RuntimeException If the current Loader instance is immutable
|
|
354
|
+
*
|
|
355
|
+
* @param array $partials (default: array())
|
|
477
356
|
*/
|
|
478
|
-
public function setPartials(array $partials =
|
|
357
|
+
public function setPartials(array $partials = array())
|
|
479
358
|
{
|
|
480
359
|
if (!isset($this->partialsLoader)) {
|
|
481
|
-
$this->partialsLoader = new
|
|
360
|
+
$this->partialsLoader = new Mustache_Loader_ArrayLoader();
|
|
482
361
|
}
|
|
483
362
|
|
|
484
|
-
if (!$this->partialsLoader instanceof
|
|
485
|
-
throw new
|
|
363
|
+
if (!$this->partialsLoader instanceof Mustache_Loader_MutableLoader) {
|
|
364
|
+
throw new Mustache_Exception_RuntimeException('Unable to set partials on an immutable Mustache Loader instance');
|
|
486
365
|
}
|
|
487
366
|
|
|
488
367
|
$this->partialsLoader->setTemplates($partials);
|
|
@@ -495,14 +374,14 @@ class Engine
|
|
|
495
374
|
* any other valid Mustache context value. They will be prepended to the context stack, so they will be available in
|
|
496
375
|
* any template loaded by this Mustache instance.
|
|
497
376
|
*
|
|
498
|
-
* @throws
|
|
377
|
+
* @throws Mustache_Exception_InvalidArgumentException if $helpers is not an array or Traversable
|
|
499
378
|
*
|
|
500
|
-
* @param array
|
|
379
|
+
* @param array|Traversable $helpers
|
|
501
380
|
*/
|
|
502
381
|
public function setHelpers($helpers)
|
|
503
382
|
{
|
|
504
|
-
if (!is_array($helpers) && !$helpers instanceof
|
|
505
|
-
throw new
|
|
383
|
+
if (!is_array($helpers) && !$helpers instanceof Traversable) {
|
|
384
|
+
throw new Mustache_Exception_InvalidArgumentException('setHelpers expects an array of helpers');
|
|
506
385
|
}
|
|
507
386
|
|
|
508
387
|
$this->getHelpers()->clear();
|
|
@@ -515,14 +394,14 @@ class Engine
|
|
|
515
394
|
/**
|
|
516
395
|
* Get the current set of Mustache helpers.
|
|
517
396
|
*
|
|
518
|
-
* @see
|
|
397
|
+
* @see Mustache_Engine::setHelpers
|
|
519
398
|
*
|
|
520
|
-
* @return
|
|
399
|
+
* @return Mustache_HelperCollection
|
|
521
400
|
*/
|
|
522
401
|
public function getHelpers()
|
|
523
402
|
{
|
|
524
403
|
if (!isset($this->helpers)) {
|
|
525
|
-
$this->helpers = new
|
|
404
|
+
$this->helpers = new Mustache_HelperCollection();
|
|
526
405
|
}
|
|
527
406
|
|
|
528
407
|
return $this->helpers;
|
|
@@ -531,7 +410,7 @@ class Engine
|
|
|
531
410
|
/**
|
|
532
411
|
* Add a new Mustache helper.
|
|
533
412
|
*
|
|
534
|
-
* @see
|
|
413
|
+
* @see Mustache_Engine::setHelpers
|
|
535
414
|
*
|
|
536
415
|
* @param string $name
|
|
537
416
|
* @param mixed $helper
|
|
@@ -544,7 +423,7 @@ class Engine
|
|
|
544
423
|
/**
|
|
545
424
|
* Get a Mustache helper by name.
|
|
546
425
|
*
|
|
547
|
-
* @see
|
|
426
|
+
* @see Mustache_Engine::setHelpers
|
|
548
427
|
*
|
|
549
428
|
* @param string $name
|
|
550
429
|
*
|
|
@@ -558,7 +437,7 @@ class Engine
|
|
|
558
437
|
/**
|
|
559
438
|
* Check whether this Mustache instance has a helper.
|
|
560
439
|
*
|
|
561
|
-
* @see
|
|
440
|
+
* @see Mustache_Engine::setHelpers
|
|
562
441
|
*
|
|
563
442
|
* @param string $name
|
|
564
443
|
*
|
|
@@ -572,7 +451,7 @@ class Engine
|
|
|
572
451
|
/**
|
|
573
452
|
* Remove a helper by name.
|
|
574
453
|
*
|
|
575
|
-
* @see
|
|
454
|
+
* @see Mustache_Engine::setHelpers
|
|
576
455
|
*
|
|
577
456
|
* @param string $name
|
|
578
457
|
*/
|
|
@@ -584,15 +463,14 @@ class Engine
|
|
|
584
463
|
/**
|
|
585
464
|
* Set the Mustache Logger instance.
|
|
586
465
|
*
|
|
587
|
-
* @throws
|
|
466
|
+
* @throws Mustache_Exception_InvalidArgumentException If logger is not an instance of Mustache_Logger or Psr\Log\LoggerInterface
|
|
588
467
|
*
|
|
589
|
-
* @param
|
|
468
|
+
* @param Mustache_Logger|Psr\Log\LoggerInterface $logger
|
|
590
469
|
*/
|
|
591
470
|
public function setLogger($logger = null)
|
|
592
471
|
{
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
throw new InvalidArgumentException('Expected an instance of Mustache\\Logger or Psr\\Log\\LoggerInterface.');
|
|
472
|
+
if ($logger !== null && !($logger instanceof Mustache_Logger || is_a($logger, 'Psr\\Log\\LoggerInterface'))) {
|
|
473
|
+
throw new Mustache_Exception_InvalidArgumentException('Expected an instance of Mustache_Logger or Psr\\Log\\LoggerInterface.');
|
|
596
474
|
}
|
|
597
475
|
|
|
598
476
|
if ($this->getCache()->getLogger() === null) {
|
|
@@ -605,7 +483,7 @@ class Engine
|
|
|
605
483
|
/**
|
|
606
484
|
* Get the current Mustache Logger instance.
|
|
607
485
|
*
|
|
608
|
-
* @return
|
|
486
|
+
* @return Mustache_Logger|Psr\Log\LoggerInterface
|
|
609
487
|
*/
|
|
610
488
|
public function getLogger()
|
|
611
489
|
{
|
|
@@ -614,8 +492,10 @@ class Engine
|
|
|
614
492
|
|
|
615
493
|
/**
|
|
616
494
|
* Set the Mustache Tokenizer instance.
|
|
495
|
+
*
|
|
496
|
+
* @param Mustache_Tokenizer $tokenizer
|
|
617
497
|
*/
|
|
618
|
-
public function setTokenizer(
|
|
498
|
+
public function setTokenizer(Mustache_Tokenizer $tokenizer)
|
|
619
499
|
{
|
|
620
500
|
$this->tokenizer = $tokenizer;
|
|
621
501
|
}
|
|
@@ -625,12 +505,12 @@ class Engine
|
|
|
625
505
|
*
|
|
626
506
|
* If no Tokenizer instance has been explicitly specified, this method will instantiate and return a new one.
|
|
627
507
|
*
|
|
628
|
-
* @return
|
|
508
|
+
* @return Mustache_Tokenizer
|
|
629
509
|
*/
|
|
630
510
|
public function getTokenizer()
|
|
631
511
|
{
|
|
632
512
|
if (!isset($this->tokenizer)) {
|
|
633
|
-
$this->tokenizer = new
|
|
513
|
+
$this->tokenizer = new Mustache_Tokenizer();
|
|
634
514
|
}
|
|
635
515
|
|
|
636
516
|
return $this->tokenizer;
|
|
@@ -638,8 +518,10 @@ class Engine
|
|
|
638
518
|
|
|
639
519
|
/**
|
|
640
520
|
* Set the Mustache Parser instance.
|
|
521
|
+
*
|
|
522
|
+
* @param Mustache_Parser $parser
|
|
641
523
|
*/
|
|
642
|
-
public function setParser(
|
|
524
|
+
public function setParser(Mustache_Parser $parser)
|
|
643
525
|
{
|
|
644
526
|
$this->parser = $parser;
|
|
645
527
|
}
|
|
@@ -649,12 +531,12 @@ class Engine
|
|
|
649
531
|
*
|
|
650
532
|
* If no Parser instance has been explicitly specified, this method will instantiate and return a new one.
|
|
651
533
|
*
|
|
652
|
-
* @return
|
|
534
|
+
* @return Mustache_Parser
|
|
653
535
|
*/
|
|
654
536
|
public function getParser()
|
|
655
537
|
{
|
|
656
538
|
if (!isset($this->parser)) {
|
|
657
|
-
$this->parser = new
|
|
539
|
+
$this->parser = new Mustache_Parser();
|
|
658
540
|
}
|
|
659
541
|
|
|
660
542
|
return $this->parser;
|
|
@@ -662,8 +544,10 @@ class Engine
|
|
|
662
544
|
|
|
663
545
|
/**
|
|
664
546
|
* Set the Mustache Compiler instance.
|
|
547
|
+
*
|
|
548
|
+
* @param Mustache_Compiler $compiler
|
|
665
549
|
*/
|
|
666
|
-
public function setCompiler(
|
|
550
|
+
public function setCompiler(Mustache_Compiler $compiler)
|
|
667
551
|
{
|
|
668
552
|
$this->compiler = $compiler;
|
|
669
553
|
}
|
|
@@ -673,12 +557,12 @@ class Engine
|
|
|
673
557
|
*
|
|
674
558
|
* If no Compiler instance has been explicitly specified, this method will instantiate and return a new one.
|
|
675
559
|
*
|
|
676
|
-
* @return
|
|
560
|
+
* @return Mustache_Compiler
|
|
677
561
|
*/
|
|
678
562
|
public function getCompiler()
|
|
679
563
|
{
|
|
680
564
|
if (!isset($this->compiler)) {
|
|
681
|
-
$this->compiler = new
|
|
565
|
+
$this->compiler = new Mustache_Compiler();
|
|
682
566
|
}
|
|
683
567
|
|
|
684
568
|
return $this->compiler;
|
|
@@ -686,8 +570,10 @@ class Engine
|
|
|
686
570
|
|
|
687
571
|
/**
|
|
688
572
|
* Set the Mustache Cache instance.
|
|
573
|
+
*
|
|
574
|
+
* @param Mustache_Cache $cache
|
|
689
575
|
*/
|
|
690
|
-
public function setCache(
|
|
576
|
+
public function setCache(Mustache_Cache $cache)
|
|
691
577
|
{
|
|
692
578
|
if (isset($this->logger) && $cache->getLogger() === null) {
|
|
693
579
|
$cache->setLogger($this->getLogger());
|
|
@@ -701,12 +587,12 @@ class Engine
|
|
|
701
587
|
*
|
|
702
588
|
* If no Cache instance has been explicitly specified, this method will instantiate and return a new one.
|
|
703
589
|
*
|
|
704
|
-
* @return
|
|
590
|
+
* @return Mustache_Cache
|
|
705
591
|
*/
|
|
706
592
|
public function getCache()
|
|
707
593
|
{
|
|
708
594
|
if (!isset($this->cache)) {
|
|
709
|
-
$this->setCache(new
|
|
595
|
+
$this->setCache(new Mustache_Cache_NoopCache());
|
|
710
596
|
}
|
|
711
597
|
|
|
712
598
|
return $this->cache;
|
|
@@ -717,9 +603,9 @@ class Engine
|
|
|
717
603
|
*
|
|
718
604
|
* If 'cache_lambda_templates' is enabled, this is the default cache instance. Otherwise, it is a NoopCache.
|
|
719
605
|
*
|
|
720
|
-
* @see
|
|
606
|
+
* @see Mustache_Engine::getCache
|
|
721
607
|
*
|
|
722
|
-
* @return
|
|
608
|
+
* @return Mustache_Cache
|
|
723
609
|
*/
|
|
724
610
|
protected function getLambdaCache()
|
|
725
611
|
{
|
|
@@ -728,7 +614,7 @@ class Engine
|
|
|
728
614
|
}
|
|
729
615
|
|
|
730
616
|
if (!isset($this->lambdaCache)) {
|
|
731
|
-
$this->lambdaCache = new
|
|
617
|
+
$this->lambdaCache = new Mustache_Cache_NoopCache();
|
|
732
618
|
}
|
|
733
619
|
|
|
734
620
|
return $this->lambdaCache;
|
|
@@ -740,7 +626,7 @@ class Engine
|
|
|
740
626
|
* This method must be updated any time options are added which make it so
|
|
741
627
|
* the same template could be parsed and compiled multiple different ways.
|
|
742
628
|
*
|
|
743
|
-
* @param string|
|
|
629
|
+
* @param string|Mustache_Source $source
|
|
744
630
|
*
|
|
745
631
|
* @return string Mustache Template class name
|
|
746
632
|
*/
|
|
@@ -754,23 +640,22 @@ class Engine
|
|
|
754
640
|
// 'default' escapes.
|
|
755
641
|
//
|
|
756
642
|
// Keep this list in alphabetical order :)
|
|
757
|
-
$chunks =
|
|
643
|
+
$chunks = array(
|
|
758
644
|
'charset' => $this->charset,
|
|
759
|
-
'delimiters' => $this->delimiters
|
|
645
|
+
'delimiters' => $this->delimiters ? $this->delimiters : '{{ }}',
|
|
760
646
|
'entityFlags' => $this->entityFlags,
|
|
761
647
|
'escape' => isset($this->escape) ? 'custom' : 'default',
|
|
762
|
-
'key' => ($source instanceof
|
|
763
|
-
'options' => $this->getOptions(),
|
|
648
|
+
'key' => ($source instanceof Mustache_Source) ? $source->getKey() : 'source',
|
|
764
649
|
'pragmas' => $this->getPragmas(),
|
|
765
650
|
'strictCallables' => $this->strictCallables,
|
|
766
651
|
'version' => self::VERSION,
|
|
767
|
-
|
|
652
|
+
);
|
|
768
653
|
|
|
769
654
|
$key = json_encode($chunks);
|
|
770
655
|
|
|
771
656
|
// Template Source instances have already provided their own source key. For strings, just include the whole
|
|
772
657
|
// source string in the md5 hash.
|
|
773
|
-
if (!$source instanceof
|
|
658
|
+
if (!$source instanceof Mustache_Source) {
|
|
774
659
|
$key .= "\n" . $source;
|
|
775
660
|
}
|
|
776
661
|
|
|
@@ -782,7 +667,7 @@ class Engine
|
|
|
782
667
|
*
|
|
783
668
|
* @param string $name
|
|
784
669
|
*
|
|
785
|
-
* @return
|
|
670
|
+
* @return Mustache_Template
|
|
786
671
|
*/
|
|
787
672
|
public function loadTemplate($name)
|
|
788
673
|
{
|
|
@@ -797,26 +682,26 @@ class Engine
|
|
|
797
682
|
*
|
|
798
683
|
* @param string $name
|
|
799
684
|
*
|
|
800
|
-
* @return
|
|
685
|
+
* @return Mustache_Template
|
|
801
686
|
*/
|
|
802
687
|
public function loadPartial($name)
|
|
803
688
|
{
|
|
804
689
|
try {
|
|
805
690
|
if (isset($this->partialsLoader)) {
|
|
806
691
|
$loader = $this->partialsLoader;
|
|
807
|
-
} elseif (isset($this->loader) && !$this->loader instanceof
|
|
692
|
+
} elseif (isset($this->loader) && !$this->loader instanceof Mustache_Loader_StringLoader) {
|
|
808
693
|
$loader = $this->loader;
|
|
809
694
|
} else {
|
|
810
|
-
throw new
|
|
695
|
+
throw new Mustache_Exception_UnknownTemplateException($name);
|
|
811
696
|
}
|
|
812
697
|
|
|
813
698
|
return $this->loadSource($loader->load($name));
|
|
814
|
-
} catch (
|
|
699
|
+
} catch (Mustache_Exception_UnknownTemplateException $e) {
|
|
815
700
|
// If the named partial cannot be found, log then return null.
|
|
816
701
|
$this->log(
|
|
817
|
-
|
|
702
|
+
Mustache_Logger::WARNING,
|
|
818
703
|
'Partial not found: "{name}"',
|
|
819
|
-
|
|
704
|
+
array('name' => $e->getTemplateName())
|
|
820
705
|
);
|
|
821
706
|
}
|
|
822
707
|
}
|
|
@@ -830,7 +715,7 @@ class Engine
|
|
|
830
715
|
* @param string $source
|
|
831
716
|
* @param string $delims (default: null)
|
|
832
717
|
*
|
|
833
|
-
* @return
|
|
718
|
+
* @return Mustache_Template
|
|
834
719
|
*/
|
|
835
720
|
public function loadLambda($source, $delims = null)
|
|
836
721
|
{
|
|
@@ -844,24 +729,24 @@ class Engine
|
|
|
844
729
|
/**
|
|
845
730
|
* Instantiate and return a Mustache Template instance by source.
|
|
846
731
|
*
|
|
847
|
-
* Optionally provide a
|
|
732
|
+
* Optionally provide a Mustache_Cache instance. This is used internally by Mustache_Engine::loadLambda to respect
|
|
848
733
|
* the 'cache_lambda_templates' configuration option.
|
|
849
734
|
*
|
|
850
|
-
* @see
|
|
851
|
-
* @see
|
|
852
|
-
* @see
|
|
735
|
+
* @see Mustache_Engine::loadTemplate
|
|
736
|
+
* @see Mustache_Engine::loadPartial
|
|
737
|
+
* @see Mustache_Engine::loadLambda
|
|
853
738
|
*
|
|
854
|
-
* @param string|
|
|
855
|
-
* @param
|
|
739
|
+
* @param string|Mustache_Source $source
|
|
740
|
+
* @param Mustache_Cache $cache (default: null)
|
|
856
741
|
*
|
|
857
|
-
* @return
|
|
742
|
+
* @return Mustache_Template
|
|
858
743
|
*/
|
|
859
744
|
private function loadSource($source, $cache = null)
|
|
860
745
|
{
|
|
861
746
|
$className = $this->getTemplateClassName($source);
|
|
862
747
|
|
|
863
748
|
if (!isset($this->templates[$className])) {
|
|
864
|
-
if ($cache === null ||
|
|
749
|
+
if ($cache === null || ! $cache instanceof Mustache_Cache) {
|
|
865
750
|
$cache = $this->getCache();
|
|
866
751
|
}
|
|
867
752
|
|
|
@@ -873,9 +758,9 @@ class Engine
|
|
|
873
758
|
}
|
|
874
759
|
|
|
875
760
|
$this->log(
|
|
876
|
-
|
|
761
|
+
Mustache_Logger::DEBUG,
|
|
877
762
|
'Instantiating template: "{className}"',
|
|
878
|
-
|
|
763
|
+
array('className' => $className)
|
|
879
764
|
);
|
|
880
765
|
|
|
881
766
|
$this->templates[$className] = new $className($this);
|
|
@@ -887,7 +772,7 @@ class Engine
|
|
|
887
772
|
/**
|
|
888
773
|
* Helper method to tokenize a Mustache template.
|
|
889
774
|
*
|
|
890
|
-
* @see
|
|
775
|
+
* @see Mustache_Tokenizer::scan
|
|
891
776
|
*
|
|
892
777
|
* @param string $source
|
|
893
778
|
*
|
|
@@ -901,7 +786,7 @@ class Engine
|
|
|
901
786
|
/**
|
|
902
787
|
* Helper method to parse a Mustache template.
|
|
903
788
|
*
|
|
904
|
-
* @see
|
|
789
|
+
* @see Mustache_Parser::parse
|
|
905
790
|
*
|
|
906
791
|
* @param string $source
|
|
907
792
|
*
|
|
@@ -910,7 +795,6 @@ class Engine
|
|
|
910
795
|
private function parse($source)
|
|
911
796
|
{
|
|
912
797
|
$parser = $this->getParser();
|
|
913
|
-
$parser->setOptions($this->getOptions());
|
|
914
798
|
$parser->setPragmas($this->getPragmas());
|
|
915
799
|
|
|
916
800
|
return $parser->parse($this->tokenize($source));
|
|
@@ -919,9 +803,9 @@ class Engine
|
|
|
919
803
|
/**
|
|
920
804
|
* Helper method to compile a Mustache template.
|
|
921
805
|
*
|
|
922
|
-
* @see
|
|
806
|
+
* @see Mustache_Compiler::compile
|
|
923
807
|
*
|
|
924
|
-
* @param string|
|
|
808
|
+
* @param string|Mustache_Source $source
|
|
925
809
|
*
|
|
926
810
|
* @return string generated Mustache template class code
|
|
927
811
|
*/
|
|
@@ -930,18 +814,17 @@ class Engine
|
|
|
930
814
|
$name = $this->getTemplateClassName($source);
|
|
931
815
|
|
|
932
816
|
$this->log(
|
|
933
|
-
|
|
817
|
+
Mustache_Logger::INFO,
|
|
934
818
|
'Compiling template to "{className}" class',
|
|
935
|
-
|
|
819
|
+
array('className' => $name)
|
|
936
820
|
);
|
|
937
821
|
|
|
938
|
-
if ($source instanceof
|
|
822
|
+
if ($source instanceof Mustache_Source) {
|
|
939
823
|
$source = $source->getSource();
|
|
940
824
|
}
|
|
941
825
|
$tree = $this->parse($source);
|
|
942
826
|
|
|
943
827
|
$compiler = $this->getCompiler();
|
|
944
|
-
$compiler->setOptions($this->getOptions());
|
|
945
828
|
$compiler->setPragmas($this->getPragmas());
|
|
946
829
|
|
|
947
830
|
return $compiler->compile($source, $tree, $name, isset($this->escape), $this->charset, $this->strictCallables, $this->entityFlags);
|
|
@@ -954,7 +837,7 @@ class Engine
|
|
|
954
837
|
* @param string $message The log message
|
|
955
838
|
* @param array $context The log context
|
|
956
839
|
*/
|
|
957
|
-
private function log($level, $message, array $context =
|
|
840
|
+
private function log($level, $message, array $context = array())
|
|
958
841
|
{
|
|
959
842
|
if (isset($this->logger)) {
|
|
960
843
|
$this->logger->log($level, $message, $context);
|