Best JavaScript code snippet using playwright-internal
ACL.js
Source:ACL.js  
1import React, { useEffect, useState, Fragment } from "react";2import dataHero from "data-hero";3import {4  Box, 5  Stack,6  Button,7  Select,8  useToast, 9  Wrap,10  WrapItem,11  FormLabel,12  FormControl, 13  Flex,14  Checkbox,15} from "@chakra-ui/react";16import { toJS } from "mobx";17const ACLForm = ({18  reset,19  saved,20  action,21  error, 22  sending,23  message,24  assignRole,25  toggle,26  initial_data,27}) => {28  const toast = useToast();29  const [uid, setId] = useState();30  const [priviledges, setPriviledges] = useState({31    asset: { add: false, view: false, del: false, modify: false },32    branch: { add: false, view: false, del: false },33    category: { add: false, view: false, del: false },34    company: { manage: false },35    department: { add: false, view: false, del: false },36    director: { add: false, view: false, del: false },37    leave: { apply: false, add: false, view: false, del: false },38    pos: { sell: false, view: false, modify: false },39    product: { add: false, view: false, del: false },40    staff: { add: false, view: false, del: false, modify: false },41    stock: { add: false, view: false, del: false },42    ticket: { create: false, manage: false },43    report: { manage: false },44  });45  useEffect(() => {46      const test = toJS(initial_data && initial_data.acl); 47      const id = initial_data && initial_data._id;48      setId(id);49    if (test && test.length > 0) {50      const data = initial_data && initial_data.acl[0];51        setPriviledges((state) => ({52        ...state,53        asset: {54          add: (data && data.asset.add) || false,55          view: (data && data.asset.view) || false,56          del: (data && data.asset.del) || false,57          modify: (data && data.asset.modify) || false,58        },59        branch: {60          add: (data && data.branch.add) || false,61          view: (data && data.branch.view) || false,62          del: (data && data.branch.del) || false,63        },64        category: {65          add: (data && data.category.add) || false,66          view: (data && data.category.view) || false,67          del: (data && data.category.del) || false,68        },69        company: {70          manage: (data && data.company.manage) || false,71        },72        department: {73          add: (data && data.department.add) || false,74          view: (data && data.department.view) || false,75          del: (data && data.department.del) || false,76        },77        director: {78          add: (data && data.director  && data.director.add) || false,79          view: (data && data.director  && data.director.view) || false,80          del: (data && data.director  && data.director.del) || false,81        },82        leave: {83          apply: (data && data.leave && data.leave.apply) || false,84          add: (data && data.leave && data.leave.add) || false,85          view: (data && data.leave && data.leave.view) || false,86          del: (data && data.leave && data.leave.del) || false,87        },88        pos: {89          sell: (data && data.pos.sell) || false,90          view: (data && data.pos.view) || false,91          modify: (data && data.pos.modify) || false,92        },93        product: {94          add: (data && data.product.add) || false,95          view: (data && data.product.view) || false,96          del: (data && data.product.del) || false,97        },98        staff: {99          add: (data && data.staff.add) || false,100          view: (data && data.staff.view) || false,101          del: (data && data.staff.del) || false,102          modify: (data && data.staff.modify) || false,103        },104        stock: {105          add: (data && data.stock.add) || false,106          view: (data && data.stock.view) || false,107          del: (data && data.stock.del) || false,108        },109        ticket: {110          create: (data && data.ticket.create) || false,111          manage: (data && data.ticket.manage) || false,112        },113        report: {114          manage: (data && data.report.manage) || false,115        },116      }));117    }118  }, [initial_data]);119  const handleSubmit = (e) => {120    e.preventDefault();121    const roleData = {122      priviledges,123      id: uid,124    };125    assignRole(roleData);126  };127  const handleRoleChange = (event, role) => {128    event.persist();129    setPriviledges((formState) => ({130      ...formState,131      [role]: {132        ...formState[role],133        [event.target.name]: event.target.checked,134      },135    }));136  };137  useEffect(() => {138    if (action === "hasRole") {139      toast({140        title: "Server Response.",141        description: message,142        status: "success",143        duration: 9000,144        isClosable: true,145        position: "top-right",146      });147      resetForm();148      toggle('role');149    }150    return () => {151      reset("saved", false);152      reset("message", "");153      resetForm();154      toggle('role');155    };156  }, [action]);157  useEffect(() => {158    if (error === true && action === "hasRoleError") {159      toast({160        title: "Server Response.",161        description: message,162        status: "error",163        duration: 9000,164        isClosable: true,165        position: "top-right",166      });167    }168    return () => {169      reset("error", false);170      reset("message", "");171      resetForm();172      toggle('role');173    };174  }, [error]);175  176  const resetForm = () => {177    setPriviledges((prev) => ({178      ...prev,179      values: {180        ...prev.values,181        asset: { add: false, view: false, del: false, modify: false },182        branch: { add: false, view: false, del: false },183        category: { add: false, view: false, del: false },184        company: { manage: false },185        department: { add: false, view: false, del: false },186        director: { add: false, view: false, del: false },187        leave: { apply: false, add: false, view: false, del: false },188        pos: { sell: false, view: false, modify: false },189        product: { add: false, view: false, del: false },190        staff: { add: false, view: false, del: false, modify: false },191        stock: { add: false, view: false, del: false },192        ticket: { create: false, manage: false },193        report: { manage: false },194      },195    }));196  };197  return (198    <Fragment>199      {/* <Flex direction="column" align="space-between" justifyContent="space-between"> */}200      <Stack spacing="24px">201        <Box>202          <FormControl id="asset">203            <FormLabel>Asset</FormLabel>204            <Wrap spacing="20px">205              <WrapItem>206                <Checkbox207                  isChecked={priviledges.asset.add || false}208                  name="add"209                  onChange={(event) => handleRoleChange(event, "asset")}210                >211                  Add212                </Checkbox>213              </WrapItem>214              <WrapItem>215                <Checkbox216                  isChecked={priviledges.asset.view || false}217                  name="view"218                  onChange={(event) => handleRoleChange(event, "asset")}219                >220                  View221                </Checkbox>222              </WrapItem>223              <WrapItem>224                <Checkbox225                  isChecked={priviledges.asset.del || false}226                  name="del"227                  onChange={(event) => handleRoleChange(event, "asset")}228                >229                  Del230                </Checkbox>231              </WrapItem>232              <WrapItem>233                <Checkbox234                  isChecked={priviledges.asset.modify || false}235                  name="modify"236                  onChange={(event) => handleRoleChange(event, "asset")}237                >238                  Modify239                </Checkbox>240              </WrapItem>241            </Wrap>242          </FormControl>243        </Box>244    245        246        <Box>247          <FormControl id="branch">248            <FormLabel>Branch</FormLabel>249            <Wrap spacing="20px">250              <WrapItem>251                <Checkbox252                  isChecked={priviledges.branch.add || false}253                  name="add"254                  onChange={(event) => handleRoleChange(event, "branch")}255                >256                  Add257                </Checkbox>258              </WrapItem>259              <WrapItem>260                <Checkbox261                  isChecked={priviledges.branch.view || false}262                  name="view"263                  onChange={(event) => handleRoleChange(event, "branch")}264                >265                  View266                </Checkbox>267              </WrapItem>268              <WrapItem>269                <Checkbox270                  isChecked={priviledges.branch.del || false}271                  name="del"272                  onChange={(event) => handleRoleChange(event, "branch")}273                >274                  Del275                </Checkbox>276              </WrapItem> 277            </Wrap>278          </FormControl>279        </Box>280    281        282        <Box>283          <FormControl id="category">284            <FormLabel>Category</FormLabel>285            <Wrap spacing="20px">286              <WrapItem>287                <Checkbox288                  isChecked={priviledges.category.add || false}289                  name="add"290                  onChange={(event) => handleRoleChange(event, "category")}291                >292                  Add293                </Checkbox>294              </WrapItem>295              <WrapItem>296                <Checkbox297                  isChecked={priviledges.category.view || false}298                  name="view"299                  onChange={(event) => handleRoleChange(event, "category")}300                >301                  View302                </Checkbox>303              </WrapItem>304              <WrapItem>305                <Checkbox306                  isChecked={priviledges.category.del || false}307                  name="del"308                  onChange={(event) => handleRoleChange(event, "category")}309                >310                  Del311                </Checkbox>312              </WrapItem> 313            </Wrap>314          </FormControl>315        </Box>316    317        318        <Box>319          <FormControl id="company">320            <FormLabel>Company</FormLabel>321            <Wrap spacing="20px">322              <WrapItem>323                <Checkbox324                  isChecked={priviledges.company.manage || false}325                  name="manage"326                  onChange={(event) => handleRoleChange(event, "company")}327                >328                  Manage329                </Checkbox>330              </WrapItem> 331                 </Wrap>332          </FormControl>333        </Box>334    335        336        <Box>337          <FormControl id="department">338            <FormLabel>Department</FormLabel>339            <Wrap spacing="20px">340              <WrapItem>341                <Checkbox342                  isChecked={priviledges.department.add || false}343                  name="add"344                  onChange={(event) => handleRoleChange(event, "department")}345                >346                  Add347                </Checkbox>348              </WrapItem>349              <WrapItem>350                <Checkbox351                  isChecked={priviledges.department.view || false}352                  name="view"353                  onChange={(event) => handleRoleChange(event, "department")}354                >355                  View356                </Checkbox>357              </WrapItem>358              <WrapItem>359                <Checkbox360                  isChecked={priviledges.department.del || false}361                  name="del"362                  onChange={(event) => handleRoleChange(event, "department")}363                >364                  Del365                </Checkbox>366              </WrapItem> 367            </Wrap>368          </FormControl>369        </Box>370    371        372        <Box>373          <FormControl id="department">374            <FormLabel>Executives</FormLabel>375            <Wrap spacing="20px">376              <WrapItem>377                <Checkbox378                  isChecked={priviledges.director.add || false}379                  name="add"380                  onChange={(event) => handleRoleChange(event, "director")}381                >382                  Add383                </Checkbox>384              </WrapItem>385              <WrapItem>386                <Checkbox387                  isChecked={priviledges.director.view || false}388                  name="view"389                  onChange={(event) => handleRoleChange(event, "director")}390                >391                  View392                </Checkbox>393              </WrapItem>394              <WrapItem>395                <Checkbox396                  isChecked={priviledges.director.del || false}397                  name="del"398                  onChange={(event) => handleRoleChange(event, "director")}399                >400                  Del401                </Checkbox>402              </WrapItem> 403            </Wrap>404          </FormControl>405        </Box>406    407        408        <Box>409          <FormControl id="leave">410            <FormLabel>Vacation</FormLabel>411            <Wrap spacing="20px">412              <WrapItem>413                <Checkbox414                  isChecked={priviledges.leave.apply || false}415                  name="apply"416                  onChange={(event) => handleRoleChange(event, "leave")}417                >418                  Apply419                </Checkbox>420              </WrapItem>421              <WrapItem>422                <Checkbox423                  isChecked={priviledges.leave.add || false}424                  name="add"425                  onChange={(event) => handleRoleChange(event, "leave")}426                >427                  Add428                </Checkbox>429              </WrapItem>430              <WrapItem>431                <Checkbox432                  isChecked={priviledges.leave.view || false}433                  name="view"434                  onChange={(event) => handleRoleChange(event, "leave")}435                >436                  View437                </Checkbox>438              </WrapItem>439              <WrapItem>440                <Checkbox441                  isChecked={priviledges.leave.del || false}442                  name="del"443                  onChange={(event) => handleRoleChange(event, "leave")}444                >445                  Del446                </Checkbox>447              </WrapItem> 448            </Wrap>449          </FormControl>450        </Box>451    452        453        <Box>454          <FormControl id="pos">455            <FormLabel>POS</FormLabel>456            <Wrap spacing="20px">457              <WrapItem>458                <Checkbox459                  isChecked={priviledges.pos.sell || false}460                  name="sell"461                  onChange={(event) => handleRoleChange(event, "pos")}462                >463                  Sell464                </Checkbox>465              </WrapItem>466              <WrapItem>467                <Checkbox468                  isChecked={priviledges.pos.view || false}469                  name="view"470                  onChange={(event) => handleRoleChange(event, "pos")}471                >472                  View473                </Checkbox>474              </WrapItem>475              <WrapItem>476                <Checkbox477                  isChecked={priviledges.pos.modify || false}478                  name="modify"479                  onChange={(event) => handleRoleChange(event, "pos")}480                >481                  Modify482                </Checkbox>483              </WrapItem> 484            </Wrap>485          </FormControl>486        </Box>487    488        <Box>489          <FormControl id="product">490            <FormLabel>Products</FormLabel>491            <Wrap spacing="20px">492              <WrapItem>493                <Checkbox494                  isChecked={priviledges.product.add || false}495                  name="add"496                  onChange={(event) => handleRoleChange(event, "product")}497                >498                  Add499                </Checkbox>500              </WrapItem>501              <WrapItem>502                <Checkbox503                  isChecked={priviledges.product.view || false}504                  name="view"505                  onChange={(event) => handleRoleChange(event, "product")}506                >507                  View508                </Checkbox>509              </WrapItem>510              <WrapItem>511                <Checkbox512                  isChecked={priviledges.product.del || false}513                  name="del"514                  onChange={(event) => handleRoleChange(event, "product")}515                >516                  Del517                </Checkbox>518              </WrapItem> 519            </Wrap>520          </FormControl>521        </Box>522    523    524        <Box>525          <FormControl id="staff">526            <FormLabel>Staff</FormLabel>527            <Wrap spacing="20px">528              <WrapItem>529                <Checkbox530                  isChecked={priviledges.staff.add || false}531                  name="add"532                  onChange={(event) => handleRoleChange(event, "staff")}533                >534                  Add535                </Checkbox>536              </WrapItem>537              <WrapItem>538                <Checkbox539                  isChecked={priviledges.staff.view || false}540                  name="view"541                  onChange={(event) => handleRoleChange(event, "staff")}542                >543                  View544                </Checkbox>545              </WrapItem>546              <WrapItem>547                <Checkbox548                  isChecked={priviledges.staff.del || false}549                  name="del"550                  onChange={(event) => handleRoleChange(event, "staff")}551                >552                  Del553                </Checkbox>554              </WrapItem> 555              <WrapItem>556                <Checkbox557                  isChecked={priviledges.staff.modify || false}558                  name="modify"559                  onChange={(event) => handleRoleChange(event, "staff")}560                >561                  Modify562                </Checkbox>563              </WrapItem>564            </Wrap>565          </FormControl>566        </Box>567    568    569        <Box>570          <FormControl id="stock">571            <FormLabel>Stock</FormLabel>572            <Wrap spacing="20px">573              <WrapItem>574                <Checkbox575                  isChecked={priviledges.stock.add || false}576                  name="add"577                  onChange={(event) => handleRoleChange(event, "stock")}578                >579                  Add580                </Checkbox>581              </WrapItem>582              <WrapItem>583                <Checkbox584                  isChecked={priviledges.stock.view || false}585                  name="view"586                  onChange={(event) => handleRoleChange(event, "stock")}587                >588                  View589                </Checkbox>590              </WrapItem>591              <WrapItem>592                <Checkbox593                  isChecked={priviledges.stock.del || false}594                  name="del"595                  onChange={(event) => handleRoleChange(event, "stock")}596                >597                  Del598                </Checkbox>599              </WrapItem> 600            </Wrap>601          </FormControl>602        </Box>603    604    605    606        <Box>607          <FormControl id="ticket">608            <FormLabel>Ticket</FormLabel>609            <Wrap spacing="20px">610              <WrapItem>611                <Checkbox612                  isChecked={priviledges.ticket.create || false}613                  name="create"614                  onChange={(event) => handleRoleChange(event, "ticket")}615                >616                  Create617                </Checkbox>618              </WrapItem>619              <WrapItem>620                <Checkbox621                  isChecked={priviledges.ticket.manage || false}622                  name="manage"623                  onChange={(event) => handleRoleChange(event, "ticket")}624                >625                  Manage626                </Checkbox>627              </WrapItem>628             629            </Wrap>630          </FormControl>631        </Box>632    633    634        <Box>635          <FormControl id="report">636            <FormLabel>Report</FormLabel>637            <Wrap spacing="20px">638              639              <WrapItem>640                <Checkbox641                  isChecked={priviledges.report.view || false}642                  name="manage"643                  onChange={(event) => handleRoleChange(event, "report")}644                >645                  Manage646                </Checkbox>647              </WrapItem>648             649            </Wrap>650          </FormControl>651        </Box>652    <Box mt={1} align="right">653      <Wrap spacing="20px">654        <WrapItem>655        <Button656                variant="outline"657                disabled={sending}658                mr={3}659                onClick={() => toggle('role')}660              >661                Cancel662              </Button> 663        </WrapItem>664        <WrapItem>665        <Button666                disabled={sending}667                colorScheme="blue"668                onClick={handleSubmit}669                isLoading={sending}670                bg="brand.mainAccent"671                color="brand.white"672                variant="ghost"673                _hover={{674                  borderColor: "brand.mainAccent",675                  bg: "brand.white",676                  color: "brand.mainAccent",677                  boxShadow: "md",678                }}679                _focus={{}}680              >681                Save Role682              </Button>683        </WrapItem>684      </Wrap>685    </Box>686      </Stack>687    </Fragment>688  );689};...codeView.js
Source:codeView.js  
1 2    var deleteDefaultJSData=['sap-ui-bootstrap','beautify', 'mode','codemirror','codeView','json2'];3    var deleteDefaultCSSData=['codemirror.css','vibrant-ink.css','no-highlight.css','codeView.css'];4    var deleteDefaultElement=['HTML view','JS view'];5    function getHtmlCode(fileName,textArea,code,delJSData,delCssData,delElement)6    {7        var jscode="<script type=\"text/javascript\">"+"\n"+addSpace(js_beautify(code));8        jscode=jscode+"\n"+"</script>\n";9        $.get(fileName, function(data) {10        $("#code-content").empty();11        $('#code').empty();12        var replaceData=deleteCode(data,delJSData,delCssData,delElement);13        replaceData=replaceData.replace("<script type=\"text/javascript\"></script>",jscode);14        var codeEditor = CodeMirror(textArea, {15            value: replaceData,16            lineNumbers: true,17            lineWrapping:true,18            fixedGutter:true,19            width: "100%",20            height: "100%",21            readOnly: true22        });23        }, "text");24    }25    function deleteCode(data,delJSData,delCssData,delElement){26       var deleteJSData=[];27       var deleteCSSData=[];28       var delElements=[];29       if(delJSData!=undefined)30       {31          deleteJSData=deleteDefaultJSData.concat(delJSData);32       }33       else{34        deleteJSData=deleteDefaultJSData;35       }36       if(delCssData!=undefined)37       {38          deleteCSSData=deleteDefaultCSSData.concat(delCssData);39       }else40       {41        deleteCSSData=deleteDefaultCSSData;42       }43       if(delElement!=undefined)44       {45         delElements=deleteDefaultElement.concat(delElement);46       }47       else48       {49         delElements=deleteDefaultElement;50       }51       var dataArray=data.split(">");52       var replaceData="";53       for(var i=0;i<dataArray.length;)54       {55            var tempStr=dataArray[i];56            if(tempStr.indexOf("<script")!=-1)57            {58              var found=true;59              for(var j=0;j<deleteJSData.length&&found;j++)60              {61                    if(tempStr.indexOf(deleteJSData[j])!=-1)62                     {63                        i=i+2;64                        found=false;65                     }66              }67              if(found)68              {69                replaceData=replaceData+tempStr+">";70                i++;71              }72            } else if(tempStr.indexOf("<link")!=-1)73                {74                  var found=true;75                  for(var j=0;j<deleteCSSData.length&&found;j++)76                  {77                        if(tempStr.indexOf(deleteCSSData[j])!=-1)78                         {79                            i++;80                            found=false;81                         }82                  }83                  if(found)84                  {85                    replaceData=replaceData+tempStr+">";86                    i++;87                  }88                } 89              else if(tempStr.indexOf("</html")!=-1)90              {91                replaceData=replaceData+tempStr;92                i++;93              }94              else 95              {96                   var found=true;97                    for(var j=0;j<delElements.length&&found;j++)98                    {99                          if(tempStr.indexOf(delElements[j])!=-1)100                           {101                              i=i+2;102                              found=false;103                           }104                    }105                    if(found)106                    {107                      replaceData=replaceData+tempStr+">";108                      i++;109                    }110              }111       }112       return replaceData;113    }114    function addSpace(codes){115      var lines =[];116      var newcode="        ";117      lines= codes.split("\n");118      for( var i=0;i<lines.length;i++){119         var tempStr=lines[i];120         if(tempStr.indexOf("sap.viz.api.env.Template.loadPaths")!=-1)121         {122           var tempArry=tempStr.split(",");123           for(var j=0;j<tempArry.length;j++)124           {125              if(j==0)126              {127                newcode=newcode+tempArry[j]+","+"\n" + "        ";128              }129              else130              {131                newcode=newcode+tempArry[j]+"\n" + "        ";132              }133           }134         }135         else136         {137          newcode=newcode+tempStr+"\n" + "        ";138         }139      }140      return newcode;141    }142    function addExtensionSpace(codes)143    {144      var lines =[];145      var newcode="        ";146      lines= codes.split("\n");147      for( var i=0;i<lines.length;i++){148         var tempStr=lines[i];149         newcode=newcode+tempStr+"\n" + "        ";150      }151      return newcode;152    }153    function getJsCode(textArea,jsCode)154    {155        $("#code-content").empty();156        $('#code').empty();157        var lines=js_beautify(jsCode).split("\n");158        var replaceData="";159        for(var i=0;i<lines.length;i++)160        {161           var tempStr=lines[i];162           if(tempStr.indexOf("sap.viz.api.env.Template.loadPaths")!=-1)163           {164             var tempArry=tempStr.split(",");165             for(var j=0;j<tempArry.length;j++)166             {167                if(j==0)168                {169                  replaceData=replaceData+tempArry[j]+","+"\n" ;170                }171                else172                {173                  replaceData=replaceData+tempArry[j]+"\n";174                }175             }176           }177           else178           {179             replaceData=replaceData+tempStr+"\n";180           }181        }182       var codeEditor = CodeMirror(textArea, {183            value: replaceData,184            lineNumbers: true,185             lineWrapping:true,186            fixedGutter:true,187            width: "100%",188            lineWrapping:true,189            height: "100%",190            readOnly: true191        });192    }193    function getJsCodeByUrl(fileName,textArea)194    {195       $.get(fileName, function(data) {196        var codeEditor = CodeMirror(textArea, {197            value: data,198            lineNumbers: true,199            lineWrapping:true,200            fixedGutter:true,201            width: "100%",202            height: "100%",203            readOnly: true204        });205        }, "text");206    }207     function toggleView(fileName,textArea,code,delJSData,delCssData,delElement){208       $('#htmlView').addClass("active");209       $('#jsView').removeClass("active");210      $("#code-content").empty();211       getHtmlCode(fileName,textArea,code,delJSData,delCssData,delElement);212       $('#htmlView').click(function(){213             $("#code-content").empty();214            $(this).addClass("active");215            $('#jsView').removeClass("active");216            getHtmlCode("index.html",textArea,code,delJSData,delCssData,delElement);217       });218      $('#jsView').click(function(){219           $("#code-content").empty();220          $(this).addClass("active");221          $("#htmlView").removeClass("active");222          getJsCode(textArea,code);223      });224   }225  function getExtensionHtmlCode(jsFileName,htmlFileName,textArea,delJSData,delCssData,delElement)226    {227       var jsData="<script type=\"text/javascript\">"+"\n";228       $("#code-content").empty();229       if($("#code")!=null){230          $("#code").empty();231       }232       else if($("#code-content")!=null){233          $("#code-content").empty();234       }235       236       $(document).load(jsFileName,function(res){237           jsData=jsData+addExtensionSpace(res);238           jsData=jsData+"\n</script>\n";239           $.get(htmlFileName, function(data) {240              var replaceData=deleteCode(data,delJSData,delCssData,delElement); 241              replaceData=replaceData.replace("<script type=\"text/javascript\"></script>",jsData);242              var codeEditor = CodeMirror(textArea, {243                  value: replaceData,244                  lineNumbers: true,245                  lineWrapping:true,246                  fixedGutter:true,247                  width: "100%",248                  height: "100%",249                  readOnly: true250              });251            }, "text");252        });253    }254    function getExtensionJSCode(jsFileName,textArea)255    {256        $("#code-content").empty();257        $.get(jsFileName, function(data) {258        var codeEditor = CodeMirror(textArea, {259            value: data,260            lineNumbers: true,261            lineWrapping:true,262            fixedGutter:true,263            width: "100%",264            height: "100%",265            readOnly: true266        });267        }, "text");268    }269   function toggleViewExtension(htmlFileName,jsFileName,textArea,delJSData,delCssData,delElement)270   {271      $('#htmlView').addClass("active");272       $('#jsView').removeClass("active");273      getExtensionHtmlCode(jsFileName,htmlFileName,textArea,delJSData,delCssData,delElement);274       $('#htmlView').click(function(){275            $(this).addClass("active");276            $('#jsView').removeClass("active");277            $("#code-content").empty();278            getExtensionHtmlCode(jsFileName,htmlFileName,textArea,delJSData,delCssData,delElement);279       });280      $('#jsView').click(function(){281          $(this).addClass("active");282          $("#htmlView").removeClass("active");283          $("#code-content").empty();284          getExtensionJSCode(jsFileName,textArea);285      });286   }...backspace.js
Source:backspace.js  
1/* bender-tags: editor */2/* bender-ckeditor-plugins: list,toolbar,table,format */3bender.editor = {4	config: {5		enterMode: CKEDITOR.ENTER_P6	}7};8var BACKSPACE = 8,9	DEL = 46;10var tests = {11	assertBackspace: function( name, key, keyModifiers, assertFn ) {12		var bot = this.editorBot;13		bender.tools.testInputOut( name, function( source, expected ) {14			bot.setHtmlWithSelection( source );15			bot.editor.editable().fire( 'keydown', new CKEDITOR.dom.event( {16				keyCode: key,17				ctrlKey: keyModifiers & CKEDITOR.CTRL,18				shiftKey: keyModifiers & CKEDITOR.SHIFT19			} ) );20			assert.isInnerHtmlMatching( bender.tools.compatHtml( expected ), bender.tools.selection.getWithHtml( bot.editor ), {21				compareSelection: true,22				normalizeSelection: true23			}, name );24			if ( typeof assertFn === 'function' ) {25				assertFn( bot.editor );26			}27		}, false );28	}29};30// Start of https://dev.ckeditor.com/ticket/824831addTests( 'test backspace join list items', 'join_list1', BACKSPACE );32addTests( 'test backspace join list items', 'join_list2', BACKSPACE );33addTests( 'test backspace join list items', 'join_list3', BACKSPACE );34addTests( 'test backspace join list items', 'join_list4', BACKSPACE );35addTests( 'test backspace join list items', 'join_list5', BACKSPACE );36addTests( 'test backspace join list items', 'join_list6', BACKSPACE );37addTests( 'test backspace join list items', 'join_list7', BACKSPACE );38addTests( 'test backspace join list items', 'join_list8', BACKSPACE );39addTests( 'test backspace join list items', 'join_list9', BACKSPACE );40addTests( 'test backspace join list items', 'join_list10', BACKSPACE );41addTests( 'test backspace join list items', 'join_list11', BACKSPACE );42addTests( 'test backspace join list items', 'join_list15', BACKSPACE, undefined, assertNotNestedAnchors );43addTests( 'test backspace join list items', 'join_list16', BACKSPACE, undefined, assertNotNestedAnchors );44addTests( 'test backspace join list items', 'join_list17', BACKSPACE );45addTests( 'test backspace join list items', 'join_list18', BACKSPACE );46function assertNotNestedAnchors( editor ) {47	assert.isNull( editor.editable().findOne( 'a a' ) );48}49addTests( 'test backspace outdent list item', 'outdent_list', BACKSPACE );50addTests( 'test backspace outdent list item', 'outdent_list2', BACKSPACE );51addTests( 'test backspace outdent list item', 'outdent_list3', BACKSPACE );52addTests( 'test backspace outdent list item', 'outdent_list4', BACKSPACE );53addTests( 'test backspace outdent list item', 'outdent_list5', BACKSPACE );54addTests( 'test backspace outdent list item', 'outdent_list6', BACKSPACE );55addTests( 'test backspace NOT outdent list item', 'no_outdent_list', BACKSPACE );56addTests( 'test backspace NOT outdent list item', 'no_outdent_list2', BACKSPACE );57addTests( 'test del join list items', 'join_list1_del', DEL );58addTests( 'test del join list items', 'join_list2_del', DEL );59addTests( 'test del join list items', 'join_list3_del', DEL );60addTests( 'test del join list items', 'join_list4_del', DEL );61addTests( 'test del join list items', 'join_list5_del', DEL );62addTests( 'test del join list items', 'join_list6_del', DEL );63addTests( 'test del join list items', 'join_list7_del', DEL );64addTests( 'test del join list items', 'join_list8_del', DEL );65addTests( 'test del join list items', 'join_list9_del', DEL );66addTests( 'test del join list items', 'join_list10_del', DEL );67addTests( 'test del join list items', 'join_list11_del', DEL );68addTests( 'test del join list items', 'join_list12_del', DEL );69addTests( 'test del join list items', 'join_list13_del', DEL );70addTests( 'test del join list items', 'join_list14_del', DEL );71addTests( 'test del join list items', 'join_list15_del', DEL, undefined, assertNotNestedAnchors );72addTests( 'test del join list items', 'join_list16_del', DEL, undefined, assertNotNestedAnchors );73addTests( 'test del join list items', 'join_list17_del', DEL );74addTests( 'test del join list items', 'join_list18_del', DEL );75addTests( 'test del join list items', 'join_list19_del', DEL );76addTests( 'test del join list items', 'join_list20_del', DEL );77addTests( 'test del join list items', 'join_list21_del', DEL );78addTests( 'test del join with next list item', 'merge_next_list', DEL );79addTests( 'test del join with next list item', 'merge_next_list2', DEL );80addTests( 'test del join with next list item', 'merge_next_list3', DEL );81addTests( 'test del join with next list item', 'merge_next_list4', DEL );82// On IE8 this test fails due to https://dev.ckeditor.com/ticket/13098.83if ( !CKEDITOR.env.ie || CKEDITOR.env.version > 8 ) {84	addTests( 'test del join with next list item', 'merge_next_list5', DEL );85}86addTests( 'test del remove empty block', 'remove_empty_block', DEL );87addTests( 'test del remove empty block', 'remove_empty_block2', DEL );88addTests( 'test del do nothing', 'del_no_action', DEL );89addTests( 'test del do nothing', 'del_no_action2', DEL );90// Make sure that the modifiers are ignored.91// https://dev.ckeditor.com/ticket/11861#comment:1392addTests( 'test backspace join list items - CTRL', 'join_list1', BACKSPACE, CKEDITOR.CTRL );93addTests( 'test backspace outdent list item - SHIFT', 'outdent_list', BACKSPACE, CKEDITOR.SHIFT );94addTests( 'test del join list items - CTRL', 'join_list1_del', DEL, CKEDITOR.CTRL );95addTests( 'test del join with next list item - SHIFT', 'merge_next_list', DEL, CKEDITOR.SHIFT );96function addTests( title, source, key, keyModifiers, assertFn ) {97	tests[ title + ' (' + source + ')' ] = function() {98		this.assertBackspace( source, key, keyModifiers, assertFn );99	};100}...SegmentInfoPerCommit.js
Source:SegmentInfoPerCommit.js  
1var util = require('util');2var assert = require('assert');3var defineClass = require('library/class/defineClass.js');4var Class = require('library/class/Class.js');5/** Embeds a [read-only] SegmentInfo and adds per-commit6 *  fields.7 *8 *  @lucene.experimental9 */10var SegmentInfoPerCommit = defineClass({11	name: "SegmentInfoPerCommit",12	variables: { /** The {@link SegmentInfo} that we wrap. */13		info: null,14		//SegmentInfo15		// How many deleted docs in the segment:16		delCount: null,17		//int18		// Generation number of the live docs file (-1 if there19		// are no deletes yet):20		delGen: null,21		//long22		// Normally 1+delGen, unless an exception was hit on last23		// attempt to write:24		nextWriteDelGen: null,25		//long26		_sizeInBytes: -1,27		//long28		// NOTE: only used in-RAM by IW to track buffered deletes;29		// this is never written to/read from the Directory30		bufferedDeletesGen: null,31		//long32	},33/** Sole constructor.34   * @param info {@link SegmentInfo} that we wrap35   * @param delCount number of deleted documents in this segment36   * @param delGen deletion generation number (used to name37             deletion files)38   **/39	construct: function( /* SegmentInfo */ info, /* int */ delCount, /* long */ delGen) {40		this.info = info;41		this.delCount = delCount;42		this.delGen = delGen;43		if (delGen == -1) {44			this.nextWriteDelGen = 1;45		} else {46			this.nextWriteDelGen = delGen + 1;47		}48	},49	methods: { /** Called when we succeed in writing deletes */50		advanceDelGen: function() {51			this.delGen = this.nextWriteDelGen;52			this.nextWriteDelGen = this.delGen + 1;53			this._sizeInBytes = -1;54		},55		/** Called if there was an exception while writing56		 *  deletes, so that we don't try to write to the same57		 *  file more than once. */58		advanceNextWriteDelGen: function() {59			this.nextWriteDelGen++;60		},61		/** Returns total size in bytes of all files for this62		 *  segment.63		 * <p><b>NOTE:</b> This value is not correct for 3.0 segments64		 * that have shared docstores. To get the correct value, upgrade! */65		sizeInBytes: function() {66			if (this._sizeInBytes == -1) {67				var sum = 0;68				var files = this.files();69				for (var fileName in files) {70					sum += this.info.dir.fileLength(fileName);71				}72				this._sizeInBytes = sum;73			}74			return this._sizeInBytes;75		},76		/** Returns all files in use by this segment. */77		/* Collection<String> */78		files: function() {79			// Start from the wrapped info's files:80			//Collection<String> files = new HashSet<String>(info.files());81			var files = {};82			for (var file in this.info.files())83			files[file] = true;84			// Must separately add any live docs files:85			info.getCodec().liveDocsFormat().files(this, files);86			return files;87		},88		getBufferedDeletesGen: function() {89			return this.bufferedDeletesGen;90		},91		setBufferedDeletesGen: function( /* long */ v) {92			this.bufferedDeletesGen = v;93			this._sizeInBytes = -1;94		},95		clearDelGen: function() {96			this.delGen = -1;97			this._sizeInBytes = -1;98		},99		/**100		 * Sets the generation number of the live docs file.101		 * @see #getDelGen()102		 */103		setDelGen: function( /* long */ delGen) {104			this.delGen = delGen;105			this._sizeInBytes = -1;106		},107		/** Returns true if there are any deletions for the 108		 * segment at this commit. */109		hasDeletions: function() {110			return this.delGen != -1;111		},112		/**113		 * Returns the next available generation number114		 * of the live docs file.115		 */116		getNextDelGen: function() {117			return this.nextWriteDelGen;118		},119		/**120		 * Returns generation number of the live docs file121		 * or -1 if there are no deletes yet.122		 */123		getDelGen: function() {124			return this.delGen;125		},126		/**127		 * Returns the number of deleted docs in the segment.128		 */129		getDelCount: function() {130			return this.delCount;131		},132		setDelCount: function( /* int */ delCount) {133			this.delCount = delCount;134			assert(delCount <= this.info.getDocCount());135		},136		/** Returns a description of this segment. */137		toStringWithDirDelCount: function( /* Directory */ dir, /* int */ pendingDelCount) {138			return this.info.toString(dir, this.delCount + pendingDelCount);139		},140		//@Override141		toString : function() {142			var s = this.info.toString(this.info.dir, this.delCount);143			if (this.delGen != -1) {144				s += ":delGen=" + this.delGen;145			}146			return s;147		},148		//@Override149		//reurn SegmentInfoPerCommit150		clone: function() {151			var other = new SegmentInfoPerCommit(this.info, this.delCount, this.delGen);152			// Not clear that we need to carry over nextWriteDelGen153			// (i.e. do we ever clone after a failed write and154			// before the next successful write?), but just do it to155			// be safe:156			other.nextWriteDelGen = this.nextWriteDelGen;157			return other;158		},159	}160});...system.js
Source:system.js  
1import React from "react";2import Head from "next/head";3import { Tabs, TabList, TabPanels, Tab, TabPanel } from "@chakra-ui/react";4import Layout from "../templates/Private/Layout";5import Help from "../views/system/Help";6import Branch from "../views/system/Branch";7import Category from "../views/system/Category";8import Department from "../views/system/Department";9import Marketing from "../views/system/Marketing";10import SubCategory from "../views/system/SubCategory";11import Leave from "../views/system/Leave";12import Director from "../views/system/Director";13function system(props) {14  const { access } = props;15  const leaveAdd = access && access.leave && access.leave.add;16  const leaveView = access && access.leave && access.leave.view;17  const leaveDel = access && access.leave && access.leave.del;18  const catAdd = access && access.category && access.category.add;19  const catView = access && access.category && access.category.view;20  const catDel = access && access.category && access.category.del;21  const deptAdd = access && access.department && access.department.add;22  const deptView = access && access.department && access.department.view;23  const deptDel = access && access.department && access.department.del;24  const dirAdd = access && access.director && access.director.add;25  const dirView = access && access.director && access.director.view;26  const dirDel = access && access.director && access.director.del;27  const branchAdd = access && access.branch && access.branch.add;28  const branchView = access && access.branch && access.branch.view;29  const branchDel = access && access.branch && access.branch.del;30  let company = access && access.company && access.company.manage;31  let totalLeave = leaveAdd || leaveView || leaveDel;32  let totalBranch = branchAdd || branchView || branchDel;33  let totalCategory = catAdd || catView || catDel;34  let totalDept = deptAdd || deptView || deptDel;35  let totalDir = dirAdd || dirView || dirDel;36  // {"asset":{"add":true,"view":false,"del":false,"modify":false},"branch":{"add":true,"view":true,"del":false},"category":{"add":true,"view":false,"del":false},"company":{"manage":true},"department":{"adâ¦37  return (38    <>39      <Head>40        <title>Physio First | System</title>41      </Head>42      <Layout>43        <Tabs>44          <TabList>45            <Tab>Help</Tab>46            {totalBranch || totalCategory || totalDept ? (47              <>48                <Tab>Branch</Tab>49                <Tab>Category</Tab>50                <Tab>Department</Tab>51                <Tab>Executives</Tab>52                <Tab>Marketing</Tab>53                <Tab>SubCategory</Tab>54                <Tab>Vacation</Tab>55              </>56            ) : null}57          </TabList>58          <TabPanels>59            <TabPanel>60              <Help />61            </TabPanel>62            <TabPanel>63              <Branch64                pageAccess={totalBranch}65                canAdd={branchAdd}66                canView={branchView}67                canDel={branchDel}68              />69            </TabPanel>70            <TabPanel>71              <Category72                pageAccess={totalCategory}73                canAdd={catAdd}74                canView={catView}75                canDel={catDel}76              />77            </TabPanel>78            <TabPanel>79              <Department80                pageAccess={totalDept}81                canAdd={deptAdd}82                canView={deptView}83                canDel={deptDel}84              />85            </TabPanel>86            <TabPanel>87              <Director88                pageAccess={totalDir}89                canAdd={dirAdd}90                canView={dirView}91                canDel={dirDel}92              />93            </TabPanel>94            <TabPanel>95              <Marketing />96            </TabPanel>97            <TabPanel>98              <SubCategory99                pageAccess={totalCategory}100                canAdd={catAdd}101                canView={catView}102                canDel={catDel}103              />104            </TabPanel>105            <TabPanel>106              <Leave107                pageAccess={totalLeave}108                canAdd={leaveAdd}109                canView={leaveView}110                canDel={leaveDel}111              />112            </TabPanel>113          </TabPanels>114        </Tabs>115      </Layout>116    </>117  );118}...tagsView.js
Source:tagsView.js  
1const tagsView = {2  state: {3    visitedViews: [],4    cachedViews: []5  },6  mutations: {7    ADD_VISITED_VIEW: (state, view) => {8      if (state.visitedViews.some(v => v.path === view.path)) return9      state.visitedViews.push(10        Object.assign({}, view, {11          title: view.meta.title || 'no-name'12        })13      )14    },15    ADD_CACHED_VIEW: (state, view) => {16      if (state.cachedViews.includes(view.name)) return17      if (!view.meta.noCache) {18        state.cachedViews.push(view.name)19      }20    },21    DEL_VISITED_VIEW: (state, view) => {22      for (const [i, v] of state.visitedViews.entries()) {23        if (v.path === view.path) {24          state.visitedViews.splice(i, 1)25          break26        }27      }28    },29    DEL_CACHED_VIEW: (state, view) => {30      for (const i of state.cachedViews) {31        if (i === view.name) {32          const index = state.cachedViews.indexOf(i)33          state.cachedViews.splice(index, 1)34          break35        }36      }37    },38    DEL_OTHERS_VISITED_VIEWS: (state, view) => {39      for (const [i, v] of state.visitedViews.entries()) {40        if (v.path === view.path) {41          state.visitedViews = state.visitedViews.slice(i, i + 1)42          break43        }44      }45    },46    DEL_OTHERS_CACHED_VIEWS: (state, view) => {47      for (const i of state.cachedViews) {48        if (i === view.name) {49          const index = state.cachedViews.indexOf(i)50          state.cachedViews = state.cachedViews.slice(index, index + 1)51          break52        }53      }54    },55    DEL_ALL_VISITED_VIEWS: state => {56      state.visitedViews = []57    },58    DEL_ALL_CACHED_VIEWS: state => {59      state.cachedViews = []60    },61    UPDATE_VISITED_VIEW: (state, view) => {62      for (let v of state.visitedViews) {63        if (v.path === view.path) {64          v = Object.assign(v, view)65          break66        }67      }68    }69  },70  actions: {71    addView({ dispatch }, view) {72      dispatch('addVisitedView', view)73      dispatch('addCachedView', view)74    },75    addVisitedView({ commit }, view) {76      commit('ADD_VISITED_VIEW', view)77    },78    addCachedView({ commit }, view) {79      commit('ADD_CACHED_VIEW', view)80    },81    delView({ dispatch, state }, view) {82      return new Promise(resolve => {83        dispatch('delVisitedView', view)84        dispatch('delCachedView', view)85        resolve({86          visitedViews: [...state.visitedViews],87          cachedViews: [...state.cachedViews]88        })89      })90    },91    delVisitedView({ commit, state }, view) {92      return new Promise(resolve => {93        commit('DEL_VISITED_VIEW', view)94        resolve([...state.visitedViews])95      })96    },97    delCachedView({ commit, state }, view) {98      return new Promise(resolve => {99        commit('DEL_CACHED_VIEW', view)100        resolve([...state.cachedViews])101      })102    },103    delOthersViews({ dispatch, state }, view) {104      return new Promise(resolve => {105        dispatch('delOthersVisitedViews', view)106        dispatch('delOthersCachedViews', view)107        resolve({108          visitedViews: [...state.visitedViews],109          cachedViews: [...state.cachedViews]110        })111      })112    },113    delOthersVisitedViews({ commit, state }, view) {114      return new Promise(resolve => {115        commit('DEL_OTHERS_VISITED_VIEWS', view)116        resolve([...state.visitedViews])117      })118    },119    delOthersCachedViews({ commit, state }, view) {120      return new Promise(resolve => {121        commit('DEL_OTHERS_CACHED_VIEWS', view)122        resolve([...state.cachedViews])123      })124    },125    delAllViews({ dispatch, state }, view) {126      return new Promise(resolve => {127        dispatch('delAllVisitedViews', view)128        dispatch('delAllCachedViews', view)129        resolve({130          visitedViews: [...state.visitedViews],131          cachedViews: [...state.cachedViews]132        })133      })134    },135    delAllVisitedViews({ commit, state }) {136      return new Promise(resolve => {137        commit('DEL_ALL_VISITED_VIEWS')138        resolve([...state.visitedViews])139      })140    },141    delAllCachedViews({ commit, state }) {142      return new Promise(resolve => {143        commit('DEL_ALL_CACHED_VIEWS')144        resolve([...state.cachedViews])145      })146    },147    updateVisitedView({ commit }, view) {148      commit('UPDATE_VISITED_VIEW', view)149    }150  }151}...tags-view.js
Source:tags-view.js  
1const state = {2  visitedViews: [],3  cachedViews: [],4};5const mutations = {6  ADD_VISITED_VIEW: (state, view) => {7    if (state.visitedViews.some(v => v.path === view.path)) {8      return;9    }10    state.visitedViews.push(11      Object.assign({}, view, {12        title: view.meta.title || 'no-name',13      })14    );15  },16  ADD_CACHED_VIEW: (state, view) => {17    if (state.cachedViews.includes(view.name)) {18      return;19    }20    if (!view.meta.noCache) {21      state.cachedViews.push(view.name);22    }23  },24  DEL_VISITED_VIEW: (state, view) => {25    for (const [i, v] of state.visitedViews.entries()) {26      if (v.path === view.path) {27        state.visitedViews.splice(i, 1);28        break;29      }30    }31  },32  DEL_CACHED_VIEW: (state, view) => {33    for (const i of state.cachedViews) {34      if (i === view.name) {35        const index = state.cachedViews.indexOf(i);36        state.cachedViews.splice(index, 1);37        break;38      }39    }40  },41  DEL_OTHERS_VISITED_VIEWS: (state, view) => {42    state.visitedViews = state.visitedViews.filter(v => {43      return v.meta.affix || v.path === view.path;44    });45  },46  DEL_OTHERS_CACHED_VIEWS: (state, view) => {47    for (const i of state.cachedViews) {48      if (i === view.name) {49        const index = state.cachedViews.indexOf(i);50        state.cachedViews = state.cachedViews.slice(index, index + 1);51        break;52      }53    }54  },55  DEL_ALL_VISITED_VIEWS: state => {56    // keep affix tags57    const affixTags = state.visitedViews.filter(tag => tag.meta.affix);58    state.visitedViews = affixTags;59  },60  DEL_ALL_CACHED_VIEWS: state => {61    state.cachedViews = [];62  },63  UPDATE_VISITED_VIEW: (state, view) => {64    for (let v of state.visitedViews) {65      if (v.path === view.path) {66        v = Object.assign(v, view);67        break;68      }69    }70  },71};72const actions = {73  addView({ dispatch }, view) {74    dispatch('addVisitedView', view);75    dispatch('addCachedView', view);76  },77  addVisitedView({ commit }, view) {78    commit('ADD_VISITED_VIEW', view);79  },80  addCachedView({ commit }, view) {81    commit('ADD_CACHED_VIEW', view);82  },83  delView({ dispatch, state }, view) {84    return new Promise(resolve => {85      dispatch('delVisitedView', view);86      dispatch('delCachedView', view);87      resolve({88        visitedViews: [...state.visitedViews],89        cachedViews: [...state.cachedViews],90      });91    });92  },93  delVisitedView({ commit, state }, view) {94    return new Promise(resolve => {95      commit('DEL_VISITED_VIEW', view);96      resolve([...state.visitedViews]);97    });98  },99  delCachedView({ commit, state }, view) {100    return new Promise(resolve => {101      commit('DEL_CACHED_VIEW', view);102      resolve([...state.cachedViews]);103    });104  },105  delOthersViews({ dispatch, state }, view) {106    return new Promise(resolve => {107      dispatch('delOthersVisitedViews', view);108      dispatch('delOthersCachedViews', view);109      resolve({110        visitedViews: [...state.visitedViews],111        cachedViews: [...state.cachedViews],112      });113    });114  },115  delOthersVisitedViews({ commit, state }, view) {116    return new Promise(resolve => {117      commit('DEL_OTHERS_VISITED_VIEWS', view);118      resolve([...state.visitedViews]);119    });120  },121  delOthersCachedViews({ commit, state }, view) {122    return new Promise(resolve => {123      commit('DEL_OTHERS_CACHED_VIEWS', view);124      resolve([...state.cachedViews]);125    });126  },127  delAllViews({ dispatch, state }, view) {128    return new Promise(resolve => {129      dispatch('delAllVisitedViews', view);130      dispatch('delAllCachedViews', view);131      resolve({132        visitedViews: [...state.visitedViews],133        cachedViews: [...state.cachedViews],134      });135    });136  },137  delAllVisitedViews({ commit, state }) {138    return new Promise(resolve => {139      commit('DEL_ALL_VISITED_VIEWS');140      resolve([...state.visitedViews]);141    });142  },143  delAllCachedViews({ commit, state }) {144    return new Promise(resolve => {145      commit('DEL_ALL_CACHED_VIEWS');146      resolve([...state.cachedViews]);147    });148  },149  updateVisitedView({ commit }, view) {150    commit('UPDATE_VISITED_VIEW', view);151  },152};153export default {154  namespaced: true,155  state,156  mutations,157  actions,...funciones_parte1.js
Source:funciones_parte1.js  
1// 1.Definir una función llamada "siguiente", la cual retorne el siguiente (+1) de un número que obtenga por parámetros. Ejecutarla, o llamarla, con el valor: 1, 4, -2 y 0.2function siguiente(n) {3  return n + 1;4}5console.log(`Función: siguiente()6  Parámetro:  1 | Resultado: ${siguiente(1)}7  Parámetro:  4 | Resultado: ${siguiente(4)}8  Parámetro: -2 | Resultado: ${siguiente(-2)}9  Parámetro:  0 | Resultado: ${siguiente(0)}10****************************************`);11// 2.Definir una función llamada "doble", la cual retorne el doble (*2) de un número que obtenga por parámetros. Ejecutarla, o llamarla, con el valor: 1, 4, -2 y 0.12function doble(n) {13  return n * 2;14}15console.log(`Función: doble()16  Parámetro:  1 | Resultado: ${doble(1)}17  Parámetro:  4 | Resultado: ${doble(4)}18  Parámetro: -2 | Resultado: ${doble(-2)}19  Parámetro:  0 | Resultado: ${doble(0)}20****************************************`);21// 3.Definir una función que retorne el doble del siguiente de un número que obtenga por parámetros. Usar las 2 funciones anteriores. Ejecutarla, o llamarla, con el valor: 1, 4, -2 y 0.22function dobleDelSiguiente(n) {23  return doble(siguiente(n));24}25console.log(`Función: dobleDelSiguiente()26  Parámetro:  1 | Resultado: ${dobleDelSiguiente(1)}27  Parámetro:  4 | Resultado: ${dobleDelSiguiente(4)}28  Parámetro: -2 | Resultado: ${dobleDelSiguiente(-2)}29  Parámetro:  0 | Resultado: ${dobleDelSiguiente(0)}30  31****************************************`);32// 4.Definir una función llamada "suma", la cual me retorne la suma de 2 números que obtenga por parámetros. Ejecutarla con los valores: 0 y 0; 2 y 4; -1 y -1;33function suma(a, b) {34  return a + b;35}36console.log(`Función: suma()37  Parámetros:  0 y 0  | Resultado: ${suma(0, 0)}38  Parámetros:  2 y 4  | Resultado: ${suma(2, 4)}39  Parámetros: -1 y -1 | Resultado: ${suma(-1, -1)}40  41****************************************`);42// 5.Usar las funciones anteriores para obtener:43// 6.El siguiente de 4: 1+444// 7.El doble de 10: 2*1045// 8.El siguiente del doble de 30: 1+(2*30)46// 9.La suma de 4 y 5: 4+547// 10.El doble del siguiente del doble de 5: 2*(1+(2*5))48// 11.La suma del siguiente de 3 y 5: (1+3)+549// 12.La suma de 4 y del siguiente del doble de 10: 4+(1+(2*10))50// 13.El siguiente de la suma del siguiente de 5 y de la suma de 3 y 4: 1+((1+5)+(3+4))51console.log(`52Usar las funciones anteriores para obtener:53  El siguiente de 4: ${siguiente(4)}54  El doble de 10: ${doble(10)}55  El siguiente del doble de 30: ${siguiente(doble(30))}56  La suma de 4 y 5: ${suma(4, 5)}57  El doble del siguiente del doble de 5: ${doble(siguiente(doble(5)))}58  La suma del siguiente de 3 y 5: ${suma(siguiente(3), 5)}59  La suma de 4 y del siguiente del doble de 10: ${suma(4, siguiente(doble(10)))}60  El siguiente de la suma del siguiente de 5 y de la suma de 3 y 4: ${siguiente(suma(siguiente(5), suma(3, 4)))}61  ...Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3    const browser = await chromium.launch();4    const context = await browser.newContext();5    const page = await context.newPage();6    await page.fill('input[name="q"]', 'Playwright');7    await page.keyboard.press('Enter');8    const searchResults = await page.$$('.g');9    console.log(searchResults.length);10    await browser.close();11})();12const { chromium } = require('playwright');13(async () => {14    const browser = await chromium.launch();15    const context = await browser.newContext();16    const page = await context.newPage();17    await page.fill('input[name="q"]', 'Playwright');18    await page.keyboard.press('Enter');19    const searchResults = await page.$$('.g');20    console.log(searchResults.length);21    await browser.close();22})();23from playwright.sync_api import sync_playwright24with sync_playwright() as p:25    browser = p.chromium.launch()26    page = browser.new_page()27    page.fill("input[name='q']", "Playwright")28    page.keyboard.press("Enter")29    searchResults = page.query_selector_all(".g")30    print(len(searchResults))31    browser.close()32  page.fill('input[name="q"]', 'Playwright')33  page.keyboard.press('Enter')34  searchResults = page.query_selector_all('.g')35use Facebook\WebDriver\Remote\DesiredCapabilities;36use Facebook\WebDriver\Remote\RemoteWebDriver;Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3    const browser = await chromium.launch({ headless: false });4    const context = await browser.newContext();5    const page = await context.newPage();6    await page.fill('input[title="Search"]', 'playwright');7    await page.click('input[type="submit"]');8    await page.waitForNavigation();9    await page.click('text=Playwright');10    await page.waitForNavigation();11    await page.click('text=Docs');12    await page.waitForNavigation();13    await page.click('text=API');14    await page.waitForNavigation();15    await page.click('text=BrowserContext');16    await page.waitForNavigation();17    await page.click('text=BrowserContext');18    await page.waitForNavigation();19    await page.click('text=class BrowserContext');20    await page.waitForNavigation();Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch();4  const context = await browser.newContext();5  const page = await context.newPage();6  await page.screenshot({ path: 'example.png' });7  await page.deleteCookie({name: 'PLAYWRIGHT_BROWSERTYPE'});8  await browser.close();9})();Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch();4  const context = await browser.newContext();5  const page = await context.newPage();6  await page.screenshot({ path: 'example.png' });7  await browser.close();8})();9const { chromium } = require('playwright');10(async () => {11  const browser = await chromium.launch();12  const context = await browser.newContext();13  const page = await context.newPage();14  await page.screenshot({ path: 'example.png' });15  await browser.close();16})();17const { chromium } = require('playwright');18(async () => {19  const browser = await chromium.launch();20  const context = await browser.newContext();21  const page = await context.newPage();22  await page.screenshot({ path: 'example.png' });23  await browser.close();24})();25const { chromium } = require('playwright');26(async () => {27  const browser = await chromium.launch();28  const context = await browser.newContext();29  const page = await context.newPage();30  await page.screenshot({ path: 'example.png' });31  await browser.close();32})();33const { chromium } = require('playwright');34(async () => {35  const browser = await chromium.launch();36  const context = await browser.newContext();37  const page = await context.newPage();38  await page.screenshot({ path: 'example.png' });39  await browser.close();40})();41const { chromium } = require('playwright');42(async () => {43  const browser = await chromium.launch();44  const context = await browser.newContext();45  const page = await context.newPage();46  await page.screenshot({ path: 'example.png' });47  await browser.close();48})();49const { chromium } = require('playwright');Using AI Code Generation
1const {del} = require('playwright/lib/server/browserContext');2await del(context);3const {del} = require('playwright/lib/server/browserContext');4await del(context);5const {del} = require('playwright/lib/server/browserContext');6await del(context);7const {del} = require('playwright/lib/server/browserContext');8await del(context);9const {del} = require('playwright/lib/server/browserContext');10await del(context);11const {del} = require('playwright/lib/server/browserContext');12await del(context);13const {del} = require('playwright/lib/server/browserContext');14await del(context);15const {del} = require('playwright/lib/server/browserContext');16await del(context);17const {del} = require('playwright/lib/server/browserContext');18await del(context);19const {del} = require('playwright/lib/server/browserContext');20await del(context);21const {del} = require('playwright/lib/server/browserContext');22await del(context);23const {del} = require('playwright/lib/server/browserContext');24await del(context);25const {del} = require('playwright/lib/server/browserContext');26await del(context);27const {del} = require('playwright/lib/server/browserContext');28await del(context);29const {del} = require('playwright/lib/server/browserContext');30await del(context);31const {del} =Using AI Code Generation
1const { del } = require('playwright/lib/server/chromium/crNetworkManager');2const { del } = require('playwright/lib/server/chromium/crNetworkManager');3const { del } = require('playwright/lib/server/chromium/crNetworkManager');4const { del } = require('playwright/lib/server/chromium/crNetworkManager');5const { del } = require('playwright/lib/server/chromium/crNetworkManager');6const { del } = require('playwright/lib/server/chromium/crNetworkManager');7const { del } = require('playwright/lib/server/chromium/crNetworkManager');8const { del } = require('playwright/lib/server/chromium/crNetworkManager');9const { del } = require('playwright/lib/server/chromium/crNetworkManager');10const { del } = require('playwright/lib/server/chromium/crNetworkManager');11const { del } = require('playwright/lib/server/chromium/crNetworkManager');12const { del } = require('playwright/lib/server/chromium/crNetworkManager');Using AI Code Generation
1import { del } from '@playwright/test';2await del('path/to/file');3await del('path/to/directory');4import { chromium } from 'playwright';5const browser = await chromium.launch();6const page = await browser.newPage();7await page.del('path/to/file');8await page.del('path/to/directory');9import { chromium } from 'playwright';10const browser = await chromium.launch();11await browser.del('path/to/file');12await browser.del('path/to/directory');13import { chromium } from 'playwright';14const browser = await chromium.launch();15const context = await browser.newContext();16await context.del('path/to/file');17await context.del('path/to/directory');18import { chromium } from 'playwright';19const browser = await chromium.launch();20const page = await browser.newPage();21await page.del('path/to/file');22await page.del('path/to/directory');23import { chromium } from 'playwright';24const browser = await chromium.launch();25const page = await browser.newPage();26const frame = await page.frame('name');27await frame.del('path/to/file');28await frame.del('path/to/directory');29import { chromium } from 'playwright';30const browser = await chromium.launch();31const context = await browser.newContext();32const worker = await context.newWorker();33await worker.del('path/to/file');34await worker.del('path/to/directory');35import { chromium } from 'playwright';36const browser = await chromium.launch();37const context = await browser.newContext();38const worker = await context.newWorker();39const frame = await worker.frame('name');40await frame.del('path/to/file');41await frame.del('path/to/directory');42import { chromium } from 'playwright';43const browser = await chromium.launch();44const page = await browser.newPage();45const elementHandle = await page.$('selector');46await elementHandle.del('path/to/file');47await elementHandle.del('path/to/directory');Using AI Code Generation
1const { internalCallMetadata } = require('playwright/lib/utils/utils');2const { del } = require('playwright/lib/utils/remoteCallServer');3const { context } = require('playwright/lib/utils/registry');4const { debugLogger } = require('playwright/lib/utils/debugLogger');5const { BrowserContext } = require('playwright/lib/server/browserContext');6const { Page } = require('playwright/lib/server/page');7const { Frame } = require('playwright/lib/server/frames');8const { Worker } = require('playwright/lib/server/worker');9const { Route } = require('playwright/lib/server/network');10const { WebSocket } = require('playwright/lib/server/webSocket');11const { CDPSession } = require('playwright/lib/server/cdpSession');12const { Browser } = require('playwright/lib/server/browser');13const { BrowserType } = require('playwright/lib/server/browserType');14const { BrowserServer } = require('playwright/lib/server/browserServer');15const { Download } = require('playwright/lib/server/download');16const { ElectronApplication } = require('playwright/lib/server/electron');17const { Android } = require('playwright/lib/server/android');18const { AndroidDevice } = require('playwright/lib/server/androidDevice');19const { AndroidSocket } = require('playwright/lib/server/androidSocket');20const { AndroidBrowser } = require('playwright/lib/server/androidBrowser');21const { AndroidBrowserContext } = require('playwright/lib/server/androidBrowserContext');22const { AndroidPage } = require('playwright/lib/server/androidPage');23const { AndroidFrame } = require('playwright/lib/server/androidFrame');24const { AndroidWorker } = require('playwright/lib/server/androidWorker');25const { AndroidRoute } = require('playwright/lib/server/androidRoute');26const { AndroidWebSocket } = require('playwright/lib/server/androidWebSocket');27const { AndroidCDPSession } = require('playwright/lib/server/androidCDPSession');28const { AndroidDownload } = require('playwright/lib/server/androidDownload');29const { AndroidDialog } = require('playwright/lib/server/androidDialog');30const { AndroidPermission } = require('playwright/lib/server/androidPermission');31const { internalCallMetadata } = require('playwright/lib/utils/utils');32const { del } = require('playwright/lib/utils/remoteCallServer');33const { context } = require('playwrightUsing AI Code Generation
1const playwright = require('playwright');2async function deleteCookies() {3  const context = await browser.newContext();4  await context.clearCookies();5}6async function deleteAllCookies() {7  const context = await browser.newContext();8  await context.clearCookies();9}10async function deleteSpecificCookies() {11  const context = await browser.newContext();12  await context.clearCookies({13  });14}15async function deleteCookiesWithDomain() {16  const context = await browser.newContext();17  await context.clearCookies({18  });19}20async function deleteCookiesWithPath() {21  const context = await browser.newContext();22  await context.clearCookies({23  });24}25async function deleteCookiesWithUrl() {26  const context = await browser.newContext();27  await context.clearCookies({28  });29}30async function deleteCookiesWithUrlAndPath() {31  const context = await browser.newContext();32  await context.clearCookies({33  });34}35async function deleteCookiesWithUrlAndDomain() {36  const context = await browser.newContext();37  await context.clearCookies({38  });39}40async function deleteCookiesWithNameUrlAndDomain() {41  const context = await browser.newContext();42  await context.clearCookies({43  });44}45async function deleteCookiesWithNamePathUrlAndDomain() {46  const context = await browser.newContext();47  await context.clearCookies({48  });49}LambdaTest’s Playwright tutorial will give you a broader idea about the Playwright automation framework, its unique features, and use cases with examples to exceed your understanding of Playwright testing. This tutorial will give A to Z guidance, from installing the Playwright framework to some best practices and advanced concepts.
Get 100 minutes of automation test minutes FREE!!
