Best JavaScript code snippet using playwright-internal
scroll-digit.js
Source:scroll-digit.js
1var FormatDigit;2function ScrollDigit(id, options = {}) {3 // é»è®¤å¼4 var defaults = {5 number: 0, //ä¼ å
¥å¼6 color: '#01E6E1',7 fontSize: '30px',8 // 宽度9 width: "auto",10 height: '100px',11 isIcon: false,12 className: 'ScrollDigit',13 // é¤ç¬¬ä¸ä¸ªå·¦è¾¹è· ä½ç¨äºæ ¼å¼åæ°åç æ»å¨æ°åæ æ14 marginL: '0',15 isComma: false,16 };17 this.ele = document.querySelector('#' + id);18 if (!this.ele) {19 // throw new TypeError('容å¨idä¸åå¨æéstringç±»å')20 return console.log('æ»å¨æ件','ä¼ å
¥çidè·åä¸å°å®¹å¨');21 }22 this.options = Object.assign(defaults, options);23 this.id = id;24 this.initHtml();25 if (this.options.isIcon) this.iconNum();26 else this.Num();27 this.scroNum();28}29ScrollDigit.prototype = {30 initHtml: function () {31 const that = this.ele;32 const options = this.options;33 const html = [];34 const str = options.number + ''35 // è·åä¸å
å«åå·çé¿åº¦36 var valLen = str.length;37 // è·åæ´æ°çé¿åº¦38 const integer = str.search(/\./g) == -1 ? str.length : str.search(/\./g);39 // è·åå°æ° å ä¸ç¹ çé¿åº¦40 const floatDot = valLen - integer;41 // å¦æ没ææ·»å è¿ä¸ªå
ç´ æè
é¿åº¦ä¸å¤ é£ä¹éæ°å建 42 if (!that.querySelector('.' + options.className) ||43 that.querySelectorAll('.dataOne').length/* æ»é¿åº¦ æ°å + å°æ°ç¹ + åå· */ != getTotalLenght()) {44 // æ ¹æ®æ°å个æ°æ·»å å 次45 for (var i = 0; i < valLen; i++) {46 // åå· comma47 if (options.isComma && ((i - floatDot) % 3 == 0) && i - floatDot > 0) {48 html.unshift('<li class="dataOne" style="' +49 ';"><div class="dataBoc" style="height:' + options.height + ';line-height:' + options.height +50 /* ';width:' + options.width + */ ';color:' + options.color + ';font-size:' + (parseInt(options.fontSize) + parseInt(options.fontSize) * 1 / 5) +51 'px' + /* ';margin-left: ' + options.marginL + */52 ';"><div class="tt" t="10">' +53 ' <span class="comma"></span><br />' +54 ' </div></div></li>');55 }56 // ä¸æ¯å°æ°ç¹å°±æ¯æ°å57 if (i !== floatDot - 1) {58 html.unshift('<li class="dataOne" style="' +59 ';"><div class="dataBoc" style="height:' + options.height + ';line-height:' + options.height +60 ';width:' + options.width + ';color:' + options.color + ';font-size:' + options.fontSize +61 ';margin-left: ' + options.marginL +62 ';"><div class="tt ttroll" t="10">' +63 ' <span class="num0"></span><br />' +64 ' <span class="num1"></span><br />' +65 ' <span class="num2"></span><br />' +66 ' <span class="num3"></span><br />' +67 ' <span class="num4"></span><br />' +68 ' <span class="num5"></span><br />' +69 ' <span class="num6"></span><br />' +70 ' <span class="num7"></span><br />' +71 ' <span class="num8"></span><br />' +72 ' <span class="num9"></span><br />' +73 ' <span class="num0"></span><br />' +74 ' <span class="num1"></span><br />' +75 ' <span class="num2"></span><br />' +76 ' <span class="num3"></span><br />' +77 ' <span class="num4"></span><br />' +78 ' <span class="num5"></span><br />' +79 ' <span class="num6"></span><br />' +80 ' <span class="num7"></span><br />' +81 ' <span class="num8"></span><br />' +82 ' <span class="num9"></span><br />' +83 ' </div></div></li>');84 } else {85 // å°æ°ç¹ dot86 html.unshift('<li class="dataOne" style="' +87 ';"><div class="dataBoc" style="height:' + options.height + ';line-height:' + options.height +88 /* ';width:' + options.width + */ ';color:' + options.color + ';font-size:' + (parseInt(options.fontSize) + parseInt(options.fontSize) * 1 / 5) +89 'px' + /* ';margin-left: ' + options.marginL + */90 ';"><div class="tt" t="10">' +91 ' <span class="dot"></span><br />' +92 ' </div></div></li>');93 }94 }95 html.unshift('<ul class="' + options.className + '">');96 html.push('</ul>');97 // 注æheight å fontSizeçåä½è¦ä¸è´98 options.unit && (html.push('<em style="height:' + options.height + ';line-height:' +99 (parseInt(options.height) + parseInt(options.fontSize) / 2 + options.height.match(/\D/g).reduce((total, item) => total + item)) +100 ';color:' + options.color +101 ';font-size:' + (parseInt(options.fontSize) / 2 + options.height.match(/\D/g).reduce((total, item) => total + item)) +102 ';vertical-align: baseline;display: inline-block;">' + options.unit + '</em>'));103 that.innerHTML = html.join('').trim();104 }105 function getTotalLenght() {106 // åå·çé¿åº¦107 let comma = Math.ceil((integer / 3) - 1);108 return valLen + comma;109 }110 },111 scroNum: function () {112 const that = this.ele;113 const options = this.options;114 // éè¦æææ°åæ»å¨ å°æ°ç¹ååéå·ä¸æ»å¨ é£ä¹å¨è¿éå»é¤å°æ°ç¹115 var numberStr = options.number.toString().replace('.', '');116 var numItems = that.querySelectorAll('.ttroll');117 [].forEach.call(numItems, item => item.style.transition = 'all 0.5s ease-in-out')118 var h = Math.ceil(numItems[0].children[0].offsetHeight);119 // var ht = Math.ceil(numItems[0].offsetHeight);120 // 解å³æ»å¨æ°å对ä¸é½çé®é¢121 var ht = h * 20;122 // if (numberStr.length <= numItems.length - 1) {123 // var tempStr = '';124 // for (var a = 0; a < numItems.length - numberStr.length; a++) {125 // tempStr += '0';126 // }127 // numberStr = tempStr + numberStr;128 // }129 var numberArr = numberStr.split('');130 [...numItems].forEach(function (item, i) {131 setTimeout(function () {132 item.style.transform = 'translateY(' + ((-Number(numberArr[i]) * h - h * 10) / Number(ht) * 100) + '%' + ')';133 }, i * 20)134 });135 },136 iconNum: function () {137 const options = this.options;138 const id = this.id;139 for (var i = 0; i < 10; i++) {140 new FormatDigit({141 selector: '#' + id + ' .num' + i,142 number: i.toString(),143 color: options.color,144 fontSize: options.fontSize,145 width: options.width,146 height: options.height,147 isComma: false,148 // marginL: options.marginL,149 isIcon: options.isIcon,150 });151 }152 // åå·153 if (options.isComma) {154 new FormatDigit({155 selector: '#' + id + ' .comma',156 number: ',',157 color: options.color,158 fontSize: options.fontSize,159 width: options.width,160 height: options.height,161 isComma: true,162 isIcon: options.isIcon,163 // marginL: options.marginL,164 });165 }166 new FormatDigit({167 selector: '#' + id + ' .dot',168 number: '.',169 color: options.color,170 fontSize: options.fontSize,171 width: options.width,172 height: options.height,173 isComma: false,174 isIcon: options.isIcon,175 // marginL: options.marginL,176 });177 },178 Num: function () {179 const options = this.options;180 const id = this.id;181 for (var i = 0; i < 10; i++) {182 [...document.querySelectorAll('#' + id + ' .num' + i)].forEach(item => {183 item.innerText = i;184 })185 }186 // åå·187 if (options.isComma) {188 document.querySelectorAll('#' + id + ' .comma').forEach(item => {189 item.innerText = ",";190 })191 }192 // å°æ°ç¹193 document.querySelectorAll('#' + id + ' .dot').forEach(item => {194 item.innerText = ".";195 })196 },197}198ScrollDigit.colors = {199 red: "#DC7060",200 green: "#08A336",201 yellow: "#F7EA4B",202 grey: "#E6A23C",203 blue: "#5DADF7",204 orange: "#FBA63C",205 white: "white",206}207try {208 // æ¯window对象209 if (globalThis === window) {210 window.ScrollDigit = ScrollDigit;211 FormatDigit = window.FormatDigit;212 } else if (module && module.exports) {213 module.exports = ScrollDigit;214 FormatDigit = require("./format-digit")215 }216} catch {217 console.log('æªç¥ç¯å¢')218}219/*220使ç¨æ¹å¼221 new ScrollDigit(ID,options);222options = {223 // é»è®¤æ°å224 number: "",225 // æ°åé¢è²226 color: "",227 // æ°å大å°228 fontSize: "",229 // 宽度230 width: "",231 // iå
ç´ ä»¥ådataBocå
ç´ çé«åº¦ éè¦æ³¨æçæ¯è¿ä¸ªé«åº¦è¦åå¤é¨å
ç´ çé«åº¦ä¸è´232 height: "",233 // é¤ç¬¬ä¸ä¸ªå·¦è¾¹è· ä½ç¨äºæ ¼å¼åæ°åç æ»å¨æ°åæ æ234 marginL: '0',235 // æ¯å¦ä½¿ç¨æ ¼å¼åæ°å236 isIcon: true,237 unit: 'åä½',238}239*/...
comma-spacing.js
Source:comma-spacing.js
...47 * @param {ASTNode} token The token to check.48 * @returns {boolean} True if the token is a comma, false if not.49 * @private50 */51 function isComma(token) {52 return !!token && (token.type === "Punctuator") && (token.value === ",");53 }54 /**55 * Reports a spacing error with an appropriate message.56 * @param {ASTNode} node The binary expression node to report.57 * @param {string} dir Is the error "before" or "after" the comma?58 * @param {ASTNode} otherNode The node at the left or right of `node`59 * @returns {void}60 * @private61 */62 function report(node, dir, otherNode) {63 context.report({64 node,65 fix(fixer) {66 if (options[dir]) {67 if (dir === "before") {68 return fixer.insertTextBefore(node, " ");69 } else {70 return fixer.insertTextAfter(node, " ");71 }72 } else {73 let start, end;74 const newText = "";75 if (dir === "before") {76 start = otherNode.range[1];77 end = node.range[0];78 } else {79 start = node.range[1];80 end = otherNode.range[0];81 }82 return fixer.replaceTextRange([start, end], newText);83 }84 },85 message: options[dir] ?86 "A space is required {{dir}} ','." :87 "There should be no space {{dir}} ','.",88 data: {89 dir90 }91 });92 }93 /**94 * Validates the spacing around a comma token.95 * @param {Object} tokens - The tokens to be validated.96 * @param {Token} tokens.comma The token representing the comma.97 * @param {Token} [tokens.left] The last token before the comma.98 * @param {Token} [tokens.right] The first token after the comma.99 * @param {Token|ASTNode} reportItem The item to use when reporting an error.100 * @returns {void}101 * @private102 */103 function validateCommaItemSpacing(tokens, reportItem) {104 if (tokens.left && astUtils.isTokenOnSameLine(tokens.left, tokens.comma) &&105 (options.before !== sourceCode.isSpaceBetweenTokens(tokens.left, tokens.comma))106 ) {107 report(reportItem, "before", tokens.left);108 }109 if (tokens.right && !options.after && tokens.right.type === "Line") {110 return;111 }112 if (tokens.right && astUtils.isTokenOnSameLine(tokens.comma, tokens.right) &&113 (options.after !== sourceCode.isSpaceBetweenTokens(tokens.comma, tokens.right))114 ) {115 report(reportItem, "after", tokens.right);116 }117 }118 /**119 * Adds null elements of the given ArrayExpression or ArrayPattern node to the ignore list.120 * @param {ASTNode} node An ArrayExpression or ArrayPattern node.121 * @returns {void}122 */123 function addNullElementsToIgnoreList(node) {124 let previousToken = sourceCode.getFirstToken(node);125 node.elements.forEach(function(element) {126 let token;127 if (element === null) {128 token = sourceCode.getTokenAfter(previousToken);129 if (isComma(token)) {130 commaTokensToIgnore.push(token);131 }132 } else {133 token = sourceCode.getTokenAfter(element);134 }135 previousToken = token;136 });137 }138 //--------------------------------------------------------------------------139 // Public140 //--------------------------------------------------------------------------141 return {142 "Program:exit"() {143 tokensAndComments.forEach(function(token, i) {144 if (!isComma(token)) {145 return;146 }147 if (token && token.type === "JSXText") {148 return;149 }150 const previousToken = tokensAndComments[i - 1];151 const nextToken = tokensAndComments[i + 1];152 validateCommaItemSpacing({153 comma: token,154 left: isComma(previousToken) || commaTokensToIgnore.indexOf(token) > -1 ? null : previousToken,155 right: isComma(nextToken) ? null : nextToken156 }, token);157 });158 },159 ArrayExpression: addNullElementsToIgnoreList,160 ArrayPattern: addNullElementsToIgnoreList161 };162 }...
Calculator.js
Source:Calculator.js
1app.component('calculator',2{3 template:4 /*html*/5 `<display6 ref="displayRef"7 :displayValue="displayValue"8 class="display"9 ></display>10 <buttons @button-clicked="buttonClicked"></buttons>`,11 data()12 {13 return {14 displayValue: "0",15 isComma: false,16 previousAnswer: null,17 firstNumber: null,18 secondNumber: null,19 operator: -1, //0: pluss, 1: minus, 2: gange, 3: dele20 firstNewNumber: false, //Brukes til å sjekke om det andre tallet skal begynne21 operators: ["+", "-", "x", "/"]22 }23 },24 methods:25 { 26 buttonClicked(text)27 {28 switch (text)29 {30 case "0":31 case "1":32 case "2":33 case "3":34 case "4":35 case "5":36 case "6":37 case "7":38 case "8":39 case "9":40 {41 this.numberClicked(text); //Legger inn tallet som er trykt i displayet42 }43 break; 44 case ".":45 {46 this.commaPressed(); //Legger inn et komma i displayet47 }48 break;49 case "C":50 {51 this.clear(); //Fjerner alt, minne og hele pakka52 }53 break;54 case "ANS":55 {56 this.fetchAnswer(); //Henter forrgie svar57 }58 break;59 case "DEL":60 {61 this.delete(); //Sletter det som står i displayet nå62 }63 break;64 case "+":65 case "-": 66 case "x":67 case "/":68 {69 this.setOperator(text); //Setter operatoren som skal brukes i utregningen70 }71 break;72 case "=":73 {74 this.equalClicked(); //Starter utregningen og viser svaret i displayet75 }76 break;77 }78 },79 80 numberClicked(number)81 {82 if (this.firstNewNumber)83 {84 this.displayValue = "";85 this.firstNewNumber = false;86 this.isComma = false;87 }88 if (this.displayValue != "0")89 {90 this.displayValue += number;91 }92 else93 {94 this.displayValue = number;95 }96 },97 commaPressed()98 {99 if (!this.isComma && !this.firstNewNumber)100 {101 this.displayValue += ".";102 this.isComma = true;103 }104 },105 clear()106 {107 this.displayValue = "0";108 this.isComma = false;109 this.previousAnswer = null;110 this.firstNumber = null;111 this.secondNumber = null;112 this.operator = -1;113 this.firstNewNumber = false;114 },115 fetchAnswer()116 {117 if (this.previousAnswer != null)118 {119 if (this.firstNumber == null)120 {121 this.firstNumber = this.previousAnswer;122 this.displayValue = this.previousAnswer;123 }124 else125 {126 this.secondNumber = this.previousAnswer;127 this.displayValue = this.previousAnswer;128 }129 }130 },131 delete()132 {133 this.displayValue = "0";134 },135 setOperator(operator)136 {137 switch (operator)138 {139 case "+":140 {141 this.operator = 0;142 }143 break;144 case "-":145 {146 this.operator = 1;147 }148 break;149 case "x":150 {151 this.operator = 2;152 }153 break;154 case "/":155 {156 this.operator = 3;157 }158 break;159 default:160 console.log("setOperator() ble kalt, men argument var ugyldig, argument: " + operator);161 break;162 }163 this.firstNumber = this.displayValue;164 this.firstNewNumber = true;165 this.isComma = true;166 },167 equalClicked()168 {169 if (this.firstNumber == null || this.operator == -1)170 {171 }172 else173 {174 this.secondNumber = this.displayValue; //Setter tall to175 this.previousAnswer = this.calc(Number(this.firstNumber), Number(this.secondNumber), this.operator); // regner ut hva svaret er176 this.displayValue = String(this.previousAnswer); //Setter svaret på displayet177 178 this.$emit('new-entry',179 {180 firstNumber: this.firstNumber,181 secondNumber: this.secondNumber,182 operator: this.operators[this.operator],183 answer: this.previousAnswer184 });185 186 187 this.firstNumber = null;188 this.secondNumber = null; //Setter tall to til null189 this.isComma = false; //Setter at det ikke er noe komma her190 this.firstNewNumber = true;191 }192 },193 calc(number1, number2, operator)194 {195 switch (operator)196 {197 case 0:198 {199 return number1 + number2;200 }201 break;202 case 1:203 {204 return number1 - number2;205 }206 break;207 case 2:208 {209 return number1 * number2;210 }211 break;212 case 3:213 {214 return number1 / number2;215 }216 break;217 default:218 console.log("calc() ble kalt, men argument var ugyldig, argument: " + number1 + ", " + number2 + ", " + operator);219 break;220 }221 }222 }...
isTransformList.js
Source:isTransformList.js
...22 }23 let valid = true;24 walk(node.nodes, (child, index) => {25 const even = isEven(index);26 if (even && !isNumber(child) || !even && !isComma(child)) {27 valid = false;28 }29 return false;30 });31 return valid;32}33function isMultipleValue (name, fn) {34 return node => {35 if (!isFunction(node, name)) {36 return false;37 }38 if (node.nodes.length > 3) {39 return false;40 }41 let valid = true;42 walk(node.nodes, (child, index) => {43 const even = isEven(index);44 if (even && !fn(child) || !even && !isComma(child)) {45 valid = false;46 }47 return false;48 });49 if (isComma(node.nodes[node.nodes.length - 1])) {50 return false;51 }52 return valid;53 };54}55const isTranslate = isMultipleValue('translate', isLengthPercentage);56const isScale = isMultipleValue('scale', isNumber);57const isSkew = isMultipleValue('skew', isAngle);58export const singleNumbers = [59 'scaleX',60 'scaleY',61 'scaleZ',62];63export const singleAngles = [64 'rotate',65 'skewX',66 'skewY',67 'rotateX',68 'rotateY',69 'rotateZ',70];71export const singleLengths = [72 'perspective',73 'translateZ',74];75export const singleLPs = [76 'translateX',77 'translateY',78];79function isSingleValidator (name, fn) {80 return node => {81 if (!isFunction(node, name)) {82 return false;83 }84 if (node.nodes.length !== 1) {85 return false;86 }87 return fn(node.nodes[0]);88 };89}90const isSingleLP = isSingleValidator(singleLPs, isLengthPercentage);91const isSingleNumber = isSingleValidator(singleNumbers, isNumber);92const isSingleAngle = isSingleValidator(singleAngles, isAngle);93const isSingleLength = isSingleValidator(singleLengths, isLength);94function isTranslate3d (node) {95 if (!isFunction(node, 'translate3d')) {96 return false;97 }98 const {nodes} = node;99 if (nodes.length !== 5) {100 return false;101 }102 return isLengthPercentage(nodes[0]) &&103 isComma(nodes[1]) &&104 isLengthPercentage(nodes[2]) &&105 isComma(nodes[3]) &&106 isLength(nodes[4]);107}108function isScale3d (node) {109 if (!isFunction(node, 'scale3d')) {110 return false;111 }112 const {nodes} = node;113 if (nodes.length !== 5) {114 return false;115 }116 return isNumber(nodes[0]) &&117 isComma(nodes[1]) &&118 isNumber(nodes[2]) &&119 isComma(nodes[3]) &&120 isNumber(nodes[4]);121}122function isRotate3d (node) {123 if (!isFunction(node, 'rotate3d')) {124 return false;125 }126 const {nodes} = node;127 if (nodes.length !== 7) {128 return false;129 }130 return isNumber(nodes[0]) &&131 isComma(nodes[1]) &&132 isNumber(nodes[2]) &&133 isComma(nodes[3]) &&134 isNumber(nodes[4]) &&135 isComma(nodes[5]) &&136 isAngle(nodes[6]);137}138function validateNode (node) {139 return isMatrix(node) ||140 isRotate3d(node) ||141 isScale(node) ||142 isScale3d(node) ||143 isSkew(node) ||144 isSingleAngle(node) ||145 isSingleLength(node) ||146 isSingleLP(node) ||147 isSingleNumber(node) ||148 isTranslate(node) ||149 isTranslate3d(node) ||...
summary_test.js
Source:summary_test.js
1/**2 * Licensed to the Apache Software Foundation (ASF) under one3 * or more contributor license agreements. See the NOTICE file4 * distributed with this work for additional information5 * regarding copyright ownership. The ASF licenses this file6 * to you under the Apache License, Version 2.0 (the7 * "License"); you may not use this file except in compliance8 * with the License. You may obtain a copy of the License at9 *10 * http://www.apache.org/licenses/LICENSE-2.011 *12 * Unless required by applicable law or agreed to in writing, software13 * distributed under the License is distributed on an "AS IS" BASIS,14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.15 * See the License for the specific language governing permissions and16 * limitations under the License.17 */18var App = require('app');19require('views/main/service/info/summary');20describe('App.MainServiceInfoSummaryView', function() {21 var mainServiceInfoSummaryView = App.MainServiceInfoSummaryView.create({22 monitorsLiveTextView: Em.View.create(),23 controller: Em.Object.create({24 content: Em.Object.create({25 id: 'HDFS',26 serviceName: 'HDFS',27 hostComponents: []28 })29 })30 });31 describe('#servers', function () {32 it('services shuldn\'t have servers except FLUME and ZOOKEEPER', function () {33 expect(mainServiceInfoSummaryView.get('servers')).to.be.empty;34 });35 it('if one server exists then first server should have isComma and isAnd property false', function () {36 mainServiceInfoSummaryView.set('controller.content', Em.Object.create({37 id: 'ZOOKEEPER',38 serviceName: 'ZOOKEEPER',39 hostComponents: [40 Em.Object.create({41 displayName: '',42 isMaster: true43 })44 ]45 }));46 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isComma).to.equal(false);47 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isAnd).to.equal(false);48 });49 it('if more than one servers exist then first server should have isComma - true and isAnd - false', function () {50 mainServiceInfoSummaryView.set('controller.content', Em.Object.create({51 id: 'ZOOKEEPER',52 serviceName: 'ZOOKEEPER',53 hostComponents: [54 Em.Object.create({55 displayName: '',56 isMaster: true57 }),58 Em.Object.create({59 displayName: '',60 isMaster: true61 })62 ]63 }));64 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isComma).to.equal(true);65 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isAnd).to.equal(false);66 expect(mainServiceInfoSummaryView.get('servers').objectAt(1).isComma).to.equal(false);67 expect(mainServiceInfoSummaryView.get('servers').objectAt(1).isAnd).to.equal(false);68 });69 it('if more than two servers exist then second server should have isComma - false and isAnd - true', function () {70 mainServiceInfoSummaryView.set('controller.content', Em.Object.create({71 id: 'ZOOKEEPER',72 serviceName: 'ZOOKEEPER',73 hostComponents: [74 Em.Object.create({75 displayName: '',76 isMaster: true77 }),78 Em.Object.create({79 displayName: '',80 isMaster: true81 }),82 Em.Object.create({83 displayName: '',84 isMaster: true85 })86 ]87 }));88 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isComma).to.equal(true);89 expect(mainServiceInfoSummaryView.get('servers').objectAt(0).isAnd).to.equal(false);90 expect(mainServiceInfoSummaryView.get('servers').objectAt(1).isComma).to.equal(false);91 expect(mainServiceInfoSummaryView.get('servers').objectAt(1).isAnd).to.equal(true);92 expect(mainServiceInfoSummaryView.get('servers').objectAt(2).isComma).to.equal(false);93 expect(mainServiceInfoSummaryView.get('servers').objectAt(2).isAnd).to.equal(false);94 });95 });...
isColor.js
Source:isColor.js
...17 walk(node.nodes, (child, index) => {18 const even = isEven(index);19 if (20 even && (!isInteger(child) && !isPercentage(child)) ||21 !even && !isComma(child)22 ) {23 valid = false;24 }25 return false;26 });27 return valid && node.nodes.length === 5;28}29export function isRgba (node) {30 if (!isFunction(node, 'rgba')) {31 return;32 }33 let valid = true;34 walk(node.nodes, (child, index) => {35 const even = isEven(index);36 if (37 even && (38 (index < 6 && !isInteger(child) && !isPercentage(child)) ||39 (index > 5 && !isNumber(child))40 ) || !even && !isComma(child)41 ) {42 valid = false;43 }44 return false;45 });46 return valid && node.nodes.length === 7;47}48export function isHsl (node) {49 if (!isFunction(node, 'hsl')) {50 return;51 }52 let valid = true;53 walk(node.nodes, (child, index) => {54 const even = isEven(index);55 if (56 even && (57 (index < 1 && !isNumber(child)) ||58 (index > 1 && !isPercentage(child))59 ) || !even && !isComma(child)60 ) {61 valid = false;62 }63 return false;64 });65 return valid && node.nodes.length === 5;66}67export function isHsla (node) {68 if (!isFunction(node, 'hsla')) {69 return;70 }71 let valid = true;72 walk(node.nodes, (child, index) => {73 const even = isEven(index);74 if (75 even && (76 ((index === 0 || index === 6) && !isNumber(child)) ||77 ((index === 2 || index === 4) && !isPercentage(child))78 ) || !even && !isComma(child)79 ) {80 valid = false;81 }82 return false;83 });84 return valid && node.nodes.length === 7;85}86export function isHex (node) {87 if (node.type !== 'word' || node.value[0] !== '#') {88 return false;89 }90 const range = node.value.slice(1);91 return ~[3, 4, 6, 8].indexOf(range.length) && !isNaN(parseInt(range, 16));92}...
index.js
Source:index.js
1let dataPush = {2 operators: [],3 numbers: []4}5let screening = {6 input: "0",7 output: "Result"8}9let screenInput, screenOutput10let isTrue = false, isClear = false, isComma = true11window.onload = function () {12 screenInput = document.getElementById("inputscr")13 screenOutput = document.getElementById("ouputscr")14};15function addOperators(operator) {16 if (isClear) { clearAll() }17 if (isTrue) {18 screening.input += " " + operator + " "19 screenInput.innerText = screening.input20 }21 isTrue = false22 isComma = true23}24function addNumbers(number) {25 if (isClear) { clearAll() }26 if (screening.input == "0") { screening.input = "" }27 screening.input += number28 screenInput.innerText = screening.input29 isTrue = true30}31function addComma() {32 if (isClear) { clearAll() }33 if (isComma) {34 screening.input += "."35 console.log(screening.input)36 screenInput.innerText = screening.input37 isComma = false38 }39}40function clearAll() {41 dataPush = {42 operators: [],43 numbers: []44 }45 screening = {46 input: "0",47 output: "Result"48 }49 isTrue = false50 isClear = false51 isComma = true52 screenInput.innerText = screening.input53 screenOutput.innerText = screening.output54}55function deleteInput() {56 console.log(9 * 0)57 if (screening.input.length === 1) { clearAll() }58 if (screening.input !== "0") {59 let lastElement = screening.input[screening.input.length - 1]60 if(lastElement === " ") {61 screening.input = screening.input.substr(0, screening.input.length - 2) 62 isTrue = true63 }64 screening.input = screening.input.substr(0, screening.input.length - 1)65 screenInput.innerText = screening.input66 }67}68function handleSubmit() {69 isClear = true70 isTrue = false71 let substrings = screening.input.split(" ");72 for (let i = 0; i < substrings.length; i++) {73 i % 2 === 174 ? dataPush.operators.push(substrings[i])75 : dataPush.numbers.push(Number(substrings[i]))76 }77 console.log(dataPush)78 postData('http://localhost:3000/calc', dataPush)79 .then((response) => response.json())80 .then((data) => {81 screening.output = data.msg82 screenOutput.innerText = screening.output83 dataPush = {84 operators: [],85 numbers: []86 }87 })88}89async function postData(url = '', data = {}) {90 const response = await fetch(url, {91 method: 'POST',92 mode: 'cors',93 headers: {94 'Content-Type': 'application/json',95 'Accept': 'application/json'96 },97 body: JSON.stringify(data)98 });99 return response;...
parseFunctionArguments.js
Source:parseFunctionArguments.js
1"use strict";2Object.defineProperty(exports, "__esModule", {3 value: true4});5exports.groupByKeyValue = groupByKeyValue;6exports.mapToKeyValue = mapToKeyValue;7exports.parseFunctionArguments = parseFunctionArguments;8var _postcssValueParser = _interopRequireDefault(require("postcss-value-parser"));9function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }10function groupByKeyValue(nodes) {11 if (!nodes) {12 return [];13 }14 var groupIndex = 0;15 return nodes.reduce(function (acc, node, nodeIndex) {16 var isComma = node.type === "div" && node.value === ",";17 var skipTrailingComma = isComma && nodeIndex === nodes.length - 1;18 if (skipTrailingComma) {19 return acc;20 }21 if (isComma) {22 groupIndex++;23 }24 acc[groupIndex] = acc[groupIndex] || [];25 if (!isComma) {26 acc[groupIndex].push(node);27 }28 return acc;29 }, []);30}31function mapToKeyValue(nodes) {32 var keyVal = nodes.reduce(function (acc, curr, i) {33 if (acc.length === 1) {34 return acc;35 }36 var nextNode = nodes[i + 1];37 var isNextNodeColon = nextNode && nextNode.type === "div" && nextNode.value === ":";38 if (isNextNodeColon) {39 acc.push({40 key: _postcssValueParser["default"].stringify(nodes[i]),41 value: _postcssValueParser["default"].stringify(nodes.slice(2))42 });43 return acc;44 }45 acc.push({46 value: _postcssValueParser["default"].stringify(nodes)47 });48 return acc;49 }, []);50 return keyVal[0];51}52function parseFunctionArguments(value) {53 var parsed = (0, _postcssValueParser["default"])(value);54 if (!parsed.nodes[0] || parsed.nodes[0].type !== "function") {55 return [];56 }57 return parsed.nodes.map(function (node) {58 return groupByKeyValue(node.nodes).map(mapToKeyValue);59 })[0];...
Using AI Code Generation
1const { isComma } = require('playwright/lib/utils/utils');2const { isComma } = require('playwright/lib/utils/utils');3const { isComma } = require('playwright/lib/utils/utils');4const { isComma } = require('playwright/lib/utils/utils');5const { isComma } = require('playwright/lib/utils/utils');6const { isComma } = require('playwright/lib/utils/utils');7const { isComma } = require('playwright/lib/utils/utils');8const { isComma } = require('playwright/lib/utils/utils');9const { isComma } = require('playwright/lib/utils/utils');10const { isComma } = require('playwright/lib/utils/utils');11const { isComma } = require('playwright/lib/utils/utils');12const { isComma } = require('playwright/lib/utils/utils');13const { isComma } = require('playwright/lib/utils/utils');14const { isComma } = require('playwright/lib/utils/utils');15const { isComma } = require('playwright/lib/utils/utils');16const { isComma } = require('playwright/lib/utils/utils');17const { is
Using AI Code Generation
1const { isComma } = require('playwright/lib/server/supplements/recorder/input');2console.log(isComma('Comma'));3console.log(isComma('Comma,'));4console.log(isComma('Comma,,'));5const isComma = input === 'Comma' || input === 'Comma,' || input === 'Comma,,';6const isComma = input === 'Comma' || input === 'Comma,' || input === 'Comma,,';
Using AI Code Generation
1const { isComma } = require('playwright/lib/internal/protocol');2const { isComma } = require('playwright/lib/internal/protocol');3Your name to display (optional):4Your name to display (optional):5const { isComma } = require('playwright/lib/internal/protocol');6Your name to display (optional):
Using AI Code Generation
1const isComma = require('@playwright/test/lib/utils').isComma;2console.log(isComma(','));3console.log(isComma(','));4console.log(isComma('a'));5console.log(isComma('a'));6console.log(isComma(''));7console.log(isComma(''));8console.log(isComma(' '));9console.log(isComma(' '));10console.log(isComma(' , '));11console.log(isComma(' , '));12console.log(isComma(' ,a'));13console.log(isComma(' ,a'));14console.log(isComma('a,'));15console.log(isComma('a,'));16console.log(isComma('a, '));17console.log(isComma('a, '));18console.log(isComma(' ,a '));19console.log(isComma(' ,a '));20console.log(isComma(' , , '));21console.log(isComma(' , , '));22console.log(isComma(' ,a,'));23console.log(isComma(' ,a,'));24console.log(isComma(' ,a, '));25console.log(isComma(' ,a, '));26console.log(isComma(' , ,a'));27console.log(isComma(' , ,a'));28console.log(isComma(' , ,a,'));29console.log(isComma(' , ,a,'));30console.log(isComma(' , ,a, '));31console.log(isComma(' , ,a, '));32console.log(isComma(' , , , '));33console.log(isComma(' , , , '));34console.log(isComma(' , , ,a'));
Using AI Code Generation
1const { isComma } = require('playwright/lib/internal/utils');2const test = isComma('test');3console.log(test);4const { isComma } = require('playwright/lib/internal/utils');5const test = isComma('test');6console.log(test);7const { isComma } = require('playwright/lib/internal/utils');8const test = isComma('test');9console.log(test);10const { isComma } = require('playwright/lib/internal/utils');11const test = isComma('test');12console.log(test);13const { isComma } = require('playwright/lib/internal/utils');14const test = isComma('test');15console.log(test);16const { isComma } = require('playwright/lib/internal/utils');17const test = isComma('test');18console.log(test);19const { isComma } = require('playwright/lib/internal/utils');20const test = isComma('test');21console.log(test);22const { isComma } = require('playwright/lib/internal/utils');23const test = isComma('test');24console.log(test);25const { isComma } = require('playwright/lib/internal/utils');26const test = isComma('test');27console.log(test);28const { isComma } = require('playwright/lib/internal/utils');29const test = isComma('test');30console.log(test);31const { isComma } = require('playwright/lib/internal/utils');32const test = isComma('test');33console.log(test);34const { isComma } = require('playwright/lib/internal/utils');35const test = isComma('test');36console.log(test);
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!!