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('playwright
Using 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!!