Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/browser-sync-ui/lib/ |
Upload File : |
var tokenize = require("html-tokenize"); var through2 = require("through2"); var vinyl = require("vinyl"); var select = require("html-select"); /** * @param config * @param item * @param markup * @param done */ function directiveStripper(config, item, markup, done) { var replacer = getReplacer(item, config); var chunks = []; new vinyl({ contents: new Buffer(markup) }) .pipe(tokenize()) .pipe(replacer) .pipe(through2.obj(function (row, buf, next) { chunks.push(row[1]); next(); }, function () { done(null, chunks.join("")); })); replacer.resume(); } /** * @param name * @param item * @returns {*|exports} */ function getReplacer (name, markup) { return select(name, function (e) { var tr = through2.obj(function (row, buf, next) { if (row[0] === "open") { this.push([row[0], directive(name, String(row[1]), markup)]); } else { this.push([ row[0], "" ]); } next(); }); tr.pipe(e.createStream()).pipe(tr); }); } /** * @param name * @param content * @param item * @returns {*|string} */ function directive (name, content, item) { var angularDir; try { angularDir = require("../src/scripts/directives/" + name)(); } catch (e) { console.log("Directive not found, cannot re-use"); return content; } var scope = item; scope = angularDir.link(scope, {}, {}); return angularDir.template.replace(/\{\{(.+?)\}\}/, function ($1, $2) { if ($2 in scope) { return scope[$2]; } return $1; }); } module.exports.getReplacer = getReplacer; module.exports.directive = directive; module.exports.directiveStripper = directiveStripper;