Best JavaScript code snippet using wpt
lscplugin.js
Source:lscplugin.js
...8 typeof window.LSC=='undefined'||9 !LSC||10 !LSC.options||11 !LSC.options.enable||12 !LSC.isContentSupported(document.contentType)13 ){14 // Not loaded (error!), unloaded, disabled or unsupported content type15 status='inactive';16 }else if(!LSC.instance){17 // No instance yet18 status=matchMedia('(prefers-color-scheme: dark)').matches?'dark':'';19 }else if(LSC.instance.getFetchCount()){20 // No instance yet or fetching contents21 status='loading';22 }else{23 // Active24 status='active';25 }26 try{27 api.runtime.sendMessage({type:'status',status:status},()=>{28 if(!noTimeout) setTimeout(updateStatus,500);29 });30 }catch(ex){31 console.log('Stopping LSC plugin status updates (need reload!)',ex);32 if(typeof window.LSC!='undefined'&&LSC&&LSC.instance){33 LSC.instance.store();34 LSC.options.enable=false;35 }36 if(manage) location.reload(false);37 }38 },39 // Manage the website40 manageWebsite=async (message)=>{41 // Prepare42 // Now43 const now=new Date(),44 // Today Unix timestamp45 today=Math.floor(Date.now()/1000);46 // Cache version47 var version=message.pageSettings.refreshDaily?Math.floor(new Date(now.getFullYear(),now.getMonth(),now.getDate())/10000):0;48 // Set settings49 if(LSC.instance){50 // Update the running instance51 if(!message.update){52 // No update, because no settings were changed53 console.debug('No LSC settings changed',message);54 return;55 }56 console.debug('Update running LSC instance',message,version);57 // Handle the cache version58 if(!version&&LSC.instance.getCacheVersion()<today) version=today;59 if(LSC.instance.getCacheVersion()<version){60 console.debug('Clear the LSC cache',version,message);61 LSC.instance.clear(version);62 }else{63 console.debug('Set the LSC cache version',version,message);64 LSC.instance.getCache().set('version',version);65 }66 // Set the storage to use67 await LSC.instance.setSessionStorage(message.pageSettings.session);68 }else{69 // Initialize LSC70 console.debug('Initialize LSC for the website',message,version);71 // Pre-settings72 LSC.options.isPlugin=true;73 LSC.options.useSessionStorage=message.pageSettings.session;74 // Run LSC, if managed75 if(message.manage){76 console.log('Run LSC',message,version,message.settings.prefetch);77 await LSC(null,version,message.settings.prefetch);78 if(version&&version<LSC.instance.getCacheVersion()){79 console.log('Set the LSC cache version',version,LSC.instance.getCacheVersion(),message);80 LSC.instance.getCache().set('version',version);81 }82 }83 }84 };85// Handle the website86if(LSC.instance){87 // Don't disturb the instance the website runs already, but display the status of this running instance88 console.log('LSC plugin will not override a running LSC version #'+LSC.VERSION(),LSC);89 updateStatus();90}else if(!LSC.isContentSupported(document.contentType)){91 // Don't manage92 console.log('LSC plugin will not manage an unknown content type',document.contentType);93 updateStatus(true);94}else{95 // This website can be managed96 console.log('LSC plugin can manage this website');97 updateStatus();98 manage=true;99}100// Handle plugin messages101api.runtime.onMessage.addListener((message,sender,respond)=>{102 (async ()=>{103 switch(message.type){104 case 'manage':105 // Manage the website106 console.debug('LSC plugin management message',message,sender);107 // Update the page settings108 localStorage.setItem('lscPluginSettings',JSON.stringify(message.pageSettings));109 // Break, if not manageable110 if(!manage){111 console.debug('LSC will not manage this website');112 break;113 }114 // Start managing115 await manageWebsite(message);116 break;117 case 'status':118 // Determine and respond the current status119 // Status120 var status='inactive';121 if(122 typeof window.LSC!='undefined'&&123 LSC&&124 LSC.instance&&125 LSC.options&&126 LSC.options.enable&&127 LSC.isContentSupported(document.contentType)128 )129 status=LSC.instance.getFetchCount()?'loading':'active';130 respond(status);131 return;132 case 'clear':133 // Clear the cache134 console.debug('Clear the cache',message,sender);135 if(LSC&&LSC.instance) LSC.instance.clear(LSC.instance.getCacheVersion());136 break;137 case 'update':138 // Update the current page139 console.debug('Update the current page that is managed by LSC',message,sender);140 if(LSC&&LSC.instance){141 respond(...
sanitize.ts
Source:sanitize.ts
1import { MarkSpec, NodeSpec } from "prosemirror-model"2function isContentSupported(nodes: { [key: string]: NodeSpec }, contentKey: string): boolean {3 const nodeKeys = Object.keys(nodes)4 // content is with valid node5 if (nodeKeys.indexOf(contentKey) > -1) {6 return true7 }8 // content is with valid group9 // tslint:disable-next-line10 for (const supportedKey in nodes) {11 const nodeSpec = nodes[supportedKey]12 if (nodeSpec && nodeSpec.group === contentKey) {13 return true14 }15 }16 return false17}18function sanitizedContent(content: string | undefined, invalidContent: string): string {19 if (!invalidContent.length) {20 return content || ""21 }22 if (!content || !content.match(/\w/)) {23 return ""24 }25 const newContent = content26 .replace(27 new RegExp(28 `(${invalidContent}((\\s)*\\|)+)|((\\|(\\s)*)+${invalidContent})|(${invalidContent}$)`,29 "g",30 ),31 "",32 )33 .replace(" ", " ")34 .trim()35 return newContent36}37export function sanitizeNodes(38 nodes: { [key: string]: NodeSpec },39 supportedMarks: { [key: string]: MarkSpec },40): { [key: string]: NodeSpec } {41 const nodeNames = Object.keys(nodes)42 nodeNames.forEach(nodeKey => {43 const nodeSpec = { ...nodes[nodeKey] }44 if (nodeSpec.marks && nodeSpec.marks !== "_") {45 nodeSpec.marks = nodeSpec.marks46 .split(" ")47 .filter(mark => !!supportedMarks[mark])48 .join(" ")49 }50 if (nodeSpec.content) {51 const content = nodeSpec.content.replace(/\W/g, " ")52 const contentKeys = content.split(" ")53 const unsupportedContentKeys = contentKeys.filter(54 contentKey => !isContentSupported(nodes, contentKey),55 )56 nodeSpec.content = unsupportedContentKeys.reduce(57 (newContent, nodeName) => sanitizedContent(newContent, nodeName),58 nodeSpec.content,59 )60 }61 nodes[nodeKey] = nodeSpec62 })63 return nodes...
Using AI Code Generation
1var wptoolkit = require('wptoolkit');2var wptoolkit = require('wptoolkit');3var wptoolkit = require('wptoolkit');4var wptoolkit = require('wptoolkit');5var wptoolkit = require('wptoolkit');6var wptoolkit = require('wptoolkit');7console.log(wptoolkit.is
Using AI Code Generation
1var wptools = require('wptools');2 if (err) {3 console.log(err);4 } else {5 console.log(data);6 }7});8### isContentSupported(url, callback)9### isContentSupportedSync(url)
Using AI Code Generation
1var wpt = new WebPlatformTests();2var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");3console.log(result);4var wpt = new WebPlatformTests();5var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");6console.log(result);7var wpt = new WebPlatformTests();8var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");9console.log(result);10var wpt = new WebPlatformTests();11var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");12console.log(result);13var wpt = new WebPlatformTests();14var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");15console.log(result);16var wpt = new WebPlatformTests();17var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");18console.log(result);19var wpt = new WebPlatformTests();20var result = wpt.isContentSupported("video/mp4", "video/mp4; codecs=avc1.42E01E, mp4a.40.2");21console.log(result);
Using AI Code Generation
1var toolkit = require('wptoolkit');2 if(err){3 console.log(err);4 }else{5 console.log(data);6 }7});8var toolkit = require('wptoolkit');9 if(err){10 console.log(err);11 }else{12 console.log(data);13 }14});
Using AI Code Generation
1var wptoolkit = require('wptoolkit');2console.log(supported);3console.log(supported);4### `getSupportedContentTypes()`5var wptoolkit = require('wptoolkit');6var supportedContentTypes = wptoolkit.getSupportedContentTypes();7console.log(supportedContentTypes);8var supportedContentTypes = wptoolkit.getSupportedContentTypes();9console.log(supportedContentTypes);10### `getSupportedContentExtensions()`11var wptoolkit = require('wptoolkit');12var supportedContentExtensions = wptoolkit.getSupportedContentExtensions();13console.log(supportedContentExtensions);14var supportedContentExtensions = wptoolkit.getSupportedContentExtensions();15console.log(supportedContentExtensions);16### `getSupportedContentMimeTypes()`
Using AI Code Generation
1var wptoolkit = require('wptoolkit');2if (content) {3}4else {5}6var wptoolkit = require('wptoolkit');7if (content) {8}9else {10}11var wptoolkit = require('wptoolkit');12if (content) {13}14else {15}16var wptoolkit = require('wptoolkit');17if (content) {18}19else {20}21var wptoolkit = require('wptoolkit');22if (content) {23}24else {25}26var wptoolkit = require('wptoolkit');27if (content) {28}29else {30}31var wptoolkit = require('wptoolkit');32if (content) {33}34else {35}
Using AI Code Generation
1var wptc = require('wptc');2var isSupported = wptc.isContentSupported('image/jpeg');3console.log(isSupported);4var wptc = require('wptc');5var isSupported = wptc.isContentSupported('image/jpeg');6console.log(isSupported);7var wptc = require('wptc');8var isSupported = wptc.isContentSupported('image/jpeg');9console.log(isSupported);10var wptc = require('wptc');11var isSupported = wptc.isContentSupported('image/jpeg');12console.log(isSupported);13var wptc = require('wptc');14var isSupported = wptc.isContentSupported('image/jpeg');15console.log(isSupported);16var wptc = require('wptc');17var isSupported = wptc.isContentSupported('image/jpeg');18console.log(isSupported);19var wptc = require('wptc');20var isSupported = wptc.isContentSupported('image/jpeg');21console.log(isSupported);22var wptc = require('wptc');23var isSupported = wptc.isContentSupported('image/jpeg');24console.log(isSupported);25var wptc = require('wptc');26var isSupported = wptc.isContentSupported('image/jpeg');27console.log(isSupported);
Using AI Code Generation
1var wptools = require('wp-tools');2console.log(supported);3var wptools = require('wp-tools');4console.log(supported);5var wptools = require('wp-tools');6console.log(supported);7var wptools = require('wp-tools');8console.log(supported);9var wptools = require('wp-tools');10console.log(supported);11var wptools = require('wp-tools');12console.log(supported);13var wptools = require('wp-tools');14console.log(supported);15var wptools = require('wp-tools');16console.log(supported);
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!!