Best JavaScript code snippet using storybook-root
subelements.js
Source:subelements.js
1var proportion = mainConfig.size.proportion;2function SubElement(name) {3 // Element name4 this.name = name;5 // Namespace and svg container6 this.svgContainer = document.getElementById('svgPrincipal');7 this.namespace = "http://www.w3.org/2000/svg";8 this.elG = null;9 // the shapes that compose the subElement10 this.shapes = [];11 this.possibleStates = [];12 this.currentStates = [];13 this.properties = [];14 this.proportion = mainConfig.size.proportion;15 // Default build method to create the shapes and add to the svg container16 this.createElement = function () {17 this.elG = document.createElementNS(this.namespace, 'g');18 this.elG.setAttribute('id', this.name);19 this.elG.setAttribute('visibility', 'hidden');20 for (var i = 0; i < this.shapes.length; i++) { // Iterates between all the shapes21 this.shapes[i].createShape(); // Creates shape22 this.elG.appendChild(this.shapes[i].svgElement);23 }24 this.svgContainer.appendChild(this.elG);25 }26 this.setVisible = function () {27 this.elG.setAttribute('visibility', 'visible');28 }29 this.setInvisible = function () {30 this.elG.setAttribute('visibility', 'hidden');31 }32 this.addState = function (newState) {33 if (!this.elG) {34 console.log('SubElement: ' + this.name + ' - Method:addState - Msg: The SVG Element was not found.');35 return false;36 }37 if (this.possibleStates.indexOf(newState) === -1) {38 console.log('SubElement: ' + this.name + ' - Method:addState - Msg: The state ' + newState + ' was not found for this shape.');39 return false;40 }41 var indexState = this.possibleStates.indexOf(newState);42 43 if (this.currentStates[indexState] === 1) {44 console.log('SubElement: ' + this.name + ' - Method:addState - Msg: The state ' + newState + ' already exists in this shape.');45 return false;46 }47 this.currentStates[indexState] = 1;48 this.updateStateProperties();49 this.setVisible();50 }51 this.deleteState = function (deleteState) {52 if (this.possibleStates.indexOf(deleteState) === -1) {53 console.log('SubElement: ' + this.name + ' - Method:deleteState - Msg: The state ' + deleteState + ' was not found for this subelement.');54 return false;55 }56 var indexState = this.possibleStates.indexOf(deleteState);57 this.currentStates[indexState] = 0;58 if (this.currentStates.indexOf(1) === -1) { // If there is no state.It's necessary to hidden this subelement59 this.setInvisible();60 }61 this.updateStateProperties();62 }63 this.updateStateProperties = function () {64 for (var i = 0; i < this.currentStates.length; i++) {65 if (this.currentStates[i] == 1) {66 var shapes = this.properties[this.possibleStates[i]];67 for (var shape in shapes) {68 var properties = this.properties[this.possibleStates[i]][shape];69 this.shapes[shape].changeProperties(properties);70 }71 }72 }73 }74}75// Creates indication to Universal CrossOver76var Indication = function (x, y, vPos, hPos) {77 SubElement.call(this, "Indication");78 this.possibleStates = ['Frog1Reverse', 'Frog1Normal', 'Frog1Fault',79 'LeftSwitchFrog1Reverse', 'RightSwitchFrog1Reverse','LeftSwitchFrog1Normal', 'RightSwitchFrog1Normal',80 'LeftSwitchFrog2Reverse', 'RightSwitchFrog2Reverse','LeftSwitchFrog2Normal', 'RightSwitchFrog2Normal'];81 this.currentStates = [0, 0, 0, 0, 0];82 this.localwidth = proportion * 8.33;83 84 this.shapes = [new Rectangle(), new SmallHalfDeviation(), new Circle(), new Text()];85 if (vPos == "top" && hPos == "left") {86 this.shapes[0].changeProperties({ x: x, y: y + 5.8, height: proportion / 2.5, width: 4.16 * proportion, visibility: 'visible' }); // Rectangle87 this.shapes[1].changeProperties({ x: x + 4.16 * proportion, y: y, form: hPos, visibility: 'visible' }); // SmallHalfDeviation88 }89 else if (vPos == "top" && hPos == "right") {90 this.shapes[0].changeProperties({ x: x, y: y + 5.8, height: proportion / 2.5, width: 4.16 * proportion, visibility: 'visible' }); // Rectangle91 this.shapes[1].changeProperties({ x: x, y: y, form: hPos, visibility: 'visible' }); // SmallHalfDeviation92 }93 else if (vPos == "bottom" && hPos == "left") {94 this.shapes[0].changeProperties({ x: x, y: y, height: proportion / 2.5, width: 4.18 * proportion, visibility: 'visible' }); // Rectangle95 this.shapes[1].changeProperties({ x: x + 4.16 * proportion, y: y, form: hPos, visibility: 'visible' }); // SmallHalfDeviation96 }97 else {98 this.shapes[0].changeProperties({ x: x, y: y, height: proportion / 2.5, width: 4.18 * proportion, visibility: 'visible' }); // Rectangle99 this.shapes[1].changeProperties({ x: x, y: y, form: hPos, visibility: 'visible' }); // SmallHalfDeviation100 }101 this.shapes[2].changeProperties({ cx: x - 20, cy: y - 20, r: this.localwidth / 8, fill: mainConfig.colors.red, stroke: mainConfig.colors.red, visibility: ' ' }); // circle102 this.shapes[3].changeProperties({ x: x + 12, y: y + 8, 'font-size': 18, visibility: 'visible', text: '?', fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow }); // Text103 this.properties = {104 None: { 1: { visibility: 'visible' }, 2: { visibility: 'visible' }, 3: { visibility: 'visible', text: '?', fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow } },105 Frog1Reverse: { 1: {visibility:'visible'}, 2: {visibility:''}, 3: {visibility:''} },106 Frog1Normal: { 1: { visibility: 'hidden' }, 2: { visibility: 'hidden' }, 3: { visibility: 'hidden' } },107 Frog1Fault: { 1: { visibility: 'visible' }, 2: { fill: mainConfig.colors.red, stroke: mainConfig.colors.red, visibility: 'visible' }, 3: { visibility: 'visible', text: 'x', fill: mainConfig.colors.white, stroke: mainConfig.colors.white } },108 LeftSwitchFrog1Reverse: { 0: { visibility: 'hidden' }, 1: { visibility: 'visible', x: x + 4.16 * proportion }, 2: { visibility: 'hidden' }, 3: { text: '' } },109 RightSwitchFrog1Reverse: { 0: { visibility: 'hidden' }, 1: { visibility: 'visible', x: x }, 2: { visibility: 'hidden' }, 3: { text: '' } },110 LeftSwitchFrog1Normal: { 0: { visibility: 'visible' }, 1: { visibility: 'hidden', x: x + 4.16 * proportion }, 2: { visibility: 'hidden' }, 3: { text: '' } },111 RightSwitchFrog1Normal: { 0: { visibility: 'visible' }, 1: { visibility: 'hidden', x: x }, 2: { visibility: 'hidden' }, 3: { text: '' } },112 LeftSwitchFrog2Reverse: { 0: { visibility: 'hidden' }, 1: { visibility: 'visible', x: x + 4.16 * proportion }, 2: { visibility: 'hidden' }, 3: { text: '' } },113 RightSwitchFrog2Reverse: { 0: { visibility: 'hidden' }, 1: { visibility: 'visible', x: x }, 2: { visibility: 'hidden' }, 3: { text: '' } },114 LeftSwitchFrog2Normal: { 0: { visibility: 'visible' }, 1: { visibility: 'hidden', x: x + 4.16 * proportion }, 2: { visibility: 'hidden' }, 3: { text: '' } },115 RightSwitchFrog2Normal: { 0: { visibility: 'visible' }, 1: { visibility: 'hidden', x: x }, 2: { visibility: 'hidden' }, 3: { text: '' } },116 }117 this.updateStateProperties = function () {118 if (this.currentStates.indexOf(1) == -1) { // There is no state added119 var shapes = this.properties['None'];120 for (var shape in shapes) {121 var properties = this.properties['None'][shape];122 this.shapes[shape].changeProperties(properties) ;123 }124 return;125 }126 for (var i = 0; i < this.currentStates.length; i++) {127 if (this.currentStates[i] == 1) {128 var curShapes = this.properties[this.possibleStates[i]];129 for (var sh in curShapes) {130 var prop = this.properties[this.possibleStates[i]][sh];131 if (sh == 1)132 prop.x = this.shapes[sh].config.x;133 this.shapes[sh].changeProperties(prop);134 }135 }136 }137 }138}139// The ArrowDirection is used to show a route direction140var ArrowDirection = function (x, y, width, direction) {141 SubElement.call(this, "Arrow");142 this.possibleStates = ['FwdDir', 'BckDir'];143 this.currentStates = [0, 0];144 this.shapes = [new Triangle()];145 this.properties = {146 FwdDir: { 0: { x: x + width / 2, y: y + 5, form: "right", width: 0.7, height: 0.9, fill: mainConfig.colors.black, stroke: mainConfig.colors.white } },147 BckDir: { 0: { x: x + width / 2, y: y + 5, form: "right", width: -0.7, height: 0.9, fill: mainConfig.colors.black, stroke: mainConfig.colors.white } },148 }149}150// Creates a block in CDV151var Envelope = function (x, y, width, height) {152 SubElement.call(this, "Envelope");153 this.possibleStates = ['Block', 'Block1', 'Block2'];154 this.currentStates = [0, 0, 0];155 this.shapes = [new Rectangle()];156 this.shapes[0].changeProperties({157 x: x - (mainConfig.size.separator / 2), y: y - proportion, width: width + mainConfig.size.separator158 , height: height159 });160 this.properties = {161 Block: { 0: { fill: mainConfig.colors.transparent, stroke: mainConfig.colors.purple } },162 Block1: { 0: { fill: mainConfig.colors.transparent, stroke: mainConfig.colors.purple } },163 Block2: { 0: { fill: mainConfig.colors.transparent, stroke: mainConfig.colors.purple } }164 }165}166var Fault = function (x, y, width) {167 SubElement.call(this, "Fault");168 this.possibleStates = ['Fault', 'Confault'];169 this.currentStates = [0, 0];170 this.shapes = [new Circle(), new Text()];171 this.shapes[0].changeProperties({ cx: x, cy: y + 40, r: width * 1.6, fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow });172 this.shapes[1].changeProperties({ x: x, y: y + 40, text: 'x', fill: mainConfig.colors.black, stroke: mainConfig.colors.black, 'font-size': 18 });173 this.properties = {174 Fault: { 0: { fill: mainConfig.colors.red, stroke: mainConfig.colors.red }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white } },175 Confault: { 0: { fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow }, 1: { fill: mainConfig.colors.black, stroke: mainConfig.colors.black } },176 }177}178var ManualMode = function (x, y, width) {179 SubElement.call(this, "ManualMode");180 this.possibleStates = ["Switch1Locked", "LocalCtrl", "LocalCtrlReq", "ManualMode", "ManualMode3rd", 'ManualModeFrog', 'ManualModeReq', 'ManualModeReq3rd', 'ManualModeReqFrog',181 'RightSwitch2Locked', 'RightSwitch1Locked', 'LeftSwitch2Locked', 'LeftSwitch1Locked'182 ];183 this.currentStates = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];184 this.shapes = [new Rectangle(), new Circle(), new Text()];185 this.shapes[0].changeProperties({ x: x, y: y, width: width / 3, height: 4.5 });186 this.shapes[1].changeProperties({ x: x + 18, y: y + 2, cx: x + width / 2.3, cy: y * 1.015, r: width / 22, width: 1.8 });187 this.shapes[2].changeProperties({ x: x, y: y + 13, text: 'AP', 'font-size': 8, fill: mainConfig.colors.white });188 // Properties 189 this.properties = {190 Switch1Locked: { 0: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white }, 2: { text: 'T', fill: mainConfig.colors.white } },191 LocalCrtl: { 0: { fill: mainConfig.colors.red, stroke: mainConfig.colors.red }, 1: { fill: mainConfig.colors.red, stroke: mainConfig.colors.red }, 2: { text: '' } },192 LocalCrtlReq: { 0: { fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow }, 1: { fill: mainConfig.colors.yellow, stroke: mainConfig.colors.yellow }, 2: { text: '' } },193 ManualMode: { 0: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 1: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 2: { text: 'PA', fill: mainConfig.colors.darkBlue } },194 ManualMode3rd: { 0: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 1: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 2: { text: '3a', fill: mainConfig.colors.darkBlue } },195 ManualModeFrog: { 0: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 1: { fill: mainConfig.colors.darkBlue, stroke: mainConfig.colors.darkBlue }, 2: { text: 'JPM', fill: mainConfig.colors.darkBlue } },196 ManualModeReq: { 0: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 1: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 2: { text: 'PA', fill: mainConfig.colors.orange } },197 ManualModeReq3rd: { 0: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 1: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 2: { text: '3a', fill: mainConfig.colors.orange } },198 ManualModeReqFrog: { 0: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 1: { fill: mainConfig.colors.orange, stroke: mainConfig.colors.orange }, 2: { text: 'JPM', fill: mainConfig.colors.orange } },199 RightSwitch2Locked: { 0: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, width: width/3.5 }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white }, 2: { text: 'T', fill: mainConfig.colors.white, x: x + 25, y: y + 2 } },200 RightSwitch1Locked: { 0: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, y: y + 6, width: width/3.5 }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, y: y + 8 }, 2: { text: 'T', fill: mainConfig.colors.white, x: x + 25, y: y + 9 } },201 LeftSwitch2Locked: { 0: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, width: width / 3.5 }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white }, 2: { text: 'T', fill: mainConfig.colors.white, y: y + 2, x: x - 4 } },202 LeftSwitch1Locked: { 0: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, y: y + 6, width: width / 3.5 }, 1: { fill: mainConfig.colors.white, stroke: mainConfig.colors.white, y: y + 8 }, 2: { text: 'T', fill: mainConfig.colors.white, y: y + 9, x: x - 4} }203 }204 this.updateStateProperties = function () {205 var text = '';206 for (var i = 0; i < this.currentStates.length; i++) {207 if (this.currentStates[i] === 1) {208 var shapes = this.properties[this.possibleStates[i]];209 for (var shape in shapes) {210 var properties = this.properties[this.possibleStates[i]][shape];211 this.shapes[shape].changeProperties(properties);212 if (shape === 2) {213 text += properties.text + " ";214 }215 }216 if (shape === 2) {217 var size = text.length * (2.5);218 this.shapes[shape].changeProperties({ x: x - size, text: text });219 }220 }221 }222 }...
index.js
Source:index.js
1if (process.version.slice(1).split(".")[0] < 16) {2 throw new Error("This codes require Node v16.9.0 or higher to run!");3}4const Discord = require("discord.js");5const mainconfig = require("./mainconfig");6const client = new Discord.Client({7 allowedMentions: {8 parse: ["roles", "users"],9 repliedUser: false,10 },11 failIfNotExists: false,12 partials: ['MESSAGE', 'CHANNEL', 'REACTION'],13 intents: [14 Discord.Intents.FLAGS.GUILDS,15 Discord.Intents.FLAGS.GUILD_MEMBERS,16 Discord.Intents.FLAGS.GUILD_VOICE_STATES,17 Discord.Intents.FLAGS.GUILD_PRESENCES,18 Discord.Intents.FLAGS.GUILD_MESSAGES,19 Discord.Intents.FLAGS.DIRECT_MESSAGES,20 ],21});22client.on("ready", async () => {23 const ownerId = await client.users.fetch(mainconfig.BotOwnerID).catch(() => null);24 if (!ownerId) {25 throw new Error("The BotOwnerID value you provided in mainconfig.js is invalid!");26 }27 mainconfig.OwnerInformation.OwnerID.forEach(async (ownerIddd) => {28 const owner = await client.users.fetch(ownerIddd).catch(() => null);29 if (!owner) {30 throw new Error("One of the OwnerInformation.OwnerID value you provided in mainconfig.js is invalid!");31 }32 });33 const guild = await client.guilds.fetch(mainconfig.ServerID).catch(() => null);34 if (!guild) {35 throw new Error("The ServerID value you provided in mainconfig.js is invalid!");36 }37 const memberRoleId = await guild.roles.fetch(mainconfig.MemberRoleID).catch(() => null);38 if (!memberRoleId) {39 throw new Error("The Member Role ID value you provided in mainconfig.js is invalid!");40 }41 mainconfig.AllMemberRoles.forEach(async (memberId) => {42 const member = await guild.roles.fetch(memberId).catch(() => null);43 if (!member) {44 throw new Error("One of the AllMemberRoles value you provided in mainconfig.js is invalid!");45 }46 });47 const rulesChannel = await guild.channels.fetch(mainconfig.RulesChannel).catch(() => null);48 if (!rulesChannel) {49 throw new Error("The RulesChannel value you provided in mainconfig.js is invalid!");50 }51 const selfRoleChannelId = await guild.channels.fetch(mainconfig.SelfRoleChannelID).catch(() => null);52 if (!selfRoleChannelId) {53 throw new Error("The SelfRoleChannelID value you provided in mainconfig.js is invalid!");54 }55 const botManagerLogs = await guild.channels.fetch(mainconfig.BotManagerLogs).catch(() => null);56 if (!botManagerLogs) {57 throw new Error("The BotManagerLogs value you provided in mainconfig.js is invalid!");58 }59 const boostLogChannel = await guild.channels.fetch(mainconfig.BoostLogChannel).catch(() => null);60 if (!boostLogChannel) {61 throw new Error("The BoostLogChannel value you provided in mainconfig.js is invalid!");62 }63 mainconfig.VaildCats.forEach(async (cat) => {64 const category = await guild.channels.fetch(cat).catch(() => null);65 if (!category) {66 throw new Error("One of the ValidCats value you provided in mainconfig.js is invalid!");67 }68 });69 const generalChat = await guild.channels.fetch(mainconfig.GeneralChat).catch(() => null);70 if (!generalChat) {71 throw new Error("The GeneralChat value you provided in mainconfig.js is invalid!");72 }73 const ownerTicket = await guild.channels.fetch(mainconfig.OwnerTicket).catch(() => null);74 if (!ownerTicket) {75 throw new Error("The OwnerTicket value you provided in mainconfig.js is invalid!");76 }77 const feedbackChannelId = await guild.channels.fetch(mainconfig.FeedBackChannelID).catch(() => null);78 if (!feedbackChannelId) {79 throw new Error("The FeedBackChannelID value you provided in mainconfig.js is invalid!");80 }81 const finishedOrderId = await guild.channels.fetch(mainconfig.FinishedOrderID).catch(() => null);82 if (!finishedOrderId) {83 throw new Error("The FinishedOrderID value you provided in mainconfig.js is invalid!");84 }85 const autoDeleteChannelID = await guild.channels.fetch(mainconfig.AutoDeleteChannelID).catch(() => null);86 if (!autoDeleteChannelID) {87 throw new Error("The AutoDeleteChannelID value you provided in mainconfig.js is invalid!");88 }89 const donationChannelId = await guild.channels.fetch(mainconfig.DonationChannelID).catch(() => null);90 if (!donationChannelId) {91 throw new Error("The DonationChannelID value you provided in mainconfig.js is invalid!");92 }93 Object.values(mainconfig.LoggingChannelID).forEach(async (channelId) => {94 const channel = await guild.channels.fetch(channelId).catch(() => null);95 if (!channel) {96 throw new Error("One of the LoggingChannelID values you provided in mainconfig.js are invalid!");97 }98 });99 Object.values(mainconfig.SeverRoles).forEach(async (roleId) => {100 const role = await guild.roles.fetch(roleId).catch(() => null);101 if (!role) {102 throw new Error("One of the SeverRoles values you provided in mainconfig.js are invalid!");103 }104 });105 const notSakshTicket = await guild.channels.fetch(mainconfig.OwnerInformation.OwnerTicketCat).catch(() => null);106 if (!notSakshTicket) {107 throw new Error("The OwnerInformation.OwnerTicketCat value you provided in mainconfig.js is invalid!");108 }109 Object.values(mainconfig.OrdersChannelID).forEach(async (id) => {110 if (id === mainconfig.OrdersChannelID.TicketMessageID) {111 const channel = await guild.channels.fetch(mainconfig.OrdersChannelID.TicketChannelID).catch(() => null);112 if (!channel) return;113 const msg = channel.messages.fetch(id).catch(() => null);114 if (!msg) {115 console.warn("Not a crash! But the OrdersChannelID.TicketMessageID value you provided in mainconfig.js is invalid!");116 }117 return;118 }119 const channel = await guild.channels.fetch(id).catch(() => null);120 if (!channel) {121 throw new Error("One of the OrdersChannelID value you provided in mainconfig.js is invalid!");122 }123 });124 Object.values(mainconfig.ApplyTickets).forEach(async (id) => {125 const channel = await guild.channels.fetch(id).catch(() => null);126 if (!channel) {127 throw new Error("One of the ApplyTickets value you provided in mainconfig.js is invalid!");128 }129 });130 Object.values(mainconfig.TicketCategorys).forEach(async (id) => {131 const channel = await guild.channels.fetch(id).catch(() => null);132 if (!channel) {133 throw new Error("One of the TicketCategorys value you provided in mainconfig.js is invalid!");134 }135 });136});...
config.js
Source:config.js
1var path = require('path');2var rootPath = path.resolve(process.cwd());34var appFileManagerConfig = {};5try{6 appFileManagerConfig = require(`${rootPath}/config/file_manager.json`);7}catch(err){}89var mainConfig = Object.assign({10 user_file_path : '/images/products/',11 user_file_abs_path : ''12}, appFileManagerConfig);1314var defaultConfig = {15 Enabled: true,16 UserFilesPath: mainConfig.user_file_path,17 UserFilesAbsolutePath: mainConfig.user_file_abs_path,18 ForceSingleExtension: true,19 SecureImageUploads: true,20 ConfigAllowedCommands: ['QuickUpload', 'FileUpload', 'GetFolders', 'GetFoldersAndFiles', 'CreateFolder'],21 ConfigAllowedTypes: ['File', 'Image', 'Flash', 'Media'],22 HtmlExtensions: ["html", "htm", "xml", "xsd", "txt", "js"],23 ChmodOnUpload: 0777,24 ChmodOnFolderCreate: 0777,25 AllowedExtensions: {26 File: ['7z', 'aiff', 'asf', 'avi', 'bmp', 'csv', 'doc', 'fla', 'flv', 'gif', 'gz', 'gzip', 'jpeg', 'jpg', 'mid', 'mov', 'mp3', 'mp4', 'mpc', 'mpeg', 'mpg', 'ods', 'odt', 'pdf', 'png', 'ppt', 'pxd', 'qt', 'ram', 'rar', 'rm', 'rmi', 'rmvb', 'rtf', 'sdc', 'sitd', 'swf', 'sxc', 'sxw', 'tar', 'tgz', 'tif', 'tiff', 'txt', 'vsd', 'wav', 'wma', 'wmv', 'xls', 'xml', 'zip'],27 Image: ['bmp','gif','jpeg','jpg','png'],28 Flash: ['swf','flv'],29 Media: ['aiff', 'asf', 'avi', 'bmp', 'fla', 'flv', 'gif', 'jpeg', 'jpg', 'mid', 'mov', 'mp3', 'mp4', 'mpc', 'mpeg', 'mpg', 'png', 'qt', 'ram', 'rm', 'rmi', 'rmvb', 'swf', 'tif', 'tiff', 'wav', 'wma', 'wmv']30 },31 DeniedExtensions: {32 File: [],33 Image: [],34 Flash: [],35 Media: []36 },37 FileTypesPath: {38 File: mainConfig.user_file_path + 'file/',39 Image: mainConfig.user_file_path + 'image/',40 Flash: mainConfig.user_file_path + 'flash/',41 Media: mainConfig.user_file_path + 'media/',42 },43 FileTypesAbsolutePath:{44 File: mainConfig.user_file_abs_path == '' ? '' : mainConfig.user_file_abs_path +'file/',45 Image: mainConfig.user_file_abs_path == '' ? '' : mainConfig.user_file_abs_path + 'image/',46 Flash: mainConfig.user_file_abs_path == '' ? '' : mainConfig.user_file_abs_path + 'flash/',47 Media: mainConfig.user_file_abs_path == '' ? '' : mainConfig.user_file_abs_path + 'media/',48 },49 QuickUploadPath: {50 File: mainConfig.user_file_path + 'file/',51 Image: mainConfig.user_file_path + 'image/',52 Flash: mainConfig.user_file_path + 'flash/',53 Media: mainConfig.user_file_path + 'media/',54 },55 QuickUploadAbsolutePath: {56 File: mainConfig.user_file_abs_path,57 Image: mainConfig.user_file_abs_path,58 Flash: mainConfig.user_file_abs_path,59 Media: mainConfig.user_file_abs_path,60 }61}62
...
Using AI Code Generation
1module.exports = {2 webpackFinal: async (config, { configType }) => {3 config = mainConfig(config, configType);4 return config;5 },6};7const path = require('path');8module.exports = (baseConfig, env, defaultConfig) => {9 defaultConfig.module.rules.push({10 test: /\.(ts|tsx)$/,11 include: path.resolve(__dirname, '../src'),12 loader: require.resolve('babel-loader'),13 options: {14 presets: [['react-app', { flow: false, typescript: true }]],15 },16 });17 defaultConfig.resolve.extensions.push('.ts', '.tsx');18 return defaultConfig;19};20const path = require('path');21module.exports = {22 webpackFinal: async (config, { configType }) => {23 config.module.rules.push({24 test: /\.(ts|tsx)$/,25 include: path.resolve(__dirname, '../src'),26 loader: require.resolve('babel-loader'),27 options: {28 presets: [['react-app', { flow: false, typescript: true }]],29 },30 });31 config.resolve.extensions.push('.ts', '.tsx');32 return config;33 },34};
Using AI Code Generation
1const { mainConfig } = require('storybook-root-config');2module.exports = mainConfig(__dirname);3const { mainConfig } = require('storybook-root-config');4module.exports = mainConfig(__dirname);5const { previewConfig } = require('storybook-root-config');6module.exports = previewConfig(__dirname);7const { managerConfig } = require('storybook-root-config');8module.exports = managerConfig(__dirname);9const { webpackConfig } = require('storybook-root-config');10module.exports = webpackConfig(__dirname);11const { tsConfig } = require('storybook-root-config');12module.exports = tsConfig(__dirname);13const { babelConfig } = require('storybook-root-config');14module.exports = babelConfig(__dirname);15const { webpackConfig } = require('storybook-root-config');16module.exports = webpackConfig(__dirname);17const { webpackConfig } = require('storybook-root-config');18module.exports = webpackConfig(__dirname);19const { webpackConfig } = require('storybook-root-config');20module.exports = webpackConfig(__dirname);21const { webpackConfig } = require('storybook-root-config');22module.exports = webpackConfig(__dirname);
Using AI Code Generation
1const { mainConfig, stories } = require('@storybook-root-config');2module.exports = mainConfig({3});4const { mainConfig, stories } = require('@storybook-root-config');5module.exports = mainConfig({6});7const { previewConfig } = require('@storybook-root-config');8module.exports = previewConfig({9 parameters: {10 docs: {11 },12 },13});14const { managerConfig } = require('@storybook-root-config');15module.exports = managerConfig({16 features: {17 },18});
Using AI Code Generation
1const mainConfig = require('storybook-root-config');2module.exports = mainConfig(__dirname);3module.exports = require('test.js');4const previewConfig = require('storybook-root-config');5module.exports = previewConfig(__dirname);6const managerConfig = require('storybook-root-config');7module.exports = managerConfig(__dirname);8const webpackConfig = require('storybook-root-config');9module.exports = webpackConfig(__dirname);10const babelConfig = require('storybook-root-config');11module.exports = babelConfig(__dirname);12const addonsConfig = require('storybook-root-config');13module.exports = addonsConfig(__dirname);14const tsConfig = require('storybook-root-config');15module.exports = tsConfig(__dirname);16const previewHead = require('storybook-root-config');17module.exports = previewHead(__dirname);18const previewBody = require('storybook-root-config');19module.exports = previewBody(__dirname);20const managerHead = require('storybook-root-config');21module.exports = managerHead(__dirname);22const managerBody = require('storybook-root-config');23module.exports = managerBody(__dirname);24const previewHead = require('storybook-root-config');25module.exports = previewHead(__dirname);
Using AI Code Generation
1const { mainConfig } = require('@storybook/core/server');2module.exports = async function({ configDir }) {3 const config = mainConfig(configDir);4 return config;5};6const { mainConfig } = require('@storybook/core/server');7module.exports = async function({ configDir }) {8 const config = mainConfig(configDir);9 return config;10};11const { previewConfig } = require('@storybook/core/server');12module.exports = async function({ configDir }) {13 const config = previewConfig(configDir);14 return config;15};16const { managerConfig } = require('@storybook/core/server');17module.exports = async function({ configDir }) {18 const config = managerConfig(configDir);19 return config;20};21const { managerHead } = require('@storybook/core/server');22module.exports = async function({ configDir }) {23 const config = managerHead(configDir);24 return config;25};26const { previewHead } = require('@storybook/core/server');27module.exports = async function({ configDir }) {28 const config = previewHead(configDir);29 return config;30};31const { webpackConfig } = require('@storybook/core/server');32module.exports = async function({ configDir }) {33 const config = webpackConfig(configDir);34 return config;35};36const { babelConfig } = require('@storybook/core/server');37module.exports = async function({ configDir }) {38 const config = babelConfig(configDir);39 return config;40};41const { babelConfig } = require('@storybook/core/server');42module.exports = async function({ configDir }) {43 const config = babelConfig(configDir
Using AI Code Generation
1const { mainConfig } = require('@storybook/root-config');2const config = mainConfig({3});4module.exports = config;5const { mainConfig } = require('@storybook/root-config');6const path = require('path');7const config = mainConfig({8 configDir: path.resolve(__dirname, '../'),9});10module.exports = config;11const { mainConfig } = require('@storybook/root-config');12const config = mainConfig({13});14module.exports = config;15const { mainConfig } = require('@storybook/root-config');16const path = require('path');17const config = mainConfig({18 configDir: path.resolve(__dirname, '../'),19});20module.exports = config;21const { mainConfig } = require('@storybook/root-config');22const config = mainConfig({23});24module.exports = config;25const { mainConfig } = require('@storybook/root-config');26const path = require('path');27const config = mainConfig({28 configDir: path.resolve(__dirname, '../'),29});30module.exports = config;31const { mainConfig } = require('@storybook/root-config');32const config = mainConfig({33});34module.exports = config;35const { mainConfig } = require('@storybook/root-config');36const path = require('path');37const config = mainConfig({38 configDir: path.resolve(__dirname, '../'),39});40module.exports = config;
Using AI Code Generation
1require('storybook-root').mainConfig('./config.js');2require('storybook-root').main('./config.js');3require('storybook-root').preview('./config.js');4module.exports = {5};6import { configure } from '@storybook/react';7function loadStories() {8 require('../stories/index.js');9}10configure(loadStories, module);11import React from 'react';12import { storiesOf } from '@storybook/react';13import { action } from '@storybook/addon-actions';14import { Button } from '@storybook/react/demo';15storiesOf('Button', module)16 .add('with text', () => (17 <Button onClick={action('clicked')}>Hello Button</Button>18 .add('with some emoji', () => (19 <Button onClick={action('clicked')}>20 ));21import React from 'react';22import { storiesOf } from '@storybook/react';23import { linkTo } from '@storybook/addon-links';24import { Welcome } from '@storybook/react/demo';25storiesOf('Welcome', module).add('to Storybook', () => (26 <Welcome showApp={linkTo('Button')} />27));28import React from 'react';29import { storiesOf } from '@storybook/react';30import { action } from '@storybook/addon-actions';31import { Button } from '@storybook/react/demo';32storiesOf('Button', module)33 .add('with text', () => (34 <Button onClick={action('clicked')}>Hello Button</Button>35 .add('with some emoji', () => (36 <Button onClick={action('clicked')}>37 ));
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!!