Best JavaScript code snippet using wpt
utils.js
Source:utils.js
1import { isObject } from './../../helpers/object';2import { isDefined } from './../../helpers/mixed';3import { CellCoords } from './../../3rdparty/walkontable/src';4export const DIRECTIONS = {5 horizontal: 'horizontal',6 vertical: 'vertical'7};8/**9 * Get deltas array.10 *11 * @param {CellCoords} start12 * @param {CellCoords} end13 * @param {Array} data14 * @param {String} direction15 * @returns {Array}16 */17export function getDeltas(start, end, data, direction) {18 const rowsLength = data.length;19 const columnsLength = data ? data[0].length : 0;20 const deltas = [];21 const diffRow = end.row - start.row;22 const diffCol = end.col - start.col;23 if (['down', 'up'].indexOf(direction) !== -1) {24 const arr = [];25 for (let col = 0; col <= diffCol; col++) {26 const startValue = parseInt(data[0][col], 10);27 const endValue = parseInt(data[rowsLength - 1][col], 10);28 const delta = (direction === 'down' ? (endValue - startValue) : (startValue - endValue)) / (rowsLength - 1) || 0;29 arr.push(delta);30 }31 deltas.push(arr);32 }33 if (['right', 'left'].indexOf(direction) !== -1) {34 for (let row = 0; row <= diffRow; row++) {35 const startValue = parseInt(data[row][0], 10);36 const endValue = parseInt(data[row][columnsLength - 1], 10);37 const delta = (direction === 'right' ? (endValue - startValue) : (startValue - endValue)) / (columnsLength - 1) || 0;38 deltas.push([delta]);39 }40 }41 return deltas;42}43/**44 * Get direction between positions and cords of selections difference (drag area)45 *46 * @param {Array} startSelection47 * @param {Array} endSelection48 * @returns {{direction: String, start: CellCoords, end: CellCoords}}49 */50export function getDragDirectionAndRange(startSelection, endSelection) {51 let startOfDragCoords;52 let endOfDragCoords;53 let directionOfDrag;54 if (endSelection[0] === startSelection[0] && endSelection[1] < startSelection[1]) {55 directionOfDrag = 'left';56 startOfDragCoords = new CellCoords(endSelection[0], endSelection[1]);57 endOfDragCoords = new CellCoords(endSelection[2], startSelection[1] - 1);58 } else if (endSelection[2] === startSelection[2] && endSelection[0] === startSelection[0] && endSelection[3] > startSelection[3]) {59 directionOfDrag = 'right';60 startOfDragCoords = new CellCoords(endSelection[0], startSelection[3] + 1);61 endOfDragCoords = new CellCoords(endSelection[2], endSelection[3]);62 } else if (endSelection[0] < startSelection[0] && endSelection[1] === startSelection[1]) {63 directionOfDrag = 'up';64 startOfDragCoords = new CellCoords(endSelection[0], endSelection[1]);65 endOfDragCoords = new CellCoords(startSelection[0] - 1, endSelection[3]);66 } else if (endSelection[2] > startSelection[2] &&67 endSelection[1] === startSelection[1]) {68 directionOfDrag = 'down';69 startOfDragCoords = new CellCoords(startSelection[2] + 1, endSelection[1]);70 endOfDragCoords = new CellCoords(endSelection[2], endSelection[3]);71 }72 return {73 directionOfDrag,74 startOfDragCoords,75 endOfDragCoords76 };77}78/**79 * Get mapped FillHandle setting containing information about80 * allowed FillHandle directions and if allowed is automatic insertion of rows on drag81 *82 * @param {Boolean|Object} fillHandle property of Handsontable settings83 * @returns {{directions: Array, autoInsertRow: Boolean}} object allowing access to information84 * about FillHandle in more useful way85 */86export function getMappedFillHandleSetting(fillHandle) {87 const mappedSettings = {};88 if (fillHandle === true) {89 mappedSettings.directions = Object.keys(DIRECTIONS);90 mappedSettings.autoInsertRow = true;91 } else if (isObject(fillHandle)) {92 if (isDefined(fillHandle.autoInsertRow)) {93 // autoInsertRow for horizontal direction will be always false94 if (fillHandle.direction === DIRECTIONS.horizontal) {95 mappedSettings.autoInsertRow = false;96 } else {97 mappedSettings.autoInsertRow = fillHandle.autoInsertRow;98 }99 } else {100 mappedSettings.autoInsertRow = false;101 }102 if (isDefined(fillHandle.direction)) {103 mappedSettings.directions = [fillHandle.direction];104 } else {105 mappedSettings.directions = Object.keys(DIRECTIONS);106 }107 } else if (typeof fillHandle === 'string') {108 mappedSettings.directions = [fillHandle];109 mappedSettings.autoInsertRow = true;110 } else {111 mappedSettings.directions = [];112 mappedSettings.autoInsertRow = false;113 }114 return mappedSettings;...
Using AI Code Generation
1wpt.startSelection();2wpt.endSelection();3wpt.startSelection();4wpt.endSelection();5wpt.startSelection();6wpt.endSelection();7wpt.startSelection();8wpt.endSelection();9wpt.startSelection();10wpt.endSelection();11wpt.startSelection();12wpt.endSelection();13wpt.startSelection();14wpt.endSelection();15wpt.startSelection();16wpt.endSelection();17wpt.startSelection();18wpt.endSelection();19wpt.startSelection();20wpt.endSelection();21wpt.startSelection();22wpt.endSelection();23wpt.startSelection();24wpt.endSelection();25wpt.startSelection();
Using AI Code Generation
1var toolbar = window.top.document.getElementById("wptoolbar");2toolbar.startSelection();3var selection = window.getSelection();4if (selection.rangeCount > 0) {5 var range = selection.getRangeAt(0);6 var str = range.cloneContents().textContent;7 alert(str);8}
Using AI Code Generation
1var toolbar = window.document.getElementById("wptoolbar");2toolbar.startSelection();3var toolbar = document.getElementById("wptoolbar");4toolbar.startSelection = function() {5}6var toolbar = window.document.getElementById("wptoolbar");7toolbar.startSelection();8var toolbar = document.getElementById("wptoolbar");9toolbar.startSelection = function() {10}11var toolbar = window.document.getElementById("wptoolbar");12toolbar.startSelection();13var toolbar = document.getElementById("wptoolbar");14toolbar.startSelection = function() {15}16var toolbar = window.document.getElementById("wptoolbar");17toolbar.startSelection();18var toolbar = document.getElementById("wptoolbar");19toolbar.startSelection = function() {20}21var toolbar = window.document.getElementById("wptoolbar");22toolbar.startSelection();23var toolbar = document.getElementById("wptoolbar");
Using AI Code Generation
1var win = window.open("about:blank", "win", "width=400,height=400");2var doc = win.document;3var input = doc.createElement("input");4input.type = "text";5input.value = "This is a test";6doc.body.appendChild(input);7input.focus();8win.getSelection().collapse(input, 0);9win.getSelection().extend(input, 4);10var event = doc.createEvent("KeyboardEvent");11event.initKeyEvent("keypress", true, true, null, false, false, false, false, 65, 0);12input.dispatchEvent(event);13 > {14> nsCOMPtr<nsIDOMWindow> domWindow;15> mPresContext->GetContainer(getter_AddRefs(domWindow));16> nsCOMPtr<nsPIDOMWindow> window = do_QueryInterface(domWindow);17> + if (window->IsFrame()) 18 > {19> nsCOMPtr<nsIDOMWindow> domWindow;20> mPresContext->GetContainer(getter_AddRefs(domWindow));21> nsCOMPtr<nsPIDOMWindow> window = do_QueryInterface(domWindow);22> + if (window->IsFrame()) 23This should be "if (window && window->IsFrame())"24Summary: [Regression] Selection.extend() does not select text in textbox → [
Using AI Code Generation
1CKEDITOR.instances.editor1.startSelection();2CKEDITOR.instances.editor1.insertHtml("test");3CKEDITOR.instances.editor1.endSelection();4CKEDITOR.plugins.add( 'wptextpattern', {5 init: function( editor ) {6 editor.on( 'contentDom', function() {7 var iframe = editor.document.$.defaultView.frameElement;8 });9 }10});11I tried using the iframe.contentWindow.getSelection() but it returns null12I tried using the editor.getSelection() method but it returns null13I tried using the editor.getSelection().getRanges() method but it returns null14I tried using the editor.getSelection().getRanges()[0].getCommonAncestor() method but it returns null15I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body') method but it returns null16I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null17I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null18I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null19I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null20I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null21I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null22I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null23I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null24I tried using the editor.getSelection().getRanges()[0].getCommonAncestor().getAscendant('body').getHtml() method but it returns null
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!