Advertisement
pvcodes

Untitled

Feb 7th, 2024
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.89 KB | None | 0 0
  1. const createUnoptimizedDependencyObjForIfBlock = (id) => {
  2. const dependencies = json_script?.order?.[id];
  3. const _unoptimizedDependencyArr = [];
  4.  
  5. for (const dependency of dependencies) {
  6. if (getType(dependency) === "comment") continue;
  7. else if (getType(dependency) === "ifBlock")
  8. createUnoptimizedDependencyObjForIfBlock(dependency);
  9. else if (getType(dependency) == "variable") {
  10. _unoptimizedDependencyArr.push(`context.vals.${dependency}`);
  11. } else {
  12. _unoptimizedDependencyArr.push(`context.res.${dependency}`);
  13. }
  14. }
  15. return _unoptimizedDependencyArr;
  16. };
  17.  
  18. const createUnoptimizedDependencyObj = () => {
  19. const _unoptimizedDependencyObj = {};
  20. const root = json_script?.order?.root;
  21.  
  22. const rootStack = [];
  23.  
  24. for (const slugName of root) {
  25. if (getType(slugName) === "comment") continue;
  26. else if (getType(slugName) === "ifBlock") {
  27. rootStack.push(`context.if.${slugName}`);
  28. rootStack.push(
  29. ...createUnoptimizedDependencyObjForIfBlock(slugName)
  30. );
  31. } else if (getType(slugName) === "variable") {
  32. rootStack.push(`context.vals.${slugName}`);
  33. } else {
  34. rootStack.push(`context.res.${slugName}`);
  35. }
  36. }
  37.  
  38. console.log(rootStack);
  39.  
  40. for (let i = rootStack.length - 1; i >= 0; i--) {
  41. if (i == 0) {
  42. _unoptimizedDependencyObj[rootStack.pop()] = new Set();
  43. } else {
  44. const x = (_unoptimizedDependencyObj[rootStack.pop()] = new Set([
  45. rootStack[rootStack.length - 1],
  46. ]));
  47. } // const element = rootStack[i];
  48. }
  49.  
  50. // for (let index = 0; index < root.length; index++) {
  51. // let str = "context.";
  52. // if (index == 0) {
  53. // _unoptimizedDependencyObj[root[index]] = new Set();
  54. // } else {
  55. // if (getType(root[index]) === "comment") continue;
  56. // else if (getType(root[index]) === "ifBlock") {
  57. // str += `.if.${root[index - 1]}`;
  58. // }
  59. // }
  60.  
  61. // console.log(slugName);
  62. // }
  63. return _unoptimizedDependencyObj;
  64. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement