diff --git a/archive/cool.js b/archive/cool.js deleted file mode 100644 index 9ef76a2..0000000 --- a/archive/cool.js +++ /dev/null @@ -1,1045 +0,0 @@ -const commandBarElement = document.getElementById('menu-bar'); -const toolBarElement = document.getElementById('tool-bar'); -const layerBarElement = document.getElementById('layer-bar'); -const studioElement = document.getElementById('studio'); -const infoBarElement = document.getElementById('info-bar'); -const easelElement = document.getElementById('easel'); -const brushPreviewElement = document.getElementById('brush-preview'); - -const dZoom = 0.001; -const dBrushSize = 0.5; -const initialWidth = 800; -const initialHeight = 600; -const maxBrushSize = 500; - -let brushColor = 'rgb(0, 0, 0)'; -let brushShape = 'square' -let brushSize = 1; -let zoom = 1; -let currentTool = 'brush' -let prevTool = 'brush' - -let startX = 0; -let startY = 0; -let endX = 0; -let endY = 0; -let dX = 0; -let dY = 0; -let canvasStartX = 0; -let canvasStartY = 0; -let canvasEndX = 0; -let canvasEndY = 0; -let canvasDX = 0; -let canvasDY = 0; - -let isKeyDown = false; -let isMouseDown = false; - -// HELPERS {{{ - -function hexToRgbArray(hex) { - if (hex.startsWith('#')) { - hex = hex.slice(1); - } - - if (hex.length === 3) { - hex = hex.split('').map(char => char + char).join(''); - } - - const bigint = parseInt(hex, 16); - return [(bigint >> 16) & 255, (bigint >> 8) & 255, bigint & 255]; -} - -function colorsMatch(a, b) { - return a[0] === b[0] && a[1] === b[1] && a[2] === b[2] && a[3] === b[3]; -} - -function makeButtonElement({icon, name, clickFunction, key}) { - if (!icon) throw new Error('No icon provided'); - if (!name) throw new Error('No name provided'); - if (!clickFunction) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const buttonElement = document.createElement('div'); - buttonElement.className = 'button'; - buttonElement.innerHTML = icon; - buttonElement.title = name; - buttonElement.addEventListener('click', clickFunction); - if (key) { - const keyHint = document.createElement('span'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - buttonElement.appendChild(keyHint); - } - return buttonElement; -} - -// }}} - -// LAYERS {{{ - -// factory {{{ - -function makeCanvas({height=600, width=800}) { // {{{ - const canvas = document.createElement('canvas'); - easelElement.appendChild(canvas); - canvas.style.imageRendering = 'pixelated'; - canvas.ctx = canvas.getContext('2d'); - - canvas.tempCanvas = document.createElement('canvas'); - canvas.tempCtx = canvas.tempCanvas.getContext('2d'); - - canvas.disableImageSmoothing = function(ctx) { - ctx.imageSmoothingEnabled = false; - if (ctx.imageSmoothingEnabled !== false) { - ctx.mozImageSmoothingEnabled = false; - ctx.webkitImageSmoothingEnabled = false; - ctx.msImageSmoothingEnabled = false; - } - }; - - canvas.saveTempCanvas = function() { - canvas.ctx.save(); - canvas.tempCanvas.width = canvas.width; - canvas.tempCanvas.height = canvas.height; - canvas.disableTempImageSmoothing(canvas.tempCtx); - canvas.tempCtx.drawImage(canvas, 0, 0); - } - - canvas.restoreTempCanvas = function() { - canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - canvas.ctx.drawImage(canvas.tempCanvas, 0, 0); - canvas.ctx.restore(); - } - - canvas.setHeight = function(height) { - canvas.height = height; - canvas.disableImageSmoothing(canvas.ctx); - }; - - canvas.setWidth = function(width) { - canvas.width = width; - canvas.disableImageSmoothing(canvas.ctx); - }; - - canvas.getPositionOnCanvas = function(e) { - const rect = canvas.getBoundingClientRect(); - return { - x: Math.round((e.clientX - rect.left) / zoom), - y: Math.round((e.clientY - rect.top) / zoom), - }; - } - - canvas.drawPixel = function(x, y, color) { - console.log({x, y, color}); - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(x, y, 1, 1); - } - - canvas.drawLineWithPixels = function(x1, y1, x2, y2, color) { - const dx = Math.abs(x2 - x1); - const dy = Math.abs(y2 - y1); - const sx = x1 < x2 ? 1 : -1; - const sy = y1 < y2 ? 1 : -1; - let err = dx - dy; - while (true) { - canvas.drawPixel(x1, y1, color); // Draw each pixel along the line - if (x1 === x2 && y1 === y2) break; - const e2 = err * 2; - if (e2 > -dy) { err -= dy; x1 += sx; } - if (e2 < dx) { err += dx; y1 += sy; } - } - } - - - canvas.drawShape = function(x, y, shape, size, color) { - if (size == 1) { - canvas.drawPixel(x, y, color); - return; - } - canvas.ctx.fillStyle = color; - if (shape === 'square') { - canvas.ctx.fillRect(x - Math.floor(size / 2), y - Math.floor(size / 2), size, size); - } - } - - canvas.getColorAtPixel = function(data, x, y) { - const index = (y * canvas.width + x) * 4; - return [data[index], data[index + 1], data[index + 2], data[index + 3]]; - } - - canvas.setColorAtPixel = function(data, x, y, color) { - const index = (y * canvas.width + x) * 4; - data[index] = color[0]; - data[index + 1] = color[1]; - data[index + 2] = color[2]; - data[index + 3] = 255; - } - - - canvas.fill = function(color) { - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - } - - canvas.floodFill = function(x, y, color) { - const imageData = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - - const targetColor = canvas.getColorAtPixel(data, x, y); - const fillColorArray = hexToRgbArray(color); - - if (colorsMatch(targetColor, fillColorArray)) { - return; - } - - const stack = [{x, y}]; - - while (stack.length > 0) { - const {x, y} = stack.pop(); - const currentColor = canvas.getColorAtPixel(data, x, y); - - if (colorsMatch(currentColor, targetColor)) { - canvas.setColorAtPixel(data, x, y, fillColorArray); - - if (x > 0) stack.push({x: x - 1, y}); - if (x < canvas.width - 1) stack.push({x: x + 1, y}); - if (y > 0) stack.push({x, y: y - 1}); - if (y < canvas.height - 1) stack.push({x, y: y + 1}); - } - } - - canvas.ctx.putImageData(imageData, 0, 0); - } - - canvas.toDataUrl = function() { - const dataURL = canvas.toDataURL(); - const dimensions = `${canvas.width}x${canvas.height}`; - return {dataURL, dimensions}; - } - - canvas.fromDataUrl = function(dataURL, dimensions) { - const img = new Image(); - img.src = dataURL; - img.onload = function() { - canvas.width = dimensions.split('x')[0]; - canvas.height = dimensions.split('x')[1]; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvas.ctx.drawImage(img, 0, 0); - } - } - - canvas.deleteCanvas = function() { - canvas.remove(); - } - - canvas.setWidth(width); - canvas.setHeight(height); - - return canvas; - -} // }}} - -function makeLayer({height=600, width=800}) { // {{{ - const layer = {} - layer.canvas = makeCanvas({height, width}); - layer.active = false; - layer.opacity = 1; - layer.controllerElement = document.createElement('div'); - layer.controllerElement.className = 'layer-controller'; - layer.controllerElement.addEventListener('click', () => { - layers.setActive(layer); - }); - - layer.activate = function() { - layer.active = true; - layer.controllerElement.classList.add('active'); - } - - layer.deactivate = function() { - layer.active = false; - layer.controllerElement.classList.remove('active'); - } - - return layer; -} // }}} - -function makeLayers({height=600, width=800}) { // {{{ - const layers = []; - layers.height = height; - layers.width = width; - - layers.setHeight = function(height) { - layers.height = height; - easelElement.style.height = height + 2 + 'px'; - } - - layers.setHeight(height); - - layers.setWidth = function(width) { - layers.width = width; - easelElement.style.width = width + 2 + 'px'; - } - - layers.setWidth(width); - - layers.resetPosition = function() { - const studioRect = studioElement.getBoundingClientRect(); - easelElement.style.left = `${studioRect.left}px`; - easelElement.style.top = `${studioRect.top}px`; - } - - layers.updateControllers = function() { - layerBarElement.innerHTML = ''; - layers.forEach(layer => { - layerBarElement.appendChild(layer.controllerElement); - }); - } - - layers.add = function() { - const layer = makeLayer({ - height: layers.height, - width: layers.width, - }); - layers.push(layer); - layer.activate(); - layers.updateControllers(); - } - - layers.delete = function(layer) { - layer.canvas.deleteCanvas(); - layers.splice(layers.indexOf(layer), 1); - layers.updateControllers(); - } - - layers.deleteAll = function() { - layers.forEach(layer => layer.deleteCanvas()); - // TODO - } - - layers.move = function(layer, index) { - layers.splice(layers.indexOf(layer), 1); - layers.splice(index, 0, layer); - } - - layers.setActive = function(layer) { - layers.forEach(layer => layer.deactivate()); - layer.activate(); - } - - layers.getActive = function() { - return layers.find(layer => layer.active); - } - - return layers; -} // }}} - -// }}} - -const layers = makeLayers({height: initialHeight, width: initialWidth}); -layers.add(); -layers.add(); -layers[0].canvas.fill('rgb(255, 255, 255)'); -layers.setActive(layers[1]); - -// }}} - -// COLOR PREVIEW {{{ - -function makeColorPreview() { - const colorPreview = {} - colorPreview.element = document.createElement('div'); - colorPreview.element.id = 'color-preview'; - colorPreview.element.className = 'puck'; - colorPreview.element.style.backgroundColor = brushColor; - commandBarElement.appendChild(colorPreview.element); - colorPreview.update = function() { - colorPreview.element.style.backgroundColor = brushColor; - } -} - -const colorPreview = makeColorPreview(); - -// }}} - -// COMMANDS {{{ - -// factory {{{ - -function makeCommand({name, key, icon, clickFunction}) { - if (!name) throw new Error('No name provided'); - if (!icon) throw new Error('No icon provided'); - if (!clickFunction) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const command = {}; - command.name = name; - command.key = key; - command.buttonElement = makeButtonElement({icon, name, clickFunction, key}); - commandBarElement.appendChild(command.buttonElement); - - return command -} - -function makeCommands() { - const commands = []; - - commands.add = function({name, key, icon, clickFunction}) { - const command = makeCommand({name, key, icon, clickFunction}); - commands.push(command); - } - - return commands; -} - - -// }}} - -const commands = makeCommands(); - -commands.add({ // flip-horizontally {{{ - name: 'flip-horizontally', - key: 'f', - icon: '', - clickFunction: function flipCanvasHorizontally() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(-1, 1); - ctx.translate(-canvas.width, 0); - canvas.restoreTempCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // flip-vertically {{{ - name: 'flip-vertically', - key: 'v', - icon: '', - clickFunction: function flipCanvasVertically() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - canvas.saveTempCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(1, -1); - ctx.translate(0, -canvas.height); - canvas.restoreTempCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // export {{{ - name: 'export', - key: 'e', - icon: '', - clickFunction: function exportCanvas() { - const canvas = layers.getActive().canvas; - const link = document.createElement('a'); - link.download = 'canvas.png'; - link.href = canvas.toDataURL(); - link.click(); - } -}); // }}} - -commands.add({ // import {{{ - name: 'import', - key: 'i', - icon: '', - clickFunction: function importCanvas() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - const input = document.createElement('input'); - input.type = 'file'; - input.accept = 'image/*'; - input.onchange = (e) => { - const file = e.target.files[0]; - const reader = new FileReader(); - reader.onload = (e) => { - const img = new Image(); - img.onload = () => { - canvas.width = img.width; - canvas.height = img.height; - ctx.drawImage(img, 0, 0); - } - img.src = e.target.result; - } - reader.readAsDataURL(file); - } - input.click(); - } -}); // }}} - -commands.add({ // clear {{{ - name: 'clear', - key: 'c', - icon: '', - clickFunction: function clearCanvas() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - canvas.saveTempCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = 'white'; - ctx.fillRect(0, 0, canvas.width, canvas.height); - } -}); // }}} - -commands.add({ // reset {{{ - name: 'reset', - key: 't', - icon: '', - clickFunction: function resetZoom() { - layers.resetPosition(); - // zoom = 1; - // canvas.style.width = canvas.width * zoom + 'px'; - // canvas.style.height = canvas.height * zoom + 'px'; - // TODO - - } -}); // }}} - -// }}} - -// TOOLS {{{ - -// factory {{{ - -function makeTool({name, key, icon, mouseDown, mouseMove, mouseUp}) { - if (!name) throw new Error('No name provided'); - if (!key) throw new Error('No key provided'); - if (!icon) throw new Error('No icon provided'); - - const tool = {}; - tool.name = name; - tool.key = key; - tool.icon = icon; - tool.mouseDown = mouseDown; - tool.mouseMove = mouseMove; - tool.mouseUp = mouseUp; - tool.active = false; - - tool.buttonElement = makeButtonElement({ - icon: tool.icon, - name: tool.name, - key: tool.key, - clickFunction: function() { - tools.activate(tool); - tool.buttonElement.classList.add('active'); - } - }); - toolBarElement.appendChild(tool.buttonElement); - - tool.activate = function() { - currentTool = tool.name; - tool.active = true; - } - - tool.deactivate = function() { - tool.active = false; - tool.buttonElement.classList.remove('active'); - } - - - return tool; -} - -function makeTools() { - const tools = []; - - tools.add = function({name, key, icon, mouseDown, mouseMove, mouseUp}) { - const tool = makeTool({name, key, icon, mouseDown, mouseMove, mouseUp}); - tools.push(tool); - } - - tools.activate = function(tool) { - tools.forEach(tool => tool.deactivate()); - tool.activate(); - } - - return tools; -} - -// }}} - -const tools = makeTools(); - -tools.add({ // brush {{{ - name: 'brush', - key: 'b', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize == 1) { - canvas.drawPixel(canvasStartX, canvasStartY, brushColor); - } else { - canvas.drawShape(canvasStartX, canvasStartY, brushShape, brushSize, brushColor); - } - }, - mouseMove: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize == 1) { - canvas.drawLineWithPixels(canvasStartX, canvasStartY, canvasEndX, canvasEndY, brushColor); - return; - } else { - canvas.drawShape(canvasEndX, canvasEndY, brushShape, brushSize, brushColor); - } - canvasStartX = canvasEndX; - canvasStartY = canvasEndY; - }, -}); // }}} - -tools.add({ // content-move {{{ - name: 'content-move', - key: 'h', - icon: '', - mouseMove: function(e) { - const canvas = layers.getActive().canvas; - canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - canvas.ctx.fillStyle = 'white'; - canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - canvas.restoreTempCanvas(); - }, -}); // }}} - -tools.add({ // move {{{ - name: 'move', - key: 'm', - icon: '', - mouseDown: function(e) { - startX = e.clientX - easelElement.offsetLeft; - startY = e.clientY - easelElement.offsetTop; - }, - mouseMove: function(e) { - easelElement.style.left = dX + 'px'; - easelElement.style.top = dY + 'px'; - }, -}); // }}} - -tools.add({ // zoom {{{ - name: 'zoom', - key: 'z', - icon: '', - mouseMove: function(e) { - // TODO all canvases - // const canvas = layers.getActive().canvas; - zoom += dX * dZoom; - if (zoom < 0.1) zoom = 0.1; - // canvas.style.height = canvasHeight * zoom + 'px'; - // canvas.style.width = canvasWidth * zoom + 'px'; - startX = endX; - } -}); // }}} - -tools.add({ // bucket-fill {{{ - name: 'bucket-fill', - key: 'k', - icon: '', - mouseDown: function(e) { - // canvas = layers.getActive().canvas; - // canvas.floodFill(canvasStartX, canvasStartY, brushColor); - } -}); // }}} - -tools.add({ // color-picker {{{ - name: 'color-picker', - key: 'a', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - const imageData = canvas.ctx.getImageData(canvasStartX, canvasStartY, 1, 1).data; - const pickedColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - brushColor = pickedColor; - colorPreview.update(); - } -}); // }}} - -tools.add({ // brush-size {{{ - name: 'brush-size', - key: 'd', - icon: '', - mouseMove: function(e) { - brushSize += dX * dBrushSize; - if (brushSize < 1) brushSize = 1; - if (brushSize > maxBrushSize) brushSize = maxBrushSize; - startX = endX; - } -}); // }}} - -tools.add({ // resize {{{ - name: 'resize', - key: 'r', - icon: '', - mouseMove: function(e) { - // const canvas = layers.getActive().canvas; - // let newWidth = canvasWidth + dX / zoom; - // let newHeight = canvasHeight + dY / zoom; - // if (newWidth > 0 && newHeight > 0) { - // canvas.setWidth(newWidth); - // canvas.setHeight(newHeight); - // canvas.style.width = newWidth * zoom + 'px'; - // canvas.style.height = newHeight * zoom + 'px'; - // canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - // canvas.ctx.fillStyle = backgroundColor; - // canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - // canvas.ctx.drawImage(tempCanvas, 0, 0); - // } - } -}); // }}} - -tools.add({ // color-mix {{{ - name: 'color-mix', - key: 'x', - icon: '', - mouseMove: function(e) { - // const canvas = layers.getActive().canvas; - const imageData = ctx.getImageData(canvasEndX, canvasEndY, 1, 1).data; - const canvasColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - - const distance = Math.sqrt(Math.pow(e.clientX - startX, 2) + Math.pow(e.clientY - startY, 2)); - const t = Math.min(1, distance / 300); - - const mixedColor = mixbox.lerp(brushColor, canvasColor, t); - - brushColor = mixedColor; - - startX = e.clientX; - startY = e.clientY; - } -}); // }}} - -// }}} - -// PUCKS {{{ - -// factory {{{ - -function createPuck({puckColor, key, editable=true}) { - if (!puckColor) throw new Error('No puck color provided'); - - const puck = {} - puck.element = document.createElement('div'); - puck.element.style.backgroundColor = puckColor; - puck.element.className = 'puck'; - - if (editable) { - const deleteHandle = document.createElement('div'); - deleteHandle.className = 'delete-handle'; - deleteHandle.innerHTML = ''; - puck.element.appendChild(deleteHandle); - deleteHandle.addEventListener('click', () => { - puck.element.remove(); - }); - } - - if (key) { - const keyHint = document.createElement('div'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - puck.element.appendChild(keyHint); - } - - function mixx(startTime) { - var interval = setInterval(() => { - const elapsedTime = Date.now() - startTime; - const t = Math.min(1, elapsedTime / 10000); - const mixedColor = mixbox.lerp(brushColor, puck.style.backgroundColor, t); - brushColor = mixedColor; - colorPreview.update(); - infos.update(); - }, 50); - return interval; - } - - puck.element.addEventListener('mousedown', () => { - const startTime = Date.now(); - var interval = mixx(startTime); - function onMouseUp() { - clearInterval(interval); - document.removeEventListener('mouseup', onMouseUp); - } - document.addEventListener('mouseup', onMouseUp); - }); - - puck.keydown = function(e) { - if (e.key == key) { - const startTime = Date.now(); - var interval = mixx(startTime); - function onKeyUp() { - clearInterval(interval); - document.removeEventListener('keyup', onKeyUp); - } - document.addEventListener('keyup', onKeyUp); - } - } - - commandBarElement.appendChild(puck.element); -} - -function makePucks() { - const pucks = []; - - pucks.add = function({puckColor, key, editable}) { - const puck = createPuck({puckColor, key, editable}); - pucks.push(puck); - } - - return pucks; -} - -// }}} - -const pucks = makePucks(); - -pucks.add({ - puckColor: 'rgb(0, 0, 0)', - key: '1', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(255, 255, 255)', - key: '2', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(255, 0, 0)', - key: '3', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(0, 255, 0)', - key: '4', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(0, 0, 255)', - key: '5', - editable: false, -}); - -// }}} - -// INFO {{{ - -function makeInfo({name, updateFunction}) { - if (!name) throw new Error('No name provided'); - if (!updateFunction) throw new Error('No update function provided'); - - const info = {}; - info.name = name; - info.updateFunction = updateFunction; - - info.element = document.createElement('span'); - info.element.className = 'info'; - - const key = document.createElement('span'); - key.className = 'key'; - key.innerHTML = info.name + ':'; - - const value = document.createElement('span'); - value.className = 'value'; - value.innerHTML = '0'; - - info.element.appendChild(key); - info.element.appendChild(value); - - infoBarElement.appendChild(info.element); - - info.update = function() { - let v = updateFunction(); - if (v === undefined) v = '?'; - value.innerHTML = v; - } - - return info; -} - -function makeInfos() { - const infos = [] - infos.add = function({name, updateFunction}) { - const info = makeInfo({name, updateFunction}); - infos.push(info); - } - infos.update = function() { - infos.forEach(function(info){ - info.update(); - }); - } - return infos; -} - -const infos = makeInfos(); - -infos.add({ - name: 'zoom', - updateFunction: function() { - var percent = zoom * 100; - return percent.toFixed(0) + '%'; - } -}); - -infos.add({ - name: 'brush', - updateFunction: function() { - return brushSize; - } -}); - - -infos.add({ - name: 'x', - updateFunction: function() { - return canvasEndX; - } -}); - - -infos.add({ - name: 'y', - updateFunction: function() { - return canvasEndY; - } -}); - -infos.add({ - name: 'color', - updateFunction: function() { - return brushColor; - } -}); - -infos.add({ - name: 'width', - updateFunction: function() { - return "width"; - } -}); - -infos.add({ - name: 'height', - updateFunction: function() { - return "height"; - } -}); - -// }}} - -// MOUSE EVENT LISTENERS {{{ - -studioElement.addEventListener('mousedown', (e) => { - const canvas = layers.getActive().canvas; - isMouseDown = true; - startX = e.clientX; - startY = e.clientY; - canvasStartX = canvas.getPositionOnCanvas(e).x; - canvasStartY = canvas.getPositionOnCanvas(e).y; - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.name === currentTool) { - if (tool.mouseDown) { - tool.mouseDown(e); - break; - } - } - } - - infos.update(); - -}); - -studioElement.addEventListener('mousemove', (e) => { - const canvas = layers.getActive().canvas; - endX = e.clientX; - endY = e.clientY; - dX = endX - startX; - dY = endY - startY; - canvasEndX = canvas.getPositionOnCanvas(e).x; - canvasEndY = canvas.getPositionOnCanvas(e).y; - canvasDX = canvasEndX - canvasStartX; - canvasDY = canvasEndY - canvasStartY; - - if (currentTool == 'brush-size') { - brushPreviewElement.style.display = 'block'; - brushPreviewElement.style.width = brushSize + 'px'; - brushPreviewElement.style.height = brushSize + 'px'; - brushPreviewElement.style.left = e.clientX - brushSize / 2 + 'px'; - brushPreviewElement.style.top = e.clientY - brushSize / 2 + 'px'; - } - - if (isMouseDown) { - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.name === currentTool) { - if (tool.mouseMove) { - tool.mouseMove(e); - break; - } - } - } - } - - infos.update(); - -}); - -studioElement.addEventListener('mouseup', () => { - isMouseDown = false; - infos.update(); -}); - -studioElement.addEventListener('mouseleave', () => { - isMouseDown = false; - brushPreviewElement.style.display = 'none'; - infos.update(); -}); - -// }}} - -// KEYBINDINGS {{{ - -document.addEventListener('keydown', (e) => { - if (isKeyDown) return; - - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key.toLowerCase()) { - prevTool = currentTool; - currentTool = tool.name; - } - }); - - commands.forEach(command => { - if (command.key.toLowerCase() === e.key.toLowerCase()) { - command.clickFunction(); - } - }); - - pucks.filter(puck => puck.key).forEach(puck => { - if (puck.key.toLowerCase() === e.key.toLowerCase()) { - puck.keydown(e); - } - }); - - isKeyDown = true; - -}); - -document.addEventListener('keyup', (e) => { - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key) { - currentTool = prevTool; - } - }); - - isKeyDown = false; - -}); - -// }}} - -layers.resetPosition(); diff --git a/archive/history.js b/archive/history.js deleted file mode 100644 index 7f7ddb4..0000000 --- a/archive/history.js +++ /dev/null @@ -1,77 +0,0 @@ -function clearFromLocalStorage() { - localStorage.removeItem(LOCAL_STORAGE_CANVAS_NAME); - localStorage.removeItem(LOCAL_STORAGE_DIMENSIONS_NAME); -} - -// }}} - -// history {{{ - -function saveState(undoStack, redoStack, maxHistory) { - if (undoStack.length >= maxHistory) { - undoStack.shift(); - } - undoStack.push({ - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }); - redoStack = []; -} - -function undo(canvas, ctx, undoStack, redoStack) { - if (undoStack.length > 0) { - const currentState = { - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }; - - redoStack.push(currentState); // Save current state to the redo stack - const lastState = undoStack.pop(); // Get the last state from the undo stack - - canvas.width = lastState.width; - canvas.height = lastState.height; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - - const img = new Image(); - img.src = lastState.imageData; - img.onload = function() { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(img, 0, 0); - }; - } -} - -function redo() { - if (redoStack.length > 0) { - const currentState = { - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }; - - undoStack.push(currentState); // Save current state to the undo stack - const nextState = redoStack.pop(); // Get the last state from the redo stack - - canvas.width = nextState.width; - canvas.height = nextState.height; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - - const img = new Image(); - img.src = nextState.imageData; - img.onload = function() { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(img, 0, 0); - }; - } -} - -// }}} - diff --git a/archive/render.js b/archive/render.js deleted file mode 100644 index f93fd7d..0000000 --- a/archive/render.js +++ /dev/null @@ -1,1739 +0,0 @@ -// CONSTANTS {{{ - -const commandBarElement = document.getElementById('menu-bar'); -const toolBarElement = document.getElementById('tool-bar'); -const layerControllersElement = document.getElementById('layer-controllers'); -const studioElement = document.getElementById('studio'); -const infoBarElement = document.getElementById('info-bar'); -const easelElement = document.getElementById('easel'); - -const dZoom = 0.001; -const dBrushSize = 0.5; -const dOpacity = 0.001; -const initialWidth = 800; -const initialHeight = 600; -const maxBrushSize = 500; -const tolerance = 1; -const shapes = ['circle', 'square']; - -// }}} - -// VARS {{{ - -let brushShape = 'circle' -let brushSize = 10; -let zoom = 1; - -let startX = 0; -let startY = 0; -let endX = 0; -let endY = 0; -let dX = 0; -let dY = 0; -let canvasStartX = 0; -let canvasStartY = 0; -let canvasEndX = 0; -let canvasEndY = 0; -let canvasDX = 0; -let canvasDY = 0; - -let isKeyDown = false; -let isMouseDown = false; - -let interval; -var startTime; - -// }}} - -// HELPERS {{{ - -function disableImageSmoothing(ctx) { - ctx.imageSmoothingEnabled = false; - if (ctx.imageSmoothingEnabled !== false) { - ctx.mozImageSmoothingEnabled = false; - ctx.webkitImageSmoothingEnabled = false; - ctx.msImageSmoothingEnabled = false; - } -}; - -function hexToRgbArray(hex) { - const r = parseInt(hex.substring(1, 3), 16); - const g = parseInt(hex.substring(3, 5), 16); - const b = parseInt(hex.substring(5, 7), 16); - return [r, g, b, 255]; -} - -function colorsMatch(color1, color2, tolerance = 0) { - return color1[0] === color2[0] && color1[1] === color2[1] && color1[2] === color2[2] && color1[3] === color2[3]; - return Math.abs(color1[0] - color2[0]) <= tolerance && - Math.abs(color1[1] - color2[1]) <= tolerance && - Math.abs(color1[2] - color2[2]) <= tolerance && - Math.abs(color1[3] - color2[3]) <= tolerance; // Include alpha comparison -} - -function makeIconElement(htmlString) { - const parentElement = document.createElement('div'); - parentElement.innerHTML = htmlString; - const iconElement = parentElement.firstChild; - return iconElement; -} - -function closeRgbArray(color1, color2, tolerance) { - return Math.abs(color1[0] - color2[0]) <= tolerance && Math.abs(color1[1] - color2[1]) <= tolerance && Math.abs(color1[2] - color2[2]) <= tolerance; -} - -function makeButtonElement({icon, name, func, key}) { - if (!icon) throw new Error('No icon provided'); - if (!name) throw new Error('No name provided'); - if (!func) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const button = {}; - button.name = name; - button.key = key; - button.icon = icon; - button.element = document.createElement('div'); - button.element.classList.add('button'); - button.element.classList.add('bar-button'); - - button.element.addEventListener('click', func); - - button.refresh = function() { - button.element.innerHTML = ''; - const iconElement = makeIconElement(button.icon); - button.element.appendChild(iconElement); - button.element.title = button.name; - if (button.key) { - const keyHint = document.createElement('span'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - button.element.appendChild(keyHint); - } - } - - button.refresh(); - - return button; -} - -// }}} - -// COLOR {{{ - -function makeColor(rgb) { - const color = {}; - - color.fromRgba = function(rgba) { - color.r = rgba.split(',')[0].split('(')[1]; - color.g = rgba.split(',')[1]; - color.b = rgba.split(',')[2]; - color.a = rgba.split(',')[3].split(')')[0]; - } - - color.toRgba = function() { - return `rgba(${color.r}, ${color.g}, ${color.b}, ${color.a})`; - } - - color.fromRgb = function(rgb) { - color.r = rgb.split(',')[0].split('(')[1]; - color.g = rgb.split(',')[1]; - color.b = rgb.split(',')[2].split(')')[0]; - color.a = 255; - } - - color.toRgb = function() { - return `rgb(${color.r}, ${color.g}, ${color.b})`; - } - - color.fromHex = function(hex) { - color.r = parseInt(hex.substring(1, 3), 16); - color.g = parseInt(hex.substring(3, 5), 16); - color.b = parseInt(hex.substring(5, 7), 16); - color.a = 255; - } - - color.toHex = function() { - color.r = parseInt(rgb[0]); - color.g = parseInt(rgb[1]); - color.b = parseInt(rgb[2]); - return `#${color.r.toString(16)}${color.g.toString(16)}${color.b.toString(16)}`; - } - - color.fromRgbaArray = function(array) { - color.r = array[0]; - color.g = array[1]; - color.b = array[2]; - color.a = array[3]; - } - - color.toRgbaArray = function() { - return [color.r, color.g, color.b, color.a]; - } - - color.fromRgbArray = function(array) { - color.r = array[0]; - color.g = array[1]; - color.b = array[2]; - color.a = 255; - } - - color.toRgbArray = function() { - return [color.r, color.g, color.b]; - } - - color.mixxRgbArray = function(color2RgbArray, t) { - const color1RgbArray = color.toRgbArray(); - if (color1RgbArray === color2RgbArray) { - return; - } - var newColorRgbArray = color2RgbArray; - if (!closeRgbArray(color1RgbArray, color2RgbArray, 2)) { - console.log('mixxing'); - newColorRgbArray = mixbox.lerp(color1RgbArray, color2RgbArray, t); - } - color.fromRgbArray(newColorRgbArray); - } - - color.mixxRgb = function(color2Rgb, t) { - const result = color2Rgb.match(/rgb\((\d+), (\d+), (\d+)\)/); - if (result) { - const color2RgbArray = [result[1], result[2], result[3]]; - color.mixxRgbArray(color2RgbArray, t); - } - } - - color.mixxRgbaArray = function(color2RgbaArray, t) { - const color2a = color2RgbaArray[3]; - if (color2a !== 225) { - return; - } - const color2RgbArray = color2RgbaArray.slice(0, 3); - color.mixxRgbArray(color2RgbArray, t); - } - - color.mixxRgba = function(color2Rgba, t) { - const result = color2Rgba.match(/rgba\((\d+), (\d+), (\d+), (\d+)\)/); - if (result) { - const color2RgbaArray = [result[1], result[2], result[3], result[4]]; - color.mixxRgbaArray(color2RgbaArray, t); - } - } - - color.mixx = function(color2, t) { - if (color2.a === 255) { - color.mixxRgbArray(color2.toRgbArray(), t); - } - } - - color.isOpaque = function() { - return color.a === 255; - } - - color.match = function(color2) { - return color.r === color2.r && color.g === color2.g && color.b === color2.b && color.a === color2.a; - } - - color.copy = function(color2) { - color.r = color2.r; - color.g = color2.g; - color.b = color2.b; - color.a = color2.a; - } - - color.fromRgb(rgb); - - return color; -} - -const brushColor = makeColor('rgb(0, 0, 0)'); -const canvasColor = makeColor('rgb(0, 0, 0)'); -const tempColor = makeColor('rgb(0, 0, 0)'); - -// }}} - -// LAYERS {{{ - -// FACTORY {{{ - -function makeCanvas({height=600, width=800, background=false}) { // {{{ - const canvas = document.createElement('canvas'); - canvas.style.imageRendering = 'pixelated'; - canvas.ctx = canvas.getContext('2d'); - canvas.background = background; - - canvas.tempCanvas = document.createElement('canvas'); - canvas.tempCtx = canvas.tempCanvas.getContext('2d'); - - canvas.saveCanvas = function() { - canvas.ctx.save(); - canvas.tempCanvas.width = canvas.width; - canvas.tempCanvas.height = canvas.height; - canvas.tempCtx.clearRect(0, 0, canvas.width, canvas.height); - disableImageSmoothing(canvas.tempCtx); - canvas.tempCtx.drawImage(canvas, 0, 0); - } - - canvas.clearCanvas = function() { - if (!canvas.background) { - canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - } - } - - canvas.restoreCanvas = function(x=0, y=0) { - canvas.ctx.drawImage(canvas.tempCanvas, x, y); - } - - canvas.setHeight = function(height) { - canvas.height = height; - disableImageSmoothing(canvas.ctx); - }; - - canvas.setWidth = function(width) { - canvas.width = width; - disableImageSmoothing(canvas.ctx); - }; - - canvas.resize = function(width, height) { - canvas.saveCanvas(); - canvas.clearCanvas(); - canvas.width = width; - canvas.height = height; - canvas.style.width = width * zoom + 'px'; - canvas.style.height = height * zoom + 'px'; - disableImageSmoothing(canvas.ctx); - canvas.restoreCanvas(); - } - - canvas.getPositionOnCanvas = function(e) { - const rect = canvas.getBoundingClientRect(); - return { - x: Math.round((e.clientX - rect.left) / zoom), - y: Math.round((e.clientY - rect.top) / zoom), - }; - } - - canvas.drawPixel = function(x, y, color) { - if (!canvas.background) { - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(x, y, 1, 1); - } - } - - canvas.drawLineWithPixels = function(x1, y1, x2, y2, color) { - if (!canvas.background) { - const dx = Math.abs(x2 - x1); - const dy = Math.abs(y2 - y1); - const sx = x1 < x2 ? 1 : -1; - const sy = y1 < y2 ? 1 : -1; - let err = dx - dy; - while (true) { - canvas.drawPixel(x1, y1, color); // Draw each pixel along the line - if (x1 === x2 && y1 === y2) break; - const e2 = err * 2; - if (e2 > -dy) { err -= dy; x1 += sx; } - if (e2 < dx) { err += dx; y1 += sy; } - } - } - } - - canvas.drawShape = function(x, y, shape, size, color) { - if (!canvas.background) { - x = Math.round(x); - y = Math.round(y); - - if (size === 1) { - canvas.drawPixel(x, y, color); - return; - } - canvas.ctx.fillStyle = color; - - if (shape === 'square') { - canvas.ctx.fillRect(x - Math.floor(size / 2), y - Math.floor(size / 2), size, size); - } else if (shape === 'circle') { - let radius = Math.floor(size / 2); - let radiusSquared = radius * radius; - - for (let y1 = -radius; y1 <= radius; y1++) { - for (let x1 = -radius; x1 <= radius; x1++) { - // Adjust the condition to avoid the outcrop - if ((x1 * x1 + y1 * y1) <= radiusSquared - radius) { - canvas.ctx.fillRect(x + x1, y + y1, 1, 1); - } - } - } - } else if (shape === 'empty-circle') { - let radius = Math.floor(size / 2); - let x1 = radius; - let y1 = 0; - let radiusError = 1 - x1; - - while (x1 >= y1) { - // Draw the 8 octants of the circle - canvas.ctx.fillRect(x + x1, y + y1, 1, 1); - canvas.ctx.fillRect(x + y1, y + x1, 1, 1); - canvas.ctx.fillRect(x - y1, y + x1, 1, 1); - canvas.ctx.fillRect(x - x1, y + y1, 1, 1); - canvas.ctx.fillRect(x - x1, y - y1, 1, 1); - canvas.ctx.fillRect(x - y1, y - x1, 1, 1); - canvas.ctx.fillRect(x + y1, y - x1, 1, 1); - canvas.ctx.fillRect(x + x1, y - y1, 1, 1); - - y1++; - if (radiusError < 0) { - radiusError += 2 * y1 + 1; - } else { - x1--; - radiusError += 2 * (y1 - x1 + 1); - } - } - } - } - } - - canvas.drawLineWithShape = function(x1, y1, x2, y2, shape, size, color) { - if (!canvas.background) { - const dx = x2 - x1; - const dy = y2 - y1; - const distance = Math.sqrt(dx * dx + dy * dy); - const steps = Math.ceil(distance / (size / 3)); - - for (let i = 0; i <= steps; i++) { - const x = Math.round(x1 + (dx * i) / steps); - const y = Math.round(y1 + (dy * i) / steps); - canvas.drawShape(x, y, shape, size, color); - } - } - } - - canvas.fill = function(color) { - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - } - - canvas.getRgbaArrayColorAtPixelData = function(x, y, data) { - const index = (y * canvas.width + x) * 4; - const color = [data[index], data[index + 1], data[index + 2], data[index + 3]]; - return color; - } - - canvas.setRgbaArrayColorAtPixelData = function(x, y, color, data) { - const index = (y * canvas.width + x) * 4; - data[index] = color[0]; - data[index + 1] = color[1]; - data[index + 2] = color[2]; - data[index + 3] = color[3]; - } - - canvas.floodFill = function(x, y, colorRgbaArray) { - if (!canvas.background) { - const imageData = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - - const targetColor = canvas.getRgbaArrayColorAtPixelData(x, y, data); - const fillColorArray = colorRgbaArray; - - if (colorsMatch(targetColor, fillColorArray, tolerance)) { - return; - } - - const stack = [{x, y}]; - - while (stack.length > 0) { - const {x, y} = stack.pop(); - const currentColor = canvas.getRgbaArrayColorAtPixelData(x, y, data); - - if (colorsMatch(currentColor, targetColor, tolerance)) { - canvas.setRgbaArrayColorAtPixelData(x, y, fillColorArray, data); - - if (x > 0) stack.push({x: x - 1, y}); - if (x < canvas.width - 1) stack.push({x: x + 1, y}); - if (y > 0) stack.push({x, y: y - 1}); - if (y < canvas.height - 1) stack.push({x, y: y + 1}); - } - } - - canvas.ctx.putImageData(imageData, 0, 0); - } - } - - - canvas.getRgbaColorArrayAtPixel = function(x, y) { - const data = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height).data; - return canvas.getRgbaArrayColorAtPixelData(x, y, data); - } - - canvas.getRgbColorAtPixel = function(x, y) { - const color = canvas.getRgbaColorArrayAtPixel(x, y); - return `rgb(${color[0]}, ${color[1]}, ${color[2]})`; - } - - canvas.setColorAtPixel = function(x, y, color) { - const imageData = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - canvas.setRgbaArrayColorAtPixelData(x, y, color, data); - canvas.ctx.putImageData(new ImageData(data, canvas.width, canvas.height), 0, 0); - } - - // canvas.toDataUrl = function() { - // const dataURL = canvas.toDataURL(); - // const dimensions = `${canvas.width}x${canvas.height}`; - // return {dataURL, dimensions}; - // } - - canvas.fromDataUrl = function(dataURL, dimensions) { - const img = new Image(); - img.src = dataURL; - img.onload = function() { - canvas.width = dimensions.split('x')[0]; - canvas.height = dimensions.split('x')[1]; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvas.ctx.drawImage(img, 0, 0); - } - } - - canvas.deleteCanvas = function() { - if (!background) { - canvas.remove(); - } - } - - canvas.add = function(canvas2) { - canvas.ctx.drawImage(canvas2, 0, 0); - } - - canvas.setWidth(width); - canvas.setHeight(height); - - return canvas; - -} // }}} - -function makeLayer({height=600, width=800, background=undefined}) { // {{{ - const layer = {} - layer.canvas = makeCanvas({height, width, background}); - layer.active = false; - layer.opacity = 1; - layer.background = background; - - layer.controllerElement = document.createElement('div'); - layer.controllerElement.className = 'layer-controller'; - - layer.previewElement = document.createElement('img'); - layer.previewElement.className = 'layer-preview'; - layer.previewElement.src = layer.canvas.toDataURL(); - layer.previewElement.addEventListener('click', () => { - layers.setActive(layer); - }); - layer.controllerElement.appendChild(layer.previewElement); - - if (!layer.background) { - - layer.moveButtons = document.createElement('div'); - layer.moveButtons.classList.add('button'); - layer.moveButtons.classList.add('layer-move-buttons'); - layer.moveButtons.className = 'layer-move-buttons'; - - layer.moveUpButton = document.createElement('div'); - layer.moveUpButton.classList.add('button'); - layer.moveUpButton.classList.add('layer-move-button'); - layer.moveUpButton.innerHTML = ''; - layer.moveUpButton.addEventListener('click', () => { - layers.moveUp(layer); - }); - - layer.moveButtons.appendChild(layer.moveUpButton); - - layer.moveDownButton = document.createElement('div'); - layer.moveDownButton.classList.add('button'); - layer.moveDownButton.classList.add('layer-move-button'); - layer.moveDownButton.innerHTML = ''; - layer.moveDownButton.addEventListener('click', () => { - layers.moveDown(layer); - }); - - layer.moveButtons.appendChild(layer.moveDownButton); - - layer.controllerElement.appendChild(layer.moveButtons); - - layer.mergeButtons = document.createElement('div'); - layer.mergeButtons.classList.add('button'); - layer.mergeButtons.classList.add('layer-merge-buttons'); - layer.mergeButtons.className = 'layer-merge-buttons'; - - layer.mergeUpButton = document.createElement('div'); - layer.mergeUpButton.classList.add('button'); - layer.mergeUpButton.classList.add('layer-merge-button'); - layer.mergeUpButton.innerHTML = ''; - layer.mergeUpButton.addEventListener('click', () => { - layers.mergeUp(layer); - }); - - layer.mergeButtons.appendChild(layer.mergeUpButton); - - layer.controllerElement.appendChild(layer.mergeButtons); - - layer.deleteButton = document.createElement('div'); - layer.deleteButton.classList.add('button'); - layer.deleteButton.classList.add('layer-delete-button'); - layer.deleteButton.innerHTML = ''; - layer.deleteButton.addEventListener('click', () => { - layers.delete(layer); - }); - - layer.controllerElement.appendChild(layer.deleteButton); - - } - - - - layer.activate = function() { - layer.active = true; - layer.controllerElement.classList.add('active'); - } - - layer.deactivate = function() { - layer.active = false; - layer.controllerElement.classList.remove('active'); - } - - layer.refreshPreview = function() { - layer.previewElement.src = layer.canvas.toDataURL(); - } - - layer.changeOpacity = function(opacity) { - console.log({opacity}); - layer.opacity = opacity; - layer.canvas.style.opacity = opacity - } - - return layer; -} // }}} - -function makeLayers({height=600, width=800, backgroundColor='rgb(255, 255, 255)'}) { // {{{ - const layers = []; - layers.height = height; - layers.width = width; - - layers.addButton = document.createElement('div'); - layers.addButton.classList.add('button'); - layers.addButton.classList.add('layer-add-button'); - layers.addButton.innerHTML = ''; - layers.addButton.addEventListener('click', () => { - layers.add(); - }); - - layers.setHeight = function(height) { - layers.height = height; - layers.forEach(layer => layer.canvas.setHeight(height)); - easelElement.style.height = height + 2 + 'px'; - } - - layers.setHeight(height); - - layers.setWidth = function(width) { - layers.width = width; - layers.forEach(layer => layer.canvas.setWidth(width)); - easelElement.style.width = width + 2 + 'px'; - } - - layers.setWidth(width); - - layers.resize = function(width, height) { - layers.height = height; - layers.width = width; - easelElement.style.height = height * zoom + 2 + 'px'; - easelElement.style.width = width * zoom + 2 + 'px'; - layers.forEach(layer => layer.canvas.resize(width, height)); - layers[0].canvas.fill(backgroundColor); - } - - layers.zoom = function(newZoom) { - easelElement.style.height = layers.height * zoom + 2 + 'px'; - easelElement.style.width = layers.width * zoom + 2 + 'px'; - layers.forEach(layer => { - layer.canvas.style.height = layers.height * zoom + 'px'; - layer.canvas.style.width = layers.width * zoom + 'px'; - }); - } - - layers.resetPosition = function() { - const studioRect = studioElement.getBoundingClientRect(); - easelElement.style.left = `${studioRect.left}px`; - easelElement.style.top = `${studioRect.top}px`; - } - - layers.refreshControllers = function() { - layerControllersElement.innerHTML = ''; - layers.forEach(layer => { - layerControllersElement.appendChild(layer.controllerElement); - }); - layerControllersElement.appendChild(layers.addButton); - } - - layers.refreshLayers = function() { - easelElement.innerHTML = ''; - layers.forEach(layer => { - easelElement.appendChild(layer.canvas); - }); - } - - layers.refreshPreviews = function() { - layers.forEach(layer => { - layer.refreshPreview(); - }); - } - - layers.refresh = function() { - layers.refreshControllers(); - layers.refreshLayers(); - layers.refreshPreviews(); - } - - layers.add = function() { - const layer = makeLayer({ - height: layers.height, - width: layers.width, - }); - layers.push(layer); - layers.setActive(layer); - layers.refresh(); - } - - layers.delete = function(layer) { - if (!layer.background) { - layer.canvas.deleteCanvas(); - layers.splice(layers.indexOf(layer), 1); - layers.refresh(); - } - } - - layers.deleteAll = function() { - layers.forEach(function(layer) { - if (!layer.background) { - layer.canvas.deleteCanvas(); - layers.splice(layers.indexOf(layer), 1); - } - }); - } - - layers.moveDown = function(layer) { - if (layer.background) return; - if (layers.indexOf(layer) === layers.length - 1) return; - const index = layers.indexOf(layer); - const temp = layers[index + 1]; - layers[index + 1] = layer; - layers[index] = temp; - layers.refresh(); - } - - layers.moveUp = function(layer) { - if (layer.background) return; - if (layers.indexOf(layer) === 1) return; - const index = layers.indexOf(layer); - const temp = layers[index - 1]; - layers[index - 1] = layer; - layers[index] = temp; - layers.refresh(); - } - - layers.mergeUp = function(layer) { - if (layer.background) return; - const index = layers.indexOf(layer); - const belowLayer = layers[index - 1]; - if (belowLayer.background) return; - belowLayer.canvas.add(layer.canvas); - layers.delete(layer); - layers.setActive(belowLayer); - } - - layers.mergeDown = function(layer) { - if (layer.background) return; - const index = layers.indexOf(layer); - if (index === layers.length - 1) return; - const aboveLayer = layers[index + 1]; - aboveLayer.canvas.add(layer.canvas); - layers.delete(layer); - layers.setActive(aboveLayer); - } - - layers.mergeAll = function() { - const backgroundLayer = layers[0]; - layers.forEach(layer => { - if (layer !== backgroundLayer) { - backgroundLayer.canvas.add(layer.canvas); - } - }); - layers.deleteAll(); - } - - layers.tempMergeAll = function() { - const backgroundLayerCopy = makeLayer({ - height: layers.height, - width: layers.width, - background: true, - }); - // backgroundLayerCopy.canvas.fill(backgroundColor); - layers.forEach(layer => { - if (!layer.background) { - backgroundLayerCopy.canvas.add(layer.canvas); - } - }); - return backgroundLayerCopy; - } - - layers.setActive = function(layer) { - layers.forEach(layer => layer.deactivate()); - layer.activate(); - } - - layers.getActive = function() { - return layers.find(layer => layer.active); - } - - layers.push(makeLayer({height, width, background: true})); - layers[0].canvas.fill(backgroundColor); - - return layers; -} // }}} - -// }}} - -const layers = makeLayers({height: initialHeight, width: initialWidth}); -layers.add(); -layers.setActive(layers[1]); - -// }}} - -// COLOR PREVIEW {{{ - -function makeColorPreview() { - const colorPreview = {} - colorPreview.element = document.createElement('div'); - colorPreview.element.id = 'color-preview'; - colorPreview.element.className = 'puck'; - colorPreview.element.style.backgroundColor = brushColor.toRgb(); - commandBarElement.appendChild(colorPreview.element); - colorPreview.update = function() { - colorPreview.element.style.backgroundColor = brushColor.toRgb(); - } - - return colorPreview; -} - -const colorPreview = makeColorPreview(); - -// }}} - -// BRUSH PREVIEW {{{ - -function makeBrushPreview() { - const brushPreview = {}; - brushPreview.element = document.createElement('div'); - brushPreview.element.id = 'brush-preview'; - brushPreview.element.style.width = brushSize + 'px'; - brushPreview.element.style.height = brushSize + 'px'; - brushPreview.element.style.position = 'absolute'; - brushPreview.element.style.display = 'none'; - brushPreview.element.style.pointerEvents = 'none'; - brushPreview.element.style.border = '1px solid black'; - brushPreview.element.style.zIndex = '1000'; - - document.body.appendChild(brushPreview.element); - - brushPreview.update = function() { - brushPreview.element.style.width = brushSize * zoom + 'px'; - brushPreview.element.style.height = brushSize * zoom + 'px'; - if (brushShape === 'circle') { - brushPreview.element.style.borderRadius = '50%'; - } else { - brushPreview.element.style.borderRadius = '0'; - } - if (brushSize < 3) { - brushPreview.element.style.visibility = 'hidden'; - } else { - brushPreview.element.style.visibility = 'visible'; - } - } - - brushPreview.setPosition = function(x, y) { - brushPreview.element.style.left = x - brushSize * zoom / 2 + 'px'; - brushPreview.element.style.top = y - brushSize * zoom / 2 + 'px'; - } - - brushPreview.show = function() { - brushPreview.element.style.display = 'block'; - } - - brushPreview.hide = function() { - brushPreview.element.style.display = 'none'; - } - - brushPreview.update(); - - return brushPreview; -} - -const brushPreview = makeBrushPreview(); - - -// }}} - -// COMMANDS {{{ - -// FACTORY {{{ - -function makeCommand({name, key, icon, func}) { - if (!name) throw new Error('No name provided'); - if (!icon) throw new Error('No icon provided'); - if (!func) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const command = {}; - command.name = name; - command.key = key; - command.func = function() { - func(); - infos.update(); - } - command.button = makeButtonElement({ - icon: icon, - name: name, - key: key, - func: command.func, - }); - commandBarElement.appendChild(command.button.element); - - return command -} - -function makeCommands() { - const commands = []; - - commands.add = function({name, key, icon, func}) { - const command = makeCommand({name, key, icon, func}); - commands.push(command); - } - - commands.get = function(name) { - return commands.find(command => command.name === name); - } - - commands.click = function(name) { - const command = commands.get(name); - command.func(); - } - - return commands; -} - - -// }}} - -const commands = makeCommands(); - -commands.add({ // flip-horizontally {{{ - name: 'flip-horizontally', - key: 'f', - icon: '', - func: function flipCanvasHorizontally() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(-1, 1); - ctx.translate(-canvas.width, 0); - canvas.restoreCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // flip-vertically {{{ - name: 'flip-vertically', - key: 'v', - icon: '', - func: function flipCanvasVertically() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - canvas.saveCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(1, -1); - ctx.translate(0, -canvas.height); - canvas.restoreCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // export {{{ - name: 'export', - key: 'e', - icon: '', - func: function exportCanvas() { - const mergedCanvas = layers.tempMergeAll().canvas; - const link = document.createElement('a'); - link.download = 'canvas.png'; - link.href = mergedCanvas.toDataURL(); - link.click(); - } -}); // }}} - -commands.add({ // import {{{ - name: 'import', - key: 'i', - icon: '', - func: function importCanvas() { - const input = document.createElement('input'); - input.type = 'file'; - input.accept = 'image/*'; - input.onchange = function(e) { - const file = e.target.files[0]; - const reader = new FileReader(); - reader.onload = function(e) { - const dataURL = e.target.result; - const img = new Image(); - img.src = dataURL; - img.onload = function() { - layers.add(); - const canvas = layers.getActive().canvas; - canvas.fromDataUrl(dataURL, `${img.width}x${img.height}`); - layers.setWidth(img.width); - layers.setHeight(img.height); - layers.refresh(); - } - } - reader.readAsDataURL(file); - } - input.click(); - } -}); // }}} - -commands.add({ // clear {{{ - name: 'clear', - key: 'c', - icon: '', - func: function clearCanvas() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - canvas.saveCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = 'white'; - ctx.fillRect(0, 0, canvas.width, canvas.height); - } -}); // }}} - -commands.add({ // change-shape {{{ - name: 'change-shape', - key: 's', - icon: ``, - func: function changeShape() { - const currentIndex = shapes.indexOf(brushShape); - brushShape = shapes[(currentIndex + 1) % shapes.length]; - brushPreview.update(); - } -}); // }}} - -commands.add({ //reset {{{ - name: 'reset', - key: 'r', - icon: '', - func: function resetCanvas() { - zoom = 1; - layers.zoom(); - layers.resetPosition(); - } -}); - -// }}} - -// }}} - -// TOOLS {{{ - -// FACTORY {{{ - -function makeTool({name, key, icon, mouseDown, mouseMove, mouseUp, mouseDrag, mouseLeave}) { - if (!name) throw new Error('No name provided'); - if (!key) throw new Error('No key provided'); - if (!icon) throw new Error('No icon provided'); - - const tool = {}; - tool.name = name; - tool.key = key; - tool.icon = icon; - tool.mouseDown = mouseDown; - tool.mouseMove = mouseMove; - tool.mouseUp = mouseUp; - tool.mouseDrag = mouseDrag; - tool.mouseLeave = mouseLeave; - tool.active = false; - - tool.activate = function() { - tool.active = true; - tool.button.element.classList.add('active'); - } - - tool.deactivate = function() { - tool.active = false; - tool.button.element.classList.remove('active'); - } - - tool.button = makeButtonElement({ - icon: tool.icon, - name: tool.name, - key: tool.key, - func: function() { - tools.activate(tool.name); - } - }); - - toolBarElement.appendChild(tool.button.element); - - return tool; -} - -function makeTools() { - const tools = []; - - tools.prevToolName = 'na'; - - tools.add = function({name, key, icon, mouseDown, mouseMove, mouseUp, mouseDrag, mouseLeave}) { - const tool = makeTool({name, key, icon, mouseDown, mouseMove, mouseUp, mouseDrag, mouseLeave}); - tools.push(tool); - } - - tools.get = function(name) { - return tools.find(tool => tool.name === name); - } - - tools.getActive = function() { - return tools.find(tool => tool.active); - } - - tools.activate = function(name) { - const tool = tools.get(name); - if (tool.active) return; - if (tools.getActive()) { - tools.prevToolName = tools.getActive().name; - tools.forEach(tool => tool.deactivate()); - } - tool.activate(); - } - - tools.restore = function() { - const tool = tools.get(tools.prevToolName); - tools.forEach(tool => tool.deactivate()); - tool.activate(); - } - - return tools; -} - -// }}} - -const tools = makeTools(); - -tools.add({ // brush {{{ - name: 'brush', - key: 'b', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize === 1) { - canvas.drawPixel(canvasStartX, canvasStartY, brushColor.toRgb()); - } else { - canvas.drawShape(canvasStartX, canvasStartY, brushShape, brushSize, brushColor.toRgb()); - } - }, - mouseMove: function(e) { - brushPreview.show(); - brushPreview.setPosition(e.clientX, e.clientY); - }, - mouseDrag: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize === 1) { - canvas.drawLineWithPixels(canvasStartX, canvasStartY, canvasEndX, canvasEndY, brushColor.toRgb()); - } else { - canvas.drawLineWithShape(canvasStartX, canvasStartY, canvasEndX, canvasEndY, brushShape, brushSize, brushColor.toRgb()); - } - canvasStartX = canvasEndX; - canvasStartY = canvasEndY; - }, - mouseUp: function(e) { - layers.getActive().refreshPreview(); - }, - mouseLeave: function(e) { - brushPreview.hide(); - } -}); // }}} - -tools.add({ // content-move {{{ - name: 'content-move', - key: 'h', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - canvas.saveCanvas(); - }, - mouseDrag: function(e) { - const canvas = layers.getActive().canvas; - canvas.clearCanvas(); - canvas.restoreCanvas(dX, dY); - }, - mouseUp: function(e) { - layers.getActive().refreshPreview(); - }, -}); // }}} - -tools.add({ // move {{{ - name: 'move', - key: 'm', - icon: '', - mouseDown: function(e) { - startX = e.clientX - easelElement.offsetLeft; - startY = e.clientY - easelElement.offsetTop; - }, - mouseDrag: function(e) { - easelElement.style.left = dX + 'px'; - easelElement.style.top = dY + 'px'; - }, - cursor: 'fontawesome/png/arrows-alt-solid.png', -}); // }}} - -tools.add({ // zoom {{{ - name: 'zoom', - key: 'z', - icon: '', - mouseDrag: function(e) { - zoom += dX * dZoom; - if (zoom < 0.1) zoom = 0.1; - layers.zoom(); - brushPreview.update(); - startX = endX; - } -}); // }}} - -tools.add({ // bucket-fill {{{ - name: 'bucket-fill', - key: 'k', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - canvas.floodFill(canvasStartX, canvasStartY, brushColor.toRgbaArray()); - }, - mouseUp: function(e) { - layers.getActive().refreshPreview(); - } -}); // }}} - -tools.add({ // color-picker {{{ - name: 'color-picker', - key: 'a', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - const imageData = canvas.ctx.getImageData(canvasStartX, canvasStartY, 1, 1).data; - const pickedColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - brushColor.fromRgb(pickedColor); - colorPreview.update(); - } -}); // }}} - -tools.add({ // brush-size {{{ - name: 'brush-size', - key: 'd', - icon: '', - mouseMove: function(e) { - brushPreview.show(); - brushPreview.setPosition(e.clientX, e.clientY); - }, - mouseDrag: function(e) { - brushSize += dX * dBrushSize; - if (brushSize < 1) brushSize = 1; - if (brushSize > maxBrushSize) brushSize = maxBrushSize; - startX = endX; - brushPreview.update(); - }, - mouseLeave: function(e) { - brushPreview.hide(); - } -}); // }}} - -tools.add({ // resize {{{ - name: 'resize', - key: 'r', - icon: '', - mouseDrag: function(e) { - let newWidth = layers.width + dX / zoom; - let newHeight = layers.height + dY / zoom; - layers.resize(newWidth, newHeight); - startX = endX; - startY = endY; - }, - mouseUp: function(e) { - layers.refreshPreviews(); - } -}); // }}} - -tools.add({ // color-mix {{{ - name: 'color-mix', - key: 'x', - icon: '', - mouseDown: function(e) { - tempColor.copy(canvasColor); - startTime = Date.now(); - interval = setInterval(() => { - if (!tempColor.match(canvasColor)) { - startTime = Date.now(); - tempColor.copy(canvasColor); - } - if (!canvasColor.isOpaque()) { - startTime = Date.now(); - } else { - const elapsedTime = Date.now() - startTime; - const t = Math.min(1, elapsedTime / 10000); - brushColor.mixx(canvasColor, t); - colorPreview.update(); - if (!isMouseDown) { - clearInterval(interval); - startTime = Date.now(); - } - } - }, 50); - }, - mouseUp: function(e) { - clearInterval(interval); - }, - mouseLeave: function(e) { - clearInterval(interval); - } -}); // }}} - -// tools.add({ // opacity {{{ -// name: 'opacity', -// key: 'o', -// icon: '', -// mouseDrag: function(e) { -// layer = layers.getActive(); -// var opacity = layer.opacity += dX * dOpacity; -// if (opacity < 0) opacity = 0; -// if (opacity > 1) opacity = 1; -// layer.changeOpacity(opacity); -// startX = endX; -// }, -// }); // }}} - -// }}} - -// PUCKS {{{ - -// FACTORY {{{ - -function makePuck({puckColor, key}) { - if (!puckColor) throw new Error('No puck color provided'); - - - const puck = {} - puck.element = document.createElement('div'); - puck.element.style.backgroundColor = puckColor; - puck.element.className = 'puck'; - - if (key) { - puck.key = key; - const keyHint = document.createElement('div'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - puck.element.appendChild(keyHint); - } - - puck.element.addEventListener('mousedown', (e) => { - const startTime = Date.now(); - interval = setInterval(() => { - const elapsedTime = Date.now() - startTime; - const t = Math.min(1, elapsedTime / 10000); - brushColor.mixxRgb(puck.element.style.backgroundColor, t); - colorPreview.update(); - }, 50); - }); - - puck.element.addEventListener('mouseup', (e) => { - clearInterval(interval); - }); - - puck.element.addEventListener('mouseleave', (e) => { - clearInterval(interval); - }); - - puck.keydown = function(e) { - startTime = Date.now(); - var interval = setInterval(() => { - const elapsedTime = Date.now() - startTime; - const t = Math.min(1, elapsedTime / 10000); - brushColor.mixxRgb(puck.element.style.backgroundColor, t); - colorPreview.update(); - }, 50); - function onKeyUp() { - clearInterval(interval); - document.removeEventListener('keyup', onKeyUp); - } - document.addEventListener('keyup', onKeyUp); - } - - commandBarElement.appendChild(puck.element); - - return puck; -} - -function makePucks() { - const pucks = []; - - pucks.add = function({puckColor, key}) { - const puck = makePuck({puckColor, key}); - pucks.push(puck); - } - - return pucks; -} - -// }}} - -const pucks = makePucks(); - - -pucks.add({ // black - puckColor: 'rgb(0, 0, 0)', -}); - -pucks.add({ // white - puckColor: 'rgb(255, 255, 255)', -}); - -pucks.add({ // Cadmium Yellow - puckColor: 'rgb(254, 236, 0)', -}); -pucks.add({ // Hansa Yellow - puckColor: 'rgb(252, 211, 0)', -}); -pucks.add({ // Cadmium Orange - puckColor: 'rgb(255, 105, 0)', -}); -pucks.add({ // Cadmium Red - puckColor: 'rgb(255, 39, 2)', -}); -pucks.add({ // Quinacridone Magenta - puckColor: 'rgb(128, 2, 46)', -}); -pucks.add({ // Cobalt Violet - puckColor: 'rgb(78, 0, 66)', -}); -pucks.add({ // Ultramarine Blue - puckColor: 'rgb(25, 0, 89)', -}); -pucks.add({ // Cobalt Blue - puckColor: 'rgb(0, 33, 133)', -}); -pucks.add({ // Phthalo Blue - puckColor: 'rgb(13, 27, 68)', -}); -pucks.add({ // Phthalo Green - puckColor: 'rgb(0, 60, 50)', -}); -pucks.add({ // Permanent Green - puckColor: 'rgb(7, 109, 22)', -}); -pucks.add({ // Sap Green - puckColor: 'rgb(107, 148, 4)', -}); -pucks.add({ // Burnt Sienna - puckColor: 'rgb(123, 72, 0)', -}); -pucks.add({ // red - puckColor: 'rgb(255, 0, 0)', -}); -pucks.add({ // green - puckColor: 'rgb(0, 255, 0)', -}); -pucks.add({ // blue - puckColor: 'rgb(0, 0, 255)', -}); -pucks.add({ // cyan - puckColor: 'rgb(0, 255, 255)', -}); -pucks.add({ // yellow - puckColor: 'rgb(255, 255, 0)', -}); -pucks.add({ // magenta - puckColor: 'rgb(255, 0, 255)', -}); - -// }}} - -// INFO {{{ - -// FACTORY {{{ - -function makeInfo({name, updateFunction}) { - if (!name) throw new Error('No name provided'); - if (!updateFunction) throw new Error('No update function provided'); - - const info = {}; - info.name = name; - info.updateFunction = updateFunction; - - info.element = document.createElement('span'); - info.element.className = 'info'; - - const key = document.createElement('span'); - key.className = 'key'; - key.innerHTML = info.name + ':'; - - const value = document.createElement('span'); - value.className = 'value'; - value.innerHTML = '0'; - - info.element.appendChild(key); - info.element.appendChild(value); - - infoBarElement.appendChild(info.element); - - info.update = function() { - let v = updateFunction(); - if (v === undefined) v = '?'; - value.innerHTML = v; - } - - return info; -} - -function makeInfos() { - const infos = [] - infos.add = function({name, updateFunction}) { - const info = makeInfo({name, updateFunction}); - infos.push(info); - } - infos.update = function() { - infos.forEach(function(info){ - info.update(); - }); - } - return infos; -} - -// }}} - -const infos = makeInfos(); - -infos.add({ - name: 'zoom', - updateFunction: function() { - var percent = zoom * 100; - return percent.toFixed(0) + '%'; - } -}); - -infos.add({ - name: 'brush', - updateFunction: function() { - return brushSize; - } -}); - - -infos.add({ - name: 'x', - updateFunction: function() { - return canvasEndX; - } -}); - - -infos.add({ - name: 'y', - updateFunction: function() { - return canvasEndY; - } -}); - -infos.add({ - name: 'color', - updateFunction: function() { - return brushColor.toRgb(); - } -}); - -infos.add({ - name: 'width', - updateFunction: function() { - return "width"; - } -}); - -infos.add({ - name: 'height', - updateFunction: function() { - return "height"; - } -}); - -infos.add({ - name: 'shape', - updateFunction: function() { - return brushShape; - } -}); - -infos.add({ - name: 'tool', - updateFunction: function() { - return tools.getActive().name; - } -}); - -infos.add({ - name: 'cursor-color', - updateFunction: function() { - return canvasColor; - } -}); - -// }}} - -// MOUSE EVENT LISTENERS {{{ - -studioElement.addEventListener('mousedown', (e) => { - const canvas = layers.getActive().canvas; - isMouseDown = true; - startX = e.clientX; - startY = e.clientY; - canvasStartX = canvas.getPositionOnCanvas(e).x; - canvasStartY = canvas.getPositionOnCanvas(e).y; - canvasEndX = canvas.getPositionOnCanvas(e).x; - canvasEndX = canvas.getPositionOnCanvas(e).y; - canvasColor.fromRgbaArray(canvas.getRgbaColorArrayAtPixel(canvasStartX, canvasStartY)); - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseDown) { - tool.mouseDown(e); - } - } - } - - infos.update(); - -}); - -studioElement.addEventListener('mousemove', (e) => { - const canvas = layers.getActive().canvas; - endX = e.clientX; - endY = e.clientY; - dX = endX - startX; - dY = endY - startY; - canvasEndX = canvas.getPositionOnCanvas(e).x; - canvasEndY = canvas.getPositionOnCanvas(e).y; - canvasDX = canvasEndX - canvasStartX; - canvasDY = canvasEndY - canvasStartY; - canvasColor.fromRgbaArray(canvas.getRgbaColorArrayAtPixel(canvasEndX, canvasEndY)); - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseMove) { - tool.mouseMove(e); - } - } - } - - if (isMouseDown) { - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseDrag) { - tool.mouseDrag(e); - } - } - } - } - - infos.update(); - -}); - - -studioElement.addEventListener('mouseup', () => { - isMouseDown = false; - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseUp) { - tool.mouseUp(); - break; - } - } - } - - infos.update(); -}); - -studioElement.addEventListener('mouseleave', () => { - isMouseDown = false; - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseLeave) { - tool.mouseLeave(); - break; - } - } - } - - infos.update(); -}); - -// }}} - -// KEYBINDINGS {{{ - -document.addEventListener('keydown', (e) => { - if (isKeyDown) return; - - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key.toLowerCase()) { - tools.activate(tool.name); - } - }); - - commands.forEach(command => { - if (command.key.toLowerCase() === e.key.toLowerCase()) { - command.func(); - } - }); - - pucks.filter(puck => puck.key !== undefined).forEach(puck => { - if (puck.key.toLowerCase() === e.key.toLowerCase()) { - puck.keydown(e); - } - }); - - isKeyDown = true; - -}); - -document.addEventListener('keyup', (e) => { - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key) { - tools.restore(); - } - }); - - isKeyDown = false; - -}); - -// }}} - -layers.resetPosition(); -tools.activate('brush'); diff --git a/archive/temp.js b/archive/temp.js deleted file mode 100644 index fdb075f..0000000 --- a/archive/temp.js +++ /dev/null @@ -1,724 +0,0 @@ -const colorPreview = document.createElement('div'); -colorPreview.id = 'color-preview'; -colorPreview.className = 'puck'; -colorPreview.style.backgroundColor = color; - -menuBar.appendChild(colorPreview); - - -// }}} - -// helpers {{{ - - -function saveCanvas() { - const dataURL = canvas.toDataURL(); - const dimensions = `${canvas.width}x${canvas.height}`; - localStorage.setItem('mixxCanvas', dataURL); - localStorage.setItem('mixxDimensions', dimensions); - console.log('Canvas saved'); -} - -function loadCanvas() { - const dataURL = localStorage.getItem('mixxCanvas'); - const dimensions = localStorage.getItem('mixxDimensions'); - if (dataURL && dimensions) { - const img = new Image(); - img.src = dataURL; - img.onload = function() { - canvas.width = dimensions.split('x')[0]; - canvas.height = dimensions.split('x')[1]; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - ctx.drawImage(img, 0, 0); - } - } else { - console.log('No saved canvas found'); - } -} - -function clearCanvasFromLocalStorage() { - localStorage.removeItem('savedCanvas'); - localStorage.removeItem('canvasDimensions'); -} - -function saveState() { - if (undoStack.length >= maxHistory) { - undoStack.shift(); // Remove the oldest state if the stack exceeds the limit - } - - undoStack.push({ - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }); - - redoStack = []; // Clear the redo stack whenever a new action is performed -} - -function undo() { - if (undoStack.length > 0) { - const currentState = { - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }; - - redoStack.push(currentState); // Save current state to the redo stack - const lastState = undoStack.pop(); // Get the last state from the undo stack - - canvas.width = lastState.width; - canvas.height = lastState.height; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - - const img = new Image(); - img.src = lastState.imageData; - img.onload = function() { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(img, 0, 0); - }; - } -} - -function redo() { - if (redoStack.length > 0) { - const currentState = { - imageData: canvas.toDataURL(), - width: canvas.width, - height: canvas.height - }; - - undoStack.push(currentState); // Save current state to the undo stack - const nextState = redoStack.pop(); // Get the last state from the redo stack - - canvas.width = nextState.width; - canvas.height = nextState.height; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - - const img = new Image(); - img.src = nextState.imageData; - img.onload = function() { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(img, 0, 0); - }; - } -} - -function getPositionOnCanvas(e) { - const rect = canvas.getBoundingClientRect(); - return { - x: Math.round((e.clientX - rect.left) / zoom), - y: Math.round((e.clientY - rect.top) / zoom), - }; -} - -function drawCircle(x, y) { - ctx.beginPath(); - ctx.arc(x, y, brushSize / 2, 0, 2 * Math.PI, false); - ctx.fillStyle = color; - ctx.fill(); -} - -function drawLineWithCircles(x1, y1, x2, y2) { - const dx = x2 - x1; - const dy = y2 - y1; - const distance = Math.sqrt(dx * dx + dy * dy); - const steps = Math.ceil(distance / (brushSize / 5)); - - for (let i = 0; i <= steps; i++) { - const x = x1 + (dx * i) / steps; - const y = y1 + (dy * i) / steps; - drawCircle(x, y); - } -} - -function saveCanvasContents() { - tempCanvas = document.createElement('canvas'); - tempCanvas.width = canvas.width; - tempCanvas.height = canvas.height; - const tempCtx = tempCanvas.getContext('2d'); - tempCtx.drawImage(canvas, 0, 0); -} - -function updateColorPreview() { - colorPreview.style.backgroundColor = color; -} - -function hexToRgbArray(hex) { - if (hex.startsWith('#')) { - hex = hex.slice(1); - } - - if (hex.length === 3) { - hex = hex.split('').map(char => char + char).join(''); - } - - const bigint = parseInt(hex, 16); - return [(bigint >> 16) & 255, (bigint >> 8) & 255, bigint & 255]; -} - -function floodFill(x, y, fillColor) { - const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - - const targetColor = getColorAtPixel(data, x, y); - const fillColorArray = hexToRgbArray(fillColor); - - if (colorsMatch(targetColor, fillColorArray)) { - return; // The clicked point is already the fill color - } - - const stack = [{x, y}]; - - while (stack.length > 0) { - const {x, y} = stack.pop(); - const currentColor = getColorAtPixel(data, x, y); - - if (colorsMatch(currentColor, targetColor)) { - setColorAtPixel(data, x, y, fillColorArray); - - if (x > 0) stack.push({x: x - 1, y}); - if (x < canvas.width - 1) stack.push({x: x + 1, y}); - if (y > 0) stack.push({x, y: y - 1}); - if (y < canvas.height - 1) stack.push({x, y: y + 1}); - } - } - - ctx.putImageData(imageData, 0, 0); -} - -function getColorAtPixel(data, x, y) { - const index = (y * canvas.width + x) * 4; - return [data[index], data[index + 1], data[index + 2], data[index + 3]]; -} - -function setColorAtPixel(data, x, y, color) { - const index = (y * canvas.width + x) * 4; - data[index] = color[0]; - data[index + 1] = color[1]; - data[index + 2] = color[2]; - data[index + 3] = 255; // Set alpha to fully opaque -} - -function colorsMatch(a, b) { - return a[0] === b[0] && a[1] === b[1] && a[2] === b[2] && a[3] === b[3]; -} - -// }}} - -// mousedown {{{ - -canvasArea.addEventListener('mousedown', (e) => { - if (e.target.closest('.puck')) return; - - startX = e.clientX; - startY = e.clientY; - canvasStartX = getPositionOnCanvas(e).x; - canvasStartY = getPositionOnCanvas(e).y; - saveCanvasContents(); - isMouseDown = true; - - if ( - tool === 'brush' || - tool === 'content-move' || - tool === 'resize' || - tool === 'zoom' || - tool === 'bucket-fill' - ) { - saveState(); - } - - if (tool === 'brush') { - console.log('brush'); - drawCircle(canvasStartX, canvasStartY); - } else if (tool === 'bucket-fill') { - floodFill(canvasStartX, canvasStartY, color); - return; - } else if (tool === 'move') { - startX = e.clientX - canvasContainer.offsetLeft; - startY = e.clientY - canvasContainer.offsetTop; - } else if (tool === 'color-picker') { - const imageData = ctx.getImageData(canvasStartX, canvasStartY, 1, 1).data; - const pickedColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - color = pickedColor; - console.log('Picked Color:', pickedColor); - updateColorPreview(); - return; - } -}); - -// }}} - -// mousemove {{{ - -canvasArea.addEventListener('mousemove', (e) => { - - endX = e.clientX; - endY = e.clientY; - dX = endX - startX; - dY = endY - startY; - - canvasEndX = getPositionOnCanvas(e).x; - canvasEndY = getPositionOnCanvas(e).y; - canvasDX = canvasEndX - canvasStartX; - canvasDY = canvasEndY - canvasStartY; - - if (tool == 'brush-size') { - brushPreview.style.display = 'block'; - brushPreview.style.width = brushSize + 'px'; - brushPreview.style.height = brushSize + 'px'; - brushPreview.style.left = e.clientX - brushSize / 2 + 'px'; - brushPreview.style.top = e.clientY - brushSize / 2 + 'px'; - } - - if (isMouseDown) { - - if (tool === 'brush-size') { - brushSize += dX * dBrushSize; - if (brushSize < 1) brushSize = 1; - if (brushSize > maxBrushSize) brushSize = maxBrushSize; - startX = endX; - } else if (tool === 'brush') { - drawLineWithCircles(canvasStartX, canvasStartY, canvasEndX, canvasEndY); - - canvasStartX = canvasEndX; - canvasStartY = canvasEndY; - - } else if (tool === 'content-move') { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = backgroundColor; - ctx.fillRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(tempCanvas, dX, dY); - } else if (tool === 'move') { - canvasContainer.style.left = dX + 'px'; - canvasContainer.style.top = dY + 'px'; - } else if (tool === 'zoom') { - zoom += dX * dZoom; - if (zoom < 0.1) zoom = 0.1; - canvas.style.height = canvasHeight * zoom + 'px'; - canvas.style.width = canvasWidth * zoom + 'px'; - startX = endX; - } else if (tool === 'resize') { - let newWidth = canvasWidth + dX / zoom; - let newHeight = canvasHeight + dY / zoom; - if (newWidth > 0 && newHeight > 0) { - canvas.width = newWidth; - canvas.height = newHeight; - canvas.style.width = newWidth * zoom + 'px'; - canvas.style.height = newHeight * zoom + 'px'; - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = backgroundColor; - ctx.fillRect(0, 0, canvas.width, canvas.height); - ctx.drawImage(tempCanvas, 0, 0); - } - } else if (tool === 'color-mix') { - - const imageData = ctx.getImageData(canvasEndX, canvasEndY, 1, 1).data; - const canvasColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - - const distance = Math.sqrt(Math.pow(e.clientX - startX, 2) + Math.pow(e.clientY - startY, 2)); - const t = Math.min(1, distance / 300); - - const mixedColor = mixbox.lerp(color, canvasColor, t); - - color = mixedColor; - - startX = e.clientX; - startY = e.clientY; - - } - - } - - updateInfos(); - updateColorPreview(); -}); - -// }}} - -// mouseup {{{ - -canvasArea.addEventListener('mouseup', (e) => { - isMouseDown = false; - if (tool === 'brush') { - ctx.closePath(); - } else if (tool === 'resize') { - canvasWidth = canvas.width; - canvasHeight = canvas.height; - } - - updateColorPreview(); -}); - -// }}} - -// mouseleave {{{ - -canvasArea.addEventListener('mouseleave', (e) => { - isMouseDown = false; - brushPreview.style.display = 'none'; -}); - -// }}} - -// keybindings {{{ - -const toolKeyBindings = {} - -const functionKeyBindings = { -} - -document.addEventListener('keydown', (e) => { - if (keyDown) return; - - const newTool = toolKeyBindings[e.key.toLowerCase()] - if (newTool) { - prevTool = tool; - keyDown = true; - changeTool(newTool); - return; - } - - const func = functionKeyBindings[e.key]; - if (func) { - func(); - return; - } - -}); - -document.addEventListener('keyup', (e) => { - const currentTool = toolKeyBindings[e.key.toLowerCase()] - if (currentTool) { - keyDown = false; - if (e.key == e.key.toLowerCase()) { - changeTool(prevTool); - return; - } - } -}); - -// }}} - -// tools {{{ - -var toolButtons = []; - -function changeTool(toolName) { - toolButtons.forEach(button => button.button.classList.remove('active')); - toolButtons.find(button => button.name === toolName).button.classList.add('active'); - tool = toolName; - brushPreview.style.display = 'none'; - updateInfos(); -} - -function createToolButton(toolName, displayName, icon, key=undefined) { - const button = document.createElement('div'); - button.classList.add('button'); - button.classList.add('tool'); - button.innerHTML = icon; - button.title = displayName; - button.addEventListener('click', () => { - changeTool(toolName); - }); - - if (key) { - const keyHint = document.createElement('span'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - button.appendChild(keyHint); - toolKeyBindings[key] = toolName; - } - - toolBar.appendChild(button); - toolButtons.push({'name': toolName, 'button': button}); - return button; -} - -createToolButton('brush', 'Brush', '', 'b'); -createToolButton('content-move', 'Move Content', '', 'h'); -createToolButton('move', 'Move Canvas', '', 'm'); -createToolButton('zoom', 'Zoom', '', 'z'); -createToolButton('resize', 'Resize', '', 'r'); -createToolButton('color-picker', 'Color Picker', '', 'a'); -createToolButton('color-mix', 'Color Mix', '', 'x'); -createToolButton('brush-size', 'Brush Size', '', 'd'); -createToolButton('bucket-fill', 'Bucket Fill', '', 'k'); - -// }}} - -// menu functons {{{ - -function flipCanvasHorizontally(e) { - saveState(); - ctx.save(); - saveCanvasContents(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(-1, 1); - ctx.translate(-canvas.width, 0); - ctx.drawImage(tempCanvas, 0, 0); - ctx.restore(); -} - -function flipCanvasVertically(e) { - saveState(); - ctx.save(); - saveCanvasContents(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(1, -1); - ctx.translate(0, -canvas.height); - ctx.drawImage(tempCanvas, 0, 0); - ctx.restore(); -} - -function exportCanvas(e) { - const link = document.createElement('a'); - link.download = 'canvas.png'; - link.href = canvas.toDataURL(); - link.click(); -} - -function importCanvas(e) { - const input = document.createElement('input'); - input.type = 'file'; - input.accept = 'image/*'; - input.onchange = (e) => { - const file = e.target.files[0]; - const reader = new FileReader(); - reader.onload = (e) => { - const img = new Image(); - img.onload = () => { - canvas.width = img.width; - canvas.height = img.height; - ctx.drawImage(img, 0, 0); - } - img.src = e.target.result; - } - reader.readAsDataURL(file); - } - input.click(); -} - -function clearCanvas(e) { - saveState(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = backgroundColor; - ctx.fillRect(0, 0, canvas.width, canvas.height); -} - -function resetZoom(e) { - zoom = 1; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvasWidth = canvas.width; - canvasHeight = canvas.height; - - canvasAreaRect = canvasArea.getBoundingClientRect(); - - canvasContainer.style.left = `${canvasAreaRect.left}px`; - canvasContainer.style.top = `${canvasAreaRect.top}px`; -} - -// }}} - -// menu {{{ - -var menuButtons = []; - -function createMenuButton(icon, name, clickFunction, key=undefined) { - const button = document.createElement('div'); - button.className = 'button'; - button.innerHTML = icon; - button.title = name; - if (clickFunction) { - button.addEventListener('click', () => { - clickFunction() - updateInfos(); - }); - } - menuBar.appendChild(button); - if (key) { - const keyHint = document.createElement('span'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - button.appendChild(keyHint); - functionKeyBindings[key] = clickFunction; - } - return button; -} - -menuButtons.push(createMenuButton('', 'Save', saveCanvas, 's')); -menuButtons.push(createMenuButton('', 'Load', loadCanvas)); -menuButtons.push(createMenuButton('', 'Clear', clearCanvas)); -menuButtons.push(createMenuButton('', 'Export', exportCanvas)); -menuButtons.push(createMenuButton('', 'Import', importCanvas)); - - -menuButtons.push(createMenuButton('', 'Flip Horizontally', flipCanvasHorizontally, 'f')); -menuButtons.push(createMenuButton('', 'Flip Vertically', flipCanvasVertically, 'v')); -menuButtons.push(createMenuButton('', 'Undo', undo, 'u')); -menuButtons.push(createMenuButton('', 'Redo', redo, 'y')); -menuButtons.push(createMenuButton('', 'Clear', clearCanvas, 'c')); -menuButtons.push(createMenuButton('', 'Reset', resetZoom, 't')); -menuButtons.push(createMenuButton('', 'Add Color', createPuck)); - -// }}} - -// pucks {{{ - -function createPuck(c, editable=true, key=undefined) { - if (c === undefined) { - c = color; - } - - const puck = document.createElement('div'); - puck.className = 'puck'; - puck.style.backgroundColor = c; - - // const selectHandle = document.createElement('div'); - // selectHandle.className = 'select-handle'; - // selectHandle.innerHTML = ''; - // puck.appendChild(selectHandle); - - // selectHandle.addEventListener('click', () => { - // color = puck.style.backgroundColor; - // updateColorPreview(); - // updateInfos(); - // }); - - if (editable) { - // const updateHandle = document.createElement('div'); - // updateHandle.className = 'update-handle'; - // updateHandle.innerHTML = ''; - // puck.appendChild(updateHandle); - - // updateHandle.addEventListener('click', () => { - // puck.style.backgroundColor = color; - // }); - - const deleteHandle = document.createElement('div'); - deleteHandle.className = 'delete-handle'; - deleteHandle.innerHTML = ''; - puck.appendChild(deleteHandle); - - deleteHandle.addEventListener('click', () => { - console.log("test"); - puck.remove(); - }); - } - - if (key) { - const keyHint = document.createElement('div'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - puck.appendChild(keyHint); - } - - function mixx(startTime) { - var interval = setInterval(() => { - const elapsedTime = Date.now() - startTime; - const t = Math.min(1, elapsedTime / 10000); - const mixedColor = mixbox.lerp(color, puck.style.backgroundColor, t); - color = mixedColor; - updateColorPreview(); - updateInfos(); - }, 50); - return interval; - } - - puck.addEventListener('mousedown', (e) => { - const startTime = Date.now(); - var interval = mixx(startTime); - function onMouseUp() { - clearInterval(interval); - document.removeEventListener('mouseup', onMouseUp); - } - document.addEventListener('mouseup', onMouseUp); - }); - - document.addEventListener('keydown', (e) => { - if (e.key == key) { - console.log(e.key); - const startTime = Date.now(); - var interval = mixx(startTime); - function onKeyUp() { - clearInterval(interval); - document.removeEventListener('keyup', onKeyUp); - } - document.addEventListener('keyup', onKeyUp); - } - }); - - menuBar.appendChild(puck); -} - -createPuck(c='rgb(0, 0, 0)', editable=false, key='1'); -createPuck(c='rgb(255, 0, 0)', editale=false, key='2'); -createPuck(c='rgb(0, 0, 255)', editale=false, key='3'); -createPuck(c='rgb(255, 255, 0)', editale=false, key='4'); -createPuck(c='rgb(99, 60, 22)', editale=false, key='5'); -createPuck(c='rgb(0, 255, 0)', editale=false, key='6'); -createPuck(c='rgb(255, 0, 255)', editale=false, key='7'); -createPuck(c='rgb(0, 255, 255)', editale=false, key='8'); -createPuck(c='rgb(255, 255, 255)', editale=false, key='9'); - - -// }}} - -// info {{{ - -var infos = []; - -function createInfo(name, updateFunction) { - const info = document.createElement('span'); - info.className = 'info'; - const key = document.createElement('span'); - key.className = 'key'; - key.innerHTML = name + ':'; - const value = document.createElement('span'); - value.className = 'value'; - value.innerHTML = '0'; - info.appendChild(key); - info.appendChild(value); - infoBar.appendChild(info); - function update() { - let v = updateFunction(); - if (v === undefined) v = '?'; - value.innerHTML = v; - } - return update; -} - -infos.push(createInfo('zoom', function() { - var percent = zoom * 100; - return percent.toFixed(0) + '%'; -})); -infos.push(createInfo('brush', function() { return brushSize; })); -infos.push(createInfo('x', function() { return canvasEndX; })); -infos.push(createInfo('y', function() { return canvasEndY; })); -infos.push(createInfo('color', function() { return color; })); -infos.push(createInfo('width', function() { return canvas.width; })); -infos.push(createInfo('height', function() { return canvas.height; })); - -function updateInfos() { - infos.forEach(info => info()); -} - -// }}} - -// start {{{ - -ctx.fillStyle = backgroundColor; -ctx.fillRect(0, 0, canvas.width, canvas.height); -updateInfos(); -toolButtons[0]['button'].click(); - -// }}} diff --git a/archive/temp2.js b/archive/temp2.js deleted file mode 100644 index 1fcc457..0000000 --- a/archive/temp2.js +++ /dev/null @@ -1,1282 +0,0 @@ -// CONSTANTS {{{ - -const commandBarElement = document.getElementById('menu-bar'); -const toolBarElement = document.getElementById('tool-bar'); -const layerControllersElement = document.getElementById('layer-controllers'); -const studioElement = document.getElementById('studio'); -const infoBarElement = document.getElementById('info-bar'); -const easelElement = document.getElementById('easel'); -const brushPreviewElement = document.getElementById('brush-preview'); - -const dZoom = 0.001; -const dBrushSize = 0.5; -const initialWidth = 800; -const initialHeight = 600; -const maxBrushSize = 500; -const tolerance = 1; -const shapes = ['circle', 'square']; - -// }}} - -// VARS {{{ - -let brushShape = 'circle' -let brushSize = 15; -let zoom = 1; - -let startX = 0; -let startY = 0; -let endX = 0; -let endY = 0; -let dX = 0; -let dY = 0; -let canvasStartX = 0; -let canvasStartY = 0; -let canvasEndX = 0; -let canvasEndY = 0; -let canvasDX = 0; -let canvasDY = 0; - -let isKeyDown = false; -let isMouseDown = false; - -// }}} - -// HELPERS {{{ - -function disableImageSmoothing(ctx) { - ctx.imageSmoothingEnabled = false; - if (ctx.imageSmoothingEnabled !== false) { - ctx.mozImageSmoothingEnabled = false; - ctx.webkitImageSmoothingEnabled = false; - ctx.msImageSmoothingEnabled = false; - } -}; - -function hexToRgbArray(hex) { - hex = hex.replace(/^#/, ''); - const bigint = parseInt(hex, 16); - const r = (bigint >> 16) & 255; - const g = (bigint >> 8) & 255; - const b = bigint & 255; - return [r, g, b, 255]; // Add 255 for full opacity -} - -function colorsMatch(color1, color2, tolerance = 0) { - return Math.abs(color1[0] - color2[0]) <= tolerance && - Math.abs(color1[1] - color2[1]) <= tolerance && - Math.abs(color1[2] - color2[2]) <= tolerance && - Math.abs(color1[3] - color2[3]) <= tolerance; // Include alpha comparison -} - -function makeIconElement(htmlString) { - const parentElement = document.createElement('div'); - parentElement.innerHTML = htmlString; - const iconElement = parentElement.firstChild; - return iconElement; -} - -function makeButtonElement({icon, name, func, key}) { - if (!icon) throw new Error('No icon provided'); - if (!name) throw new Error('No name provided'); - if (!func) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const button = {}; - button.name = name; - button.key = key; - button.icon = icon; - button.element = document.createElement('div'); - button.element.className = 'button'; - - button.element.addEventListener('click', func); - - button.refresh = function() { - button.element.innerHTML = ''; - const iconElement = makeIconElement(button.icon); - button.element.appendChild(iconElement); - button.element.title = button.name; - if (button.key) { - const keyHint = document.createElement('span'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - button.element.appendChild(keyHint); - } - } - - button.refresh(); - - return button; -} - -// }}} - -// COLOR {{{ - -function makeColor(rgb) { - const color = {}; - - color.color = rgb; - - color.toRgb = function() { - return color.rgb; - } - - color.toHex = function() { - color.r = parseInt(rgb[0]); - color.g = parseInt(rgb[1]); - color.b = parseInt(rgb[2]); - return `#${color.r.toString(16)}${color.g.toString(16)}${color.b.toString(16)}`; - } - - color.mix = function(color2, t) { - const color1 = color.color; - const newColor = mixbox.lerp(color1, color2, t); - color.color = newColor; - console.log(color.color); - colorPreview.update(); - } - - return color; -} - -const color = makeColor({r: 0, g: 0, b: 0}); - -// }}} - -// LAYERS {{{ - -// FACTORY {{{ - -function makeCanvas({height=600, width=800}) { // {{{ - const canvas = document.createElement('canvas'); - canvas.style.imageRendering = 'pixelated'; - canvas.ctx = canvas.getContext('2d'); - - canvas.tempCanvas = document.createElement('canvas'); - canvas.tempCtx = canvas.tempCanvas.getContext('2d'); - - canvas.saveCanvas = function() { - canvas.ctx.save(); - canvas.tempCanvas.width = canvas.width; - canvas.tempCanvas.height = canvas.height; - canvas.tempCtx.clearRect(0, 0, canvas.width, canvas.height); - disableImageSmoothing(canvas.tempCtx); - canvas.tempCtx.drawImage(canvas, 0, 0); - } - - canvas.clearCanvas = function() { - canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - } - - canvas.restoreCanvas = function(x=0, y=0) { - canvas.ctx.drawImage(canvas.tempCanvas, x, y); - } - - canvas.setHeight = function(height) { - canvas.height = height; - disableImageSmoothing(canvas.ctx); - }; - - canvas.setWidth = function(width) { - canvas.width = width; - disableImageSmoothing(canvas.ctx); - }; - - canvas.resize = function(width, height) { - canvas.width = width; - canvas.height = height; - disableImageSmoothing(canvas.ctx); - } - - canvas.getPositionOnCanvas = function(e) { - const rect = canvas.getBoundingClientRect(); - return { - x: Math.round((e.clientX - rect.left) / zoom), - y: Math.round((e.clientY - rect.top) / zoom), - }; - } - - canvas.drawPixel = function(x, y, color) { - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(x, y, 1, 1); - } - - canvas.drawLineWithPixels = function(x1, y1, x2, y2, color) { - const dx = Math.abs(x2 - x1); - const dy = Math.abs(y2 - y1); - const sx = x1 < x2 ? 1 : -1; - const sy = y1 < y2 ? 1 : -1; - let err = dx - dy; - while (true) { - canvas.drawPixel(x1, y1, color); // Draw each pixel along the line - if (x1 === x2 && y1 === y2) break; - const e2 = err * 2; - if (e2 > -dy) { err -= dy; x1 += sx; } - if (e2 < dx) { err += dx; y1 += sy; } - } - } - - canvas.drawShape = function(x, y, shape, size, color) { - x = Math.round(x); - y = Math.round(y); - - if (size === 1) { - canvas.drawPixel(x, y, color); - return; - } - canvas.ctx.fillStyle = color; - - if (shape === 'square') { - canvas.ctx.fillRect(x - Math.floor(size / 2), y - Math.floor(size / 2), size, size); - } else if (shape === 'circle') { - let radius = Math.floor(size / 1); - let radiusSquared = radius * radius; - - for (let y1 = -radius; y1 <= radius; y1++) { - for (let x1 = -radius; x1 <= radius; x1++) { - // Adjust the condition to avoid the outcrop - if ((x1 * x1 + y1 * y1) <= radiusSquared - radius) { - canvas.ctx.fillRect(x + x1, y + y1, 1, 1); - } - } - } - } else if (shape === 'empty-circle') { - let radius = Math.floor(size / 2); - let x1 = radius; - let y1 = 0; - let radiusError = 1 - x1; - - while (x1 >= y1) { - // Draw the 8 octants of the circle - canvas.ctx.fillRect(x + x1, y + y1, 1, 1); - canvas.ctx.fillRect(x + y1, y + x1, 1, 1); - canvas.ctx.fillRect(x - y1, y + x1, 1, 1); - canvas.ctx.fillRect(x - x1, y + y1, 1, 1); - canvas.ctx.fillRect(x - x1, y - y1, 1, 1); - canvas.ctx.fillRect(x - y1, y - x1, 1, 1); - canvas.ctx.fillRect(x + y1, y - x1, 1, 1); - canvas.ctx.fillRect(x + x1, y - y1, 1, 1); - - y1++; - if (radiusError < 0) { - radiusError += 2 * y1 + 1; - } else { - x1--; - radiusError += 2 * (y1 - x1 + 1); - } - } - } - } - - canvas.drawLineWithShape = function(x1, y1, x2, y2, shape, size, color) { - const dx = x2 - x1; - const dy = y2 - y1; - const distance = Math.sqrt(dx * dx + dy * dy); - const steps = Math.ceil(distance / (size / 2)); - - for (let i = 0; i <= steps; i++) { - const x = Math.round(x1 + (dx * i) / steps); - const y = Math.round(y1 + (dy * i) / steps); - canvas.drawShape(x, y, shape, size, color); - } - } - - canvas.fill = function(color) { - canvas.ctx.fillStyle = color; - canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - } - - canvas.getColorAtPixelData = function(x, y, data) { - const index = (y * canvas.width + x) * 4; - const color = [data[index], data[index + 1], data[index + 2], data[index + 3]]; - return color; - } - - canvas.setColorAtPixelData = function(x, y, color, data) { - const index = (y * canvas.width + x) * 4; - data[index] = color[0]; - data[index + 1] = color[1]; - data[index + 2] = color[2]; - data[index + 3] = color[3]; - } - - canvas.floodFill = function(x, y, color) { - console.log('flood fill'); - const imageData = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - - const targetColor = canvas.getColorAtPixelData(x, y, data); - const fillColorArray = hexToRgbArray(color); - - if (colorsMatch(targetColor, fillColorArray, tolerance)) { - return; - } - - const stack = [{x, y}]; - - while (stack.length > 0) { - const {x, y} = stack.pop(); - const currentColor = canvas.getColorAtPixelData(x, y, data); - - if (colorsMatch(currentColor, targetColor, tolerance)) { - canvas.setColorAtPixelData(x, y, fillColorArray, data); - - if (x > 0) stack.push({x: x - 1, y}); - if (x < canvas.width - 1) stack.push({x: x + 1, y}); - if (y > 0) stack.push({x, y: y - 1}); - if (y < canvas.height - 1) stack.push({x, y: y + 1}); - } - } - - canvas.ctx.putImageData(imageData, 0, 0); - } - - - canvas.getColorAtPixel = function(x, y) { - const data = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height).data; - return canvas.getColorAtPixelData(x, y, data); - } - - canvas.setColorAtPixel = function(x, y, color) { - const imageData = canvas.ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - canvas.setColorAtPixelData(x, y, color, data); - canvas.ctx.putImageData(new ImageData(data, canvas.width, canvas.height), 0, 0); - } - - canvas.toDataUrl = function() { - const dataURL = canvas.toDataURL(); - const dimensions = `${canvas.width}x${canvas.height}`; - return {dataURL, dimensions}; - } - - canvas.fromDataUrl = function(dataURL, dimensions) { - const img = new Image(); - img.src = dataURL; - img.onload = function() { - canvas.width = dimensions.split('x')[0]; - canvas.height = dimensions.split('x')[1]; - canvas.style.width = canvas.width * zoom + 'px'; - canvas.style.height = canvas.height * zoom + 'px'; - canvas.ctx.drawImage(img, 0, 0); - } - } - - canvas.deleteCanvas = function() { - canvas.remove(); - } - - canvas.setWidth(width); - canvas.setHeight(height); - - return canvas; - -} // }}} - -function makeLayer({height=600, width=800}) { // {{{ - const layer = {} - layer.canvas = makeCanvas({height, width}); - layer.active = false; - layer.opacity = 1; - - layer.controllerElement = document.createElement('div'); - layer.controllerElement.className = 'layer-controller'; - layer.controllerElement.innerHTML = ''; - - const moveUpHandle = document.createElement('div'); - moveUpHandle.classList.add('handle'); - moveUpHandle.classList.add('top-right'); - moveUpHandle.innerHTML = ''; - moveUpHandle.addEventListener('click', () => { - const index = layers.indexOf(layer); - if (index > 0) { - layers.move(layer, index - 1); - } - }); - layer.controllerElement.appendChild(moveUpHandle); - - const moveDownHandle = document.createElement('div'); - moveDownHandle.classList.add('handle'); - moveDownHandle.classList.add('bottom-right'); - moveDownHandle.innerHTML = ''; - moveDownHandle.addEventListener('click', () => { - const index = layers.indexOf(layer); - if (index < layers.length - 1) { - layers.move(layer, index + 1); - } - }); - layer.controllerElement.appendChild(moveDownHandle); - - layer.controllerElement.addEventListener('click', () => { - layers.setActive(layer); - }); - - layer.activate = function() { - layer.active = true; - layer.controllerElement.classList.add('active'); - } - - layer.deactivate = function() { - layer.active = false; - layer.controllerElement.classList.remove('active'); - } - - return layer; -} // }}} - -function makeLayers({height=600, width=800}) { // {{{ - const layers = []; - layers.height = height; - layers.width = width; - - layers.addButton = document.createElement('div'); - layers.addButton.className = 'layer-add-button'; - layers.addButton.innerHTML = ''; - layers.addButton.addEventListener('click', () => { - layers.add(); - }); - - layers.setHeight = function(height) { - layers.height = height; - easelElement.style.height = height + 2 + 'px'; - } - - layers.setHeight(height); - - layers.setWidth = function(width) { - layers.width = width; - easelElement.style.width = width + 2 + 'px'; - } - - layers.setWidth(width); - - layers.resetPosition = function() { - const studioRect = studioElement.getBoundingClientRect(); - easelElement.style.left = `${studioRect.left}px`; - easelElement.style.top = `${studioRect.top}px`; - } - - layers.refreshControllers = function() { - layerControllersElement.innerHTML = ''; - layers.forEach(layer => { - layerControllersElement.appendChild(layer.controllerElement); - }); - layerControllersElement.appendChild(layers.addButton); - } - - layers.refreshLayers = function() { - easelElement.innerHTML = ''; - layers.forEach(layer => { - easelElement.appendChild(layer.canvas); - }); - } - - layers.refresh = function() { - layers.refreshControllers(); - layers.refreshLayers(); - } - - layers.add = function() { - const layer = makeLayer({ - height: layers.height, - width: layers.width, - }); - layers.push(layer); - layer.activate(); - layers.refresh(); - } - - layers.delete = function(layer) { - layer.canvas.deleteCanvas(); - layers.splice(layers.indexOf(layer), 1); - layers.refresh(); - } - - layers.deleteAll = function() { - layers.forEach(layer => layer.deleteCanvas()); - // TODO - } - - layers.move = function(layer, index) { - layers.splice(layers.indexOf(layer), 1); - layers.splice(index, 0, layer); - } - - layers.setActive = function(layer) { - layers.forEach(layer => layer.deactivate()); - layer.activate(); - } - - layers.getActive = function() { - return layers.find(layer => layer.active); - } - - return layers; -} // }}} - -// }}} - -const layers = makeLayers({height: initialHeight, width: initialWidth}); -layers.add(); -layers.add(); -layers[0].canvas.fill('rgb(255, 255, 255)'); -layers.setActive(layers[1]); - -// }}} - -// COLOR PREVIEW {{{ - -function makeColorPreview() { - const colorPreview = {} - colorPreview.element = document.createElement('div'); - colorPreview.element.id = 'color-preview'; - colorPreview.element.className = 'puck'; - colorPreview.element.style.backgroundColor = color.color; - commandBarElement.appendChild(colorPreview.element); - colorPreview.update = function() { - colorPreview.element.style.backgroundColor = color.color; - } - - return colorPreview; -} - -const colorPreview = makeColorPreview(); - -// }}} - -// COMMANDS {{{ - -// FACTORY {{{ - -function makeCommand({name, key, icon, func}) { - if (!name) throw new Error('No name provided'); - if (!icon) throw new Error('No icon provided'); - if (!func) throw new Error('No click function provided'); - if (!key) throw new Error('No key provided'); - - const command = {}; - command.name = name; - command.key = key; - command.func = function() { - func(); - infos.update(); - } - command.button = makeButtonElement({ - icon: icon, - name: name, - key: key, - func: command.func, - }); - commandBarElement.appendChild(command.button.element); - - return command -} - -function makeCommands() { - const commands = []; - - commands.add = function({name, key, icon, func}) { - const command = makeCommand({name, key, icon, func}); - commands.push(command); - } - - commands.get = function(name) { - return commands.find(command => command.name === name); - } - - commands.click = function(name) { - const command = commands.get(name); - command.func(); - } - - return commands; -} - - -// }}} - -const commands = makeCommands(); - -commands.add({ // flip-horizontally {{{ - name: 'flip-horizontally', - key: 'f', - icon: '', - func: function flipCanvasHorizontally() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(-1, 1); - ctx.translate(-canvas.width, 0); - canvas.restoreCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // flip-vertically {{{ - name: 'flip-vertically', - key: 'v', - icon: '', - func: function flipCanvasVertically() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - ctx.save(); - canvas.saveCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.scale(1, -1); - ctx.translate(0, -canvas.height); - canvas.restoreCanvas(); - ctx.restore(); - } -}); // }}} - -commands.add({ // export {{{ - name: 'export', - key: 'e', - icon: '', - func: function exportCanvas() { - const canvas = layers.getActive().canvas; - const link = document.createElement('a'); - link.download = 'canvas.png'; - link.href = canvas.toDataURL(); - link.click(); - } -}); // }}} - -commands.add({ // import {{{ - name: 'import', - key: 'i', - icon: '', - func: function importCanvas() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - const input = document.createElement('input'); - input.type = 'file'; - input.accept = 'image/*'; - input.onchange = (e) => { - const file = e.target.files[0]; - const reader = new FileReader(); - reader.onload = (e) => { - const img = new Image(); - img.onload = () => { - canvas.width = img.width; - canvas.height = img.height; - ctx.drawImage(img, 0, 0); - } - img.src = e.target.result; - } - reader.readAsDataURL(file); - } - input.click(); - } -}); // }}} - -commands.add({ // clear {{{ - name: 'clear', - key: 'c', - icon: '', - func: function clearCanvas() { - const canvas = layers.getActive().canvas; - const ctx = canvas.ctx; - canvas.saveCanvas(); - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.fillStyle = 'white'; - ctx.fillRect(0, 0, canvas.width, canvas.height); - } -}); // }}} - -commands.add({ // change-shape {{{ - name: 'change-shape', - key: 's', - icon: ``, - func: function changeShape() { - const currentIndex = shapes.indexOf(brushShape); - brushShape = shapes[(currentIndex + 1) % shapes.length]; - } -}); // }}} - -// }}} - -// TOOLS {{{ - -// FACTORY {{{ - -function makeTool({name, key, icon, mouseDown, mouseMove, mouseUp}) { - if (!name) throw new Error('No name provided'); - if (!key) throw new Error('No key provided'); - if (!icon) throw new Error('No icon provided'); - - const tool = {}; - tool.name = name; - tool.key = key; - tool.icon = icon; - tool.mouseDown = mouseDown; - tool.mouseMove = mouseMove; - tool.mouseUp = mouseUp; - tool.active = false; - - tool.activate = function() { - tool.active = true; - tool.button.element.classList.add('active'); - } - - tool.deactivate = function() { - tool.active = false; - tool.button.element.classList.remove('active'); - } - - tool.button = makeButtonElement({ - icon: tool.icon, - name: tool.name, - key: tool.key, - func: function() { - tools.activate(tool.name); - } - }); - - toolBarElement.appendChild(tool.button.element); - - return tool; -} - -function makeTools() { - const tools = []; - - tools.prevToolName = 'na'; - - tools.add = function({name, key, icon, mouseDown, mouseMove, mouseUp}) { - const tool = makeTool({name, key, icon, mouseDown, mouseMove, mouseUp}); - tools.push(tool); - } - - tools.get = function(name) { - return tools.find(tool => tool.name === name); - } - - tools.getActive = function() { - return tools.find(tool => tool.active); - } - - tools.activate = function(name) { - const tool = tools.get(name); - if (tool.active) return; - if (tools.getActive()) { - tools.prevToolName = tools.getActive().name; - tools.forEach(tool => tool.deactivate()); - } - tool.activate(); - } - - tools.restore = function() { - const tool = tools.get(tools.prevToolName); - tools.forEach(tool => tool.deactivate()); - tool.activate(); - } - - return tools; -} - -// }}} - -const tools = makeTools(); - -tools.add({ // brush {{{ - name: 'brush', - key: 'b', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize === 1) { - canvas.drawPixel(canvasStartX, canvasStartY, color.color); - } else { - canvas.drawShape(canvasStartX, canvasStartY, brushShape, brushSize, color.color); - } - }, - mouseMove: function(e) { - const canvas = layers.getActive().canvas; - if (brushSize === 1) { - canvas.drawLineWithPixels(canvasStartX, canvasStartY, canvasEndX, canvasEndY, color.color); - } else { - canvas.drawLineWithShape(canvasStartX, canvasStartY, canvasEndX, canvasEndY, brushShape, brushSize, color.color); - } - canvasStartX = canvasEndX; - canvasStartY = canvasEndY; - }, -}); // }}} - -tools.add({ // content-move {{{ - name: 'content-move', - key: 'h', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - canvas.saveCanvas(); - }, - mouseMove: function(e) { - const canvas = layers.getActive().canvas; - canvas.clearCanvas(); - canvas.restoreCanvas(dX, dY); - }, -}); // }}} - -tools.add({ // move {{{ - name: 'move', - key: 'm', - icon: '', - mouseDown: function(e) { - startX = e.clientX - easelElement.offsetLeft; - startY = e.clientY - easelElement.offsetTop; - }, - mouseMove: function(e) { - easelElement.style.left = dX + 'px'; - easelElement.style.top = dY + 'px'; - }, -}); // }}} - -tools.add({ // zoom {{{ - name: 'zoom', - key: 'z', - icon: '', - mouseMove: function(e) { - // TODO all canvases - // const canvas = layers.getActive().canvas; - zoom += dX * dZoom; - if (zoom < 0.1) zoom = 0.1; - // canvas.style.height = canvasHeight * zoom + 'px'; - // canvas.style.width = canvasWidth * zoom + 'px'; - startX = endX; - } -}); // }}} - -tools.add({ // bucket-fill {{{ - name: 'bucket-fill', - key: 'k', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - canvas.floodFill(canvasStartX, canvasStartY, color.color); - } -}); // }}} - -tools.add({ // color-picker {{{ - name: 'color-picker', - key: 'a', - icon: '', - mouseDown: function(e) { - const canvas = layers.getActive().canvas; - const imageData = canvas.ctx.getImageData(canvasStartX, canvasStartY, 1, 1).data; - const pickedColor = `rgb(${imageData[0]}, ${imageData[1]}, ${imageData[2]})`; - color.color = pickedColor; - colorPreview.update(); - } -}); // }}} - -tools.add({ // brush-size {{{ - name: 'brush-size', - key: 'd', - icon: '', - mouseMove: function(e) { - brushSize += dX * dBrushSize; - if (brushSize < 1) brushSize = 1; - if (brushSize > maxBrushSize) brushSize = maxBrushSize; - startX = endX; - } -}); // }}} - -tools.add({ // resize {{{ - name: 'resize', - key: 'r', - icon: '', - mouseMove: function(e) { - // const canvas = layers.getActive().canvas; - // let newWidth = canvasWidth + dX / zoom; - // let newHeight = canvasHeight + dY / zoom; - // if (newWidth > 0 && newHeight > 0) { - // canvas.setWidth(newWidth); - // canvas.setHeight(newHeight); - // canvas.style.width = newWidth * zoom + 'px'; - // canvas.style.height = newHeight * zoom + 'px'; - // canvas.ctx.clearRect(0, 0, canvas.width, canvas.height); - // canvas.ctx.fillStyle = backgroundColor; - // canvas.ctx.fillRect(0, 0, canvas.width, canvas.height); - // canvas.ctx.drawImage(tempCanvas, 0, 0); - // } - } -}); // }}} - -tools.add({ // color-mix {{{ - name: 'color-mix', - key: 'x', - icon: '', - mouseMove: function(e) { - const canvas = layers.getActive().canvas; - const canvasColor = canvas.getColorAtPixel(canvasStartX, canvasStartY); - const distance = Math.sqrt(Math.pow(e.clientX - startX, 2) + Math.pow(e.clientY - startY, 2)); - const t = Math.min(1, distance / 300); - color.mix(canvasColor, t); - startX = endX; - startY = endY; - } -}); // }}} - -// }}} - -// PUCKS {{{ - -// FACTORY {{{ - -function makePuck({puckColor, key, editable=true}) { - if (!puckColor) throw new Error('No puck color provided'); - - - const puck = {} - puck.element = document.createElement('div'); - puck.element.style.backgroundColor = puckColor; - puck.element.className = 'puck'; - - if (editable) { - const deleteHandle = document.createElement('div'); - deleteHandle.className = 'delete-handle'; - deleteHandle.innerHTML = ''; - puck.element.appendChild(deleteHandle); - deleteHandle.addEventListener('click', () => { - puck.element.remove(); - }); - } - - if (key) { - puck.key = key; - const keyHint = document.createElement('div'); - keyHint.className = 'key-hint'; - keyHint.innerHTML = key; - puck.element.appendChild(keyHint); - } - - // function mixx(startTime) { - // var interval = setInterval(() => { - // const elapsedTime = Date.now() - startTime; - // const t = Math.min(1, elapsedTime / 10000); - // const puckColor = puck.element.style.backgroundColor; - // const mixedColor = mixbox.lerp(color.color, puck.element.style.backgroundColor, t); - // color.color = mixedColor; - // colorPreview.update(); - // infos.update(); - // }, 50); - // return interval; - // } - - puck.element.addEventListener('mousedown', () => { - const startTime = Date.now(); - var interval = mixx(startTime); - function onMouseUp() { - clearInterval(interval); - document.removeEventListener('mouseup', onMouseUp); - } - document.addEventListener('mouseup', onMouseUp); - }); - - puck.keydown = function(e) { - if (e.key == key) { - const startTime = Date.now(); - var interval = mixx(startTime); - function onKeyUp() { - clearInterval(interval); - document.removeEventListener('keyup', onKeyUp); - } - document.addEventListener('keyup', onKeyUp); - } - } - - commandBarElement.appendChild(puck.element); - - return puck; -} - -function makePucks() { - const pucks = []; - - pucks.add = function({puckColor, key, editable}) { - const puck = makePuck({puckColor, key, editable}); - pucks.push(puck); - } - - return pucks; -} - -// }}} - -const pucks = makePucks(); - - -pucks.add({ - puckColor: 'rgb(0, 0, 0)', - key: '1', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(255, 255, 255)', - key: '2', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(255, 0, 0)', - key: '3', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(0, 255, 0)', - key: '4', - editable: false, -}); - -pucks.add({ - puckColor: 'rgb(0, 0, 255)', - key: '5', - editable: false, -}); - - -// }}} - -// INFO {{{ - -// FACTORY {{{ - -function makeInfo({name, updateFunction}) { - if (!name) throw new Error('No name provided'); - if (!updateFunction) throw new Error('No update function provided'); - - const info = {}; - info.name = name; - info.updateFunction = updateFunction; - - info.element = document.createElement('span'); - info.element.className = 'info'; - - const key = document.createElement('span'); - key.className = 'key'; - key.innerHTML = info.name + ':'; - - const value = document.createElement('span'); - value.className = 'value'; - value.innerHTML = '0'; - - info.element.appendChild(key); - info.element.appendChild(value); - - infoBarElement.appendChild(info.element); - - info.update = function() { - let v = updateFunction(); - if (v === undefined) v = '?'; - value.innerHTML = v; - } - - return info; -} - -function makeInfos() { - const infos = [] - infos.add = function({name, updateFunction}) { - const info = makeInfo({name, updateFunction}); - infos.push(info); - } - infos.update = function() { - infos.forEach(function(info){ - info.update(); - }); - } - return infos; -} - -// }}} - -const infos = makeInfos(); - -infos.add({ - name: 'zoom', - updateFunction: function() { - var percent = zoom * 100; - return percent.toFixed(0) + '%'; - } -}); - -infos.add({ - name: 'brush', - updateFunction: function() { - return brushSize; - } -}); - - -infos.add({ - name: 'x', - updateFunction: function() { - return canvasEndX; - } -}); - - -infos.add({ - name: 'y', - updateFunction: function() { - return canvasEndY; - } -}); - -infos.add({ - name: 'color', - updateFunction: function() { - return color.color; - } -}); - -infos.add({ - name: 'width', - updateFunction: function() { - return "width"; - } -}); - -infos.add({ - name: 'height', - updateFunction: function() { - return "height"; - } -}); - -infos.add({ - name: 'shape', - updateFunction: function() { - return brushShape; - } -}); - -infos.add({ - name: 'tool', - updateFunction: function() { - return tools.getActive().name; - } -}); - -// }}} - -// MOUSE EVENT LISTENERS {{{ - -studioElement.addEventListener('mousedown', (e) => { - const canvas = layers.getActive().canvas; - isMouseDown = true; - startX = e.clientX; - startY = e.clientY; - canvasStartX = canvas.getPositionOnCanvas(e).x; - canvasStartY = canvas.getPositionOnCanvas(e).y; - - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseDown) { - tool.mouseDown(e); - break; - } - } - } - - infos.update(); - -}); - -studioElement.addEventListener('mousemove', (e) => { - const canvas = layers.getActive().canvas; - endX = e.clientX; - endY = e.clientY; - dX = endX - startX; - dY = endY - startY; - canvasEndX = canvas.getPositionOnCanvas(e).x; - canvasEndY = canvas.getPositionOnCanvas(e).y; - canvasDX = canvasEndX - canvasStartX; - canvasDY = canvasEndY - canvasStartY; - - if (tools.getActive().name === 'brush-size') { - brushPreviewElement.style.display = 'block'; - brushPreviewElement.style.width = brushSize + 'px'; - brushPreviewElement.style.height = brushSize + 'px'; - brushPreviewElement.style.left = e.clientX - brushSize / 2 + 'px'; - brushPreviewElement.style.top = e.clientY - brushSize / 2 + 'px'; - } - - if (isMouseDown) { - for (var i = 0; i < tools.length; i++) { - var tool = tools[i]; - if (tool.active) { - if (tool.mouseMove) { - tool.mouseMove(e); - break; - } - } - } - } - - infos.update(); - -}); - -studioElement.addEventListener('mouseup', () => { - isMouseDown = false; - infos.update(); -}); - -studioElement.addEventListener('mouseleave', () => { - isMouseDown = false; - brushPreviewElement.style.display = 'none'; - infos.update(); -}); - -// }}} - -// KEYBINDINGS {{{ - -document.addEventListener('keydown', (e) => { - if (isKeyDown) return; - console.log(e.key); - - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key.toLowerCase()) { - tools.activate(tool.name); - } - }); - - commands.forEach(command => { - if (command.key.toLowerCase() === e.key.toLowerCase()) { - command.func(); - } - }); - - pucks.filter(puck => puck.key !== undefined).forEach(puck => { - if (puck.key.toLowerCase() === e.key.toLowerCase()) { - puck.keydown(e); - } - }); - - isKeyDown = true; - -}); - -document.addEventListener('keyup', (e) => { - tools.forEach(tool => { - if (tool.key.toLowerCase() === e.key) { - tools.restore(); - } - }); - - isKeyDown = false; - -}); - -// }}} - -layers.resetPosition(); -tools.activate('brush'); diff --git a/eslint.config.js b/eslint.config.js deleted file mode 100644 index d660066..0000000 --- a/eslint.config.js +++ /dev/null @@ -1,21 +0,0 @@ -// For ES Module Syntax -export default [ - { - languageOptions: { - ecmaVersion: "latest", // Or specify a specific version like 2021, 2020, etc. - sourceType: "module", // "module" for ES modules, "script" for non-modular code - globals: { - // Define global variables that are predefined - browser: true, - node: true, - es6: true, - }, - }, - rules: { - "no-unused-vars": "off", - "semi": ["error", "always"], - "quotes": ["error", "double"] - } - } -]; - diff --git a/favicon.svg b/favicon.svg new file mode 100644 index 0000000..0fa5455 --- /dev/null +++ b/favicon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/fonts/OFL.txt b/fonts/OFL.txt new file mode 100644 index 0000000..e229272 --- /dev/null +++ b/fonts/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2011, The VT323 Project Authors (peter.hull@oikoi.com) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/icons/add.svg b/icons/add.svg deleted file mode 100644 index b9ec09d..0000000 --- a/icons/add.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/bolt.svg b/icons/bolt.svg deleted file mode 100644 index e7a549e..0000000 --- a/icons/bolt.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/brands/42-group.svg b/icons/brands/42-group.svg new file mode 100644 index 0000000..b84a4a6 --- /dev/null +++ b/icons/brands/42-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/500px.svg b/icons/brands/500px.svg new file mode 100644 index 0000000..bc9d005 --- /dev/null +++ b/icons/brands/500px.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/accessible-icon.svg b/icons/brands/accessible-icon.svg new file mode 100644 index 0000000..4dbc4d4 --- /dev/null +++ b/icons/brands/accessible-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/accusoft.svg b/icons/brands/accusoft.svg new file mode 100644 index 0000000..a4c88b4 --- /dev/null +++ b/icons/brands/accusoft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/adn.svg b/icons/brands/adn.svg new file mode 100644 index 0000000..2b6fab2 --- /dev/null +++ b/icons/brands/adn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/adversal.svg b/icons/brands/adversal.svg new file mode 100644 index 0000000..ef54953 --- /dev/null +++ b/icons/brands/adversal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/affiliatetheme.svg b/icons/brands/affiliatetheme.svg new file mode 100644 index 0000000..65a075b --- /dev/null +++ b/icons/brands/affiliatetheme.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/airbnb.svg b/icons/brands/airbnb.svg new file mode 100644 index 0000000..0a81afe --- /dev/null +++ b/icons/brands/airbnb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/algolia.svg b/icons/brands/algolia.svg new file mode 100644 index 0000000..555bb2f --- /dev/null +++ b/icons/brands/algolia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/alipay.svg b/icons/brands/alipay.svg new file mode 100644 index 0000000..dbe92f0 --- /dev/null +++ b/icons/brands/alipay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/amazon-pay.svg b/icons/brands/amazon-pay.svg new file mode 100644 index 0000000..1b08b2f --- /dev/null +++ b/icons/brands/amazon-pay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/amazon.svg b/icons/brands/amazon.svg new file mode 100644 index 0000000..6262164 --- /dev/null +++ b/icons/brands/amazon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/amilia.svg b/icons/brands/amilia.svg new file mode 100644 index 0000000..178d698 --- /dev/null +++ b/icons/brands/amilia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/android.svg b/icons/brands/android.svg new file mode 100644 index 0000000..55faeb0 --- /dev/null +++ b/icons/brands/android.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/angellist.svg b/icons/brands/angellist.svg new file mode 100644 index 0000000..1401a79 --- /dev/null +++ b/icons/brands/angellist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/angrycreative.svg b/icons/brands/angrycreative.svg new file mode 100644 index 0000000..c408a5e --- /dev/null +++ b/icons/brands/angrycreative.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/angular.svg b/icons/brands/angular.svg new file mode 100644 index 0000000..532c5c7 --- /dev/null +++ b/icons/brands/angular.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/app-store-ios.svg b/icons/brands/app-store-ios.svg new file mode 100644 index 0000000..cea3894 --- /dev/null +++ b/icons/brands/app-store-ios.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/app-store.svg b/icons/brands/app-store.svg new file mode 100644 index 0000000..4390a21 --- /dev/null +++ b/icons/brands/app-store.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/apper.svg b/icons/brands/apper.svg new file mode 100644 index 0000000..09fcd5a --- /dev/null +++ b/icons/brands/apper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/apple-pay.svg b/icons/brands/apple-pay.svg new file mode 100644 index 0000000..e60213c --- /dev/null +++ b/icons/brands/apple-pay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/apple.svg b/icons/brands/apple.svg new file mode 100644 index 0000000..6b72bbd --- /dev/null +++ b/icons/brands/apple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/artstation.svg b/icons/brands/artstation.svg new file mode 100644 index 0000000..9c9f1c3 --- /dev/null +++ b/icons/brands/artstation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/asymmetrik.svg b/icons/brands/asymmetrik.svg new file mode 100644 index 0000000..7dc47f0 --- /dev/null +++ b/icons/brands/asymmetrik.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/atlassian.svg b/icons/brands/atlassian.svg new file mode 100644 index 0000000..35716ae --- /dev/null +++ b/icons/brands/atlassian.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/audible.svg b/icons/brands/audible.svg new file mode 100644 index 0000000..1dd25b6 --- /dev/null +++ b/icons/brands/audible.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/autoprefixer.svg b/icons/brands/autoprefixer.svg new file mode 100644 index 0000000..1ef0327 --- /dev/null +++ b/icons/brands/autoprefixer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/avianex.svg b/icons/brands/avianex.svg new file mode 100644 index 0000000..b9fdc77 --- /dev/null +++ b/icons/brands/avianex.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/aviato.svg b/icons/brands/aviato.svg new file mode 100644 index 0000000..581ad6a --- /dev/null +++ b/icons/brands/aviato.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/aws.svg b/icons/brands/aws.svg new file mode 100644 index 0000000..9985a35 --- /dev/null +++ b/icons/brands/aws.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bandcamp.svg b/icons/brands/bandcamp.svg new file mode 100644 index 0000000..da2849f --- /dev/null +++ b/icons/brands/bandcamp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/battle-net.svg b/icons/brands/battle-net.svg new file mode 100644 index 0000000..5ab7892 --- /dev/null +++ b/icons/brands/battle-net.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/behance.svg b/icons/brands/behance.svg new file mode 100644 index 0000000..a7eccd4 --- /dev/null +++ b/icons/brands/behance.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bilibili.svg b/icons/brands/bilibili.svg new file mode 100644 index 0000000..3643ac7 --- /dev/null +++ b/icons/brands/bilibili.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bimobject.svg b/icons/brands/bimobject.svg new file mode 100644 index 0000000..b65a90a --- /dev/null +++ b/icons/brands/bimobject.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bitbucket.svg b/icons/brands/bitbucket.svg new file mode 100644 index 0000000..17793bc --- /dev/null +++ b/icons/brands/bitbucket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bitcoin.svg b/icons/brands/bitcoin.svg new file mode 100644 index 0000000..7786d5e --- /dev/null +++ b/icons/brands/bitcoin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bity.svg b/icons/brands/bity.svg new file mode 100644 index 0000000..1cfeb4d --- /dev/null +++ b/icons/brands/bity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/black-tie.svg b/icons/brands/black-tie.svg new file mode 100644 index 0000000..a134f0e --- /dev/null +++ b/icons/brands/black-tie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/blackberry.svg b/icons/brands/blackberry.svg new file mode 100644 index 0000000..fe1b55f --- /dev/null +++ b/icons/brands/blackberry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/blogger-b.svg b/icons/brands/blogger-b.svg new file mode 100644 index 0000000..514edb7 --- /dev/null +++ b/icons/brands/blogger-b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/blogger.svg b/icons/brands/blogger.svg new file mode 100644 index 0000000..762dcd0 --- /dev/null +++ b/icons/brands/blogger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bluesky.svg b/icons/brands/bluesky.svg new file mode 100644 index 0000000..e8b9a56 --- /dev/null +++ b/icons/brands/bluesky.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bluetooth-b.svg b/icons/brands/bluetooth-b.svg new file mode 100644 index 0000000..1baa862 --- /dev/null +++ b/icons/brands/bluetooth-b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bluetooth.svg b/icons/brands/bluetooth.svg new file mode 100644 index 0000000..1cc11d7 --- /dev/null +++ b/icons/brands/bluetooth.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bootstrap.svg b/icons/brands/bootstrap.svg new file mode 100644 index 0000000..d5037b3 --- /dev/null +++ b/icons/brands/bootstrap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/bots.svg b/icons/brands/bots.svg new file mode 100644 index 0000000..9ecc2f2 --- /dev/null +++ b/icons/brands/bots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/brave-reverse.svg b/icons/brands/brave-reverse.svg new file mode 100644 index 0000000..322e7e7 --- /dev/null +++ b/icons/brands/brave-reverse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/brave.svg b/icons/brands/brave.svg new file mode 100644 index 0000000..2348e37 --- /dev/null +++ b/icons/brands/brave.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/btc.svg b/icons/brands/btc.svg new file mode 100644 index 0000000..c046457 --- /dev/null +++ b/icons/brands/btc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/buffer.svg b/icons/brands/buffer.svg new file mode 100644 index 0000000..787ece7 --- /dev/null +++ b/icons/brands/buffer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/buromobelexperte.svg b/icons/brands/buromobelexperte.svg new file mode 100644 index 0000000..50deaf6 --- /dev/null +++ b/icons/brands/buromobelexperte.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/buy-n-large.svg b/icons/brands/buy-n-large.svg new file mode 100644 index 0000000..539f51f --- /dev/null +++ b/icons/brands/buy-n-large.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/buysellads.svg b/icons/brands/buysellads.svg new file mode 100644 index 0000000..7590989 --- /dev/null +++ b/icons/brands/buysellads.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/canadian-maple-leaf.svg b/icons/brands/canadian-maple-leaf.svg new file mode 100644 index 0000000..082072a --- /dev/null +++ b/icons/brands/canadian-maple-leaf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-amazon-pay.svg b/icons/brands/cc-amazon-pay.svg new file mode 100644 index 0000000..4beee36 --- /dev/null +++ b/icons/brands/cc-amazon-pay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-amex.svg b/icons/brands/cc-amex.svg new file mode 100644 index 0000000..2b9c28e --- /dev/null +++ b/icons/brands/cc-amex.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-apple-pay.svg b/icons/brands/cc-apple-pay.svg new file mode 100644 index 0000000..8db7849 --- /dev/null +++ b/icons/brands/cc-apple-pay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-diners-club.svg b/icons/brands/cc-diners-club.svg new file mode 100644 index 0000000..8154146 --- /dev/null +++ b/icons/brands/cc-diners-club.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-discover.svg b/icons/brands/cc-discover.svg new file mode 100644 index 0000000..30c5dba --- /dev/null +++ b/icons/brands/cc-discover.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-jcb.svg b/icons/brands/cc-jcb.svg new file mode 100644 index 0000000..e3e81e0 --- /dev/null +++ b/icons/brands/cc-jcb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-mastercard.svg b/icons/brands/cc-mastercard.svg new file mode 100644 index 0000000..d026c53 --- /dev/null +++ b/icons/brands/cc-mastercard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-paypal.svg b/icons/brands/cc-paypal.svg new file mode 100644 index 0000000..cae1c45 --- /dev/null +++ b/icons/brands/cc-paypal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-stripe.svg b/icons/brands/cc-stripe.svg new file mode 100644 index 0000000..da63a24 --- /dev/null +++ b/icons/brands/cc-stripe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cc-visa.svg b/icons/brands/cc-visa.svg new file mode 100644 index 0000000..28d0afb --- /dev/null +++ b/icons/brands/cc-visa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/centercode.svg b/icons/brands/centercode.svg new file mode 100644 index 0000000..4dee8dc --- /dev/null +++ b/icons/brands/centercode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/centos.svg b/icons/brands/centos.svg new file mode 100644 index 0000000..fe6d34f --- /dev/null +++ b/icons/brands/centos.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/chrome.svg b/icons/brands/chrome.svg new file mode 100644 index 0000000..5f6263b --- /dev/null +++ b/icons/brands/chrome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/chromecast.svg b/icons/brands/chromecast.svg new file mode 100644 index 0000000..60aaba3 --- /dev/null +++ b/icons/brands/chromecast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cloudflare.svg b/icons/brands/cloudflare.svg new file mode 100644 index 0000000..84d1846 --- /dev/null +++ b/icons/brands/cloudflare.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cloudscale.svg b/icons/brands/cloudscale.svg new file mode 100644 index 0000000..e0a4aa3 --- /dev/null +++ b/icons/brands/cloudscale.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cloudsmith.svg b/icons/brands/cloudsmith.svg new file mode 100644 index 0000000..447e191 --- /dev/null +++ b/icons/brands/cloudsmith.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cloudversify.svg b/icons/brands/cloudversify.svg new file mode 100644 index 0000000..3ba5347 --- /dev/null +++ b/icons/brands/cloudversify.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cmplid.svg b/icons/brands/cmplid.svg new file mode 100644 index 0000000..2fe790f --- /dev/null +++ b/icons/brands/cmplid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/codepen.svg b/icons/brands/codepen.svg new file mode 100644 index 0000000..a7201bb --- /dev/null +++ b/icons/brands/codepen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/codiepie.svg b/icons/brands/codiepie.svg new file mode 100644 index 0000000..225e69d --- /dev/null +++ b/icons/brands/codiepie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/confluence.svg b/icons/brands/confluence.svg new file mode 100644 index 0000000..0cc2a06 --- /dev/null +++ b/icons/brands/confluence.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/connectdevelop.svg b/icons/brands/connectdevelop.svg new file mode 100644 index 0000000..c793a63 --- /dev/null +++ b/icons/brands/connectdevelop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/contao.svg b/icons/brands/contao.svg new file mode 100644 index 0000000..7782349 --- /dev/null +++ b/icons/brands/contao.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cotton-bureau.svg b/icons/brands/cotton-bureau.svg new file mode 100644 index 0000000..756fd8c --- /dev/null +++ b/icons/brands/cotton-bureau.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cpanel.svg b/icons/brands/cpanel.svg new file mode 100644 index 0000000..256569e --- /dev/null +++ b/icons/brands/cpanel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-by.svg b/icons/brands/creative-commons-by.svg new file mode 100644 index 0000000..1f9a8a7 --- /dev/null +++ b/icons/brands/creative-commons-by.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-nc-eu.svg b/icons/brands/creative-commons-nc-eu.svg new file mode 100644 index 0000000..cbc0f57 --- /dev/null +++ b/icons/brands/creative-commons-nc-eu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-nc-jp.svg b/icons/brands/creative-commons-nc-jp.svg new file mode 100644 index 0000000..d16994e --- /dev/null +++ b/icons/brands/creative-commons-nc-jp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-nc.svg b/icons/brands/creative-commons-nc.svg new file mode 100644 index 0000000..b330f9d --- /dev/null +++ b/icons/brands/creative-commons-nc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-nd.svg b/icons/brands/creative-commons-nd.svg new file mode 100644 index 0000000..8b25e3b --- /dev/null +++ b/icons/brands/creative-commons-nd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-pd-alt.svg b/icons/brands/creative-commons-pd-alt.svg new file mode 100644 index 0000000..9e9f86c --- /dev/null +++ b/icons/brands/creative-commons-pd-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-pd.svg b/icons/brands/creative-commons-pd.svg new file mode 100644 index 0000000..04c23a1 --- /dev/null +++ b/icons/brands/creative-commons-pd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-remix.svg b/icons/brands/creative-commons-remix.svg new file mode 100644 index 0000000..c91a0cd --- /dev/null +++ b/icons/brands/creative-commons-remix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-sa.svg b/icons/brands/creative-commons-sa.svg new file mode 100644 index 0000000..b5f395c --- /dev/null +++ b/icons/brands/creative-commons-sa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-sampling-plus.svg b/icons/brands/creative-commons-sampling-plus.svg new file mode 100644 index 0000000..cc763c3 --- /dev/null +++ b/icons/brands/creative-commons-sampling-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-sampling.svg b/icons/brands/creative-commons-sampling.svg new file mode 100644 index 0000000..a57df4a --- /dev/null +++ b/icons/brands/creative-commons-sampling.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-share.svg b/icons/brands/creative-commons-share.svg new file mode 100644 index 0000000..7dbe4b8 --- /dev/null +++ b/icons/brands/creative-commons-share.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons-zero.svg b/icons/brands/creative-commons-zero.svg new file mode 100644 index 0000000..7755a8b --- /dev/null +++ b/icons/brands/creative-commons-zero.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/creative-commons.svg b/icons/brands/creative-commons.svg new file mode 100644 index 0000000..442de2e --- /dev/null +++ b/icons/brands/creative-commons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/critical-role.svg b/icons/brands/critical-role.svg new file mode 100644 index 0000000..4932022 --- /dev/null +++ b/icons/brands/critical-role.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/css3-alt.svg b/icons/brands/css3-alt.svg new file mode 100644 index 0000000..51aca1d --- /dev/null +++ b/icons/brands/css3-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/css3.svg b/icons/brands/css3.svg new file mode 100644 index 0000000..6cccb7f --- /dev/null +++ b/icons/brands/css3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/cuttlefish.svg b/icons/brands/cuttlefish.svg new file mode 100644 index 0000000..11ec551 --- /dev/null +++ b/icons/brands/cuttlefish.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/d-and-d-beyond.svg b/icons/brands/d-and-d-beyond.svg new file mode 100644 index 0000000..61047b2 --- /dev/null +++ b/icons/brands/d-and-d-beyond.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/d-and-d.svg b/icons/brands/d-and-d.svg new file mode 100644 index 0000000..9a7c6ac --- /dev/null +++ b/icons/brands/d-and-d.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dailymotion.svg b/icons/brands/dailymotion.svg new file mode 100644 index 0000000..8b44775 --- /dev/null +++ b/icons/brands/dailymotion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dart-lang.svg b/icons/brands/dart-lang.svg new file mode 100644 index 0000000..764a1e7 --- /dev/null +++ b/icons/brands/dart-lang.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dashcube.svg b/icons/brands/dashcube.svg new file mode 100644 index 0000000..ec5ae9a --- /dev/null +++ b/icons/brands/dashcube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/debian.svg b/icons/brands/debian.svg new file mode 100644 index 0000000..3949920 --- /dev/null +++ b/icons/brands/debian.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/deezer.svg b/icons/brands/deezer.svg new file mode 100644 index 0000000..857b9a9 --- /dev/null +++ b/icons/brands/deezer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/delicious.svg b/icons/brands/delicious.svg new file mode 100644 index 0000000..e55c410 --- /dev/null +++ b/icons/brands/delicious.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/deploydog.svg b/icons/brands/deploydog.svg new file mode 100644 index 0000000..573dc2c --- /dev/null +++ b/icons/brands/deploydog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/deskpro.svg b/icons/brands/deskpro.svg new file mode 100644 index 0000000..8ee64d7 --- /dev/null +++ b/icons/brands/deskpro.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dev.svg b/icons/brands/dev.svg new file mode 100644 index 0000000..fa60ae8 --- /dev/null +++ b/icons/brands/dev.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/deviantart.svg b/icons/brands/deviantart.svg new file mode 100644 index 0000000..3843ad3 --- /dev/null +++ b/icons/brands/deviantart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dhl.svg b/icons/brands/dhl.svg new file mode 100644 index 0000000..c259ab8 --- /dev/null +++ b/icons/brands/dhl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/diaspora.svg b/icons/brands/diaspora.svg new file mode 100644 index 0000000..54f8837 --- /dev/null +++ b/icons/brands/diaspora.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/digg.svg b/icons/brands/digg.svg new file mode 100644 index 0000000..874a0be --- /dev/null +++ b/icons/brands/digg.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/digital-ocean.svg b/icons/brands/digital-ocean.svg new file mode 100644 index 0000000..d19e1ef --- /dev/null +++ b/icons/brands/digital-ocean.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/discord.svg b/icons/brands/discord.svg new file mode 100644 index 0000000..d2e84d2 --- /dev/null +++ b/icons/brands/discord.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/discourse.svg b/icons/brands/discourse.svg new file mode 100644 index 0000000..8f90542 --- /dev/null +++ b/icons/brands/discourse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dochub.svg b/icons/brands/dochub.svg new file mode 100644 index 0000000..6c34337 --- /dev/null +++ b/icons/brands/dochub.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/docker.svg b/icons/brands/docker.svg new file mode 100644 index 0000000..8770ab7 --- /dev/null +++ b/icons/brands/docker.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/draft2digital.svg b/icons/brands/draft2digital.svg new file mode 100644 index 0000000..1b3c65a --- /dev/null +++ b/icons/brands/draft2digital.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dribbble.svg b/icons/brands/dribbble.svg new file mode 100644 index 0000000..55f5b23 --- /dev/null +++ b/icons/brands/dribbble.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dropbox.svg b/icons/brands/dropbox.svg new file mode 100644 index 0000000..9d1b0e3 --- /dev/null +++ b/icons/brands/dropbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/drupal.svg b/icons/brands/drupal.svg new file mode 100644 index 0000000..cd80afb --- /dev/null +++ b/icons/brands/drupal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/dyalog.svg b/icons/brands/dyalog.svg new file mode 100644 index 0000000..08ffd60 --- /dev/null +++ b/icons/brands/dyalog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/earlybirds.svg b/icons/brands/earlybirds.svg new file mode 100644 index 0000000..97dbc3d --- /dev/null +++ b/icons/brands/earlybirds.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ebay.svg b/icons/brands/ebay.svg new file mode 100644 index 0000000..f618fcb --- /dev/null +++ b/icons/brands/ebay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/edge-legacy.svg b/icons/brands/edge-legacy.svg new file mode 100644 index 0000000..6c47477 --- /dev/null +++ b/icons/brands/edge-legacy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/edge.svg b/icons/brands/edge.svg new file mode 100644 index 0000000..eb605e8 --- /dev/null +++ b/icons/brands/edge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/elementor.svg b/icons/brands/elementor.svg new file mode 100644 index 0000000..dec0eca --- /dev/null +++ b/icons/brands/elementor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ello.svg b/icons/brands/ello.svg new file mode 100644 index 0000000..c5cbf74 --- /dev/null +++ b/icons/brands/ello.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ember.svg b/icons/brands/ember.svg new file mode 100644 index 0000000..a294478 --- /dev/null +++ b/icons/brands/ember.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/empire.svg b/icons/brands/empire.svg new file mode 100644 index 0000000..9c9eb8a --- /dev/null +++ b/icons/brands/empire.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/envira.svg b/icons/brands/envira.svg new file mode 100644 index 0000000..4a28ecc --- /dev/null +++ b/icons/brands/envira.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/erlang.svg b/icons/brands/erlang.svg new file mode 100644 index 0000000..31f4e82 --- /dev/null +++ b/icons/brands/erlang.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ethereum.svg b/icons/brands/ethereum.svg new file mode 100644 index 0000000..9c5d78a --- /dev/null +++ b/icons/brands/ethereum.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/etsy.svg b/icons/brands/etsy.svg new file mode 100644 index 0000000..294d803 --- /dev/null +++ b/icons/brands/etsy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/evernote.svg b/icons/brands/evernote.svg new file mode 100644 index 0000000..47d9bd7 --- /dev/null +++ b/icons/brands/evernote.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/expeditedssl.svg b/icons/brands/expeditedssl.svg new file mode 100644 index 0000000..106180b --- /dev/null +++ b/icons/brands/expeditedssl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/facebook-f.svg b/icons/brands/facebook-f.svg new file mode 100644 index 0000000..fa95a97 --- /dev/null +++ b/icons/brands/facebook-f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/facebook-messenger.svg b/icons/brands/facebook-messenger.svg new file mode 100644 index 0000000..db6ae7d --- /dev/null +++ b/icons/brands/facebook-messenger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/facebook.svg b/icons/brands/facebook.svg new file mode 100644 index 0000000..7af0e81 --- /dev/null +++ b/icons/brands/facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fantasy-flight-games.svg b/icons/brands/fantasy-flight-games.svg new file mode 100644 index 0000000..270815b --- /dev/null +++ b/icons/brands/fantasy-flight-games.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fedex.svg b/icons/brands/fedex.svg new file mode 100644 index 0000000..51005f3 --- /dev/null +++ b/icons/brands/fedex.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fedora.svg b/icons/brands/fedora.svg new file mode 100644 index 0000000..79619fb --- /dev/null +++ b/icons/brands/fedora.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/figma.svg b/icons/brands/figma.svg new file mode 100644 index 0000000..0c0382d --- /dev/null +++ b/icons/brands/figma.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/firefox-browser.svg b/icons/brands/firefox-browser.svg new file mode 100644 index 0000000..dd31c3f --- /dev/null +++ b/icons/brands/firefox-browser.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/firefox.svg b/icons/brands/firefox.svg new file mode 100644 index 0000000..85a9c09 --- /dev/null +++ b/icons/brands/firefox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/first-order-alt.svg b/icons/brands/first-order-alt.svg new file mode 100644 index 0000000..d408bf8 --- /dev/null +++ b/icons/brands/first-order-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/first-order.svg b/icons/brands/first-order.svg new file mode 100644 index 0000000..769abf2 --- /dev/null +++ b/icons/brands/first-order.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/firstdraft.svg b/icons/brands/firstdraft.svg new file mode 100644 index 0000000..660eadd --- /dev/null +++ b/icons/brands/firstdraft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/flickr.svg b/icons/brands/flickr.svg new file mode 100644 index 0000000..07c3677 --- /dev/null +++ b/icons/brands/flickr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/flipboard.svg b/icons/brands/flipboard.svg new file mode 100644 index 0000000..ee4de93 --- /dev/null +++ b/icons/brands/flipboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/flutter.svg b/icons/brands/flutter.svg new file mode 100644 index 0000000..bfe641d --- /dev/null +++ b/icons/brands/flutter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fly.svg b/icons/brands/fly.svg new file mode 100644 index 0000000..75a2c3d --- /dev/null +++ b/icons/brands/fly.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/font-awesome.svg b/icons/brands/font-awesome.svg new file mode 100644 index 0000000..dddfe12 --- /dev/null +++ b/icons/brands/font-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fonticons-fi.svg b/icons/brands/fonticons-fi.svg new file mode 100644 index 0000000..9be56de --- /dev/null +++ b/icons/brands/fonticons-fi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fonticons.svg b/icons/brands/fonticons.svg new file mode 100644 index 0000000..4375756 --- /dev/null +++ b/icons/brands/fonticons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fort-awesome-alt.svg b/icons/brands/fort-awesome-alt.svg new file mode 100644 index 0000000..d70aebe --- /dev/null +++ b/icons/brands/fort-awesome-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fort-awesome.svg b/icons/brands/fort-awesome.svg new file mode 100644 index 0000000..ed1ab11 --- /dev/null +++ b/icons/brands/fort-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/forumbee.svg b/icons/brands/forumbee.svg new file mode 100644 index 0000000..0901cb9 --- /dev/null +++ b/icons/brands/forumbee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/foursquare.svg b/icons/brands/foursquare.svg new file mode 100644 index 0000000..b396a77 --- /dev/null +++ b/icons/brands/foursquare.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/free-code-camp.svg b/icons/brands/free-code-camp.svg new file mode 100644 index 0000000..9ef97d6 --- /dev/null +++ b/icons/brands/free-code-camp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/freebsd.svg b/icons/brands/freebsd.svg new file mode 100644 index 0000000..7c12ac1 --- /dev/null +++ b/icons/brands/freebsd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/fulcrum.svg b/icons/brands/fulcrum.svg new file mode 100644 index 0000000..19ebae3 --- /dev/null +++ b/icons/brands/fulcrum.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/galactic-republic.svg b/icons/brands/galactic-republic.svg new file mode 100644 index 0000000..1b711f4 --- /dev/null +++ b/icons/brands/galactic-republic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/galactic-senate.svg b/icons/brands/galactic-senate.svg new file mode 100644 index 0000000..0345f48 --- /dev/null +++ b/icons/brands/galactic-senate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/get-pocket.svg b/icons/brands/get-pocket.svg new file mode 100644 index 0000000..7e15eb3 --- /dev/null +++ b/icons/brands/get-pocket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gg-circle.svg b/icons/brands/gg-circle.svg new file mode 100644 index 0000000..517345b --- /dev/null +++ b/icons/brands/gg-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gg.svg b/icons/brands/gg.svg new file mode 100644 index 0000000..543963c --- /dev/null +++ b/icons/brands/gg.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/git-alt.svg b/icons/brands/git-alt.svg new file mode 100644 index 0000000..3bd2df4 --- /dev/null +++ b/icons/brands/git-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/git.svg b/icons/brands/git.svg new file mode 100644 index 0000000..649b57e --- /dev/null +++ b/icons/brands/git.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/github-alt.svg b/icons/brands/github-alt.svg new file mode 100644 index 0000000..8164c5a --- /dev/null +++ b/icons/brands/github-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/github.svg b/icons/brands/github.svg new file mode 100644 index 0000000..a3ff759 --- /dev/null +++ b/icons/brands/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gitkraken.svg b/icons/brands/gitkraken.svg new file mode 100644 index 0000000..d6c92ce --- /dev/null +++ b/icons/brands/gitkraken.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gitlab.svg b/icons/brands/gitlab.svg new file mode 100644 index 0000000..6d08b37 --- /dev/null +++ b/icons/brands/gitlab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gitter.svg b/icons/brands/gitter.svg new file mode 100644 index 0000000..fc07cb2 --- /dev/null +++ b/icons/brands/gitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/glide-g.svg b/icons/brands/glide-g.svg new file mode 100644 index 0000000..3833458 --- /dev/null +++ b/icons/brands/glide-g.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/glide.svg b/icons/brands/glide.svg new file mode 100644 index 0000000..8843a16 --- /dev/null +++ b/icons/brands/glide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gofore.svg b/icons/brands/gofore.svg new file mode 100644 index 0000000..9d501e8 --- /dev/null +++ b/icons/brands/gofore.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/golang.svg b/icons/brands/golang.svg new file mode 100644 index 0000000..eb14558 --- /dev/null +++ b/icons/brands/golang.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/goodreads-g.svg b/icons/brands/goodreads-g.svg new file mode 100644 index 0000000..44f2046 --- /dev/null +++ b/icons/brands/goodreads-g.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/goodreads.svg b/icons/brands/goodreads.svg new file mode 100644 index 0000000..d8a16e6 --- /dev/null +++ b/icons/brands/goodreads.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-drive.svg b/icons/brands/google-drive.svg new file mode 100644 index 0000000..f965474 --- /dev/null +++ b/icons/brands/google-drive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-pay.svg b/icons/brands/google-pay.svg new file mode 100644 index 0000000..6622438 --- /dev/null +++ b/icons/brands/google-pay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-play.svg b/icons/brands/google-play.svg new file mode 100644 index 0000000..ffd3f9b --- /dev/null +++ b/icons/brands/google-play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-plus-g.svg b/icons/brands/google-plus-g.svg new file mode 100644 index 0000000..d7b6665 --- /dev/null +++ b/icons/brands/google-plus-g.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-plus.svg b/icons/brands/google-plus.svg new file mode 100644 index 0000000..8e83565 --- /dev/null +++ b/icons/brands/google-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-scholar.svg b/icons/brands/google-scholar.svg new file mode 100644 index 0000000..2891d13 --- /dev/null +++ b/icons/brands/google-scholar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google-wallet.svg b/icons/brands/google-wallet.svg new file mode 100644 index 0000000..d007641 --- /dev/null +++ b/icons/brands/google-wallet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/google.svg b/icons/brands/google.svg new file mode 100644 index 0000000..12771b2 --- /dev/null +++ b/icons/brands/google.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gratipay.svg b/icons/brands/gratipay.svg new file mode 100644 index 0000000..519f77e --- /dev/null +++ b/icons/brands/gratipay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/grav.svg b/icons/brands/grav.svg new file mode 100644 index 0000000..d315692 --- /dev/null +++ b/icons/brands/grav.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gripfire.svg b/icons/brands/gripfire.svg new file mode 100644 index 0000000..9e21efd --- /dev/null +++ b/icons/brands/gripfire.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/grunt.svg b/icons/brands/grunt.svg new file mode 100644 index 0000000..7385a48 --- /dev/null +++ b/icons/brands/grunt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/guilded.svg b/icons/brands/guilded.svg new file mode 100644 index 0000000..322299d --- /dev/null +++ b/icons/brands/guilded.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/gulp.svg b/icons/brands/gulp.svg new file mode 100644 index 0000000..514732c --- /dev/null +++ b/icons/brands/gulp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hacker-news.svg b/icons/brands/hacker-news.svg new file mode 100644 index 0000000..3876d59 --- /dev/null +++ b/icons/brands/hacker-news.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hackerrank.svg b/icons/brands/hackerrank.svg new file mode 100644 index 0000000..e8e64c0 --- /dev/null +++ b/icons/brands/hackerrank.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hashnode.svg b/icons/brands/hashnode.svg new file mode 100644 index 0000000..123c94a --- /dev/null +++ b/icons/brands/hashnode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hips.svg b/icons/brands/hips.svg new file mode 100644 index 0000000..d76e87d --- /dev/null +++ b/icons/brands/hips.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hire-a-helper.svg b/icons/brands/hire-a-helper.svg new file mode 100644 index 0000000..f4e2203 --- /dev/null +++ b/icons/brands/hire-a-helper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hive.svg b/icons/brands/hive.svg new file mode 100644 index 0000000..c7d7081 --- /dev/null +++ b/icons/brands/hive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hooli.svg b/icons/brands/hooli.svg new file mode 100644 index 0000000..fbb3c58 --- /dev/null +++ b/icons/brands/hooli.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hornbill.svg b/icons/brands/hornbill.svg new file mode 100644 index 0000000..ed6d3f9 --- /dev/null +++ b/icons/brands/hornbill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hotjar.svg b/icons/brands/hotjar.svg new file mode 100644 index 0000000..02d4b12 --- /dev/null +++ b/icons/brands/hotjar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/houzz.svg b/icons/brands/houzz.svg new file mode 100644 index 0000000..5708b34 --- /dev/null +++ b/icons/brands/houzz.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/html5.svg b/icons/brands/html5.svg new file mode 100644 index 0000000..8706ddf --- /dev/null +++ b/icons/brands/html5.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/hubspot.svg b/icons/brands/hubspot.svg new file mode 100644 index 0000000..ce39142 --- /dev/null +++ b/icons/brands/hubspot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ideal.svg b/icons/brands/ideal.svg new file mode 100644 index 0000000..6447c41 --- /dev/null +++ b/icons/brands/ideal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/imdb.svg b/icons/brands/imdb.svg new file mode 100644 index 0000000..7f29551 --- /dev/null +++ b/icons/brands/imdb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/instagram.svg b/icons/brands/instagram.svg new file mode 100644 index 0000000..762550c --- /dev/null +++ b/icons/brands/instagram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/instalod.svg b/icons/brands/instalod.svg new file mode 100644 index 0000000..4c03769 --- /dev/null +++ b/icons/brands/instalod.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/intercom.svg b/icons/brands/intercom.svg new file mode 100644 index 0000000..51c737b --- /dev/null +++ b/icons/brands/intercom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/internet-explorer.svg b/icons/brands/internet-explorer.svg new file mode 100644 index 0000000..75ed695 --- /dev/null +++ b/icons/brands/internet-explorer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/invision.svg b/icons/brands/invision.svg new file mode 100644 index 0000000..6d90410 --- /dev/null +++ b/icons/brands/invision.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ioxhost.svg b/icons/brands/ioxhost.svg new file mode 100644 index 0000000..3f0d89b --- /dev/null +++ b/icons/brands/ioxhost.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/itch-io.svg b/icons/brands/itch-io.svg new file mode 100644 index 0000000..dd412c5 --- /dev/null +++ b/icons/brands/itch-io.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/itunes-note.svg b/icons/brands/itunes-note.svg new file mode 100644 index 0000000..c22a667 --- /dev/null +++ b/icons/brands/itunes-note.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/itunes.svg b/icons/brands/itunes.svg new file mode 100644 index 0000000..edd52c3 --- /dev/null +++ b/icons/brands/itunes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/java.svg b/icons/brands/java.svg new file mode 100644 index 0000000..a800d2c --- /dev/null +++ b/icons/brands/java.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/jedi-order.svg b/icons/brands/jedi-order.svg new file mode 100644 index 0000000..a24a87c --- /dev/null +++ b/icons/brands/jedi-order.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/jenkins.svg b/icons/brands/jenkins.svg new file mode 100644 index 0000000..8f779ba --- /dev/null +++ b/icons/brands/jenkins.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/jira.svg b/icons/brands/jira.svg new file mode 100644 index 0000000..69ffb39 --- /dev/null +++ b/icons/brands/jira.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/joget.svg b/icons/brands/joget.svg new file mode 100644 index 0000000..01782aa --- /dev/null +++ b/icons/brands/joget.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/joomla.svg b/icons/brands/joomla.svg new file mode 100644 index 0000000..41cc4c6 --- /dev/null +++ b/icons/brands/joomla.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/js.svg b/icons/brands/js.svg new file mode 100644 index 0000000..84a863d --- /dev/null +++ b/icons/brands/js.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/jsfiddle.svg b/icons/brands/jsfiddle.svg new file mode 100644 index 0000000..540eb73 --- /dev/null +++ b/icons/brands/jsfiddle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/jxl.svg b/icons/brands/jxl.svg new file mode 100644 index 0000000..c3c0edf --- /dev/null +++ b/icons/brands/jxl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/kaggle.svg b/icons/brands/kaggle.svg new file mode 100644 index 0000000..81fc273 --- /dev/null +++ b/icons/brands/kaggle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/keybase.svg b/icons/brands/keybase.svg new file mode 100644 index 0000000..babce24 --- /dev/null +++ b/icons/brands/keybase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/keycdn.svg b/icons/brands/keycdn.svg new file mode 100644 index 0000000..c11cdc3 --- /dev/null +++ b/icons/brands/keycdn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/kickstarter-k.svg b/icons/brands/kickstarter-k.svg new file mode 100644 index 0000000..6588886 --- /dev/null +++ b/icons/brands/kickstarter-k.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/kickstarter.svg b/icons/brands/kickstarter.svg new file mode 100644 index 0000000..289c886 --- /dev/null +++ b/icons/brands/kickstarter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/korvue.svg b/icons/brands/korvue.svg new file mode 100644 index 0000000..9aba228 --- /dev/null +++ b/icons/brands/korvue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/laravel.svg b/icons/brands/laravel.svg new file mode 100644 index 0000000..d530294 --- /dev/null +++ b/icons/brands/laravel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/lastfm.svg b/icons/brands/lastfm.svg new file mode 100644 index 0000000..fa97dc9 --- /dev/null +++ b/icons/brands/lastfm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/leanpub.svg b/icons/brands/leanpub.svg new file mode 100644 index 0000000..6ad0722 --- /dev/null +++ b/icons/brands/leanpub.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/less.svg b/icons/brands/less.svg new file mode 100644 index 0000000..51ec691 --- /dev/null +++ b/icons/brands/less.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/letterboxd.svg b/icons/brands/letterboxd.svg new file mode 100644 index 0000000..f30072f --- /dev/null +++ b/icons/brands/letterboxd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/line.svg b/icons/brands/line.svg new file mode 100644 index 0000000..173debe --- /dev/null +++ b/icons/brands/line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/linkedin-in.svg b/icons/brands/linkedin-in.svg new file mode 100644 index 0000000..ff9adfb --- /dev/null +++ b/icons/brands/linkedin-in.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/linkedin.svg b/icons/brands/linkedin.svg new file mode 100644 index 0000000..5d3aa38 --- /dev/null +++ b/icons/brands/linkedin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/linode.svg b/icons/brands/linode.svg new file mode 100644 index 0000000..e16c647 --- /dev/null +++ b/icons/brands/linode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/linux.svg b/icons/brands/linux.svg new file mode 100644 index 0000000..ccbece1 --- /dev/null +++ b/icons/brands/linux.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/lyft.svg b/icons/brands/lyft.svg new file mode 100644 index 0000000..fb8ade9 --- /dev/null +++ b/icons/brands/lyft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/magento.svg b/icons/brands/magento.svg new file mode 100644 index 0000000..db1b569 --- /dev/null +++ b/icons/brands/magento.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mailchimp.svg b/icons/brands/mailchimp.svg new file mode 100644 index 0000000..c06c197 --- /dev/null +++ b/icons/brands/mailchimp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mandalorian.svg b/icons/brands/mandalorian.svg new file mode 100644 index 0000000..c6bd218 --- /dev/null +++ b/icons/brands/mandalorian.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/markdown.svg b/icons/brands/markdown.svg new file mode 100644 index 0000000..19810ee --- /dev/null +++ b/icons/brands/markdown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mastodon.svg b/icons/brands/mastodon.svg new file mode 100644 index 0000000..6cf2f5c --- /dev/null +++ b/icons/brands/mastodon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/maxcdn.svg b/icons/brands/maxcdn.svg new file mode 100644 index 0000000..7eeb28e --- /dev/null +++ b/icons/brands/maxcdn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mdb.svg b/icons/brands/mdb.svg new file mode 100644 index 0000000..0f4f214 --- /dev/null +++ b/icons/brands/mdb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/medapps.svg b/icons/brands/medapps.svg new file mode 100644 index 0000000..7299c84 --- /dev/null +++ b/icons/brands/medapps.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/medium.svg b/icons/brands/medium.svg new file mode 100644 index 0000000..534d1c6 --- /dev/null +++ b/icons/brands/medium.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/medrt.svg b/icons/brands/medrt.svg new file mode 100644 index 0000000..264bab0 --- /dev/null +++ b/icons/brands/medrt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/meetup.svg b/icons/brands/meetup.svg new file mode 100644 index 0000000..8d419e7 --- /dev/null +++ b/icons/brands/meetup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/megaport.svg b/icons/brands/megaport.svg new file mode 100644 index 0000000..466cd89 --- /dev/null +++ b/icons/brands/megaport.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mendeley.svg b/icons/brands/mendeley.svg new file mode 100644 index 0000000..6eba564 --- /dev/null +++ b/icons/brands/mendeley.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/meta.svg b/icons/brands/meta.svg new file mode 100644 index 0000000..32400c0 --- /dev/null +++ b/icons/brands/meta.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/microblog.svg b/icons/brands/microblog.svg new file mode 100644 index 0000000..8b6b0f3 --- /dev/null +++ b/icons/brands/microblog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/microsoft.svg b/icons/brands/microsoft.svg new file mode 100644 index 0000000..4be7683 --- /dev/null +++ b/icons/brands/microsoft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mintbit.svg b/icons/brands/mintbit.svg new file mode 100644 index 0000000..0864514 --- /dev/null +++ b/icons/brands/mintbit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mix.svg b/icons/brands/mix.svg new file mode 100644 index 0000000..88d85de --- /dev/null +++ b/icons/brands/mix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mixcloud.svg b/icons/brands/mixcloud.svg new file mode 100644 index 0000000..b9771df --- /dev/null +++ b/icons/brands/mixcloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mixer.svg b/icons/brands/mixer.svg new file mode 100644 index 0000000..9364521 --- /dev/null +++ b/icons/brands/mixer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/mizuni.svg b/icons/brands/mizuni.svg new file mode 100644 index 0000000..3ce60de --- /dev/null +++ b/icons/brands/mizuni.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/modx.svg b/icons/brands/modx.svg new file mode 100644 index 0000000..6909a44 --- /dev/null +++ b/icons/brands/modx.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/monero.svg b/icons/brands/monero.svg new file mode 100644 index 0000000..4901a13 --- /dev/null +++ b/icons/brands/monero.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/napster.svg b/icons/brands/napster.svg new file mode 100644 index 0000000..fa1ac04 --- /dev/null +++ b/icons/brands/napster.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/neos.svg b/icons/brands/neos.svg new file mode 100644 index 0000000..db7bead --- /dev/null +++ b/icons/brands/neos.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/nfc-directional.svg b/icons/brands/nfc-directional.svg new file mode 100644 index 0000000..e0ac233 --- /dev/null +++ b/icons/brands/nfc-directional.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/nfc-symbol.svg b/icons/brands/nfc-symbol.svg new file mode 100644 index 0000000..5b7963b --- /dev/null +++ b/icons/brands/nfc-symbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/nimblr.svg b/icons/brands/nimblr.svg new file mode 100644 index 0000000..9a20277 --- /dev/null +++ b/icons/brands/nimblr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/node-js.svg b/icons/brands/node-js.svg new file mode 100644 index 0000000..a42c705 --- /dev/null +++ b/icons/brands/node-js.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/node.svg b/icons/brands/node.svg new file mode 100644 index 0000000..90f627a --- /dev/null +++ b/icons/brands/node.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/npm.svg b/icons/brands/npm.svg new file mode 100644 index 0000000..3a3b5f4 --- /dev/null +++ b/icons/brands/npm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ns8.svg b/icons/brands/ns8.svg new file mode 100644 index 0000000..abf5efe --- /dev/null +++ b/icons/brands/ns8.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/nutritionix.svg b/icons/brands/nutritionix.svg new file mode 100644 index 0000000..e7bdd36 --- /dev/null +++ b/icons/brands/nutritionix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/octopus-deploy.svg b/icons/brands/octopus-deploy.svg new file mode 100644 index 0000000..b948198 --- /dev/null +++ b/icons/brands/octopus-deploy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/odnoklassniki.svg b/icons/brands/odnoklassniki.svg new file mode 100644 index 0000000..02a9bdd --- /dev/null +++ b/icons/brands/odnoklassniki.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/odysee.svg b/icons/brands/odysee.svg new file mode 100644 index 0000000..f385990 --- /dev/null +++ b/icons/brands/odysee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/old-republic.svg b/icons/brands/old-republic.svg new file mode 100644 index 0000000..97f31bf --- /dev/null +++ b/icons/brands/old-republic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/opencart.svg b/icons/brands/opencart.svg new file mode 100644 index 0000000..2cffff1 --- /dev/null +++ b/icons/brands/opencart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/openid.svg b/icons/brands/openid.svg new file mode 100644 index 0000000..f68d949 --- /dev/null +++ b/icons/brands/openid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/opensuse.svg b/icons/brands/opensuse.svg new file mode 100644 index 0000000..5cf533a --- /dev/null +++ b/icons/brands/opensuse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/opera.svg b/icons/brands/opera.svg new file mode 100644 index 0000000..d299ef3 --- /dev/null +++ b/icons/brands/opera.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/optin-monster.svg b/icons/brands/optin-monster.svg new file mode 100644 index 0000000..1bf3c5c --- /dev/null +++ b/icons/brands/optin-monster.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/orcid.svg b/icons/brands/orcid.svg new file mode 100644 index 0000000..4144516 --- /dev/null +++ b/icons/brands/orcid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/osi.svg b/icons/brands/osi.svg new file mode 100644 index 0000000..b8910ce --- /dev/null +++ b/icons/brands/osi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/padlet.svg b/icons/brands/padlet.svg new file mode 100644 index 0000000..4668ea8 --- /dev/null +++ b/icons/brands/padlet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/page4.svg b/icons/brands/page4.svg new file mode 100644 index 0000000..11d57cb --- /dev/null +++ b/icons/brands/page4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pagelines.svg b/icons/brands/pagelines.svg new file mode 100644 index 0000000..6dfc849 --- /dev/null +++ b/icons/brands/pagelines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/palfed.svg b/icons/brands/palfed.svg new file mode 100644 index 0000000..fe82958 --- /dev/null +++ b/icons/brands/palfed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/patreon.svg b/icons/brands/patreon.svg new file mode 100644 index 0000000..4c4092b --- /dev/null +++ b/icons/brands/patreon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/paypal.svg b/icons/brands/paypal.svg new file mode 100644 index 0000000..ee3389b --- /dev/null +++ b/icons/brands/paypal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/perbyte.svg b/icons/brands/perbyte.svg new file mode 100644 index 0000000..079c81c --- /dev/null +++ b/icons/brands/perbyte.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/periscope.svg b/icons/brands/periscope.svg new file mode 100644 index 0000000..c11313a --- /dev/null +++ b/icons/brands/periscope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/phabricator.svg b/icons/brands/phabricator.svg new file mode 100644 index 0000000..c056ae6 --- /dev/null +++ b/icons/brands/phabricator.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/phoenix-framework.svg b/icons/brands/phoenix-framework.svg new file mode 100644 index 0000000..4d2525e --- /dev/null +++ b/icons/brands/phoenix-framework.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/phoenix-squadron.svg b/icons/brands/phoenix-squadron.svg new file mode 100644 index 0000000..bff5592 --- /dev/null +++ b/icons/brands/phoenix-squadron.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/php.svg b/icons/brands/php.svg new file mode 100644 index 0000000..6aa824a --- /dev/null +++ b/icons/brands/php.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pied-piper-alt.svg b/icons/brands/pied-piper-alt.svg new file mode 100644 index 0000000..26beaed --- /dev/null +++ b/icons/brands/pied-piper-alt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pied-piper-hat.svg b/icons/brands/pied-piper-hat.svg new file mode 100644 index 0000000..7c5d140 --- /dev/null +++ b/icons/brands/pied-piper-hat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pied-piper-pp.svg b/icons/brands/pied-piper-pp.svg new file mode 100644 index 0000000..c8901c5 --- /dev/null +++ b/icons/brands/pied-piper-pp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pied-piper.svg b/icons/brands/pied-piper.svg new file mode 100644 index 0000000..176283f --- /dev/null +++ b/icons/brands/pied-piper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pinterest-p.svg b/icons/brands/pinterest-p.svg new file mode 100644 index 0000000..d8d1077 --- /dev/null +++ b/icons/brands/pinterest-p.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pinterest.svg b/icons/brands/pinterest.svg new file mode 100644 index 0000000..0ce8ef6 --- /dev/null +++ b/icons/brands/pinterest.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pix.svg b/icons/brands/pix.svg new file mode 100644 index 0000000..6a9de74 --- /dev/null +++ b/icons/brands/pix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pixiv.svg b/icons/brands/pixiv.svg new file mode 100644 index 0000000..c179148 --- /dev/null +++ b/icons/brands/pixiv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/playstation.svg b/icons/brands/playstation.svg new file mode 100644 index 0000000..78e73d8 --- /dev/null +++ b/icons/brands/playstation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/product-hunt.svg b/icons/brands/product-hunt.svg new file mode 100644 index 0000000..489f650 --- /dev/null +++ b/icons/brands/product-hunt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/pushed.svg b/icons/brands/pushed.svg new file mode 100644 index 0000000..34173c1 --- /dev/null +++ b/icons/brands/pushed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/python.svg b/icons/brands/python.svg new file mode 100644 index 0000000..59bf973 --- /dev/null +++ b/icons/brands/python.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/qq.svg b/icons/brands/qq.svg new file mode 100644 index 0000000..3eb6696 --- /dev/null +++ b/icons/brands/qq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/quinscape.svg b/icons/brands/quinscape.svg new file mode 100644 index 0000000..1dcaa5f --- /dev/null +++ b/icons/brands/quinscape.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/quora.svg b/icons/brands/quora.svg new file mode 100644 index 0000000..6fbf0b7 --- /dev/null +++ b/icons/brands/quora.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/r-project.svg b/icons/brands/r-project.svg new file mode 100644 index 0000000..ae3de2a --- /dev/null +++ b/icons/brands/r-project.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/raspberry-pi.svg b/icons/brands/raspberry-pi.svg new file mode 100644 index 0000000..4ed2384 --- /dev/null +++ b/icons/brands/raspberry-pi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ravelry.svg b/icons/brands/ravelry.svg new file mode 100644 index 0000000..92ed0f5 --- /dev/null +++ b/icons/brands/ravelry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/react.svg b/icons/brands/react.svg new file mode 100644 index 0000000..bc7fe5e --- /dev/null +++ b/icons/brands/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/reacteurope.svg b/icons/brands/reacteurope.svg new file mode 100644 index 0000000..9e26c56 --- /dev/null +++ b/icons/brands/reacteurope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/readme.svg b/icons/brands/readme.svg new file mode 100644 index 0000000..4d1a843 --- /dev/null +++ b/icons/brands/readme.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/rebel.svg b/icons/brands/rebel.svg new file mode 100644 index 0000000..838e17e --- /dev/null +++ b/icons/brands/rebel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/red-river.svg b/icons/brands/red-river.svg new file mode 100644 index 0000000..df85ea8 --- /dev/null +++ b/icons/brands/red-river.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/reddit-alien.svg b/icons/brands/reddit-alien.svg new file mode 100644 index 0000000..b8109a0 --- /dev/null +++ b/icons/brands/reddit-alien.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/reddit.svg b/icons/brands/reddit.svg new file mode 100644 index 0000000..1eebad0 --- /dev/null +++ b/icons/brands/reddit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/redhat.svg b/icons/brands/redhat.svg new file mode 100644 index 0000000..60428f7 --- /dev/null +++ b/icons/brands/redhat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/renren.svg b/icons/brands/renren.svg new file mode 100644 index 0000000..f31e455 --- /dev/null +++ b/icons/brands/renren.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/replyd.svg b/icons/brands/replyd.svg new file mode 100644 index 0000000..455f9b0 --- /dev/null +++ b/icons/brands/replyd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/researchgate.svg b/icons/brands/researchgate.svg new file mode 100644 index 0000000..46550a2 --- /dev/null +++ b/icons/brands/researchgate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/resolving.svg b/icons/brands/resolving.svg new file mode 100644 index 0000000..08d8e15 --- /dev/null +++ b/icons/brands/resolving.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/rev.svg b/icons/brands/rev.svg new file mode 100644 index 0000000..b838539 --- /dev/null +++ b/icons/brands/rev.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/rocketchat.svg b/icons/brands/rocketchat.svg new file mode 100644 index 0000000..a702939 --- /dev/null +++ b/icons/brands/rocketchat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/rockrms.svg b/icons/brands/rockrms.svg new file mode 100644 index 0000000..7013a77 --- /dev/null +++ b/icons/brands/rockrms.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/rust.svg b/icons/brands/rust.svg new file mode 100644 index 0000000..466e1ba --- /dev/null +++ b/icons/brands/rust.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/safari.svg b/icons/brands/safari.svg new file mode 100644 index 0000000..8cf0484 --- /dev/null +++ b/icons/brands/safari.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/salesforce.svg b/icons/brands/salesforce.svg new file mode 100644 index 0000000..7bee523 --- /dev/null +++ b/icons/brands/salesforce.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sass.svg b/icons/brands/sass.svg new file mode 100644 index 0000000..15d2122 --- /dev/null +++ b/icons/brands/sass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/schlix.svg b/icons/brands/schlix.svg new file mode 100644 index 0000000..4ffb1b3 --- /dev/null +++ b/icons/brands/schlix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/screenpal.svg b/icons/brands/screenpal.svg new file mode 100644 index 0000000..bd989ab --- /dev/null +++ b/icons/brands/screenpal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/scribd.svg b/icons/brands/scribd.svg new file mode 100644 index 0000000..3a51adf --- /dev/null +++ b/icons/brands/scribd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/searchengin.svg b/icons/brands/searchengin.svg new file mode 100644 index 0000000..d7c4192 --- /dev/null +++ b/icons/brands/searchengin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sellcast.svg b/icons/brands/sellcast.svg new file mode 100644 index 0000000..9e48a42 --- /dev/null +++ b/icons/brands/sellcast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sellsy.svg b/icons/brands/sellsy.svg new file mode 100644 index 0000000..a11a94a --- /dev/null +++ b/icons/brands/sellsy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/servicestack.svg b/icons/brands/servicestack.svg new file mode 100644 index 0000000..1a25896 --- /dev/null +++ b/icons/brands/servicestack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/shirtsinbulk.svg b/icons/brands/shirtsinbulk.svg new file mode 100644 index 0000000..e68ba73 --- /dev/null +++ b/icons/brands/shirtsinbulk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/shoelace.svg b/icons/brands/shoelace.svg new file mode 100644 index 0000000..1aa1f8b --- /dev/null +++ b/icons/brands/shoelace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/shopify.svg b/icons/brands/shopify.svg new file mode 100644 index 0000000..177fdc0 --- /dev/null +++ b/icons/brands/shopify.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/shopware.svg b/icons/brands/shopware.svg new file mode 100644 index 0000000..58cd890 --- /dev/null +++ b/icons/brands/shopware.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/signal-messenger.svg b/icons/brands/signal-messenger.svg new file mode 100644 index 0000000..a952a33 --- /dev/null +++ b/icons/brands/signal-messenger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/simplybuilt.svg b/icons/brands/simplybuilt.svg new file mode 100644 index 0000000..4edd4fa --- /dev/null +++ b/icons/brands/simplybuilt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sistrix.svg b/icons/brands/sistrix.svg new file mode 100644 index 0000000..6a66cac --- /dev/null +++ b/icons/brands/sistrix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sith.svg b/icons/brands/sith.svg new file mode 100644 index 0000000..b0df35f --- /dev/null +++ b/icons/brands/sith.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sitrox.svg b/icons/brands/sitrox.svg new file mode 100644 index 0000000..a76f74a --- /dev/null +++ b/icons/brands/sitrox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sketch.svg b/icons/brands/sketch.svg new file mode 100644 index 0000000..07550cf --- /dev/null +++ b/icons/brands/sketch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/skyatlas.svg b/icons/brands/skyatlas.svg new file mode 100644 index 0000000..5752250 --- /dev/null +++ b/icons/brands/skyatlas.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/skype.svg b/icons/brands/skype.svg new file mode 100644 index 0000000..bb0b8ad --- /dev/null +++ b/icons/brands/skype.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/slack.svg b/icons/brands/slack.svg new file mode 100644 index 0000000..6c0c311 --- /dev/null +++ b/icons/brands/slack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/slideshare.svg b/icons/brands/slideshare.svg new file mode 100644 index 0000000..ff0e9d5 --- /dev/null +++ b/icons/brands/slideshare.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/snapchat.svg b/icons/brands/snapchat.svg new file mode 100644 index 0000000..722424e --- /dev/null +++ b/icons/brands/snapchat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/soundcloud.svg b/icons/brands/soundcloud.svg new file mode 100644 index 0000000..51cdca1 --- /dev/null +++ b/icons/brands/soundcloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sourcetree.svg b/icons/brands/sourcetree.svg new file mode 100644 index 0000000..22c956c --- /dev/null +++ b/icons/brands/sourcetree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/space-awesome.svg b/icons/brands/space-awesome.svg new file mode 100644 index 0000000..3dbf3a4 --- /dev/null +++ b/icons/brands/space-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/speakap.svg b/icons/brands/speakap.svg new file mode 100644 index 0000000..69dd552 --- /dev/null +++ b/icons/brands/speakap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/speaker-deck.svg b/icons/brands/speaker-deck.svg new file mode 100644 index 0000000..5e1e0af --- /dev/null +++ b/icons/brands/speaker-deck.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/spotify.svg b/icons/brands/spotify.svg new file mode 100644 index 0000000..afa0319 --- /dev/null +++ b/icons/brands/spotify.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-behance.svg b/icons/brands/square-behance.svg new file mode 100644 index 0000000..8105b0a --- /dev/null +++ b/icons/brands/square-behance.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-dribbble.svg b/icons/brands/square-dribbble.svg new file mode 100644 index 0000000..6181cc5 --- /dev/null +++ b/icons/brands/square-dribbble.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-facebook.svg b/icons/brands/square-facebook.svg new file mode 100644 index 0000000..1e2679a --- /dev/null +++ b/icons/brands/square-facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-font-awesome-stroke.svg b/icons/brands/square-font-awesome-stroke.svg new file mode 100644 index 0000000..99b1995 --- /dev/null +++ b/icons/brands/square-font-awesome-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-font-awesome.svg b/icons/brands/square-font-awesome.svg new file mode 100644 index 0000000..fd6c162 --- /dev/null +++ b/icons/brands/square-font-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-git.svg b/icons/brands/square-git.svg new file mode 100644 index 0000000..16597d6 --- /dev/null +++ b/icons/brands/square-git.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-github.svg b/icons/brands/square-github.svg new file mode 100644 index 0000000..c5b1d0b --- /dev/null +++ b/icons/brands/square-github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-gitlab.svg b/icons/brands/square-gitlab.svg new file mode 100644 index 0000000..0f3cd0e --- /dev/null +++ b/icons/brands/square-gitlab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-google-plus.svg b/icons/brands/square-google-plus.svg new file mode 100644 index 0000000..463f019 --- /dev/null +++ b/icons/brands/square-google-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-hacker-news.svg b/icons/brands/square-hacker-news.svg new file mode 100644 index 0000000..5e7f0d1 --- /dev/null +++ b/icons/brands/square-hacker-news.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-instagram.svg b/icons/brands/square-instagram.svg new file mode 100644 index 0000000..e36079d --- /dev/null +++ b/icons/brands/square-instagram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-js.svg b/icons/brands/square-js.svg new file mode 100644 index 0000000..bcadfae --- /dev/null +++ b/icons/brands/square-js.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-lastfm.svg b/icons/brands/square-lastfm.svg new file mode 100644 index 0000000..a3b6505 --- /dev/null +++ b/icons/brands/square-lastfm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-letterboxd.svg b/icons/brands/square-letterboxd.svg new file mode 100644 index 0000000..f963212 --- /dev/null +++ b/icons/brands/square-letterboxd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-odnoklassniki.svg b/icons/brands/square-odnoklassniki.svg new file mode 100644 index 0000000..ffaa77d --- /dev/null +++ b/icons/brands/square-odnoklassniki.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-pied-piper.svg b/icons/brands/square-pied-piper.svg new file mode 100644 index 0000000..74f29bd --- /dev/null +++ b/icons/brands/square-pied-piper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-pinterest.svg b/icons/brands/square-pinterest.svg new file mode 100644 index 0000000..e8eba07 --- /dev/null +++ b/icons/brands/square-pinterest.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-reddit.svg b/icons/brands/square-reddit.svg new file mode 100644 index 0000000..5b8c29f --- /dev/null +++ b/icons/brands/square-reddit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-snapchat.svg b/icons/brands/square-snapchat.svg new file mode 100644 index 0000000..ae064b2 --- /dev/null +++ b/icons/brands/square-snapchat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-steam.svg b/icons/brands/square-steam.svg new file mode 100644 index 0000000..ddf72f9 --- /dev/null +++ b/icons/brands/square-steam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-threads.svg b/icons/brands/square-threads.svg new file mode 100644 index 0000000..0ed2ad9 --- /dev/null +++ b/icons/brands/square-threads.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-tumblr.svg b/icons/brands/square-tumblr.svg new file mode 100644 index 0000000..fd39b6b --- /dev/null +++ b/icons/brands/square-tumblr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-twitter.svg b/icons/brands/square-twitter.svg new file mode 100644 index 0000000..2610ade --- /dev/null +++ b/icons/brands/square-twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-upwork.svg b/icons/brands/square-upwork.svg new file mode 100644 index 0000000..db12f42 --- /dev/null +++ b/icons/brands/square-upwork.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-viadeo.svg b/icons/brands/square-viadeo.svg new file mode 100644 index 0000000..0c51db1 --- /dev/null +++ b/icons/brands/square-viadeo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-vimeo.svg b/icons/brands/square-vimeo.svg new file mode 100644 index 0000000..c27e1a0 --- /dev/null +++ b/icons/brands/square-vimeo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-web-awesome-stroke.svg b/icons/brands/square-web-awesome-stroke.svg new file mode 100644 index 0000000..5f5a606 --- /dev/null +++ b/icons/brands/square-web-awesome-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-web-awesome.svg b/icons/brands/square-web-awesome.svg new file mode 100644 index 0000000..159fd78 --- /dev/null +++ b/icons/brands/square-web-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-whatsapp.svg b/icons/brands/square-whatsapp.svg new file mode 100644 index 0000000..df6b4f1 --- /dev/null +++ b/icons/brands/square-whatsapp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-x-twitter.svg b/icons/brands/square-x-twitter.svg new file mode 100644 index 0000000..b51a931 --- /dev/null +++ b/icons/brands/square-x-twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-xing.svg b/icons/brands/square-xing.svg new file mode 100644 index 0000000..cad8dae --- /dev/null +++ b/icons/brands/square-xing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/square-youtube.svg b/icons/brands/square-youtube.svg new file mode 100644 index 0000000..96376bc --- /dev/null +++ b/icons/brands/square-youtube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/squarespace.svg b/icons/brands/squarespace.svg new file mode 100644 index 0000000..9c9b843 --- /dev/null +++ b/icons/brands/squarespace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stack-exchange.svg b/icons/brands/stack-exchange.svg new file mode 100644 index 0000000..d70d0a4 --- /dev/null +++ b/icons/brands/stack-exchange.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stack-overflow.svg b/icons/brands/stack-overflow.svg new file mode 100644 index 0000000..f174100 --- /dev/null +++ b/icons/brands/stack-overflow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stackpath.svg b/icons/brands/stackpath.svg new file mode 100644 index 0000000..d95d830 --- /dev/null +++ b/icons/brands/stackpath.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/staylinked.svg b/icons/brands/staylinked.svg new file mode 100644 index 0000000..d83f80b --- /dev/null +++ b/icons/brands/staylinked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/steam-symbol.svg b/icons/brands/steam-symbol.svg new file mode 100644 index 0000000..a7a3e2e --- /dev/null +++ b/icons/brands/steam-symbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/steam.svg b/icons/brands/steam.svg new file mode 100644 index 0000000..58c3d06 --- /dev/null +++ b/icons/brands/steam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/sticker-mule.svg b/icons/brands/sticker-mule.svg new file mode 100644 index 0000000..4fecfe9 --- /dev/null +++ b/icons/brands/sticker-mule.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/strava.svg b/icons/brands/strava.svg new file mode 100644 index 0000000..3adb6e6 --- /dev/null +++ b/icons/brands/strava.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stripe-s.svg b/icons/brands/stripe-s.svg new file mode 100644 index 0000000..e4b1b1c --- /dev/null +++ b/icons/brands/stripe-s.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stripe.svg b/icons/brands/stripe.svg new file mode 100644 index 0000000..e4591ad --- /dev/null +++ b/icons/brands/stripe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stubber.svg b/icons/brands/stubber.svg new file mode 100644 index 0000000..eb556c8 --- /dev/null +++ b/icons/brands/stubber.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/studiovinari.svg b/icons/brands/studiovinari.svg new file mode 100644 index 0000000..c8ba9b3 --- /dev/null +++ b/icons/brands/studiovinari.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stumbleupon-circle.svg b/icons/brands/stumbleupon-circle.svg new file mode 100644 index 0000000..e56618a --- /dev/null +++ b/icons/brands/stumbleupon-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/stumbleupon.svg b/icons/brands/stumbleupon.svg new file mode 100644 index 0000000..242f67c --- /dev/null +++ b/icons/brands/stumbleupon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/superpowers.svg b/icons/brands/superpowers.svg new file mode 100644 index 0000000..8ad0fe2 --- /dev/null +++ b/icons/brands/superpowers.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/supple.svg b/icons/brands/supple.svg new file mode 100644 index 0000000..acee48a --- /dev/null +++ b/icons/brands/supple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/suse.svg b/icons/brands/suse.svg new file mode 100644 index 0000000..1bd9cf4 --- /dev/null +++ b/icons/brands/suse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/swift.svg b/icons/brands/swift.svg new file mode 100644 index 0000000..e735f31 --- /dev/null +++ b/icons/brands/swift.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/symfony.svg b/icons/brands/symfony.svg new file mode 100644 index 0000000..1cbe78e --- /dev/null +++ b/icons/brands/symfony.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/teamspeak.svg b/icons/brands/teamspeak.svg new file mode 100644 index 0000000..0b9125c --- /dev/null +++ b/icons/brands/teamspeak.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/telegram.svg b/icons/brands/telegram.svg new file mode 100644 index 0000000..5dcaedf --- /dev/null +++ b/icons/brands/telegram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/tencent-weibo.svg b/icons/brands/tencent-weibo.svg new file mode 100644 index 0000000..979741d --- /dev/null +++ b/icons/brands/tencent-weibo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/the-red-yeti.svg b/icons/brands/the-red-yeti.svg new file mode 100644 index 0000000..49dfe5a --- /dev/null +++ b/icons/brands/the-red-yeti.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/themeco.svg b/icons/brands/themeco.svg new file mode 100644 index 0000000..5ef8bcb --- /dev/null +++ b/icons/brands/themeco.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/themeisle.svg b/icons/brands/themeisle.svg new file mode 100644 index 0000000..4ee08f2 --- /dev/null +++ b/icons/brands/themeisle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/think-peaks.svg b/icons/brands/think-peaks.svg new file mode 100644 index 0000000..c471a65 --- /dev/null +++ b/icons/brands/think-peaks.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/threads.svg b/icons/brands/threads.svg new file mode 100644 index 0000000..220a35e --- /dev/null +++ b/icons/brands/threads.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/tiktok.svg b/icons/brands/tiktok.svg new file mode 100644 index 0000000..a88e58e --- /dev/null +++ b/icons/brands/tiktok.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/trade-federation.svg b/icons/brands/trade-federation.svg new file mode 100644 index 0000000..4568439 --- /dev/null +++ b/icons/brands/trade-federation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/trello.svg b/icons/brands/trello.svg new file mode 100644 index 0000000..38d4ea2 --- /dev/null +++ b/icons/brands/trello.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/tumblr.svg b/icons/brands/tumblr.svg new file mode 100644 index 0000000..b024899 --- /dev/null +++ b/icons/brands/tumblr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/twitch.svg b/icons/brands/twitch.svg new file mode 100644 index 0000000..4a943f8 --- /dev/null +++ b/icons/brands/twitch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/twitter.svg b/icons/brands/twitter.svg new file mode 100644 index 0000000..0a8f999 --- /dev/null +++ b/icons/brands/twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/typo3.svg b/icons/brands/typo3.svg new file mode 100644 index 0000000..2451712 --- /dev/null +++ b/icons/brands/typo3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/uber.svg b/icons/brands/uber.svg new file mode 100644 index 0000000..e08a450 --- /dev/null +++ b/icons/brands/uber.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ubuntu.svg b/icons/brands/ubuntu.svg new file mode 100644 index 0000000..f4bca88 --- /dev/null +++ b/icons/brands/ubuntu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/uikit.svg b/icons/brands/uikit.svg new file mode 100644 index 0000000..3044080 --- /dev/null +++ b/icons/brands/uikit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/umbraco.svg b/icons/brands/umbraco.svg new file mode 100644 index 0000000..ad78d7e --- /dev/null +++ b/icons/brands/umbraco.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/uncharted.svg b/icons/brands/uncharted.svg new file mode 100644 index 0000000..61e8934 --- /dev/null +++ b/icons/brands/uncharted.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/uniregistry.svg b/icons/brands/uniregistry.svg new file mode 100644 index 0000000..ff8077b --- /dev/null +++ b/icons/brands/uniregistry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/unity.svg b/icons/brands/unity.svg new file mode 100644 index 0000000..d405cc9 --- /dev/null +++ b/icons/brands/unity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/unsplash.svg b/icons/brands/unsplash.svg new file mode 100644 index 0000000..2f09184 --- /dev/null +++ b/icons/brands/unsplash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/untappd.svg b/icons/brands/untappd.svg new file mode 100644 index 0000000..8df56c9 --- /dev/null +++ b/icons/brands/untappd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ups.svg b/icons/brands/ups.svg new file mode 100644 index 0000000..102ad7d --- /dev/null +++ b/icons/brands/ups.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/upwork.svg b/icons/brands/upwork.svg new file mode 100644 index 0000000..4c96b1a --- /dev/null +++ b/icons/brands/upwork.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/usb.svg b/icons/brands/usb.svg new file mode 100644 index 0000000..4ffe65f --- /dev/null +++ b/icons/brands/usb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/usps.svg b/icons/brands/usps.svg new file mode 100644 index 0000000..8dabdde --- /dev/null +++ b/icons/brands/usps.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/ussunnah.svg b/icons/brands/ussunnah.svg new file mode 100644 index 0000000..b7a7e36 --- /dev/null +++ b/icons/brands/ussunnah.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vaadin.svg b/icons/brands/vaadin.svg new file mode 100644 index 0000000..52fb3a8 --- /dev/null +++ b/icons/brands/vaadin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/viacoin.svg b/icons/brands/viacoin.svg new file mode 100644 index 0000000..bfe0a11 --- /dev/null +++ b/icons/brands/viacoin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/viadeo.svg b/icons/brands/viadeo.svg new file mode 100644 index 0000000..d72c4f9 --- /dev/null +++ b/icons/brands/viadeo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/viber.svg b/icons/brands/viber.svg new file mode 100644 index 0000000..033ce98 --- /dev/null +++ b/icons/brands/viber.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vimeo-v.svg b/icons/brands/vimeo-v.svg new file mode 100644 index 0000000..c4a44d9 --- /dev/null +++ b/icons/brands/vimeo-v.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vimeo.svg b/icons/brands/vimeo.svg new file mode 100644 index 0000000..1cf55d7 --- /dev/null +++ b/icons/brands/vimeo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vine.svg b/icons/brands/vine.svg new file mode 100644 index 0000000..da83c09 --- /dev/null +++ b/icons/brands/vine.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vk.svg b/icons/brands/vk.svg new file mode 100644 index 0000000..c982191 --- /dev/null +++ b/icons/brands/vk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vnv.svg b/icons/brands/vnv.svg new file mode 100644 index 0000000..44340eb --- /dev/null +++ b/icons/brands/vnv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/vuejs.svg b/icons/brands/vuejs.svg new file mode 100644 index 0000000..974cfaf --- /dev/null +++ b/icons/brands/vuejs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/watchman-monitoring.svg b/icons/brands/watchman-monitoring.svg new file mode 100644 index 0000000..ab97e6d --- /dev/null +++ b/icons/brands/watchman-monitoring.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/waze.svg b/icons/brands/waze.svg new file mode 100644 index 0000000..ff2375b --- /dev/null +++ b/icons/brands/waze.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/web-awesome.svg b/icons/brands/web-awesome.svg new file mode 100644 index 0000000..1dac51f --- /dev/null +++ b/icons/brands/web-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/webflow.svg b/icons/brands/webflow.svg new file mode 100644 index 0000000..3247626 --- /dev/null +++ b/icons/brands/webflow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/weebly.svg b/icons/brands/weebly.svg new file mode 100644 index 0000000..bf64357 --- /dev/null +++ b/icons/brands/weebly.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/weibo.svg b/icons/brands/weibo.svg new file mode 100644 index 0000000..e5eca22 --- /dev/null +++ b/icons/brands/weibo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/weixin.svg b/icons/brands/weixin.svg new file mode 100644 index 0000000..b3b394e --- /dev/null +++ b/icons/brands/weixin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/whatsapp.svg b/icons/brands/whatsapp.svg new file mode 100644 index 0000000..3dd99fb --- /dev/null +++ b/icons/brands/whatsapp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/whmcs.svg b/icons/brands/whmcs.svg new file mode 100644 index 0000000..009c35d --- /dev/null +++ b/icons/brands/whmcs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wikipedia-w.svg b/icons/brands/wikipedia-w.svg new file mode 100644 index 0000000..68e5ce0 --- /dev/null +++ b/icons/brands/wikipedia-w.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/windows.svg b/icons/brands/windows.svg new file mode 100644 index 0000000..4173f33 --- /dev/null +++ b/icons/brands/windows.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wirsindhandwerk.svg b/icons/brands/wirsindhandwerk.svg new file mode 100644 index 0000000..f9f7c57 --- /dev/null +++ b/icons/brands/wirsindhandwerk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wix.svg b/icons/brands/wix.svg new file mode 100644 index 0000000..5bab4db --- /dev/null +++ b/icons/brands/wix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wizards-of-the-coast.svg b/icons/brands/wizards-of-the-coast.svg new file mode 100644 index 0000000..253e989 --- /dev/null +++ b/icons/brands/wizards-of-the-coast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wodu.svg b/icons/brands/wodu.svg new file mode 100644 index 0000000..f86b0ca --- /dev/null +++ b/icons/brands/wodu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wolf-pack-battalion.svg b/icons/brands/wolf-pack-battalion.svg new file mode 100644 index 0000000..ab8c5bd --- /dev/null +++ b/icons/brands/wolf-pack-battalion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wordpress-simple.svg b/icons/brands/wordpress-simple.svg new file mode 100644 index 0000000..1e4bdde --- /dev/null +++ b/icons/brands/wordpress-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wordpress.svg b/icons/brands/wordpress.svg new file mode 100644 index 0000000..2a0be36 --- /dev/null +++ b/icons/brands/wordpress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wpbeginner.svg b/icons/brands/wpbeginner.svg new file mode 100644 index 0000000..54298b4 --- /dev/null +++ b/icons/brands/wpbeginner.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wpexplorer.svg b/icons/brands/wpexplorer.svg new file mode 100644 index 0000000..10a1bb9 --- /dev/null +++ b/icons/brands/wpexplorer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wpforms.svg b/icons/brands/wpforms.svg new file mode 100644 index 0000000..ac4495d --- /dev/null +++ b/icons/brands/wpforms.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/wpressr.svg b/icons/brands/wpressr.svg new file mode 100644 index 0000000..25acf81 --- /dev/null +++ b/icons/brands/wpressr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/x-twitter.svg b/icons/brands/x-twitter.svg new file mode 100644 index 0000000..a052e51 --- /dev/null +++ b/icons/brands/x-twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/xbox.svg b/icons/brands/xbox.svg new file mode 100644 index 0000000..cabd8ef --- /dev/null +++ b/icons/brands/xbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/xing.svg b/icons/brands/xing.svg new file mode 100644 index 0000000..adc22e0 --- /dev/null +++ b/icons/brands/xing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/y-combinator.svg b/icons/brands/y-combinator.svg new file mode 100644 index 0000000..85d0d9e --- /dev/null +++ b/icons/brands/y-combinator.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yahoo.svg b/icons/brands/yahoo.svg new file mode 100644 index 0000000..2974863 --- /dev/null +++ b/icons/brands/yahoo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yammer.svg b/icons/brands/yammer.svg new file mode 100644 index 0000000..afe175e --- /dev/null +++ b/icons/brands/yammer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yandex-international.svg b/icons/brands/yandex-international.svg new file mode 100644 index 0000000..2087363 --- /dev/null +++ b/icons/brands/yandex-international.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yandex.svg b/icons/brands/yandex.svg new file mode 100644 index 0000000..55e86d8 --- /dev/null +++ b/icons/brands/yandex.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yarn.svg b/icons/brands/yarn.svg new file mode 100644 index 0000000..48bff26 --- /dev/null +++ b/icons/brands/yarn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yelp.svg b/icons/brands/yelp.svg new file mode 100644 index 0000000..37851b1 --- /dev/null +++ b/icons/brands/yelp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/yoast.svg b/icons/brands/yoast.svg new file mode 100644 index 0000000..e749029 --- /dev/null +++ b/icons/brands/yoast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/youtube.svg b/icons/brands/youtube.svg new file mode 100644 index 0000000..c0a669f --- /dev/null +++ b/icons/brands/youtube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brands/zhihu.svg b/icons/brands/zhihu.svg new file mode 100644 index 0000000..2c15615 --- /dev/null +++ b/icons/brands/zhihu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/brush.svg b/icons/brush.svg deleted file mode 100644 index 939a64d..0000000 --- a/icons/brush.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/category.svg b/icons/category.svg deleted file mode 100644 index 11dd494..0000000 --- a/icons/category.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/check.svg b/icons/check.svg deleted file mode 100644 index d2cf3c8..0000000 --- a/icons/check.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/circle.svg b/icons/circle.svg deleted file mode 100644 index 284d282..0000000 --- a/icons/circle.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/close.svg b/icons/close.svg deleted file mode 100644 index 2c9f443..0000000 --- a/icons/close.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/delete.svg b/icons/delete.svg deleted file mode 100644 index 00a099a..0000000 --- a/icons/delete.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/download.svg b/icons/download.svg deleted file mode 100644 index e5f120f..0000000 --- a/icons/download.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/edit.svg b/icons/edit.svg deleted file mode 100644 index 5b22ed1..0000000 --- a/icons/edit.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/favorite.svg b/icons/favorite.svg deleted file mode 100644 index a14e2c7..0000000 --- a/icons/favorite.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/fullscreen.svg b/icons/fullscreen.svg deleted file mode 100644 index 806ccb6..0000000 --- a/icons/fullscreen.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/fullscreen_exit.svg b/icons/fullscreen_exit.svg deleted file mode 100644 index 5aa2da1..0000000 --- a/icons/fullscreen_exit.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/home.svg b/icons/home.svg deleted file mode 100644 index e9d23f1..0000000 --- a/icons/home.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/keyboard_double_arrow_down.svg b/icons/keyboard_double_arrow_down.svg deleted file mode 100644 index 1f831bb..0000000 --- a/icons/keyboard_double_arrow_down.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/keyboard_double_arrow_up.svg b/icons/keyboard_double_arrow_up.svg deleted file mode 100644 index 9626b1f..0000000 --- a/icons/keyboard_double_arrow_up.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/menu.svg b/icons/menu.svg deleted file mode 100644 index 48f2e3e..0000000 --- a/icons/menu.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/publish.svg b/icons/publish.svg deleted file mode 100644 index 23f51eb..0000000 --- a/icons/publish.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/radio_button_checked.svg b/icons/radio_button_checked.svg deleted file mode 100644 index 3743f9e..0000000 --- a/icons/radio_button_checked.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/regular/address-book.svg b/icons/regular/address-book.svg new file mode 100644 index 0000000..e3e2baa --- /dev/null +++ b/icons/regular/address-book.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/address-card.svg b/icons/regular/address-card.svg new file mode 100644 index 0000000..1046264 --- /dev/null +++ b/icons/regular/address-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/bell-slash.svg b/icons/regular/bell-slash.svg new file mode 100644 index 0000000..e55c28e --- /dev/null +++ b/icons/regular/bell-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/bell.svg b/icons/regular/bell.svg new file mode 100644 index 0000000..080414d --- /dev/null +++ b/icons/regular/bell.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/bookmark.svg b/icons/regular/bookmark.svg new file mode 100644 index 0000000..07db428 --- /dev/null +++ b/icons/regular/bookmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/building.svg b/icons/regular/building.svg new file mode 100644 index 0000000..44a80e9 --- /dev/null +++ b/icons/regular/building.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar-check.svg b/icons/regular/calendar-check.svg new file mode 100644 index 0000000..0e7b32f --- /dev/null +++ b/icons/regular/calendar-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar-days.svg b/icons/regular/calendar-days.svg new file mode 100644 index 0000000..d6d4d51 --- /dev/null +++ b/icons/regular/calendar-days.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar-minus.svg b/icons/regular/calendar-minus.svg new file mode 100644 index 0000000..7048e58 --- /dev/null +++ b/icons/regular/calendar-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar-plus.svg b/icons/regular/calendar-plus.svg new file mode 100644 index 0000000..8a2f5e0 --- /dev/null +++ b/icons/regular/calendar-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar-xmark.svg b/icons/regular/calendar-xmark.svg new file mode 100644 index 0000000..a9d081c --- /dev/null +++ b/icons/regular/calendar-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/calendar.svg b/icons/regular/calendar.svg new file mode 100644 index 0000000..134a1f4 --- /dev/null +++ b/icons/regular/calendar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chart-bar.svg b/icons/regular/chart-bar.svg new file mode 100644 index 0000000..9ae78cd --- /dev/null +++ b/icons/regular/chart-bar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-bishop.svg b/icons/regular/chess-bishop.svg new file mode 100644 index 0000000..e40961a --- /dev/null +++ b/icons/regular/chess-bishop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-king.svg b/icons/regular/chess-king.svg new file mode 100644 index 0000000..202b10d --- /dev/null +++ b/icons/regular/chess-king.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-knight.svg b/icons/regular/chess-knight.svg new file mode 100644 index 0000000..90dfdcb --- /dev/null +++ b/icons/regular/chess-knight.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-pawn.svg b/icons/regular/chess-pawn.svg new file mode 100644 index 0000000..a1ddce6 --- /dev/null +++ b/icons/regular/chess-pawn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-queen.svg b/icons/regular/chess-queen.svg new file mode 100644 index 0000000..4eae4f1 --- /dev/null +++ b/icons/regular/chess-queen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/chess-rook.svg b/icons/regular/chess-rook.svg new file mode 100644 index 0000000..e1c6893 --- /dev/null +++ b/icons/regular/chess-rook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-check.svg b/icons/regular/circle-check.svg new file mode 100644 index 0000000..5c18277 --- /dev/null +++ b/icons/regular/circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-dot.svg b/icons/regular/circle-dot.svg new file mode 100644 index 0000000..db53d03 --- /dev/null +++ b/icons/regular/circle-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-down.svg b/icons/regular/circle-down.svg new file mode 100644 index 0000000..1d8395d --- /dev/null +++ b/icons/regular/circle-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-left.svg b/icons/regular/circle-left.svg new file mode 100644 index 0000000..907f4b0 --- /dev/null +++ b/icons/regular/circle-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-pause.svg b/icons/regular/circle-pause.svg new file mode 100644 index 0000000..0085484 --- /dev/null +++ b/icons/regular/circle-pause.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-play.svg b/icons/regular/circle-play.svg new file mode 100644 index 0000000..cf0f516 --- /dev/null +++ b/icons/regular/circle-play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-question.svg b/icons/regular/circle-question.svg new file mode 100644 index 0000000..7e843e6 --- /dev/null +++ b/icons/regular/circle-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-right.svg b/icons/regular/circle-right.svg new file mode 100644 index 0000000..cf19a34 --- /dev/null +++ b/icons/regular/circle-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-stop.svg b/icons/regular/circle-stop.svg new file mode 100644 index 0000000..1b50571 --- /dev/null +++ b/icons/regular/circle-stop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-up.svg b/icons/regular/circle-up.svg new file mode 100644 index 0000000..18886fb --- /dev/null +++ b/icons/regular/circle-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-user.svg b/icons/regular/circle-user.svg new file mode 100644 index 0000000..d9c363e --- /dev/null +++ b/icons/regular/circle-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle-xmark.svg b/icons/regular/circle-xmark.svg new file mode 100644 index 0000000..1c97781 --- /dev/null +++ b/icons/regular/circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/circle.svg b/icons/regular/circle.svg new file mode 100644 index 0000000..5123d0a --- /dev/null +++ b/icons/regular/circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/clipboard.svg b/icons/regular/clipboard.svg new file mode 100644 index 0000000..86fb078 --- /dev/null +++ b/icons/regular/clipboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/clock.svg b/icons/regular/clock.svg new file mode 100644 index 0000000..a612bf1 --- /dev/null +++ b/icons/regular/clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/clone.svg b/icons/regular/clone.svg new file mode 100644 index 0000000..5a6197a --- /dev/null +++ b/icons/regular/clone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/closed-captioning.svg b/icons/regular/closed-captioning.svg new file mode 100644 index 0000000..4b67fb5 --- /dev/null +++ b/icons/regular/closed-captioning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/comment-dots.svg b/icons/regular/comment-dots.svg new file mode 100644 index 0000000..cafdc0d --- /dev/null +++ b/icons/regular/comment-dots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/comment.svg b/icons/regular/comment.svg new file mode 100644 index 0000000..8516261 --- /dev/null +++ b/icons/regular/comment.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/comments.svg b/icons/regular/comments.svg new file mode 100644 index 0000000..a8eeb92 --- /dev/null +++ b/icons/regular/comments.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/compass.svg b/icons/regular/compass.svg new file mode 100644 index 0000000..48c9c72 --- /dev/null +++ b/icons/regular/compass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/copy.svg b/icons/regular/copy.svg new file mode 100644 index 0000000..e85210f --- /dev/null +++ b/icons/regular/copy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/copyright.svg b/icons/regular/copyright.svg new file mode 100644 index 0000000..3211e60 --- /dev/null +++ b/icons/regular/copyright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/credit-card.svg b/icons/regular/credit-card.svg new file mode 100644 index 0000000..1bacf44 --- /dev/null +++ b/icons/regular/credit-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/envelope-open.svg b/icons/regular/envelope-open.svg new file mode 100644 index 0000000..1bec0e7 --- /dev/null +++ b/icons/regular/envelope-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/envelope.svg b/icons/regular/envelope.svg new file mode 100644 index 0000000..bf8ea45 --- /dev/null +++ b/icons/regular/envelope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/eye-slash.svg b/icons/regular/eye-slash.svg new file mode 100644 index 0000000..ff64d71 --- /dev/null +++ b/icons/regular/eye-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/eye.svg b/icons/regular/eye.svg new file mode 100644 index 0000000..647c402 --- /dev/null +++ b/icons/regular/eye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-angry.svg b/icons/regular/face-angry.svg new file mode 100644 index 0000000..a3a3775 --- /dev/null +++ b/icons/regular/face-angry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-dizzy.svg b/icons/regular/face-dizzy.svg new file mode 100644 index 0000000..8b76d47 --- /dev/null +++ b/icons/regular/face-dizzy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-flushed.svg b/icons/regular/face-flushed.svg new file mode 100644 index 0000000..949c9c7 --- /dev/null +++ b/icons/regular/face-flushed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-frown-open.svg b/icons/regular/face-frown-open.svg new file mode 100644 index 0000000..507d8ed --- /dev/null +++ b/icons/regular/face-frown-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-frown.svg b/icons/regular/face-frown.svg new file mode 100644 index 0000000..c57b8ba --- /dev/null +++ b/icons/regular/face-frown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grimace.svg b/icons/regular/face-grimace.svg new file mode 100644 index 0000000..556c544 --- /dev/null +++ b/icons/regular/face-grimace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-beam-sweat.svg b/icons/regular/face-grin-beam-sweat.svg new file mode 100644 index 0000000..ad0dc0c --- /dev/null +++ b/icons/regular/face-grin-beam-sweat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-beam.svg b/icons/regular/face-grin-beam.svg new file mode 100644 index 0000000..f0f4899 --- /dev/null +++ b/icons/regular/face-grin-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-hearts.svg b/icons/regular/face-grin-hearts.svg new file mode 100644 index 0000000..9a018a7 --- /dev/null +++ b/icons/regular/face-grin-hearts.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-squint-tears.svg b/icons/regular/face-grin-squint-tears.svg new file mode 100644 index 0000000..9ae96cf --- /dev/null +++ b/icons/regular/face-grin-squint-tears.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-squint.svg b/icons/regular/face-grin-squint.svg new file mode 100644 index 0000000..147f0f2 --- /dev/null +++ b/icons/regular/face-grin-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-stars.svg b/icons/regular/face-grin-stars.svg new file mode 100644 index 0000000..ed6f145 --- /dev/null +++ b/icons/regular/face-grin-stars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-tears.svg b/icons/regular/face-grin-tears.svg new file mode 100644 index 0000000..29c692c --- /dev/null +++ b/icons/regular/face-grin-tears.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-tongue-squint.svg b/icons/regular/face-grin-tongue-squint.svg new file mode 100644 index 0000000..b381bb8 --- /dev/null +++ b/icons/regular/face-grin-tongue-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-tongue-wink.svg b/icons/regular/face-grin-tongue-wink.svg new file mode 100644 index 0000000..c08c02c --- /dev/null +++ b/icons/regular/face-grin-tongue-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-tongue.svg b/icons/regular/face-grin-tongue.svg new file mode 100644 index 0000000..29d944e --- /dev/null +++ b/icons/regular/face-grin-tongue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-wide.svg b/icons/regular/face-grin-wide.svg new file mode 100644 index 0000000..5b9178d --- /dev/null +++ b/icons/regular/face-grin-wide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin-wink.svg b/icons/regular/face-grin-wink.svg new file mode 100644 index 0000000..bbe8a47 --- /dev/null +++ b/icons/regular/face-grin-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-grin.svg b/icons/regular/face-grin.svg new file mode 100644 index 0000000..b560bc2 --- /dev/null +++ b/icons/regular/face-grin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-kiss-beam.svg b/icons/regular/face-kiss-beam.svg new file mode 100644 index 0000000..8d9bc16 --- /dev/null +++ b/icons/regular/face-kiss-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-kiss-wink-heart.svg b/icons/regular/face-kiss-wink-heart.svg new file mode 100644 index 0000000..ffc52ec --- /dev/null +++ b/icons/regular/face-kiss-wink-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-kiss.svg b/icons/regular/face-kiss.svg new file mode 100644 index 0000000..7bb8737 --- /dev/null +++ b/icons/regular/face-kiss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-laugh-beam.svg b/icons/regular/face-laugh-beam.svg new file mode 100644 index 0000000..1eaa69e --- /dev/null +++ b/icons/regular/face-laugh-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-laugh-squint.svg b/icons/regular/face-laugh-squint.svg new file mode 100644 index 0000000..655a60f --- /dev/null +++ b/icons/regular/face-laugh-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-laugh-wink.svg b/icons/regular/face-laugh-wink.svg new file mode 100644 index 0000000..2c47aaa --- /dev/null +++ b/icons/regular/face-laugh-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-laugh.svg b/icons/regular/face-laugh.svg new file mode 100644 index 0000000..55e49db --- /dev/null +++ b/icons/regular/face-laugh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-meh-blank.svg b/icons/regular/face-meh-blank.svg new file mode 100644 index 0000000..3561ca2 --- /dev/null +++ b/icons/regular/face-meh-blank.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-meh.svg b/icons/regular/face-meh.svg new file mode 100644 index 0000000..b9666fa --- /dev/null +++ b/icons/regular/face-meh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-rolling-eyes.svg b/icons/regular/face-rolling-eyes.svg new file mode 100644 index 0000000..c80bb1e --- /dev/null +++ b/icons/regular/face-rolling-eyes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-sad-cry.svg b/icons/regular/face-sad-cry.svg new file mode 100644 index 0000000..ed835a5 --- /dev/null +++ b/icons/regular/face-sad-cry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-sad-tear.svg b/icons/regular/face-sad-tear.svg new file mode 100644 index 0000000..c63e4d9 --- /dev/null +++ b/icons/regular/face-sad-tear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-smile-beam.svg b/icons/regular/face-smile-beam.svg new file mode 100644 index 0000000..8ccbdf3 --- /dev/null +++ b/icons/regular/face-smile-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-smile-wink.svg b/icons/regular/face-smile-wink.svg new file mode 100644 index 0000000..7f9cb03 --- /dev/null +++ b/icons/regular/face-smile-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-smile.svg b/icons/regular/face-smile.svg new file mode 100644 index 0000000..6f9bc53 --- /dev/null +++ b/icons/regular/face-smile.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-surprise.svg b/icons/regular/face-surprise.svg new file mode 100644 index 0000000..4d565ac --- /dev/null +++ b/icons/regular/face-surprise.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/face-tired.svg b/icons/regular/face-tired.svg new file mode 100644 index 0000000..3ad8125 --- /dev/null +++ b/icons/regular/face-tired.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-audio.svg b/icons/regular/file-audio.svg new file mode 100644 index 0000000..5d2f14c --- /dev/null +++ b/icons/regular/file-audio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-code.svg b/icons/regular/file-code.svg new file mode 100644 index 0000000..2c58ffd --- /dev/null +++ b/icons/regular/file-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-excel.svg b/icons/regular/file-excel.svg new file mode 100644 index 0000000..6af452b --- /dev/null +++ b/icons/regular/file-excel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-image.svg b/icons/regular/file-image.svg new file mode 100644 index 0000000..82d6ac8 --- /dev/null +++ b/icons/regular/file-image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-lines.svg b/icons/regular/file-lines.svg new file mode 100644 index 0000000..f08b28b --- /dev/null +++ b/icons/regular/file-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-pdf.svg b/icons/regular/file-pdf.svg new file mode 100644 index 0000000..f851436 --- /dev/null +++ b/icons/regular/file-pdf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-powerpoint.svg b/icons/regular/file-powerpoint.svg new file mode 100644 index 0000000..0e37bc6 --- /dev/null +++ b/icons/regular/file-powerpoint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-video.svg b/icons/regular/file-video.svg new file mode 100644 index 0000000..4bd5d2b --- /dev/null +++ b/icons/regular/file-video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-word.svg b/icons/regular/file-word.svg new file mode 100644 index 0000000..1e84bf6 --- /dev/null +++ b/icons/regular/file-word.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file-zipper.svg b/icons/regular/file-zipper.svg new file mode 100644 index 0000000..d2d8fe5 --- /dev/null +++ b/icons/regular/file-zipper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/file.svg b/icons/regular/file.svg new file mode 100644 index 0000000..b86fc46 --- /dev/null +++ b/icons/regular/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/flag.svg b/icons/regular/flag.svg new file mode 100644 index 0000000..9aa00b5 --- /dev/null +++ b/icons/regular/flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/floppy-disk.svg b/icons/regular/floppy-disk.svg new file mode 100644 index 0000000..8fb02da --- /dev/null +++ b/icons/regular/floppy-disk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/folder-closed.svg b/icons/regular/folder-closed.svg new file mode 100644 index 0000000..e16cb41 --- /dev/null +++ b/icons/regular/folder-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/folder-open.svg b/icons/regular/folder-open.svg new file mode 100644 index 0000000..3af7642 --- /dev/null +++ b/icons/regular/folder-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/folder.svg b/icons/regular/folder.svg new file mode 100644 index 0000000..9f10663 --- /dev/null +++ b/icons/regular/folder.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/font-awesome.svg b/icons/regular/font-awesome.svg new file mode 100644 index 0000000..8e78045 --- /dev/null +++ b/icons/regular/font-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/futbol.svg b/icons/regular/futbol.svg new file mode 100644 index 0000000..192ad15 --- /dev/null +++ b/icons/regular/futbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/gem.svg b/icons/regular/gem.svg new file mode 100644 index 0000000..7ad2ea5 --- /dev/null +++ b/icons/regular/gem.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-back-fist.svg b/icons/regular/hand-back-fist.svg new file mode 100644 index 0000000..c7cd4b7 --- /dev/null +++ b/icons/regular/hand-back-fist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-lizard.svg b/icons/regular/hand-lizard.svg new file mode 100644 index 0000000..34635be --- /dev/null +++ b/icons/regular/hand-lizard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-peace.svg b/icons/regular/hand-peace.svg new file mode 100644 index 0000000..c5c4238 --- /dev/null +++ b/icons/regular/hand-peace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-point-down.svg b/icons/regular/hand-point-down.svg new file mode 100644 index 0000000..15a8d0c --- /dev/null +++ b/icons/regular/hand-point-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-point-left.svg b/icons/regular/hand-point-left.svg new file mode 100644 index 0000000..25e86e9 --- /dev/null +++ b/icons/regular/hand-point-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-point-right.svg b/icons/regular/hand-point-right.svg new file mode 100644 index 0000000..5b560d3 --- /dev/null +++ b/icons/regular/hand-point-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-point-up.svg b/icons/regular/hand-point-up.svg new file mode 100644 index 0000000..39924e2 --- /dev/null +++ b/icons/regular/hand-point-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-pointer.svg b/icons/regular/hand-pointer.svg new file mode 100644 index 0000000..54afa2c --- /dev/null +++ b/icons/regular/hand-pointer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-scissors.svg b/icons/regular/hand-scissors.svg new file mode 100644 index 0000000..1ce2fa7 --- /dev/null +++ b/icons/regular/hand-scissors.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand-spock.svg b/icons/regular/hand-spock.svg new file mode 100644 index 0000000..fc01c0f --- /dev/null +++ b/icons/regular/hand-spock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hand.svg b/icons/regular/hand.svg new file mode 100644 index 0000000..f786538 --- /dev/null +++ b/icons/regular/hand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/handshake.svg b/icons/regular/handshake.svg new file mode 100644 index 0000000..99686ac --- /dev/null +++ b/icons/regular/handshake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hard-drive.svg b/icons/regular/hard-drive.svg new file mode 100644 index 0000000..f45ccc6 --- /dev/null +++ b/icons/regular/hard-drive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/heart.svg b/icons/regular/heart.svg new file mode 100644 index 0000000..838e95f --- /dev/null +++ b/icons/regular/heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hospital.svg b/icons/regular/hospital.svg new file mode 100644 index 0000000..bbb85cd --- /dev/null +++ b/icons/regular/hospital.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hourglass-half.svg b/icons/regular/hourglass-half.svg new file mode 100644 index 0000000..c8122ce --- /dev/null +++ b/icons/regular/hourglass-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/hourglass.svg b/icons/regular/hourglass.svg new file mode 100644 index 0000000..bb37872 --- /dev/null +++ b/icons/regular/hourglass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/id-badge.svg b/icons/regular/id-badge.svg new file mode 100644 index 0000000..2a50463 --- /dev/null +++ b/icons/regular/id-badge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/id-card.svg b/icons/regular/id-card.svg new file mode 100644 index 0000000..69f0752 --- /dev/null +++ b/icons/regular/id-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/image.svg b/icons/regular/image.svg new file mode 100644 index 0000000..40c6058 --- /dev/null +++ b/icons/regular/image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/images.svg b/icons/regular/images.svg new file mode 100644 index 0000000..a8a85b8 --- /dev/null +++ b/icons/regular/images.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/keyboard.svg b/icons/regular/keyboard.svg new file mode 100644 index 0000000..f9d55f6 --- /dev/null +++ b/icons/regular/keyboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/lemon.svg b/icons/regular/lemon.svg new file mode 100644 index 0000000..2c975a7 --- /dev/null +++ b/icons/regular/lemon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/life-ring.svg b/icons/regular/life-ring.svg new file mode 100644 index 0000000..a3fdebe --- /dev/null +++ b/icons/regular/life-ring.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/lightbulb.svg b/icons/regular/lightbulb.svg new file mode 100644 index 0000000..031f026 --- /dev/null +++ b/icons/regular/lightbulb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/map.svg b/icons/regular/map.svg new file mode 100644 index 0000000..555c8a8 --- /dev/null +++ b/icons/regular/map.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/message.svg b/icons/regular/message.svg new file mode 100644 index 0000000..4a15fc9 --- /dev/null +++ b/icons/regular/message.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/money-bill-1.svg b/icons/regular/money-bill-1.svg new file mode 100644 index 0000000..4015183 --- /dev/null +++ b/icons/regular/money-bill-1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/moon.svg b/icons/regular/moon.svg new file mode 100644 index 0000000..b53d951 --- /dev/null +++ b/icons/regular/moon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/newspaper.svg b/icons/regular/newspaper.svg new file mode 100644 index 0000000..cc731cb --- /dev/null +++ b/icons/regular/newspaper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/note-sticky.svg b/icons/regular/note-sticky.svg new file mode 100644 index 0000000..f3c616d --- /dev/null +++ b/icons/regular/note-sticky.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/object-group.svg b/icons/regular/object-group.svg new file mode 100644 index 0000000..e75454f --- /dev/null +++ b/icons/regular/object-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/object-ungroup.svg b/icons/regular/object-ungroup.svg new file mode 100644 index 0000000..a34fbeb --- /dev/null +++ b/icons/regular/object-ungroup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/paper-plane.svg b/icons/regular/paper-plane.svg new file mode 100644 index 0000000..55f8888 --- /dev/null +++ b/icons/regular/paper-plane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/paste.svg b/icons/regular/paste.svg new file mode 100644 index 0000000..a0bb431 --- /dev/null +++ b/icons/regular/paste.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/pen-to-square.svg b/icons/regular/pen-to-square.svg new file mode 100644 index 0000000..d07ceba --- /dev/null +++ b/icons/regular/pen-to-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/rectangle-list.svg b/icons/regular/rectangle-list.svg new file mode 100644 index 0000000..a67bb06 --- /dev/null +++ b/icons/regular/rectangle-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/rectangle-xmark.svg b/icons/regular/rectangle-xmark.svg new file mode 100644 index 0000000..2d0b716 --- /dev/null +++ b/icons/regular/rectangle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/registered.svg b/icons/regular/registered.svg new file mode 100644 index 0000000..f04b107 --- /dev/null +++ b/icons/regular/registered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/share-from-square.svg b/icons/regular/share-from-square.svg new file mode 100644 index 0000000..6a3b904 --- /dev/null +++ b/icons/regular/share-from-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/snowflake.svg b/icons/regular/snowflake.svg new file mode 100644 index 0000000..aa79f76 --- /dev/null +++ b/icons/regular/snowflake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-caret-down.svg b/icons/regular/square-caret-down.svg new file mode 100644 index 0000000..7bae3b7 --- /dev/null +++ b/icons/regular/square-caret-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-caret-left.svg b/icons/regular/square-caret-left.svg new file mode 100644 index 0000000..60630ee --- /dev/null +++ b/icons/regular/square-caret-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-caret-right.svg b/icons/regular/square-caret-right.svg new file mode 100644 index 0000000..a85dcce --- /dev/null +++ b/icons/regular/square-caret-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-caret-up.svg b/icons/regular/square-caret-up.svg new file mode 100644 index 0000000..b439475 --- /dev/null +++ b/icons/regular/square-caret-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-check.svg b/icons/regular/square-check.svg new file mode 100644 index 0000000..a67c8bb --- /dev/null +++ b/icons/regular/square-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-full.svg b/icons/regular/square-full.svg new file mode 100644 index 0000000..25626bd --- /dev/null +++ b/icons/regular/square-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-minus.svg b/icons/regular/square-minus.svg new file mode 100644 index 0000000..36d4aa3 --- /dev/null +++ b/icons/regular/square-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square-plus.svg b/icons/regular/square-plus.svg new file mode 100644 index 0000000..5fa037a --- /dev/null +++ b/icons/regular/square-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/square.svg b/icons/regular/square.svg new file mode 100644 index 0000000..1608b51 --- /dev/null +++ b/icons/regular/square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/star-half-stroke.svg b/icons/regular/star-half-stroke.svg new file mode 100644 index 0000000..3d431b1 --- /dev/null +++ b/icons/regular/star-half-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/star-half.svg b/icons/regular/star-half.svg new file mode 100644 index 0000000..9cc1cbe --- /dev/null +++ b/icons/regular/star-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/star.svg b/icons/regular/star.svg new file mode 100644 index 0000000..0f80648 --- /dev/null +++ b/icons/regular/star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/sun.svg b/icons/regular/sun.svg new file mode 100644 index 0000000..fb1b534 --- /dev/null +++ b/icons/regular/sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/thumbs-down.svg b/icons/regular/thumbs-down.svg new file mode 100644 index 0000000..0ca74cb --- /dev/null +++ b/icons/regular/thumbs-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/thumbs-up.svg b/icons/regular/thumbs-up.svg new file mode 100644 index 0000000..e2dae4e --- /dev/null +++ b/icons/regular/thumbs-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/trash-can.svg b/icons/regular/trash-can.svg new file mode 100644 index 0000000..28c96e7 --- /dev/null +++ b/icons/regular/trash-can.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/user.svg b/icons/regular/user.svg new file mode 100644 index 0000000..e4df7c9 --- /dev/null +++ b/icons/regular/user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/window-maximize.svg b/icons/regular/window-maximize.svg new file mode 100644 index 0000000..2327768 --- /dev/null +++ b/icons/regular/window-maximize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/window-minimize.svg b/icons/regular/window-minimize.svg new file mode 100644 index 0000000..de8a79f --- /dev/null +++ b/icons/regular/window-minimize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/regular/window-restore.svg b/icons/regular/window-restore.svg new file mode 100644 index 0000000..6c07045 --- /dev/null +++ b/icons/regular/window-restore.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/remove.svg b/icons/remove.svg deleted file mode 100644 index eeb8b23..0000000 --- a/icons/remove.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/resize.svg b/icons/resize.svg deleted file mode 100644 index 230054d..0000000 --- a/icons/resize.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/save.svg b/icons/save.svg deleted file mode 100644 index 183e77f..0000000 --- a/icons/save.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/search.svg b/icons/search.svg deleted file mode 100644 index f0d166f..0000000 --- a/icons/search.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/solid/0.svg b/icons/solid/0.svg new file mode 100644 index 0000000..299eda2 --- /dev/null +++ b/icons/solid/0.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/1.svg b/icons/solid/1.svg new file mode 100644 index 0000000..cee0fb6 --- /dev/null +++ b/icons/solid/1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/2.svg b/icons/solid/2.svg new file mode 100644 index 0000000..7e0ad90 --- /dev/null +++ b/icons/solid/2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/3.svg b/icons/solid/3.svg new file mode 100644 index 0000000..0329e61 --- /dev/null +++ b/icons/solid/3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/4.svg b/icons/solid/4.svg new file mode 100644 index 0000000..d6d07e3 --- /dev/null +++ b/icons/solid/4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/5.svg b/icons/solid/5.svg new file mode 100644 index 0000000..550412a --- /dev/null +++ b/icons/solid/5.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/6.svg b/icons/solid/6.svg new file mode 100644 index 0000000..5cd9e7e --- /dev/null +++ b/icons/solid/6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/7.svg b/icons/solid/7.svg new file mode 100644 index 0000000..a408384 --- /dev/null +++ b/icons/solid/7.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/8.svg b/icons/solid/8.svg new file mode 100644 index 0000000..884679e --- /dev/null +++ b/icons/solid/8.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/9.svg b/icons/solid/9.svg new file mode 100644 index 0000000..5cbd206 --- /dev/null +++ b/icons/solid/9.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/a.svg b/icons/solid/a.svg new file mode 100644 index 0000000..ee6a255 --- /dev/null +++ b/icons/solid/a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/address-book.svg b/icons/solid/address-book.svg new file mode 100644 index 0000000..e2505c4 --- /dev/null +++ b/icons/solid/address-book.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/address-card.svg b/icons/solid/address-card.svg new file mode 100644 index 0000000..823937c --- /dev/null +++ b/icons/solid/address-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/align-center.svg b/icons/solid/align-center.svg new file mode 100644 index 0000000..946b20b --- /dev/null +++ b/icons/solid/align-center.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/align-justify.svg b/icons/solid/align-justify.svg new file mode 100644 index 0000000..597386e --- /dev/null +++ b/icons/solid/align-justify.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/align-left.svg b/icons/solid/align-left.svg new file mode 100644 index 0000000..0678daa --- /dev/null +++ b/icons/solid/align-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/align-right.svg b/icons/solid/align-right.svg new file mode 100644 index 0000000..3b233be --- /dev/null +++ b/icons/solid/align-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/anchor-circle-check.svg b/icons/solid/anchor-circle-check.svg new file mode 100644 index 0000000..9a3f2fa --- /dev/null +++ b/icons/solid/anchor-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/anchor-circle-exclamation.svg b/icons/solid/anchor-circle-exclamation.svg new file mode 100644 index 0000000..affe4ab --- /dev/null +++ b/icons/solid/anchor-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/anchor-circle-xmark.svg b/icons/solid/anchor-circle-xmark.svg new file mode 100644 index 0000000..f17498c --- /dev/null +++ b/icons/solid/anchor-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/anchor-lock.svg b/icons/solid/anchor-lock.svg new file mode 100644 index 0000000..88e0854 --- /dev/null +++ b/icons/solid/anchor-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/anchor.svg b/icons/solid/anchor.svg new file mode 100644 index 0000000..6f15928 --- /dev/null +++ b/icons/solid/anchor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angle-down.svg b/icons/solid/angle-down.svg new file mode 100644 index 0000000..c1c439f --- /dev/null +++ b/icons/solid/angle-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angle-left.svg b/icons/solid/angle-left.svg new file mode 100644 index 0000000..cd04f0e --- /dev/null +++ b/icons/solid/angle-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angle-right.svg b/icons/solid/angle-right.svg new file mode 100644 index 0000000..1afb355 --- /dev/null +++ b/icons/solid/angle-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angle-up.svg b/icons/solid/angle-up.svg new file mode 100644 index 0000000..fccc908 --- /dev/null +++ b/icons/solid/angle-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angles-down.svg b/icons/solid/angles-down.svg new file mode 100644 index 0000000..6337a25 --- /dev/null +++ b/icons/solid/angles-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angles-left.svg b/icons/solid/angles-left.svg new file mode 100644 index 0000000..b0f5fb1 --- /dev/null +++ b/icons/solid/angles-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angles-right.svg b/icons/solid/angles-right.svg new file mode 100644 index 0000000..11f98a4 --- /dev/null +++ b/icons/solid/angles-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/angles-up.svg b/icons/solid/angles-up.svg new file mode 100644 index 0000000..7e96689 --- /dev/null +++ b/icons/solid/angles-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ankh.svg b/icons/solid/ankh.svg new file mode 100644 index 0000000..fc7b25f --- /dev/null +++ b/icons/solid/ankh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/apple-whole.svg b/icons/solid/apple-whole.svg new file mode 100644 index 0000000..d9723fb --- /dev/null +++ b/icons/solid/apple-whole.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/archway.svg b/icons/solid/archway.svg new file mode 100644 index 0000000..fc1079e --- /dev/null +++ b/icons/solid/archway.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-1-9.svg b/icons/solid/arrow-down-1-9.svg new file mode 100644 index 0000000..019016f --- /dev/null +++ b/icons/solid/arrow-down-1-9.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-9-1.svg b/icons/solid/arrow-down-9-1.svg new file mode 100644 index 0000000..6498126 --- /dev/null +++ b/icons/solid/arrow-down-9-1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-a-z.svg b/icons/solid/arrow-down-a-z.svg new file mode 100644 index 0000000..6d0b6c0 --- /dev/null +++ b/icons/solid/arrow-down-a-z.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-long.svg b/icons/solid/arrow-down-long.svg new file mode 100644 index 0000000..734f885 --- /dev/null +++ b/icons/solid/arrow-down-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-short-wide.svg b/icons/solid/arrow-down-short-wide.svg new file mode 100644 index 0000000..ab7e0b3 --- /dev/null +++ b/icons/solid/arrow-down-short-wide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-up-across-line.svg b/icons/solid/arrow-down-up-across-line.svg new file mode 100644 index 0000000..a84ec19 --- /dev/null +++ b/icons/solid/arrow-down-up-across-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-up-lock.svg b/icons/solid/arrow-down-up-lock.svg new file mode 100644 index 0000000..17dd404 --- /dev/null +++ b/icons/solid/arrow-down-up-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-wide-short.svg b/icons/solid/arrow-down-wide-short.svg new file mode 100644 index 0000000..85d0315 --- /dev/null +++ b/icons/solid/arrow-down-wide-short.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down-z-a.svg b/icons/solid/arrow-down-z-a.svg new file mode 100644 index 0000000..8b4ce99 --- /dev/null +++ b/icons/solid/arrow-down-z-a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-down.svg b/icons/solid/arrow-down.svg new file mode 100644 index 0000000..a52a613 --- /dev/null +++ b/icons/solid/arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-left-long.svg b/icons/solid/arrow-left-long.svg new file mode 100644 index 0000000..27aa18a --- /dev/null +++ b/icons/solid/arrow-left-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-left.svg b/icons/solid/arrow-left.svg new file mode 100644 index 0000000..655fcb9 --- /dev/null +++ b/icons/solid/arrow-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-pointer.svg b/icons/solid/arrow-pointer.svg new file mode 100644 index 0000000..18672e2 --- /dev/null +++ b/icons/solid/arrow-pointer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right-arrow-left.svg b/icons/solid/arrow-right-arrow-left.svg new file mode 100644 index 0000000..54a3a1f --- /dev/null +++ b/icons/solid/arrow-right-arrow-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right-from-bracket.svg b/icons/solid/arrow-right-from-bracket.svg new file mode 100644 index 0000000..ad3b5d2 --- /dev/null +++ b/icons/solid/arrow-right-from-bracket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right-long.svg b/icons/solid/arrow-right-long.svg new file mode 100644 index 0000000..7d539ca --- /dev/null +++ b/icons/solid/arrow-right-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right-to-bracket.svg b/icons/solid/arrow-right-to-bracket.svg new file mode 100644 index 0000000..d35bf80 --- /dev/null +++ b/icons/solid/arrow-right-to-bracket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right-to-city.svg b/icons/solid/arrow-right-to-city.svg new file mode 100644 index 0000000..9aaca4b --- /dev/null +++ b/icons/solid/arrow-right-to-city.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-right.svg b/icons/solid/arrow-right.svg new file mode 100644 index 0000000..6bc17a7 --- /dev/null +++ b/icons/solid/arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-rotate-left.svg b/icons/solid/arrow-rotate-left.svg new file mode 100644 index 0000000..de3a0aa --- /dev/null +++ b/icons/solid/arrow-rotate-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-rotate-right.svg b/icons/solid/arrow-rotate-right.svg new file mode 100644 index 0000000..aded47b --- /dev/null +++ b/icons/solid/arrow-rotate-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-trend-down.svg b/icons/solid/arrow-trend-down.svg new file mode 100644 index 0000000..b728c7c --- /dev/null +++ b/icons/solid/arrow-trend-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-trend-up.svg b/icons/solid/arrow-trend-up.svg new file mode 100644 index 0000000..b17b665 --- /dev/null +++ b/icons/solid/arrow-trend-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-turn-down.svg b/icons/solid/arrow-turn-down.svg new file mode 100644 index 0000000..5a43c29 --- /dev/null +++ b/icons/solid/arrow-turn-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-turn-up.svg b/icons/solid/arrow-turn-up.svg new file mode 100644 index 0000000..e8887a8 --- /dev/null +++ b/icons/solid/arrow-turn-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-1-9.svg b/icons/solid/arrow-up-1-9.svg new file mode 100644 index 0000000..4650d9b --- /dev/null +++ b/icons/solid/arrow-up-1-9.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-9-1.svg b/icons/solid/arrow-up-9-1.svg new file mode 100644 index 0000000..e6037dd --- /dev/null +++ b/icons/solid/arrow-up-9-1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-a-z.svg b/icons/solid/arrow-up-a-z.svg new file mode 100644 index 0000000..e2739f3 --- /dev/null +++ b/icons/solid/arrow-up-a-z.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-from-bracket.svg b/icons/solid/arrow-up-from-bracket.svg new file mode 100644 index 0000000..37ad8d9 --- /dev/null +++ b/icons/solid/arrow-up-from-bracket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-from-ground-water.svg b/icons/solid/arrow-up-from-ground-water.svg new file mode 100644 index 0000000..8bd12bb --- /dev/null +++ b/icons/solid/arrow-up-from-ground-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-from-water-pump.svg b/icons/solid/arrow-up-from-water-pump.svg new file mode 100644 index 0000000..fd2fcd6 --- /dev/null +++ b/icons/solid/arrow-up-from-water-pump.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-long.svg b/icons/solid/arrow-up-long.svg new file mode 100644 index 0000000..7349134 --- /dev/null +++ b/icons/solid/arrow-up-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-right-dots.svg b/icons/solid/arrow-up-right-dots.svg new file mode 100644 index 0000000..41ebdff --- /dev/null +++ b/icons/solid/arrow-up-right-dots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-right-from-square.svg b/icons/solid/arrow-up-right-from-square.svg new file mode 100644 index 0000000..cb0cef6 --- /dev/null +++ b/icons/solid/arrow-up-right-from-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-short-wide.svg b/icons/solid/arrow-up-short-wide.svg new file mode 100644 index 0000000..fbbcc6e --- /dev/null +++ b/icons/solid/arrow-up-short-wide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-wide-short.svg b/icons/solid/arrow-up-wide-short.svg new file mode 100644 index 0000000..eb37ecd --- /dev/null +++ b/icons/solid/arrow-up-wide-short.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up-z-a.svg b/icons/solid/arrow-up-z-a.svg new file mode 100644 index 0000000..e80be4c --- /dev/null +++ b/icons/solid/arrow-up-z-a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrow-up.svg b/icons/solid/arrow-up.svg new file mode 100644 index 0000000..452d0f6 --- /dev/null +++ b/icons/solid/arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-down-to-line.svg b/icons/solid/arrows-down-to-line.svg new file mode 100644 index 0000000..7cd90a6 --- /dev/null +++ b/icons/solid/arrows-down-to-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-down-to-people.svg b/icons/solid/arrows-down-to-people.svg new file mode 100644 index 0000000..e155fb5 --- /dev/null +++ b/icons/solid/arrows-down-to-people.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-left-right-to-line.svg b/icons/solid/arrows-left-right-to-line.svg new file mode 100644 index 0000000..5627d27 --- /dev/null +++ b/icons/solid/arrows-left-right-to-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-left-right.svg b/icons/solid/arrows-left-right.svg new file mode 100644 index 0000000..1cdccb9 --- /dev/null +++ b/icons/solid/arrows-left-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-rotate.svg b/icons/solid/arrows-rotate.svg new file mode 100644 index 0000000..5701f19 --- /dev/null +++ b/icons/solid/arrows-rotate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-spin.svg b/icons/solid/arrows-spin.svg new file mode 100644 index 0000000..16c9347 --- /dev/null +++ b/icons/solid/arrows-spin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-split-up-and-left.svg b/icons/solid/arrows-split-up-and-left.svg new file mode 100644 index 0000000..2fc17fa --- /dev/null +++ b/icons/solid/arrows-split-up-and-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-to-circle.svg b/icons/solid/arrows-to-circle.svg new file mode 100644 index 0000000..9f8b6ce --- /dev/null +++ b/icons/solid/arrows-to-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-to-dot.svg b/icons/solid/arrows-to-dot.svg new file mode 100644 index 0000000..659d013 --- /dev/null +++ b/icons/solid/arrows-to-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-to-eye.svg b/icons/solid/arrows-to-eye.svg new file mode 100644 index 0000000..ae34b00 --- /dev/null +++ b/icons/solid/arrows-to-eye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-turn-right.svg b/icons/solid/arrows-turn-right.svg new file mode 100644 index 0000000..5279d12 --- /dev/null +++ b/icons/solid/arrows-turn-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-turn-to-dots.svg b/icons/solid/arrows-turn-to-dots.svg new file mode 100644 index 0000000..a876e68 --- /dev/null +++ b/icons/solid/arrows-turn-to-dots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-up-down-left-right.svg b/icons/solid/arrows-up-down-left-right.svg new file mode 100644 index 0000000..28b5793 --- /dev/null +++ b/icons/solid/arrows-up-down-left-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-up-down.svg b/icons/solid/arrows-up-down.svg new file mode 100644 index 0000000..2e86dab --- /dev/null +++ b/icons/solid/arrows-up-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/arrows-up-to-line.svg b/icons/solid/arrows-up-to-line.svg new file mode 100644 index 0000000..fbb3043 --- /dev/null +++ b/icons/solid/arrows-up-to-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/asterisk.svg b/icons/solid/asterisk.svg new file mode 100644 index 0000000..d3f0eef --- /dev/null +++ b/icons/solid/asterisk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/at.svg b/icons/solid/at.svg new file mode 100644 index 0000000..e2e86b7 --- /dev/null +++ b/icons/solid/at.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/atom.svg b/icons/solid/atom.svg new file mode 100644 index 0000000..135e2c9 --- /dev/null +++ b/icons/solid/atom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/audio-description.svg b/icons/solid/audio-description.svg new file mode 100644 index 0000000..dc401cc --- /dev/null +++ b/icons/solid/audio-description.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/austral-sign.svg b/icons/solid/austral-sign.svg new file mode 100644 index 0000000..e7db441 --- /dev/null +++ b/icons/solid/austral-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/award.svg b/icons/solid/award.svg new file mode 100644 index 0000000..8351560 --- /dev/null +++ b/icons/solid/award.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/b.svg b/icons/solid/b.svg new file mode 100644 index 0000000..0c74195 --- /dev/null +++ b/icons/solid/b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/baby-carriage.svg b/icons/solid/baby-carriage.svg new file mode 100644 index 0000000..aa4508e --- /dev/null +++ b/icons/solid/baby-carriage.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/baby.svg b/icons/solid/baby.svg new file mode 100644 index 0000000..c238b56 --- /dev/null +++ b/icons/solid/baby.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/backward-fast.svg b/icons/solid/backward-fast.svg new file mode 100644 index 0000000..e39b095 --- /dev/null +++ b/icons/solid/backward-fast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/backward-step.svg b/icons/solid/backward-step.svg new file mode 100644 index 0000000..ca0d5a8 --- /dev/null +++ b/icons/solid/backward-step.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/backward.svg b/icons/solid/backward.svg new file mode 100644 index 0000000..c99e87b --- /dev/null +++ b/icons/solid/backward.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bacon.svg b/icons/solid/bacon.svg new file mode 100644 index 0000000..e4a7fbd --- /dev/null +++ b/icons/solid/bacon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bacteria.svg b/icons/solid/bacteria.svg new file mode 100644 index 0000000..1482a89 --- /dev/null +++ b/icons/solid/bacteria.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bacterium.svg b/icons/solid/bacterium.svg new file mode 100644 index 0000000..41213b6 --- /dev/null +++ b/icons/solid/bacterium.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bag-shopping.svg b/icons/solid/bag-shopping.svg new file mode 100644 index 0000000..e9fe876 --- /dev/null +++ b/icons/solid/bag-shopping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bahai.svg b/icons/solid/bahai.svg new file mode 100644 index 0000000..1ee7458 --- /dev/null +++ b/icons/solid/bahai.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/baht-sign.svg b/icons/solid/baht-sign.svg new file mode 100644 index 0000000..fe652e7 --- /dev/null +++ b/icons/solid/baht-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ban-smoking.svg b/icons/solid/ban-smoking.svg new file mode 100644 index 0000000..1c9200b --- /dev/null +++ b/icons/solid/ban-smoking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ban.svg b/icons/solid/ban.svg new file mode 100644 index 0000000..e193fae --- /dev/null +++ b/icons/solid/ban.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bandage.svg b/icons/solid/bandage.svg new file mode 100644 index 0000000..2183b8b --- /dev/null +++ b/icons/solid/bandage.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bangladeshi-taka-sign.svg b/icons/solid/bangladeshi-taka-sign.svg new file mode 100644 index 0000000..ce5a95f --- /dev/null +++ b/icons/solid/bangladeshi-taka-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/barcode.svg b/icons/solid/barcode.svg new file mode 100644 index 0000000..464e9c2 --- /dev/null +++ b/icons/solid/barcode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bars-progress.svg b/icons/solid/bars-progress.svg new file mode 100644 index 0000000..b4ca0cc --- /dev/null +++ b/icons/solid/bars-progress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bars-staggered.svg b/icons/solid/bars-staggered.svg new file mode 100644 index 0000000..233c9b8 --- /dev/null +++ b/icons/solid/bars-staggered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bars.svg b/icons/solid/bars.svg new file mode 100644 index 0000000..68ca7e5 --- /dev/null +++ b/icons/solid/bars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/baseball-bat-ball.svg b/icons/solid/baseball-bat-ball.svg new file mode 100644 index 0000000..6b02a85 --- /dev/null +++ b/icons/solid/baseball-bat-ball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/baseball.svg b/icons/solid/baseball.svg new file mode 100644 index 0000000..5a435be --- /dev/null +++ b/icons/solid/baseball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/basket-shopping.svg b/icons/solid/basket-shopping.svg new file mode 100644 index 0000000..7a544fe --- /dev/null +++ b/icons/solid/basket-shopping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/basketball.svg b/icons/solid/basketball.svg new file mode 100644 index 0000000..f91fa65 --- /dev/null +++ b/icons/solid/basketball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bath.svg b/icons/solid/bath.svg new file mode 100644 index 0000000..c7a0741 --- /dev/null +++ b/icons/solid/bath.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/battery-empty.svg b/icons/solid/battery-empty.svg new file mode 100644 index 0000000..dedb22d --- /dev/null +++ b/icons/solid/battery-empty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/battery-full.svg b/icons/solid/battery-full.svg new file mode 100644 index 0000000..e25bb5a --- /dev/null +++ b/icons/solid/battery-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/battery-half.svg b/icons/solid/battery-half.svg new file mode 100644 index 0000000..c84e38b --- /dev/null +++ b/icons/solid/battery-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/battery-quarter.svg b/icons/solid/battery-quarter.svg new file mode 100644 index 0000000..8f985cc --- /dev/null +++ b/icons/solid/battery-quarter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/battery-three-quarters.svg b/icons/solid/battery-three-quarters.svg new file mode 100644 index 0000000..b82fbc0 --- /dev/null +++ b/icons/solid/battery-three-quarters.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bed-pulse.svg b/icons/solid/bed-pulse.svg new file mode 100644 index 0000000..2e889da --- /dev/null +++ b/icons/solid/bed-pulse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bed.svg b/icons/solid/bed.svg new file mode 100644 index 0000000..7ed4278 --- /dev/null +++ b/icons/solid/bed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/beer-mug-empty.svg b/icons/solid/beer-mug-empty.svg new file mode 100644 index 0000000..943c76b --- /dev/null +++ b/icons/solid/beer-mug-empty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bell-concierge.svg b/icons/solid/bell-concierge.svg new file mode 100644 index 0000000..09318bd --- /dev/null +++ b/icons/solid/bell-concierge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bell-slash.svg b/icons/solid/bell-slash.svg new file mode 100644 index 0000000..2eca381 --- /dev/null +++ b/icons/solid/bell-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bell.svg b/icons/solid/bell.svg new file mode 100644 index 0000000..fe65ac5 --- /dev/null +++ b/icons/solid/bell.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bezier-curve.svg b/icons/solid/bezier-curve.svg new file mode 100644 index 0000000..88ba459 --- /dev/null +++ b/icons/solid/bezier-curve.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bicycle.svg b/icons/solid/bicycle.svg new file mode 100644 index 0000000..42893e8 --- /dev/null +++ b/icons/solid/bicycle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/binoculars.svg b/icons/solid/binoculars.svg new file mode 100644 index 0000000..a7c9048 --- /dev/null +++ b/icons/solid/binoculars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/biohazard.svg b/icons/solid/biohazard.svg new file mode 100644 index 0000000..0fa9611 --- /dev/null +++ b/icons/solid/biohazard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bitcoin-sign.svg b/icons/solid/bitcoin-sign.svg new file mode 100644 index 0000000..78dd2b6 --- /dev/null +++ b/icons/solid/bitcoin-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/blender-phone.svg b/icons/solid/blender-phone.svg new file mode 100644 index 0000000..290265e --- /dev/null +++ b/icons/solid/blender-phone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/blender.svg b/icons/solid/blender.svg new file mode 100644 index 0000000..30ba8dd --- /dev/null +++ b/icons/solid/blender.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/blog.svg b/icons/solid/blog.svg new file mode 100644 index 0000000..7ff1956 --- /dev/null +++ b/icons/solid/blog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bold.svg b/icons/solid/bold.svg new file mode 100644 index 0000000..6a124d8 --- /dev/null +++ b/icons/solid/bold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bolt-lightning.svg b/icons/solid/bolt-lightning.svg new file mode 100644 index 0000000..a70c83a --- /dev/null +++ b/icons/solid/bolt-lightning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bolt.svg b/icons/solid/bolt.svg new file mode 100644 index 0000000..a12c32e --- /dev/null +++ b/icons/solid/bolt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bomb.svg b/icons/solid/bomb.svg new file mode 100644 index 0000000..a4011af --- /dev/null +++ b/icons/solid/bomb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bone.svg b/icons/solid/bone.svg new file mode 100644 index 0000000..f86ef5e --- /dev/null +++ b/icons/solid/bone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bong.svg b/icons/solid/bong.svg new file mode 100644 index 0000000..847df6b --- /dev/null +++ b/icons/solid/bong.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-atlas.svg b/icons/solid/book-atlas.svg new file mode 100644 index 0000000..2671cf0 --- /dev/null +++ b/icons/solid/book-atlas.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-bible.svg b/icons/solid/book-bible.svg new file mode 100644 index 0000000..8d92428 --- /dev/null +++ b/icons/solid/book-bible.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-bookmark.svg b/icons/solid/book-bookmark.svg new file mode 100644 index 0000000..7d22bf3 --- /dev/null +++ b/icons/solid/book-bookmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-journal-whills.svg b/icons/solid/book-journal-whills.svg new file mode 100644 index 0000000..1592b89 --- /dev/null +++ b/icons/solid/book-journal-whills.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-medical.svg b/icons/solid/book-medical.svg new file mode 100644 index 0000000..1a6c87e --- /dev/null +++ b/icons/solid/book-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-open-reader.svg b/icons/solid/book-open-reader.svg new file mode 100644 index 0000000..2fc2ffb --- /dev/null +++ b/icons/solid/book-open-reader.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-open.svg b/icons/solid/book-open.svg new file mode 100644 index 0000000..0d39583 --- /dev/null +++ b/icons/solid/book-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-quran.svg b/icons/solid/book-quran.svg new file mode 100644 index 0000000..13db254 --- /dev/null +++ b/icons/solid/book-quran.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-skull.svg b/icons/solid/book-skull.svg new file mode 100644 index 0000000..5c0ff09 --- /dev/null +++ b/icons/solid/book-skull.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book-tanakh.svg b/icons/solid/book-tanakh.svg new file mode 100644 index 0000000..52365e2 --- /dev/null +++ b/icons/solid/book-tanakh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/book.svg b/icons/solid/book.svg new file mode 100644 index 0000000..01a2709 --- /dev/null +++ b/icons/solid/book.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bookmark.svg b/icons/solid/bookmark.svg new file mode 100644 index 0000000..2d41fc9 --- /dev/null +++ b/icons/solid/bookmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/border-all.svg b/icons/solid/border-all.svg new file mode 100644 index 0000000..f5d44c4 --- /dev/null +++ b/icons/solid/border-all.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/border-none.svg b/icons/solid/border-none.svg new file mode 100644 index 0000000..5550d62 --- /dev/null +++ b/icons/solid/border-none.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/border-top-left.svg b/icons/solid/border-top-left.svg new file mode 100644 index 0000000..159bfe2 --- /dev/null +++ b/icons/solid/border-top-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bore-hole.svg b/icons/solid/bore-hole.svg new file mode 100644 index 0000000..218d1e0 --- /dev/null +++ b/icons/solid/bore-hole.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bottle-droplet.svg b/icons/solid/bottle-droplet.svg new file mode 100644 index 0000000..994e96e --- /dev/null +++ b/icons/solid/bottle-droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bottle-water.svg b/icons/solid/bottle-water.svg new file mode 100644 index 0000000..b2c6130 --- /dev/null +++ b/icons/solid/bottle-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bowl-food.svg b/icons/solid/bowl-food.svg new file mode 100644 index 0000000..78d9de6 --- /dev/null +++ b/icons/solid/bowl-food.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bowl-rice.svg b/icons/solid/bowl-rice.svg new file mode 100644 index 0000000..7016721 --- /dev/null +++ b/icons/solid/bowl-rice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bowling-ball.svg b/icons/solid/bowling-ball.svg new file mode 100644 index 0000000..8737cd8 --- /dev/null +++ b/icons/solid/bowling-ball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/box-archive.svg b/icons/solid/box-archive.svg new file mode 100644 index 0000000..9572226 --- /dev/null +++ b/icons/solid/box-archive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/box-open.svg b/icons/solid/box-open.svg new file mode 100644 index 0000000..3117f22 --- /dev/null +++ b/icons/solid/box-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/box-tissue.svg b/icons/solid/box-tissue.svg new file mode 100644 index 0000000..5096621 --- /dev/null +++ b/icons/solid/box-tissue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/box.svg b/icons/solid/box.svg new file mode 100644 index 0000000..5127a6e --- /dev/null +++ b/icons/solid/box.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/boxes-packing.svg b/icons/solid/boxes-packing.svg new file mode 100644 index 0000000..8f96180 --- /dev/null +++ b/icons/solid/boxes-packing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/boxes-stacked.svg b/icons/solid/boxes-stacked.svg new file mode 100644 index 0000000..8ff1570 --- /dev/null +++ b/icons/solid/boxes-stacked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/braille.svg b/icons/solid/braille.svg new file mode 100644 index 0000000..d1033f2 --- /dev/null +++ b/icons/solid/braille.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/brain.svg b/icons/solid/brain.svg new file mode 100644 index 0000000..e6b66bc --- /dev/null +++ b/icons/solid/brain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/brazilian-real-sign.svg b/icons/solid/brazilian-real-sign.svg new file mode 100644 index 0000000..97d739b --- /dev/null +++ b/icons/solid/brazilian-real-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bread-slice.svg b/icons/solid/bread-slice.svg new file mode 100644 index 0000000..4f4f967 --- /dev/null +++ b/icons/solid/bread-slice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge-circle-check.svg b/icons/solid/bridge-circle-check.svg new file mode 100644 index 0000000..0aaee47 --- /dev/null +++ b/icons/solid/bridge-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge-circle-exclamation.svg b/icons/solid/bridge-circle-exclamation.svg new file mode 100644 index 0000000..8da12d0 --- /dev/null +++ b/icons/solid/bridge-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge-circle-xmark.svg b/icons/solid/bridge-circle-xmark.svg new file mode 100644 index 0000000..7eab01e --- /dev/null +++ b/icons/solid/bridge-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge-lock.svg b/icons/solid/bridge-lock.svg new file mode 100644 index 0000000..60c93f7 --- /dev/null +++ b/icons/solid/bridge-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge-water.svg b/icons/solid/bridge-water.svg new file mode 100644 index 0000000..0853b20 --- /dev/null +++ b/icons/solid/bridge-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bridge.svg b/icons/solid/bridge.svg new file mode 100644 index 0000000..43a81f8 --- /dev/null +++ b/icons/solid/bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/briefcase-medical.svg b/icons/solid/briefcase-medical.svg new file mode 100644 index 0000000..b679497 --- /dev/null +++ b/icons/solid/briefcase-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/briefcase.svg b/icons/solid/briefcase.svg new file mode 100644 index 0000000..101c704 --- /dev/null +++ b/icons/solid/briefcase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/broom-ball.svg b/icons/solid/broom-ball.svg new file mode 100644 index 0000000..c2d32d9 --- /dev/null +++ b/icons/solid/broom-ball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/broom.svg b/icons/solid/broom.svg new file mode 100644 index 0000000..1abd370 --- /dev/null +++ b/icons/solid/broom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/brush.svg b/icons/solid/brush.svg new file mode 100644 index 0000000..c938128 --- /dev/null +++ b/icons/solid/brush.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bucket.svg b/icons/solid/bucket.svg new file mode 100644 index 0000000..bf124d6 --- /dev/null +++ b/icons/solid/bucket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bug-slash.svg b/icons/solid/bug-slash.svg new file mode 100644 index 0000000..f8b0865 --- /dev/null +++ b/icons/solid/bug-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bug.svg b/icons/solid/bug.svg new file mode 100644 index 0000000..2608798 --- /dev/null +++ b/icons/solid/bug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bugs.svg b/icons/solid/bugs.svg new file mode 100644 index 0000000..dfe7132 --- /dev/null +++ b/icons/solid/bugs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-circle-arrow-right.svg b/icons/solid/building-circle-arrow-right.svg new file mode 100644 index 0000000..9183678 --- /dev/null +++ b/icons/solid/building-circle-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-circle-check.svg b/icons/solid/building-circle-check.svg new file mode 100644 index 0000000..916ec9e --- /dev/null +++ b/icons/solid/building-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-circle-exclamation.svg b/icons/solid/building-circle-exclamation.svg new file mode 100644 index 0000000..4875f6c --- /dev/null +++ b/icons/solid/building-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-circle-xmark.svg b/icons/solid/building-circle-xmark.svg new file mode 100644 index 0000000..dcf1254 --- /dev/null +++ b/icons/solid/building-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-columns.svg b/icons/solid/building-columns.svg new file mode 100644 index 0000000..b2924e9 --- /dev/null +++ b/icons/solid/building-columns.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-flag.svg b/icons/solid/building-flag.svg new file mode 100644 index 0000000..4073ba8 --- /dev/null +++ b/icons/solid/building-flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-lock.svg b/icons/solid/building-lock.svg new file mode 100644 index 0000000..eb78d1c --- /dev/null +++ b/icons/solid/building-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-ngo.svg b/icons/solid/building-ngo.svg new file mode 100644 index 0000000..01c8098 --- /dev/null +++ b/icons/solid/building-ngo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-shield.svg b/icons/solid/building-shield.svg new file mode 100644 index 0000000..efd0e0d --- /dev/null +++ b/icons/solid/building-shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-un.svg b/icons/solid/building-un.svg new file mode 100644 index 0000000..c80aad2 --- /dev/null +++ b/icons/solid/building-un.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-user.svg b/icons/solid/building-user.svg new file mode 100644 index 0000000..69f552b --- /dev/null +++ b/icons/solid/building-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building-wheat.svg b/icons/solid/building-wheat.svg new file mode 100644 index 0000000..8d2eff5 --- /dev/null +++ b/icons/solid/building-wheat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/building.svg b/icons/solid/building.svg new file mode 100644 index 0000000..6c609a6 --- /dev/null +++ b/icons/solid/building.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bullhorn.svg b/icons/solid/bullhorn.svg new file mode 100644 index 0000000..a21b872 --- /dev/null +++ b/icons/solid/bullhorn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bullseye.svg b/icons/solid/bullseye.svg new file mode 100644 index 0000000..18215ba --- /dev/null +++ b/icons/solid/bullseye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/burger.svg b/icons/solid/burger.svg new file mode 100644 index 0000000..1b8904d --- /dev/null +++ b/icons/solid/burger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/burst.svg b/icons/solid/burst.svg new file mode 100644 index 0000000..9de6a64 --- /dev/null +++ b/icons/solid/burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bus-simple.svg b/icons/solid/bus-simple.svg new file mode 100644 index 0000000..1b18889 --- /dev/null +++ b/icons/solid/bus-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/bus.svg b/icons/solid/bus.svg new file mode 100644 index 0000000..36ea245 --- /dev/null +++ b/icons/solid/bus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/business-time.svg b/icons/solid/business-time.svg new file mode 100644 index 0000000..74110d0 --- /dev/null +++ b/icons/solid/business-time.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/c.svg b/icons/solid/c.svg new file mode 100644 index 0000000..de9f8d0 --- /dev/null +++ b/icons/solid/c.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cable-car.svg b/icons/solid/cable-car.svg new file mode 100644 index 0000000..395d266 --- /dev/null +++ b/icons/solid/cable-car.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cake-candles.svg b/icons/solid/cake-candles.svg new file mode 100644 index 0000000..ac29487 --- /dev/null +++ b/icons/solid/cake-candles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calculator.svg b/icons/solid/calculator.svg new file mode 100644 index 0000000..7a8858c --- /dev/null +++ b/icons/solid/calculator.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-check.svg b/icons/solid/calendar-check.svg new file mode 100644 index 0000000..b9d036d --- /dev/null +++ b/icons/solid/calendar-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-day.svg b/icons/solid/calendar-day.svg new file mode 100644 index 0000000..f4abf33 --- /dev/null +++ b/icons/solid/calendar-day.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-days.svg b/icons/solid/calendar-days.svg new file mode 100644 index 0000000..1880183 --- /dev/null +++ b/icons/solid/calendar-days.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-minus.svg b/icons/solid/calendar-minus.svg new file mode 100644 index 0000000..4e0e2fe --- /dev/null +++ b/icons/solid/calendar-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-plus.svg b/icons/solid/calendar-plus.svg new file mode 100644 index 0000000..4670645 --- /dev/null +++ b/icons/solid/calendar-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-week.svg b/icons/solid/calendar-week.svg new file mode 100644 index 0000000..30a5dc8 --- /dev/null +++ b/icons/solid/calendar-week.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar-xmark.svg b/icons/solid/calendar-xmark.svg new file mode 100644 index 0000000..888f9aa --- /dev/null +++ b/icons/solid/calendar-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/calendar.svg b/icons/solid/calendar.svg new file mode 100644 index 0000000..6f86ee7 --- /dev/null +++ b/icons/solid/calendar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/camera-retro.svg b/icons/solid/camera-retro.svg new file mode 100644 index 0000000..7a3af22 --- /dev/null +++ b/icons/solid/camera-retro.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/camera-rotate.svg b/icons/solid/camera-rotate.svg new file mode 100644 index 0000000..1868d1a --- /dev/null +++ b/icons/solid/camera-rotate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/camera.svg b/icons/solid/camera.svg new file mode 100644 index 0000000..e80a3b2 --- /dev/null +++ b/icons/solid/camera.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/campground.svg b/icons/solid/campground.svg new file mode 100644 index 0000000..331d26d --- /dev/null +++ b/icons/solid/campground.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/candy-cane.svg b/icons/solid/candy-cane.svg new file mode 100644 index 0000000..b4c396c --- /dev/null +++ b/icons/solid/candy-cane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cannabis.svg b/icons/solid/cannabis.svg new file mode 100644 index 0000000..b23d290 --- /dev/null +++ b/icons/solid/cannabis.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/capsules.svg b/icons/solid/capsules.svg new file mode 100644 index 0000000..e7e8580 --- /dev/null +++ b/icons/solid/capsules.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-battery.svg b/icons/solid/car-battery.svg new file mode 100644 index 0000000..54ecc9e --- /dev/null +++ b/icons/solid/car-battery.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-burst.svg b/icons/solid/car-burst.svg new file mode 100644 index 0000000..4b19c42 --- /dev/null +++ b/icons/solid/car-burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-on.svg b/icons/solid/car-on.svg new file mode 100644 index 0000000..0a3ef3b --- /dev/null +++ b/icons/solid/car-on.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-rear.svg b/icons/solid/car-rear.svg new file mode 100644 index 0000000..b297f2d --- /dev/null +++ b/icons/solid/car-rear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-side.svg b/icons/solid/car-side.svg new file mode 100644 index 0000000..48fe468 --- /dev/null +++ b/icons/solid/car-side.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car-tunnel.svg b/icons/solid/car-tunnel.svg new file mode 100644 index 0000000..6556393 --- /dev/null +++ b/icons/solid/car-tunnel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/car.svg b/icons/solid/car.svg new file mode 100644 index 0000000..d162caf --- /dev/null +++ b/icons/solid/car.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/caravan.svg b/icons/solid/caravan.svg new file mode 100644 index 0000000..0683e4e --- /dev/null +++ b/icons/solid/caravan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/caret-down.svg b/icons/solid/caret-down.svg new file mode 100644 index 0000000..9bf3f3c --- /dev/null +++ b/icons/solid/caret-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/caret-left.svg b/icons/solid/caret-left.svg new file mode 100644 index 0000000..67f7e53 --- /dev/null +++ b/icons/solid/caret-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/caret-right.svg b/icons/solid/caret-right.svg new file mode 100644 index 0000000..9ed7f11 --- /dev/null +++ b/icons/solid/caret-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/caret-up.svg b/icons/solid/caret-up.svg new file mode 100644 index 0000000..39026fe --- /dev/null +++ b/icons/solid/caret-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/carrot.svg b/icons/solid/carrot.svg new file mode 100644 index 0000000..b5afe7f --- /dev/null +++ b/icons/solid/carrot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cart-arrow-down.svg b/icons/solid/cart-arrow-down.svg new file mode 100644 index 0000000..e5be219 --- /dev/null +++ b/icons/solid/cart-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cart-flatbed-suitcase.svg b/icons/solid/cart-flatbed-suitcase.svg new file mode 100644 index 0000000..867e50a --- /dev/null +++ b/icons/solid/cart-flatbed-suitcase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cart-flatbed.svg b/icons/solid/cart-flatbed.svg new file mode 100644 index 0000000..e83aea3 --- /dev/null +++ b/icons/solid/cart-flatbed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cart-plus.svg b/icons/solid/cart-plus.svg new file mode 100644 index 0000000..c93efa4 --- /dev/null +++ b/icons/solid/cart-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cart-shopping.svg b/icons/solid/cart-shopping.svg new file mode 100644 index 0000000..9f666c0 --- /dev/null +++ b/icons/solid/cart-shopping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cash-register.svg b/icons/solid/cash-register.svg new file mode 100644 index 0000000..a98a131 --- /dev/null +++ b/icons/solid/cash-register.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cat.svg b/icons/solid/cat.svg new file mode 100644 index 0000000..962019f --- /dev/null +++ b/icons/solid/cat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cedi-sign.svg b/icons/solid/cedi-sign.svg new file mode 100644 index 0000000..7e8db87 --- /dev/null +++ b/icons/solid/cedi-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cent-sign.svg b/icons/solid/cent-sign.svg new file mode 100644 index 0000000..9f5444d --- /dev/null +++ b/icons/solid/cent-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/certificate.svg b/icons/solid/certificate.svg new file mode 100644 index 0000000..4766499 --- /dev/null +++ b/icons/solid/certificate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chair.svg b/icons/solid/chair.svg new file mode 100644 index 0000000..d210434 --- /dev/null +++ b/icons/solid/chair.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chalkboard-user.svg b/icons/solid/chalkboard-user.svg new file mode 100644 index 0000000..c634c33 --- /dev/null +++ b/icons/solid/chalkboard-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chalkboard.svg b/icons/solid/chalkboard.svg new file mode 100644 index 0000000..5a084e0 --- /dev/null +++ b/icons/solid/chalkboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/champagne-glasses.svg b/icons/solid/champagne-glasses.svg new file mode 100644 index 0000000..9bdc604 --- /dev/null +++ b/icons/solid/champagne-glasses.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/charging-station.svg b/icons/solid/charging-station.svg new file mode 100644 index 0000000..a1a79fd --- /dev/null +++ b/icons/solid/charging-station.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-area.svg b/icons/solid/chart-area.svg new file mode 100644 index 0000000..90b377e --- /dev/null +++ b/icons/solid/chart-area.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-bar.svg b/icons/solid/chart-bar.svg new file mode 100644 index 0000000..5f2dcd8 --- /dev/null +++ b/icons/solid/chart-bar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-column.svg b/icons/solid/chart-column.svg new file mode 100644 index 0000000..584fd0c --- /dev/null +++ b/icons/solid/chart-column.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-gantt.svg b/icons/solid/chart-gantt.svg new file mode 100644 index 0000000..37fb179 --- /dev/null +++ b/icons/solid/chart-gantt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-line.svg b/icons/solid/chart-line.svg new file mode 100644 index 0000000..28f56e6 --- /dev/null +++ b/icons/solid/chart-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-pie.svg b/icons/solid/chart-pie.svg new file mode 100644 index 0000000..6e4e822 --- /dev/null +++ b/icons/solid/chart-pie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chart-simple.svg b/icons/solid/chart-simple.svg new file mode 100644 index 0000000..1799ff7 --- /dev/null +++ b/icons/solid/chart-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/check-double.svg b/icons/solid/check-double.svg new file mode 100644 index 0000000..2690b62 --- /dev/null +++ b/icons/solid/check-double.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/check-to-slot.svg b/icons/solid/check-to-slot.svg new file mode 100644 index 0000000..17e0521 --- /dev/null +++ b/icons/solid/check-to-slot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/check.svg b/icons/solid/check.svg new file mode 100644 index 0000000..9a8ab10 --- /dev/null +++ b/icons/solid/check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cheese.svg b/icons/solid/cheese.svg new file mode 100644 index 0000000..07baf4a --- /dev/null +++ b/icons/solid/cheese.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-bishop.svg b/icons/solid/chess-bishop.svg new file mode 100644 index 0000000..576ffca --- /dev/null +++ b/icons/solid/chess-bishop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-board.svg b/icons/solid/chess-board.svg new file mode 100644 index 0000000..ec86c5c --- /dev/null +++ b/icons/solid/chess-board.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-king.svg b/icons/solid/chess-king.svg new file mode 100644 index 0000000..29a6c0e --- /dev/null +++ b/icons/solid/chess-king.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-knight.svg b/icons/solid/chess-knight.svg new file mode 100644 index 0000000..75867a2 --- /dev/null +++ b/icons/solid/chess-knight.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-pawn.svg b/icons/solid/chess-pawn.svg new file mode 100644 index 0000000..362ced7 --- /dev/null +++ b/icons/solid/chess-pawn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-queen.svg b/icons/solid/chess-queen.svg new file mode 100644 index 0000000..6b7e511 --- /dev/null +++ b/icons/solid/chess-queen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess-rook.svg b/icons/solid/chess-rook.svg new file mode 100644 index 0000000..73fbdd0 --- /dev/null +++ b/icons/solid/chess-rook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chess.svg b/icons/solid/chess.svg new file mode 100644 index 0000000..5bc7239 --- /dev/null +++ b/icons/solid/chess.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chevron-down.svg b/icons/solid/chevron-down.svg new file mode 100644 index 0000000..92f7776 --- /dev/null +++ b/icons/solid/chevron-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chevron-left.svg b/icons/solid/chevron-left.svg new file mode 100644 index 0000000..3210d62 --- /dev/null +++ b/icons/solid/chevron-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chevron-right.svg b/icons/solid/chevron-right.svg new file mode 100644 index 0000000..c1596ee --- /dev/null +++ b/icons/solid/chevron-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/chevron-up.svg b/icons/solid/chevron-up.svg new file mode 100644 index 0000000..0b3660a --- /dev/null +++ b/icons/solid/chevron-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/child-combatant.svg b/icons/solid/child-combatant.svg new file mode 100644 index 0000000..355bd8b --- /dev/null +++ b/icons/solid/child-combatant.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/child-dress.svg b/icons/solid/child-dress.svg new file mode 100644 index 0000000..b1f6be7 --- /dev/null +++ b/icons/solid/child-dress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/child-reaching.svg b/icons/solid/child-reaching.svg new file mode 100644 index 0000000..34e9499 --- /dev/null +++ b/icons/solid/child-reaching.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/child.svg b/icons/solid/child.svg new file mode 100644 index 0000000..a71b3aa --- /dev/null +++ b/icons/solid/child.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/children.svg b/icons/solid/children.svg new file mode 100644 index 0000000..a0e3bef --- /dev/null +++ b/icons/solid/children.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/church.svg b/icons/solid/church.svg new file mode 100644 index 0000000..1af405c --- /dev/null +++ b/icons/solid/church.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-arrow-down.svg b/icons/solid/circle-arrow-down.svg new file mode 100644 index 0000000..6a9ef27 --- /dev/null +++ b/icons/solid/circle-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-arrow-left.svg b/icons/solid/circle-arrow-left.svg new file mode 100644 index 0000000..7adced6 --- /dev/null +++ b/icons/solid/circle-arrow-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-arrow-right.svg b/icons/solid/circle-arrow-right.svg new file mode 100644 index 0000000..0043b27 --- /dev/null +++ b/icons/solid/circle-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-arrow-up.svg b/icons/solid/circle-arrow-up.svg new file mode 100644 index 0000000..846c33b --- /dev/null +++ b/icons/solid/circle-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-check.svg b/icons/solid/circle-check.svg new file mode 100644 index 0000000..0911979 --- /dev/null +++ b/icons/solid/circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-chevron-down.svg b/icons/solid/circle-chevron-down.svg new file mode 100644 index 0000000..cec1626 --- /dev/null +++ b/icons/solid/circle-chevron-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-chevron-left.svg b/icons/solid/circle-chevron-left.svg new file mode 100644 index 0000000..51b2599 --- /dev/null +++ b/icons/solid/circle-chevron-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-chevron-right.svg b/icons/solid/circle-chevron-right.svg new file mode 100644 index 0000000..d50bb1c --- /dev/null +++ b/icons/solid/circle-chevron-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-chevron-up.svg b/icons/solid/circle-chevron-up.svg new file mode 100644 index 0000000..015c670 --- /dev/null +++ b/icons/solid/circle-chevron-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-dollar-to-slot.svg b/icons/solid/circle-dollar-to-slot.svg new file mode 100644 index 0000000..0e4b479 --- /dev/null +++ b/icons/solid/circle-dollar-to-slot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-dot.svg b/icons/solid/circle-dot.svg new file mode 100644 index 0000000..130102f --- /dev/null +++ b/icons/solid/circle-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-down.svg b/icons/solid/circle-down.svg new file mode 100644 index 0000000..f727e34 --- /dev/null +++ b/icons/solid/circle-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-exclamation.svg b/icons/solid/circle-exclamation.svg new file mode 100644 index 0000000..62c6cd3 --- /dev/null +++ b/icons/solid/circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-h.svg b/icons/solid/circle-h.svg new file mode 100644 index 0000000..d115ed9 --- /dev/null +++ b/icons/solid/circle-h.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-half-stroke.svg b/icons/solid/circle-half-stroke.svg new file mode 100644 index 0000000..4ffdda3 --- /dev/null +++ b/icons/solid/circle-half-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-info.svg b/icons/solid/circle-info.svg new file mode 100644 index 0000000..58a7652 --- /dev/null +++ b/icons/solid/circle-info.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-left.svg b/icons/solid/circle-left.svg new file mode 100644 index 0000000..0071ff2 --- /dev/null +++ b/icons/solid/circle-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-minus.svg b/icons/solid/circle-minus.svg new file mode 100644 index 0000000..3d45e2f --- /dev/null +++ b/icons/solid/circle-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-nodes.svg b/icons/solid/circle-nodes.svg new file mode 100644 index 0000000..111fa0a --- /dev/null +++ b/icons/solid/circle-nodes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-notch.svg b/icons/solid/circle-notch.svg new file mode 100644 index 0000000..ef2ac60 --- /dev/null +++ b/icons/solid/circle-notch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-pause.svg b/icons/solid/circle-pause.svg new file mode 100644 index 0000000..1477d05 --- /dev/null +++ b/icons/solid/circle-pause.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-play.svg b/icons/solid/circle-play.svg new file mode 100644 index 0000000..fb4af84 --- /dev/null +++ b/icons/solid/circle-play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-plus.svg b/icons/solid/circle-plus.svg new file mode 100644 index 0000000..67aa3aa --- /dev/null +++ b/icons/solid/circle-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-question.svg b/icons/solid/circle-question.svg new file mode 100644 index 0000000..6b13595 --- /dev/null +++ b/icons/solid/circle-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-radiation.svg b/icons/solid/circle-radiation.svg new file mode 100644 index 0000000..fe27ff1 --- /dev/null +++ b/icons/solid/circle-radiation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-right.svg b/icons/solid/circle-right.svg new file mode 100644 index 0000000..ae47733 --- /dev/null +++ b/icons/solid/circle-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-stop.svg b/icons/solid/circle-stop.svg new file mode 100644 index 0000000..f3b44cd --- /dev/null +++ b/icons/solid/circle-stop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-up.svg b/icons/solid/circle-up.svg new file mode 100644 index 0000000..46b4aa0 --- /dev/null +++ b/icons/solid/circle-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-user.svg b/icons/solid/circle-user.svg new file mode 100644 index 0000000..92a197a --- /dev/null +++ b/icons/solid/circle-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle-xmark.svg b/icons/solid/circle-xmark.svg new file mode 100644 index 0000000..59b59cb --- /dev/null +++ b/icons/solid/circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/circle.svg b/icons/solid/circle.svg new file mode 100644 index 0000000..9791601 --- /dev/null +++ b/icons/solid/circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/city.svg b/icons/solid/city.svg new file mode 100644 index 0000000..f6da3a9 --- /dev/null +++ b/icons/solid/city.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clapperboard.svg b/icons/solid/clapperboard.svg new file mode 100644 index 0000000..37063c0 --- /dev/null +++ b/icons/solid/clapperboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clipboard-check.svg b/icons/solid/clipboard-check.svg new file mode 100644 index 0000000..8b66a2f --- /dev/null +++ b/icons/solid/clipboard-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clipboard-list.svg b/icons/solid/clipboard-list.svg new file mode 100644 index 0000000..8090d18 --- /dev/null +++ b/icons/solid/clipboard-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clipboard-question.svg b/icons/solid/clipboard-question.svg new file mode 100644 index 0000000..e594945 --- /dev/null +++ b/icons/solid/clipboard-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clipboard-user.svg b/icons/solid/clipboard-user.svg new file mode 100644 index 0000000..0b10217 --- /dev/null +++ b/icons/solid/clipboard-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clipboard.svg b/icons/solid/clipboard.svg new file mode 100644 index 0000000..5a33c32 --- /dev/null +++ b/icons/solid/clipboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clock-rotate-left.svg b/icons/solid/clock-rotate-left.svg new file mode 100644 index 0000000..b7bf920 --- /dev/null +++ b/icons/solid/clock-rotate-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clock.svg b/icons/solid/clock.svg new file mode 100644 index 0000000..64bb291 --- /dev/null +++ b/icons/solid/clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clone.svg b/icons/solid/clone.svg new file mode 100644 index 0000000..3a69584 --- /dev/null +++ b/icons/solid/clone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/closed-captioning.svg b/icons/solid/closed-captioning.svg new file mode 100644 index 0000000..30328df --- /dev/null +++ b/icons/solid/closed-captioning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-arrow-down.svg b/icons/solid/cloud-arrow-down.svg new file mode 100644 index 0000000..c047275 --- /dev/null +++ b/icons/solid/cloud-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-arrow-up.svg b/icons/solid/cloud-arrow-up.svg new file mode 100644 index 0000000..d4cd1b5 --- /dev/null +++ b/icons/solid/cloud-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-bolt.svg b/icons/solid/cloud-bolt.svg new file mode 100644 index 0000000..033f125 --- /dev/null +++ b/icons/solid/cloud-bolt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-meatball.svg b/icons/solid/cloud-meatball.svg new file mode 100644 index 0000000..b15cb84 --- /dev/null +++ b/icons/solid/cloud-meatball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-moon-rain.svg b/icons/solid/cloud-moon-rain.svg new file mode 100644 index 0000000..9d25e27 --- /dev/null +++ b/icons/solid/cloud-moon-rain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-moon.svg b/icons/solid/cloud-moon.svg new file mode 100644 index 0000000..7470ca3 --- /dev/null +++ b/icons/solid/cloud-moon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-rain.svg b/icons/solid/cloud-rain.svg new file mode 100644 index 0000000..3833197 --- /dev/null +++ b/icons/solid/cloud-rain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-showers-heavy.svg b/icons/solid/cloud-showers-heavy.svg new file mode 100644 index 0000000..ce23aa5 --- /dev/null +++ b/icons/solid/cloud-showers-heavy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-showers-water.svg b/icons/solid/cloud-showers-water.svg new file mode 100644 index 0000000..dfc8a2f --- /dev/null +++ b/icons/solid/cloud-showers-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-sun-rain.svg b/icons/solid/cloud-sun-rain.svg new file mode 100644 index 0000000..23def05 --- /dev/null +++ b/icons/solid/cloud-sun-rain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud-sun.svg b/icons/solid/cloud-sun.svg new file mode 100644 index 0000000..12df89c --- /dev/null +++ b/icons/solid/cloud-sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cloud.svg b/icons/solid/cloud.svg new file mode 100644 index 0000000..6265b77 --- /dev/null +++ b/icons/solid/cloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/clover.svg b/icons/solid/clover.svg new file mode 100644 index 0000000..66f1e76 --- /dev/null +++ b/icons/solid/clover.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-branch.svg b/icons/solid/code-branch.svg new file mode 100644 index 0000000..5451343 --- /dev/null +++ b/icons/solid/code-branch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-commit.svg b/icons/solid/code-commit.svg new file mode 100644 index 0000000..54abf90 --- /dev/null +++ b/icons/solid/code-commit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-compare.svg b/icons/solid/code-compare.svg new file mode 100644 index 0000000..d0911e8 --- /dev/null +++ b/icons/solid/code-compare.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-fork.svg b/icons/solid/code-fork.svg new file mode 100644 index 0000000..7e7339a --- /dev/null +++ b/icons/solid/code-fork.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-merge.svg b/icons/solid/code-merge.svg new file mode 100644 index 0000000..70887ea --- /dev/null +++ b/icons/solid/code-merge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code-pull-request.svg b/icons/solid/code-pull-request.svg new file mode 100644 index 0000000..89604a2 --- /dev/null +++ b/icons/solid/code-pull-request.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/code.svg b/icons/solid/code.svg new file mode 100644 index 0000000..8eb7fe7 --- /dev/null +++ b/icons/solid/code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/coins.svg b/icons/solid/coins.svg new file mode 100644 index 0000000..a0e1b6e --- /dev/null +++ b/icons/solid/coins.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/colon-sign.svg b/icons/solid/colon-sign.svg new file mode 100644 index 0000000..4149e96 --- /dev/null +++ b/icons/solid/colon-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment-dollar.svg b/icons/solid/comment-dollar.svg new file mode 100644 index 0000000..d6064f1 --- /dev/null +++ b/icons/solid/comment-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment-dots.svg b/icons/solid/comment-dots.svg new file mode 100644 index 0000000..1149852 --- /dev/null +++ b/icons/solid/comment-dots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment-medical.svg b/icons/solid/comment-medical.svg new file mode 100644 index 0000000..baf0dde --- /dev/null +++ b/icons/solid/comment-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment-slash.svg b/icons/solid/comment-slash.svg new file mode 100644 index 0000000..3a31477 --- /dev/null +++ b/icons/solid/comment-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment-sms.svg b/icons/solid/comment-sms.svg new file mode 100644 index 0000000..534f199 --- /dev/null +++ b/icons/solid/comment-sms.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comment.svg b/icons/solid/comment.svg new file mode 100644 index 0000000..ded5241 --- /dev/null +++ b/icons/solid/comment.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comments-dollar.svg b/icons/solid/comments-dollar.svg new file mode 100644 index 0000000..5ee8dad --- /dev/null +++ b/icons/solid/comments-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/comments.svg b/icons/solid/comments.svg new file mode 100644 index 0000000..62c53fc --- /dev/null +++ b/icons/solid/comments.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/compact-disc.svg b/icons/solid/compact-disc.svg new file mode 100644 index 0000000..5315010 --- /dev/null +++ b/icons/solid/compact-disc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/compass-drafting.svg b/icons/solid/compass-drafting.svg new file mode 100644 index 0000000..94c2515 --- /dev/null +++ b/icons/solid/compass-drafting.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/compass.svg b/icons/solid/compass.svg new file mode 100644 index 0000000..cbe8df6 --- /dev/null +++ b/icons/solid/compass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/compress.svg b/icons/solid/compress.svg new file mode 100644 index 0000000..2eb3b3e --- /dev/null +++ b/icons/solid/compress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/computer-mouse.svg b/icons/solid/computer-mouse.svg new file mode 100644 index 0000000..df37cdd --- /dev/null +++ b/icons/solid/computer-mouse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/computer.svg b/icons/solid/computer.svg new file mode 100644 index 0000000..3cc6094 --- /dev/null +++ b/icons/solid/computer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cookie-bite.svg b/icons/solid/cookie-bite.svg new file mode 100644 index 0000000..186e694 --- /dev/null +++ b/icons/solid/cookie-bite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cookie.svg b/icons/solid/cookie.svg new file mode 100644 index 0000000..a97a116 --- /dev/null +++ b/icons/solid/cookie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/copy.svg b/icons/solid/copy.svg new file mode 100644 index 0000000..277efed --- /dev/null +++ b/icons/solid/copy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/copyright.svg b/icons/solid/copyright.svg new file mode 100644 index 0000000..a399e77 --- /dev/null +++ b/icons/solid/copyright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/couch.svg b/icons/solid/couch.svg new file mode 100644 index 0000000..264dbd0 --- /dev/null +++ b/icons/solid/couch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cow.svg b/icons/solid/cow.svg new file mode 100644 index 0000000..fc7ec33 --- /dev/null +++ b/icons/solid/cow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/credit-card.svg b/icons/solid/credit-card.svg new file mode 100644 index 0000000..ac84fc4 --- /dev/null +++ b/icons/solid/credit-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crop-simple.svg b/icons/solid/crop-simple.svg new file mode 100644 index 0000000..5c3b329 --- /dev/null +++ b/icons/solid/crop-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crop.svg b/icons/solid/crop.svg new file mode 100644 index 0000000..72d2404 --- /dev/null +++ b/icons/solid/crop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cross.svg b/icons/solid/cross.svg new file mode 100644 index 0000000..c2095d7 --- /dev/null +++ b/icons/solid/cross.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crosshairs.svg b/icons/solid/crosshairs.svg new file mode 100644 index 0000000..26f020c --- /dev/null +++ b/icons/solid/crosshairs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crow.svg b/icons/solid/crow.svg new file mode 100644 index 0000000..1c6ea5a --- /dev/null +++ b/icons/solid/crow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crown.svg b/icons/solid/crown.svg new file mode 100644 index 0000000..51ae0ba --- /dev/null +++ b/icons/solid/crown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/crutch.svg b/icons/solid/crutch.svg new file mode 100644 index 0000000..c259d75 --- /dev/null +++ b/icons/solid/crutch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cruzeiro-sign.svg b/icons/solid/cruzeiro-sign.svg new file mode 100644 index 0000000..670c888 --- /dev/null +++ b/icons/solid/cruzeiro-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cube.svg b/icons/solid/cube.svg new file mode 100644 index 0000000..de42a90 --- /dev/null +++ b/icons/solid/cube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cubes-stacked.svg b/icons/solid/cubes-stacked.svg new file mode 100644 index 0000000..302a3e4 --- /dev/null +++ b/icons/solid/cubes-stacked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/cubes.svg b/icons/solid/cubes.svg new file mode 100644 index 0000000..582f84e --- /dev/null +++ b/icons/solid/cubes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/d.svg b/icons/solid/d.svg new file mode 100644 index 0000000..c3aa46a --- /dev/null +++ b/icons/solid/d.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/database.svg b/icons/solid/database.svg new file mode 100644 index 0000000..dc877d3 --- /dev/null +++ b/icons/solid/database.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/delete-left.svg b/icons/solid/delete-left.svg new file mode 100644 index 0000000..b39ed92 --- /dev/null +++ b/icons/solid/delete-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/democrat.svg b/icons/solid/democrat.svg new file mode 100644 index 0000000..ac4a6f6 --- /dev/null +++ b/icons/solid/democrat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/desktop.svg b/icons/solid/desktop.svg new file mode 100644 index 0000000..3237e42 --- /dev/null +++ b/icons/solid/desktop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dharmachakra.svg b/icons/solid/dharmachakra.svg new file mode 100644 index 0000000..fd825c1 --- /dev/null +++ b/icons/solid/dharmachakra.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diagram-next.svg b/icons/solid/diagram-next.svg new file mode 100644 index 0000000..b4449d5 --- /dev/null +++ b/icons/solid/diagram-next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diagram-predecessor.svg b/icons/solid/diagram-predecessor.svg new file mode 100644 index 0000000..9c96941 --- /dev/null +++ b/icons/solid/diagram-predecessor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diagram-project.svg b/icons/solid/diagram-project.svg new file mode 100644 index 0000000..6f1adbb --- /dev/null +++ b/icons/solid/diagram-project.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diagram-successor.svg b/icons/solid/diagram-successor.svg new file mode 100644 index 0000000..3b3c95c --- /dev/null +++ b/icons/solid/diagram-successor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diamond-turn-right.svg b/icons/solid/diamond-turn-right.svg new file mode 100644 index 0000000..1a4b6ed --- /dev/null +++ b/icons/solid/diamond-turn-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/diamond.svg b/icons/solid/diamond.svg new file mode 100644 index 0000000..57e33df --- /dev/null +++ b/icons/solid/diamond.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-d20.svg b/icons/solid/dice-d20.svg new file mode 100644 index 0000000..ea324fa --- /dev/null +++ b/icons/solid/dice-d20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-d6.svg b/icons/solid/dice-d6.svg new file mode 100644 index 0000000..dafee5c --- /dev/null +++ b/icons/solid/dice-d6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-five.svg b/icons/solid/dice-five.svg new file mode 100644 index 0000000..da116ba --- /dev/null +++ b/icons/solid/dice-five.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-four.svg b/icons/solid/dice-four.svg new file mode 100644 index 0000000..fea0900 --- /dev/null +++ b/icons/solid/dice-four.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-one.svg b/icons/solid/dice-one.svg new file mode 100644 index 0000000..c926068 --- /dev/null +++ b/icons/solid/dice-one.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-six.svg b/icons/solid/dice-six.svg new file mode 100644 index 0000000..b5f484d --- /dev/null +++ b/icons/solid/dice-six.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-three.svg b/icons/solid/dice-three.svg new file mode 100644 index 0000000..9892394 --- /dev/null +++ b/icons/solid/dice-three.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice-two.svg b/icons/solid/dice-two.svg new file mode 100644 index 0000000..67e147a --- /dev/null +++ b/icons/solid/dice-two.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dice.svg b/icons/solid/dice.svg new file mode 100644 index 0000000..a39582f --- /dev/null +++ b/icons/solid/dice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/disease.svg b/icons/solid/disease.svg new file mode 100644 index 0000000..4f9c1fe --- /dev/null +++ b/icons/solid/disease.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/display.svg b/icons/solid/display.svg new file mode 100644 index 0000000..d8ba194 --- /dev/null +++ b/icons/solid/display.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/divide.svg b/icons/solid/divide.svg new file mode 100644 index 0000000..edf354c --- /dev/null +++ b/icons/solid/divide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dna.svg b/icons/solid/dna.svg new file mode 100644 index 0000000..1619588 --- /dev/null +++ b/icons/solid/dna.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dog.svg b/icons/solid/dog.svg new file mode 100644 index 0000000..e0d0bdf --- /dev/null +++ b/icons/solid/dog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dollar-sign.svg b/icons/solid/dollar-sign.svg new file mode 100644 index 0000000..2363dbb --- /dev/null +++ b/icons/solid/dollar-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dolly.svg b/icons/solid/dolly.svg new file mode 100644 index 0000000..533a9a0 --- /dev/null +++ b/icons/solid/dolly.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dong-sign.svg b/icons/solid/dong-sign.svg new file mode 100644 index 0000000..38cd8bd --- /dev/null +++ b/icons/solid/dong-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/door-closed.svg b/icons/solid/door-closed.svg new file mode 100644 index 0000000..ea891a3 --- /dev/null +++ b/icons/solid/door-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/door-open.svg b/icons/solid/door-open.svg new file mode 100644 index 0000000..8a37deb --- /dev/null +++ b/icons/solid/door-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dove.svg b/icons/solid/dove.svg new file mode 100644 index 0000000..cbdf07c --- /dev/null +++ b/icons/solid/dove.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/down-left-and-up-right-to-center.svg b/icons/solid/down-left-and-up-right-to-center.svg new file mode 100644 index 0000000..74b0a75 --- /dev/null +++ b/icons/solid/down-left-and-up-right-to-center.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/down-long.svg b/icons/solid/down-long.svg new file mode 100644 index 0000000..8659feb --- /dev/null +++ b/icons/solid/down-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/download.svg b/icons/solid/download.svg new file mode 100644 index 0000000..70593d8 --- /dev/null +++ b/icons/solid/download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dragon.svg b/icons/solid/dragon.svg new file mode 100644 index 0000000..efd29e3 --- /dev/null +++ b/icons/solid/dragon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/draw-polygon.svg b/icons/solid/draw-polygon.svg new file mode 100644 index 0000000..64446f9 --- /dev/null +++ b/icons/solid/draw-polygon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/droplet-slash.svg b/icons/solid/droplet-slash.svg new file mode 100644 index 0000000..1c720a2 --- /dev/null +++ b/icons/solid/droplet-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/droplet.svg b/icons/solid/droplet.svg new file mode 100644 index 0000000..497d1e3 --- /dev/null +++ b/icons/solid/droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/drum-steelpan.svg b/icons/solid/drum-steelpan.svg new file mode 100644 index 0000000..ba6ce8d --- /dev/null +++ b/icons/solid/drum-steelpan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/drum.svg b/icons/solid/drum.svg new file mode 100644 index 0000000..5987b55 --- /dev/null +++ b/icons/solid/drum.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/drumstick-bite.svg b/icons/solid/drumstick-bite.svg new file mode 100644 index 0000000..e7d98eb --- /dev/null +++ b/icons/solid/drumstick-bite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dumbbell.svg b/icons/solid/dumbbell.svg new file mode 100644 index 0000000..11361e8 --- /dev/null +++ b/icons/solid/dumbbell.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dumpster-fire.svg b/icons/solid/dumpster-fire.svg new file mode 100644 index 0000000..1863aaf --- /dev/null +++ b/icons/solid/dumpster-fire.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dumpster.svg b/icons/solid/dumpster.svg new file mode 100644 index 0000000..c9ae58a --- /dev/null +++ b/icons/solid/dumpster.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/dungeon.svg b/icons/solid/dungeon.svg new file mode 100644 index 0000000..cb09c18 --- /dev/null +++ b/icons/solid/dungeon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/e.svg b/icons/solid/e.svg new file mode 100644 index 0000000..e2aaf2e --- /dev/null +++ b/icons/solid/e.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ear-deaf.svg b/icons/solid/ear-deaf.svg new file mode 100644 index 0000000..2b0744e --- /dev/null +++ b/icons/solid/ear-deaf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ear-listen.svg b/icons/solid/ear-listen.svg new file mode 100644 index 0000000..ecbd4de --- /dev/null +++ b/icons/solid/ear-listen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/earth-africa.svg b/icons/solid/earth-africa.svg new file mode 100644 index 0000000..44528b8 --- /dev/null +++ b/icons/solid/earth-africa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/earth-americas.svg b/icons/solid/earth-americas.svg new file mode 100644 index 0000000..145fa37 --- /dev/null +++ b/icons/solid/earth-americas.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/earth-asia.svg b/icons/solid/earth-asia.svg new file mode 100644 index 0000000..f508656 --- /dev/null +++ b/icons/solid/earth-asia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/earth-europe.svg b/icons/solid/earth-europe.svg new file mode 100644 index 0000000..e3d78af --- /dev/null +++ b/icons/solid/earth-europe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/earth-oceania.svg b/icons/solid/earth-oceania.svg new file mode 100644 index 0000000..ab242a9 --- /dev/null +++ b/icons/solid/earth-oceania.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/egg.svg b/icons/solid/egg.svg new file mode 100644 index 0000000..6c35966 --- /dev/null +++ b/icons/solid/egg.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eject.svg b/icons/solid/eject.svg new file mode 100644 index 0000000..a4994cd --- /dev/null +++ b/icons/solid/eject.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/elevator.svg b/icons/solid/elevator.svg new file mode 100644 index 0000000..f53f296 --- /dev/null +++ b/icons/solid/elevator.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ellipsis-vertical.svg b/icons/solid/ellipsis-vertical.svg new file mode 100644 index 0000000..b4358b0 --- /dev/null +++ b/icons/solid/ellipsis-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ellipsis.svg b/icons/solid/ellipsis.svg new file mode 100644 index 0000000..1928432 --- /dev/null +++ b/icons/solid/ellipsis.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/envelope-circle-check.svg b/icons/solid/envelope-circle-check.svg new file mode 100644 index 0000000..f8278c8 --- /dev/null +++ b/icons/solid/envelope-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/envelope-open-text.svg b/icons/solid/envelope-open-text.svg new file mode 100644 index 0000000..b5e963b --- /dev/null +++ b/icons/solid/envelope-open-text.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/envelope-open.svg b/icons/solid/envelope-open.svg new file mode 100644 index 0000000..5588ee1 --- /dev/null +++ b/icons/solid/envelope-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/envelope.svg b/icons/solid/envelope.svg new file mode 100644 index 0000000..69b3dea --- /dev/null +++ b/icons/solid/envelope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/envelopes-bulk.svg b/icons/solid/envelopes-bulk.svg new file mode 100644 index 0000000..465f11f --- /dev/null +++ b/icons/solid/envelopes-bulk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/equals.svg b/icons/solid/equals.svg new file mode 100644 index 0000000..2d2b5fa --- /dev/null +++ b/icons/solid/equals.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eraser.svg b/icons/solid/eraser.svg new file mode 100644 index 0000000..59f4c99 --- /dev/null +++ b/icons/solid/eraser.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ethernet.svg b/icons/solid/ethernet.svg new file mode 100644 index 0000000..e8c288f --- /dev/null +++ b/icons/solid/ethernet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/euro-sign.svg b/icons/solid/euro-sign.svg new file mode 100644 index 0000000..aa00d10 --- /dev/null +++ b/icons/solid/euro-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/exclamation.svg b/icons/solid/exclamation.svg new file mode 100644 index 0000000..b212a6e --- /dev/null +++ b/icons/solid/exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/expand.svg b/icons/solid/expand.svg new file mode 100644 index 0000000..a800f85 --- /dev/null +++ b/icons/solid/expand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/explosion.svg b/icons/solid/explosion.svg new file mode 100644 index 0000000..b1adf45 --- /dev/null +++ b/icons/solid/explosion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eye-dropper.svg b/icons/solid/eye-dropper.svg new file mode 100644 index 0000000..331eddc --- /dev/null +++ b/icons/solid/eye-dropper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eye-low-vision.svg b/icons/solid/eye-low-vision.svg new file mode 100644 index 0000000..d555fa9 --- /dev/null +++ b/icons/solid/eye-low-vision.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eye-slash.svg b/icons/solid/eye-slash.svg new file mode 100644 index 0000000..361a7f2 --- /dev/null +++ b/icons/solid/eye-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/eye.svg b/icons/solid/eye.svg new file mode 100644 index 0000000..1454ecc --- /dev/null +++ b/icons/solid/eye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/f.svg b/icons/solid/f.svg new file mode 100644 index 0000000..5a782d0 --- /dev/null +++ b/icons/solid/f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-angry.svg b/icons/solid/face-angry.svg new file mode 100644 index 0000000..d940ca9 --- /dev/null +++ b/icons/solid/face-angry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-dizzy.svg b/icons/solid/face-dizzy.svg new file mode 100644 index 0000000..c0ba16e --- /dev/null +++ b/icons/solid/face-dizzy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-flushed.svg b/icons/solid/face-flushed.svg new file mode 100644 index 0000000..1a77aed --- /dev/null +++ b/icons/solid/face-flushed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-frown-open.svg b/icons/solid/face-frown-open.svg new file mode 100644 index 0000000..7e8ae40 --- /dev/null +++ b/icons/solid/face-frown-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-frown.svg b/icons/solid/face-frown.svg new file mode 100644 index 0000000..04e2e60 --- /dev/null +++ b/icons/solid/face-frown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grimace.svg b/icons/solid/face-grimace.svg new file mode 100644 index 0000000..667bd56 --- /dev/null +++ b/icons/solid/face-grimace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-beam-sweat.svg b/icons/solid/face-grin-beam-sweat.svg new file mode 100644 index 0000000..fca1a47 --- /dev/null +++ b/icons/solid/face-grin-beam-sweat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-beam.svg b/icons/solid/face-grin-beam.svg new file mode 100644 index 0000000..8e0f1ac --- /dev/null +++ b/icons/solid/face-grin-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-hearts.svg b/icons/solid/face-grin-hearts.svg new file mode 100644 index 0000000..04190da --- /dev/null +++ b/icons/solid/face-grin-hearts.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-squint-tears.svg b/icons/solid/face-grin-squint-tears.svg new file mode 100644 index 0000000..b8a0452 --- /dev/null +++ b/icons/solid/face-grin-squint-tears.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-squint.svg b/icons/solid/face-grin-squint.svg new file mode 100644 index 0000000..6157237 --- /dev/null +++ b/icons/solid/face-grin-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-stars.svg b/icons/solid/face-grin-stars.svg new file mode 100644 index 0000000..54d5623 --- /dev/null +++ b/icons/solid/face-grin-stars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-tears.svg b/icons/solid/face-grin-tears.svg new file mode 100644 index 0000000..54c7e78 --- /dev/null +++ b/icons/solid/face-grin-tears.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-tongue-squint.svg b/icons/solid/face-grin-tongue-squint.svg new file mode 100644 index 0000000..d790865 --- /dev/null +++ b/icons/solid/face-grin-tongue-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-tongue-wink.svg b/icons/solid/face-grin-tongue-wink.svg new file mode 100644 index 0000000..71c5154 --- /dev/null +++ b/icons/solid/face-grin-tongue-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-tongue.svg b/icons/solid/face-grin-tongue.svg new file mode 100644 index 0000000..b92c34a --- /dev/null +++ b/icons/solid/face-grin-tongue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-wide.svg b/icons/solid/face-grin-wide.svg new file mode 100644 index 0000000..e4a78dc --- /dev/null +++ b/icons/solid/face-grin-wide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin-wink.svg b/icons/solid/face-grin-wink.svg new file mode 100644 index 0000000..6d4bca1 --- /dev/null +++ b/icons/solid/face-grin-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-grin.svg b/icons/solid/face-grin.svg new file mode 100644 index 0000000..0664e23 --- /dev/null +++ b/icons/solid/face-grin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-kiss-beam.svg b/icons/solid/face-kiss-beam.svg new file mode 100644 index 0000000..1307817 --- /dev/null +++ b/icons/solid/face-kiss-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-kiss-wink-heart.svg b/icons/solid/face-kiss-wink-heart.svg new file mode 100644 index 0000000..50312e1 --- /dev/null +++ b/icons/solid/face-kiss-wink-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-kiss.svg b/icons/solid/face-kiss.svg new file mode 100644 index 0000000..3c01bb8 --- /dev/null +++ b/icons/solid/face-kiss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-laugh-beam.svg b/icons/solid/face-laugh-beam.svg new file mode 100644 index 0000000..6220ee1 --- /dev/null +++ b/icons/solid/face-laugh-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-laugh-squint.svg b/icons/solid/face-laugh-squint.svg new file mode 100644 index 0000000..a4e2ddf --- /dev/null +++ b/icons/solid/face-laugh-squint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-laugh-wink.svg b/icons/solid/face-laugh-wink.svg new file mode 100644 index 0000000..3b0ced9 --- /dev/null +++ b/icons/solid/face-laugh-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-laugh.svg b/icons/solid/face-laugh.svg new file mode 100644 index 0000000..0af98ef --- /dev/null +++ b/icons/solid/face-laugh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-meh-blank.svg b/icons/solid/face-meh-blank.svg new file mode 100644 index 0000000..c31c768 --- /dev/null +++ b/icons/solid/face-meh-blank.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-meh.svg b/icons/solid/face-meh.svg new file mode 100644 index 0000000..c3b6f97 --- /dev/null +++ b/icons/solid/face-meh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-rolling-eyes.svg b/icons/solid/face-rolling-eyes.svg new file mode 100644 index 0000000..6c5bfb4 --- /dev/null +++ b/icons/solid/face-rolling-eyes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-sad-cry.svg b/icons/solid/face-sad-cry.svg new file mode 100644 index 0000000..cd145ce --- /dev/null +++ b/icons/solid/face-sad-cry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-sad-tear.svg b/icons/solid/face-sad-tear.svg new file mode 100644 index 0000000..25b8601 --- /dev/null +++ b/icons/solid/face-sad-tear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-smile-beam.svg b/icons/solid/face-smile-beam.svg new file mode 100644 index 0000000..87808f5 --- /dev/null +++ b/icons/solid/face-smile-beam.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-smile-wink.svg b/icons/solid/face-smile-wink.svg new file mode 100644 index 0000000..8fc6565 --- /dev/null +++ b/icons/solid/face-smile-wink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-smile.svg b/icons/solid/face-smile.svg new file mode 100644 index 0000000..4fd927a --- /dev/null +++ b/icons/solid/face-smile.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-surprise.svg b/icons/solid/face-surprise.svg new file mode 100644 index 0000000..a6cd459 --- /dev/null +++ b/icons/solid/face-surprise.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/face-tired.svg b/icons/solid/face-tired.svg new file mode 100644 index 0000000..58a8dc7 --- /dev/null +++ b/icons/solid/face-tired.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fan.svg b/icons/solid/fan.svg new file mode 100644 index 0000000..32ca3e8 --- /dev/null +++ b/icons/solid/fan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/faucet-drip.svg b/icons/solid/faucet-drip.svg new file mode 100644 index 0000000..5d668b3 --- /dev/null +++ b/icons/solid/faucet-drip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/faucet.svg b/icons/solid/faucet.svg new file mode 100644 index 0000000..1c55d6e --- /dev/null +++ b/icons/solid/faucet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fax.svg b/icons/solid/fax.svg new file mode 100644 index 0000000..4957c0a --- /dev/null +++ b/icons/solid/fax.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/feather-pointed.svg b/icons/solid/feather-pointed.svg new file mode 100644 index 0000000..f6bdb9a --- /dev/null +++ b/icons/solid/feather-pointed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/feather.svg b/icons/solid/feather.svg new file mode 100644 index 0000000..25166db --- /dev/null +++ b/icons/solid/feather.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ferry.svg b/icons/solid/ferry.svg new file mode 100644 index 0000000..d4d0680 --- /dev/null +++ b/icons/solid/ferry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-arrow-down.svg b/icons/solid/file-arrow-down.svg new file mode 100644 index 0000000..b4e3f7c --- /dev/null +++ b/icons/solid/file-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-arrow-up.svg b/icons/solid/file-arrow-up.svg new file mode 100644 index 0000000..e222637 --- /dev/null +++ b/icons/solid/file-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-audio.svg b/icons/solid/file-audio.svg new file mode 100644 index 0000000..3c1ace5 --- /dev/null +++ b/icons/solid/file-audio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-check.svg b/icons/solid/file-circle-check.svg new file mode 100644 index 0000000..e0eebd0 --- /dev/null +++ b/icons/solid/file-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-exclamation.svg b/icons/solid/file-circle-exclamation.svg new file mode 100644 index 0000000..4dba725 --- /dev/null +++ b/icons/solid/file-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-minus.svg b/icons/solid/file-circle-minus.svg new file mode 100644 index 0000000..f6f4f16 --- /dev/null +++ b/icons/solid/file-circle-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-plus.svg b/icons/solid/file-circle-plus.svg new file mode 100644 index 0000000..32ebca6 --- /dev/null +++ b/icons/solid/file-circle-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-question.svg b/icons/solid/file-circle-question.svg new file mode 100644 index 0000000..7b985c2 --- /dev/null +++ b/icons/solid/file-circle-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-circle-xmark.svg b/icons/solid/file-circle-xmark.svg new file mode 100644 index 0000000..47c8818 --- /dev/null +++ b/icons/solid/file-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-code.svg b/icons/solid/file-code.svg new file mode 100644 index 0000000..f8c5e92 --- /dev/null +++ b/icons/solid/file-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-contract.svg b/icons/solid/file-contract.svg new file mode 100644 index 0000000..4116a91 --- /dev/null +++ b/icons/solid/file-contract.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-csv.svg b/icons/solid/file-csv.svg new file mode 100644 index 0000000..8f1c21d --- /dev/null +++ b/icons/solid/file-csv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-excel.svg b/icons/solid/file-excel.svg new file mode 100644 index 0000000..4eb1424 --- /dev/null +++ b/icons/solid/file-excel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-export.svg b/icons/solid/file-export.svg new file mode 100644 index 0000000..b774dcc --- /dev/null +++ b/icons/solid/file-export.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-image.svg b/icons/solid/file-image.svg new file mode 100644 index 0000000..13dce36 --- /dev/null +++ b/icons/solid/file-image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-import.svg b/icons/solid/file-import.svg new file mode 100644 index 0000000..a647286 --- /dev/null +++ b/icons/solid/file-import.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-invoice-dollar.svg b/icons/solid/file-invoice-dollar.svg new file mode 100644 index 0000000..0dbc43a --- /dev/null +++ b/icons/solid/file-invoice-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-invoice.svg b/icons/solid/file-invoice.svg new file mode 100644 index 0000000..1f7bafe --- /dev/null +++ b/icons/solid/file-invoice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-lines.svg b/icons/solid/file-lines.svg new file mode 100644 index 0000000..7094890 --- /dev/null +++ b/icons/solid/file-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-medical.svg b/icons/solid/file-medical.svg new file mode 100644 index 0000000..3644328 --- /dev/null +++ b/icons/solid/file-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-pdf.svg b/icons/solid/file-pdf.svg new file mode 100644 index 0000000..4a7c720 --- /dev/null +++ b/icons/solid/file-pdf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-pen.svg b/icons/solid/file-pen.svg new file mode 100644 index 0000000..ea9d246 --- /dev/null +++ b/icons/solid/file-pen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-powerpoint.svg b/icons/solid/file-powerpoint.svg new file mode 100644 index 0000000..3c7e0eb --- /dev/null +++ b/icons/solid/file-powerpoint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-prescription.svg b/icons/solid/file-prescription.svg new file mode 100644 index 0000000..4448955 --- /dev/null +++ b/icons/solid/file-prescription.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-shield.svg b/icons/solid/file-shield.svg new file mode 100644 index 0000000..06d9a12 --- /dev/null +++ b/icons/solid/file-shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-signature.svg b/icons/solid/file-signature.svg new file mode 100644 index 0000000..c88ffc6 --- /dev/null +++ b/icons/solid/file-signature.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-video.svg b/icons/solid/file-video.svg new file mode 100644 index 0000000..3897291 --- /dev/null +++ b/icons/solid/file-video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-waveform.svg b/icons/solid/file-waveform.svg new file mode 100644 index 0000000..3f51f6d --- /dev/null +++ b/icons/solid/file-waveform.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-word.svg b/icons/solid/file-word.svg new file mode 100644 index 0000000..07d0263 --- /dev/null +++ b/icons/solid/file-word.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file-zipper.svg b/icons/solid/file-zipper.svg new file mode 100644 index 0000000..d2b7370 --- /dev/null +++ b/icons/solid/file-zipper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/file.svg b/icons/solid/file.svg new file mode 100644 index 0000000..639c35e --- /dev/null +++ b/icons/solid/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fill-drip.svg b/icons/solid/fill-drip.svg new file mode 100644 index 0000000..9753d9f --- /dev/null +++ b/icons/solid/fill-drip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fill.svg b/icons/solid/fill.svg new file mode 100644 index 0000000..8970a5e --- /dev/null +++ b/icons/solid/fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/film.svg b/icons/solid/film.svg new file mode 100644 index 0000000..21a5c3b --- /dev/null +++ b/icons/solid/film.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/filter-circle-dollar.svg b/icons/solid/filter-circle-dollar.svg new file mode 100644 index 0000000..bf12ada --- /dev/null +++ b/icons/solid/filter-circle-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/filter-circle-xmark.svg b/icons/solid/filter-circle-xmark.svg new file mode 100644 index 0000000..b1f4308 --- /dev/null +++ b/icons/solid/filter-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/filter.svg b/icons/solid/filter.svg new file mode 100644 index 0000000..e6268df --- /dev/null +++ b/icons/solid/filter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fingerprint.svg b/icons/solid/fingerprint.svg new file mode 100644 index 0000000..3fa3b4d --- /dev/null +++ b/icons/solid/fingerprint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fire-burner.svg b/icons/solid/fire-burner.svg new file mode 100644 index 0000000..45026ff --- /dev/null +++ b/icons/solid/fire-burner.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fire-extinguisher.svg b/icons/solid/fire-extinguisher.svg new file mode 100644 index 0000000..e13adad --- /dev/null +++ b/icons/solid/fire-extinguisher.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fire-flame-curved.svg b/icons/solid/fire-flame-curved.svg new file mode 100644 index 0000000..7a04809 --- /dev/null +++ b/icons/solid/fire-flame-curved.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fire-flame-simple.svg b/icons/solid/fire-flame-simple.svg new file mode 100644 index 0000000..e566152 --- /dev/null +++ b/icons/solid/fire-flame-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fire.svg b/icons/solid/fire.svg new file mode 100644 index 0000000..34cb1b1 --- /dev/null +++ b/icons/solid/fire.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fish-fins.svg b/icons/solid/fish-fins.svg new file mode 100644 index 0000000..108772d --- /dev/null +++ b/icons/solid/fish-fins.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/fish.svg b/icons/solid/fish.svg new file mode 100644 index 0000000..602e3a1 --- /dev/null +++ b/icons/solid/fish.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/flag-checkered.svg b/icons/solid/flag-checkered.svg new file mode 100644 index 0000000..ab5bbf2 --- /dev/null +++ b/icons/solid/flag-checkered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/flag-usa.svg b/icons/solid/flag-usa.svg new file mode 100644 index 0000000..40d2bfb --- /dev/null +++ b/icons/solid/flag-usa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/flag.svg b/icons/solid/flag.svg new file mode 100644 index 0000000..a4007fc --- /dev/null +++ b/icons/solid/flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/flask-vial.svg b/icons/solid/flask-vial.svg new file mode 100644 index 0000000..18e6f22 --- /dev/null +++ b/icons/solid/flask-vial.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/flask.svg b/icons/solid/flask.svg new file mode 100644 index 0000000..2ab27ef --- /dev/null +++ b/icons/solid/flask.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/floppy-disk.svg b/icons/solid/floppy-disk.svg new file mode 100644 index 0000000..f4dc8a2 --- /dev/null +++ b/icons/solid/floppy-disk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/florin-sign.svg b/icons/solid/florin-sign.svg new file mode 100644 index 0000000..8652388 --- /dev/null +++ b/icons/solid/florin-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder-closed.svg b/icons/solid/folder-closed.svg new file mode 100644 index 0000000..46ab154 --- /dev/null +++ b/icons/solid/folder-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder-minus.svg b/icons/solid/folder-minus.svg new file mode 100644 index 0000000..4d2c729 --- /dev/null +++ b/icons/solid/folder-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder-open.svg b/icons/solid/folder-open.svg new file mode 100644 index 0000000..75098ad --- /dev/null +++ b/icons/solid/folder-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder-plus.svg b/icons/solid/folder-plus.svg new file mode 100644 index 0000000..eb575a7 --- /dev/null +++ b/icons/solid/folder-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder-tree.svg b/icons/solid/folder-tree.svg new file mode 100644 index 0000000..c710c12 --- /dev/null +++ b/icons/solid/folder-tree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/folder.svg b/icons/solid/folder.svg new file mode 100644 index 0000000..22b3151 --- /dev/null +++ b/icons/solid/folder.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/font-awesome.svg b/icons/solid/font-awesome.svg new file mode 100644 index 0000000..dddfe12 --- /dev/null +++ b/icons/solid/font-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/font.svg b/icons/solid/font.svg new file mode 100644 index 0000000..06f6716 --- /dev/null +++ b/icons/solid/font.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/football.svg b/icons/solid/football.svg new file mode 100644 index 0000000..aefcec8 --- /dev/null +++ b/icons/solid/football.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/forward-fast.svg b/icons/solid/forward-fast.svg new file mode 100644 index 0000000..c9e5151 --- /dev/null +++ b/icons/solid/forward-fast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/forward-step.svg b/icons/solid/forward-step.svg new file mode 100644 index 0000000..d4d70c2 --- /dev/null +++ b/icons/solid/forward-step.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/forward.svg b/icons/solid/forward.svg new file mode 100644 index 0000000..68730b5 --- /dev/null +++ b/icons/solid/forward.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/franc-sign.svg b/icons/solid/franc-sign.svg new file mode 100644 index 0000000..f0cd613 --- /dev/null +++ b/icons/solid/franc-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/frog.svg b/icons/solid/frog.svg new file mode 100644 index 0000000..22b1a0d --- /dev/null +++ b/icons/solid/frog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/futbol.svg b/icons/solid/futbol.svg new file mode 100644 index 0000000..52e38b3 --- /dev/null +++ b/icons/solid/futbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/g.svg b/icons/solid/g.svg new file mode 100644 index 0000000..4085938 --- /dev/null +++ b/icons/solid/g.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gamepad.svg b/icons/solid/gamepad.svg new file mode 100644 index 0000000..a38be48 --- /dev/null +++ b/icons/solid/gamepad.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gas-pump.svg b/icons/solid/gas-pump.svg new file mode 100644 index 0000000..0d52687 --- /dev/null +++ b/icons/solid/gas-pump.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gauge-high.svg b/icons/solid/gauge-high.svg new file mode 100644 index 0000000..be9afd4 --- /dev/null +++ b/icons/solid/gauge-high.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gauge-simple-high.svg b/icons/solid/gauge-simple-high.svg new file mode 100644 index 0000000..0911339 --- /dev/null +++ b/icons/solid/gauge-simple-high.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gauge-simple.svg b/icons/solid/gauge-simple.svg new file mode 100644 index 0000000..74e2b28 --- /dev/null +++ b/icons/solid/gauge-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gauge.svg b/icons/solid/gauge.svg new file mode 100644 index 0000000..bf9f851 --- /dev/null +++ b/icons/solid/gauge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gavel.svg b/icons/solid/gavel.svg new file mode 100644 index 0000000..61a4245 --- /dev/null +++ b/icons/solid/gavel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gear.svg b/icons/solid/gear.svg new file mode 100644 index 0000000..e934f9b --- /dev/null +++ b/icons/solid/gear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gears.svg b/icons/solid/gears.svg new file mode 100644 index 0000000..d17bf01 --- /dev/null +++ b/icons/solid/gears.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gem.svg b/icons/solid/gem.svg new file mode 100644 index 0000000..ec62b85 --- /dev/null +++ b/icons/solid/gem.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/genderless.svg b/icons/solid/genderless.svg new file mode 100644 index 0000000..de306e3 --- /dev/null +++ b/icons/solid/genderless.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ghost.svg b/icons/solid/ghost.svg new file mode 100644 index 0000000..162a9eb --- /dev/null +++ b/icons/solid/ghost.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gift.svg b/icons/solid/gift.svg new file mode 100644 index 0000000..3795f31 --- /dev/null +++ b/icons/solid/gift.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gifts.svg b/icons/solid/gifts.svg new file mode 100644 index 0000000..0d8daa2 --- /dev/null +++ b/icons/solid/gifts.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/glass-water-droplet.svg b/icons/solid/glass-water-droplet.svg new file mode 100644 index 0000000..2229425 --- /dev/null +++ b/icons/solid/glass-water-droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/glass-water.svg b/icons/solid/glass-water.svg new file mode 100644 index 0000000..c8093d9 --- /dev/null +++ b/icons/solid/glass-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/glasses.svg b/icons/solid/glasses.svg new file mode 100644 index 0000000..c7c7b62 --- /dev/null +++ b/icons/solid/glasses.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/globe.svg b/icons/solid/globe.svg new file mode 100644 index 0000000..c4f9553 --- /dev/null +++ b/icons/solid/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/golf-ball-tee.svg b/icons/solid/golf-ball-tee.svg new file mode 100644 index 0000000..6cd36ec --- /dev/null +++ b/icons/solid/golf-ball-tee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gopuram.svg b/icons/solid/gopuram.svg new file mode 100644 index 0000000..321f503 --- /dev/null +++ b/icons/solid/gopuram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/graduation-cap.svg b/icons/solid/graduation-cap.svg new file mode 100644 index 0000000..ce66110 --- /dev/null +++ b/icons/solid/graduation-cap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/greater-than-equal.svg b/icons/solid/greater-than-equal.svg new file mode 100644 index 0000000..1aa35f8 --- /dev/null +++ b/icons/solid/greater-than-equal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/greater-than.svg b/icons/solid/greater-than.svg new file mode 100644 index 0000000..0826909 --- /dev/null +++ b/icons/solid/greater-than.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/grip-lines-vertical.svg b/icons/solid/grip-lines-vertical.svg new file mode 100644 index 0000000..49b292a --- /dev/null +++ b/icons/solid/grip-lines-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/grip-lines.svg b/icons/solid/grip-lines.svg new file mode 100644 index 0000000..b7c4a88 --- /dev/null +++ b/icons/solid/grip-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/grip-vertical.svg b/icons/solid/grip-vertical.svg new file mode 100644 index 0000000..9cd74d5 --- /dev/null +++ b/icons/solid/grip-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/grip.svg b/icons/solid/grip.svg new file mode 100644 index 0000000..7922f24 --- /dev/null +++ b/icons/solid/grip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/group-arrows-rotate.svg b/icons/solid/group-arrows-rotate.svg new file mode 100644 index 0000000..143c101 --- /dev/null +++ b/icons/solid/group-arrows-rotate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/guarani-sign.svg b/icons/solid/guarani-sign.svg new file mode 100644 index 0000000..8d92ef6 --- /dev/null +++ b/icons/solid/guarani-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/guitar.svg b/icons/solid/guitar.svg new file mode 100644 index 0000000..ae637ca --- /dev/null +++ b/icons/solid/guitar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/gun.svg b/icons/solid/gun.svg new file mode 100644 index 0000000..be4117b --- /dev/null +++ b/icons/solid/gun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/h.svg b/icons/solid/h.svg new file mode 100644 index 0000000..b679cc6 --- /dev/null +++ b/icons/solid/h.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hammer.svg b/icons/solid/hammer.svg new file mode 100644 index 0000000..7c9ee4b --- /dev/null +++ b/icons/solid/hammer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hamsa.svg b/icons/solid/hamsa.svg new file mode 100644 index 0000000..9ac2b3f --- /dev/null +++ b/icons/solid/hamsa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-back-fist.svg b/icons/solid/hand-back-fist.svg new file mode 100644 index 0000000..b97b924 --- /dev/null +++ b/icons/solid/hand-back-fist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-dots.svg b/icons/solid/hand-dots.svg new file mode 100644 index 0000000..081afd9 --- /dev/null +++ b/icons/solid/hand-dots.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-fist.svg b/icons/solid/hand-fist.svg new file mode 100644 index 0000000..c62f865 --- /dev/null +++ b/icons/solid/hand-fist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding-dollar.svg b/icons/solid/hand-holding-dollar.svg new file mode 100644 index 0000000..82c906c --- /dev/null +++ b/icons/solid/hand-holding-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding-droplet.svg b/icons/solid/hand-holding-droplet.svg new file mode 100644 index 0000000..393217e --- /dev/null +++ b/icons/solid/hand-holding-droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding-hand.svg b/icons/solid/hand-holding-hand.svg new file mode 100644 index 0000000..57a6b3f --- /dev/null +++ b/icons/solid/hand-holding-hand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding-heart.svg b/icons/solid/hand-holding-heart.svg new file mode 100644 index 0000000..8a9130c --- /dev/null +++ b/icons/solid/hand-holding-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding-medical.svg b/icons/solid/hand-holding-medical.svg new file mode 100644 index 0000000..ca36d76 --- /dev/null +++ b/icons/solid/hand-holding-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-holding.svg b/icons/solid/hand-holding.svg new file mode 100644 index 0000000..8f37d4e --- /dev/null +++ b/icons/solid/hand-holding.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-lizard.svg b/icons/solid/hand-lizard.svg new file mode 100644 index 0000000..a558619 --- /dev/null +++ b/icons/solid/hand-lizard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-middle-finger.svg b/icons/solid/hand-middle-finger.svg new file mode 100644 index 0000000..6b3c4a9 --- /dev/null +++ b/icons/solid/hand-middle-finger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-peace.svg b/icons/solid/hand-peace.svg new file mode 100644 index 0000000..0590994 --- /dev/null +++ b/icons/solid/hand-peace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-point-down.svg b/icons/solid/hand-point-down.svg new file mode 100644 index 0000000..0119aa4 --- /dev/null +++ b/icons/solid/hand-point-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-point-left.svg b/icons/solid/hand-point-left.svg new file mode 100644 index 0000000..a79e3d1 --- /dev/null +++ b/icons/solid/hand-point-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-point-right.svg b/icons/solid/hand-point-right.svg new file mode 100644 index 0000000..0bf2e29 --- /dev/null +++ b/icons/solid/hand-point-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-point-up.svg b/icons/solid/hand-point-up.svg new file mode 100644 index 0000000..3973d16 --- /dev/null +++ b/icons/solid/hand-point-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-pointer.svg b/icons/solid/hand-pointer.svg new file mode 100644 index 0000000..ad1bccf --- /dev/null +++ b/icons/solid/hand-pointer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-scissors.svg b/icons/solid/hand-scissors.svg new file mode 100644 index 0000000..6794d15 --- /dev/null +++ b/icons/solid/hand-scissors.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-sparkles.svg b/icons/solid/hand-sparkles.svg new file mode 100644 index 0000000..ee56bee --- /dev/null +++ b/icons/solid/hand-sparkles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand-spock.svg b/icons/solid/hand-spock.svg new file mode 100644 index 0000000..2b57ba9 --- /dev/null +++ b/icons/solid/hand-spock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hand.svg b/icons/solid/hand.svg new file mode 100644 index 0000000..58f780c --- /dev/null +++ b/icons/solid/hand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handcuffs.svg b/icons/solid/handcuffs.svg new file mode 100644 index 0000000..5baeb50 --- /dev/null +++ b/icons/solid/handcuffs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-asl-interpreting.svg b/icons/solid/hands-asl-interpreting.svg new file mode 100644 index 0000000..c043a52 --- /dev/null +++ b/icons/solid/hands-asl-interpreting.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-bound.svg b/icons/solid/hands-bound.svg new file mode 100644 index 0000000..9d0895a --- /dev/null +++ b/icons/solid/hands-bound.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-bubbles.svg b/icons/solid/hands-bubbles.svg new file mode 100644 index 0000000..503cc5e --- /dev/null +++ b/icons/solid/hands-bubbles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-clapping.svg b/icons/solid/hands-clapping.svg new file mode 100644 index 0000000..2eb89eb --- /dev/null +++ b/icons/solid/hands-clapping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-holding-child.svg b/icons/solid/hands-holding-child.svg new file mode 100644 index 0000000..b7f333f --- /dev/null +++ b/icons/solid/hands-holding-child.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-holding-circle.svg b/icons/solid/hands-holding-circle.svg new file mode 100644 index 0000000..be95290 --- /dev/null +++ b/icons/solid/hands-holding-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-holding.svg b/icons/solid/hands-holding.svg new file mode 100644 index 0000000..06e71ee --- /dev/null +++ b/icons/solid/hands-holding.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands-praying.svg b/icons/solid/hands-praying.svg new file mode 100644 index 0000000..21d9f78 --- /dev/null +++ b/icons/solid/hands-praying.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hands.svg b/icons/solid/hands.svg new file mode 100644 index 0000000..945a3d6 --- /dev/null +++ b/icons/solid/hands.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handshake-angle.svg b/icons/solid/handshake-angle.svg new file mode 100644 index 0000000..10e995b --- /dev/null +++ b/icons/solid/handshake-angle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handshake-simple-slash.svg b/icons/solid/handshake-simple-slash.svg new file mode 100644 index 0000000..d25a87f --- /dev/null +++ b/icons/solid/handshake-simple-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handshake-simple.svg b/icons/solid/handshake-simple.svg new file mode 100644 index 0000000..1c3e36b --- /dev/null +++ b/icons/solid/handshake-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handshake-slash.svg b/icons/solid/handshake-slash.svg new file mode 100644 index 0000000..297f793 --- /dev/null +++ b/icons/solid/handshake-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/handshake.svg b/icons/solid/handshake.svg new file mode 100644 index 0000000..9f70dc6 --- /dev/null +++ b/icons/solid/handshake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hanukiah.svg b/icons/solid/hanukiah.svg new file mode 100644 index 0000000..d6c5473 --- /dev/null +++ b/icons/solid/hanukiah.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hard-drive.svg b/icons/solid/hard-drive.svg new file mode 100644 index 0000000..317a4a4 --- /dev/null +++ b/icons/solid/hard-drive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hashtag.svg b/icons/solid/hashtag.svg new file mode 100644 index 0000000..78f0764 --- /dev/null +++ b/icons/solid/hashtag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hat-cowboy-side.svg b/icons/solid/hat-cowboy-side.svg new file mode 100644 index 0000000..647def5 --- /dev/null +++ b/icons/solid/hat-cowboy-side.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hat-cowboy.svg b/icons/solid/hat-cowboy.svg new file mode 100644 index 0000000..c9a316e --- /dev/null +++ b/icons/solid/hat-cowboy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hat-wizard.svg b/icons/solid/hat-wizard.svg new file mode 100644 index 0000000..7116677 --- /dev/null +++ b/icons/solid/hat-wizard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/head-side-cough-slash.svg b/icons/solid/head-side-cough-slash.svg new file mode 100644 index 0000000..414e2b5 --- /dev/null +++ b/icons/solid/head-side-cough-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/head-side-cough.svg b/icons/solid/head-side-cough.svg new file mode 100644 index 0000000..88d3861 --- /dev/null +++ b/icons/solid/head-side-cough.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/head-side-mask.svg b/icons/solid/head-side-mask.svg new file mode 100644 index 0000000..570538a --- /dev/null +++ b/icons/solid/head-side-mask.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/head-side-virus.svg b/icons/solid/head-side-virus.svg new file mode 100644 index 0000000..719b1e7 --- /dev/null +++ b/icons/solid/head-side-virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heading.svg b/icons/solid/heading.svg new file mode 100644 index 0000000..3708a21 --- /dev/null +++ b/icons/solid/heading.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/headphones-simple.svg b/icons/solid/headphones-simple.svg new file mode 100644 index 0000000..52580d8 --- /dev/null +++ b/icons/solid/headphones-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/headphones.svg b/icons/solid/headphones.svg new file mode 100644 index 0000000..41a4102 --- /dev/null +++ b/icons/solid/headphones.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/headset.svg b/icons/solid/headset.svg new file mode 100644 index 0000000..5c77934 --- /dev/null +++ b/icons/solid/headset.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-bolt.svg b/icons/solid/heart-circle-bolt.svg new file mode 100644 index 0000000..861e9f1 --- /dev/null +++ b/icons/solid/heart-circle-bolt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-check.svg b/icons/solid/heart-circle-check.svg new file mode 100644 index 0000000..f28076b --- /dev/null +++ b/icons/solid/heart-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-exclamation.svg b/icons/solid/heart-circle-exclamation.svg new file mode 100644 index 0000000..d6f2be7 --- /dev/null +++ b/icons/solid/heart-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-minus.svg b/icons/solid/heart-circle-minus.svg new file mode 100644 index 0000000..e96dff9 --- /dev/null +++ b/icons/solid/heart-circle-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-plus.svg b/icons/solid/heart-circle-plus.svg new file mode 100644 index 0000000..ec428e2 --- /dev/null +++ b/icons/solid/heart-circle-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-circle-xmark.svg b/icons/solid/heart-circle-xmark.svg new file mode 100644 index 0000000..2585106 --- /dev/null +++ b/icons/solid/heart-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-crack.svg b/icons/solid/heart-crack.svg new file mode 100644 index 0000000..ea89239 --- /dev/null +++ b/icons/solid/heart-crack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart-pulse.svg b/icons/solid/heart-pulse.svg new file mode 100644 index 0000000..0c30605 --- /dev/null +++ b/icons/solid/heart-pulse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/heart.svg b/icons/solid/heart.svg new file mode 100644 index 0000000..5d8c74e --- /dev/null +++ b/icons/solid/heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/helicopter-symbol.svg b/icons/solid/helicopter-symbol.svg new file mode 100644 index 0000000..4a2df1d --- /dev/null +++ b/icons/solid/helicopter-symbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/helicopter.svg b/icons/solid/helicopter.svg new file mode 100644 index 0000000..f738714 --- /dev/null +++ b/icons/solid/helicopter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/helmet-safety.svg b/icons/solid/helmet-safety.svg new file mode 100644 index 0000000..989bc9d --- /dev/null +++ b/icons/solid/helmet-safety.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/helmet-un.svg b/icons/solid/helmet-un.svg new file mode 100644 index 0000000..56768d5 --- /dev/null +++ b/icons/solid/helmet-un.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/highlighter.svg b/icons/solid/highlighter.svg new file mode 100644 index 0000000..66fead8 --- /dev/null +++ b/icons/solid/highlighter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hill-avalanche.svg b/icons/solid/hill-avalanche.svg new file mode 100644 index 0000000..a90574d --- /dev/null +++ b/icons/solid/hill-avalanche.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hill-rockslide.svg b/icons/solid/hill-rockslide.svg new file mode 100644 index 0000000..0f01d64 --- /dev/null +++ b/icons/solid/hill-rockslide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hippo.svg b/icons/solid/hippo.svg new file mode 100644 index 0000000..540e41d --- /dev/null +++ b/icons/solid/hippo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hockey-puck.svg b/icons/solid/hockey-puck.svg new file mode 100644 index 0000000..b9fce80 --- /dev/null +++ b/icons/solid/hockey-puck.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/holly-berry.svg b/icons/solid/holly-berry.svg new file mode 100644 index 0000000..d9f8035 --- /dev/null +++ b/icons/solid/holly-berry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/horse-head.svg b/icons/solid/horse-head.svg new file mode 100644 index 0000000..cdab642 --- /dev/null +++ b/icons/solid/horse-head.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/horse.svg b/icons/solid/horse.svg new file mode 100644 index 0000000..60e5c11 --- /dev/null +++ b/icons/solid/horse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hospital-user.svg b/icons/solid/hospital-user.svg new file mode 100644 index 0000000..b2be623 --- /dev/null +++ b/icons/solid/hospital-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hospital.svg b/icons/solid/hospital.svg new file mode 100644 index 0000000..d937322 --- /dev/null +++ b/icons/solid/hospital.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hot-tub-person.svg b/icons/solid/hot-tub-person.svg new file mode 100644 index 0000000..0adde16 --- /dev/null +++ b/icons/solid/hot-tub-person.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hotdog.svg b/icons/solid/hotdog.svg new file mode 100644 index 0000000..a721786 --- /dev/null +++ b/icons/solid/hotdog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hotel.svg b/icons/solid/hotel.svg new file mode 100644 index 0000000..6b8d92e --- /dev/null +++ b/icons/solid/hotel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hourglass-end.svg b/icons/solid/hourglass-end.svg new file mode 100644 index 0000000..36c4a56 --- /dev/null +++ b/icons/solid/hourglass-end.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hourglass-half.svg b/icons/solid/hourglass-half.svg new file mode 100644 index 0000000..a6bdd54 --- /dev/null +++ b/icons/solid/hourglass-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hourglass-start.svg b/icons/solid/hourglass-start.svg new file mode 100644 index 0000000..92c79cf --- /dev/null +++ b/icons/solid/hourglass-start.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hourglass.svg b/icons/solid/hourglass.svg new file mode 100644 index 0000000..97e80ea --- /dev/null +++ b/icons/solid/hourglass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-chimney-crack.svg b/icons/solid/house-chimney-crack.svg new file mode 100644 index 0000000..d719a97 --- /dev/null +++ b/icons/solid/house-chimney-crack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-chimney-medical.svg b/icons/solid/house-chimney-medical.svg new file mode 100644 index 0000000..f3868bf --- /dev/null +++ b/icons/solid/house-chimney-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-chimney-user.svg b/icons/solid/house-chimney-user.svg new file mode 100644 index 0000000..05f8a42 --- /dev/null +++ b/icons/solid/house-chimney-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-chimney-window.svg b/icons/solid/house-chimney-window.svg new file mode 100644 index 0000000..ec9f323 --- /dev/null +++ b/icons/solid/house-chimney-window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-chimney.svg b/icons/solid/house-chimney.svg new file mode 100644 index 0000000..7d8d398 --- /dev/null +++ b/icons/solid/house-chimney.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-circle-check.svg b/icons/solid/house-circle-check.svg new file mode 100644 index 0000000..1c49a41 --- /dev/null +++ b/icons/solid/house-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-circle-exclamation.svg b/icons/solid/house-circle-exclamation.svg new file mode 100644 index 0000000..20dc018 --- /dev/null +++ b/icons/solid/house-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-circle-xmark.svg b/icons/solid/house-circle-xmark.svg new file mode 100644 index 0000000..afdedb4 --- /dev/null +++ b/icons/solid/house-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-crack.svg b/icons/solid/house-crack.svg new file mode 100644 index 0000000..3eee230 --- /dev/null +++ b/icons/solid/house-crack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-fire.svg b/icons/solid/house-fire.svg new file mode 100644 index 0000000..52bd082 --- /dev/null +++ b/icons/solid/house-fire.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-flag.svg b/icons/solid/house-flag.svg new file mode 100644 index 0000000..0ebebe3 --- /dev/null +++ b/icons/solid/house-flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-flood-water-circle-arrow-right.svg b/icons/solid/house-flood-water-circle-arrow-right.svg new file mode 100644 index 0000000..5201fe0 --- /dev/null +++ b/icons/solid/house-flood-water-circle-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-flood-water.svg b/icons/solid/house-flood-water.svg new file mode 100644 index 0000000..80253b9 --- /dev/null +++ b/icons/solid/house-flood-water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-laptop.svg b/icons/solid/house-laptop.svg new file mode 100644 index 0000000..376bc48 --- /dev/null +++ b/icons/solid/house-laptop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-lock.svg b/icons/solid/house-lock.svg new file mode 100644 index 0000000..5cfcc7a --- /dev/null +++ b/icons/solid/house-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-medical-circle-check.svg b/icons/solid/house-medical-circle-check.svg new file mode 100644 index 0000000..656f45a --- /dev/null +++ b/icons/solid/house-medical-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-medical-circle-exclamation.svg b/icons/solid/house-medical-circle-exclamation.svg new file mode 100644 index 0000000..ac8afd0 --- /dev/null +++ b/icons/solid/house-medical-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-medical-circle-xmark.svg b/icons/solid/house-medical-circle-xmark.svg new file mode 100644 index 0000000..0f0bd0f --- /dev/null +++ b/icons/solid/house-medical-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-medical-flag.svg b/icons/solid/house-medical-flag.svg new file mode 100644 index 0000000..3dd7711 --- /dev/null +++ b/icons/solid/house-medical-flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-medical.svg b/icons/solid/house-medical.svg new file mode 100644 index 0000000..9738b7f --- /dev/null +++ b/icons/solid/house-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-signal.svg b/icons/solid/house-signal.svg new file mode 100644 index 0000000..eb32dd6 --- /dev/null +++ b/icons/solid/house-signal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-tsunami.svg b/icons/solid/house-tsunami.svg new file mode 100644 index 0000000..6c33835 --- /dev/null +++ b/icons/solid/house-tsunami.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house-user.svg b/icons/solid/house-user.svg new file mode 100644 index 0000000..d9de6d6 --- /dev/null +++ b/icons/solid/house-user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/house.svg b/icons/solid/house.svg new file mode 100644 index 0000000..8ef8cf9 --- /dev/null +++ b/icons/solid/house.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hryvnia-sign.svg b/icons/solid/hryvnia-sign.svg new file mode 100644 index 0000000..2827564 --- /dev/null +++ b/icons/solid/hryvnia-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/hurricane.svg b/icons/solid/hurricane.svg new file mode 100644 index 0000000..53b486f --- /dev/null +++ b/icons/solid/hurricane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/i-cursor.svg b/icons/solid/i-cursor.svg new file mode 100644 index 0000000..01df255 --- /dev/null +++ b/icons/solid/i-cursor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/i.svg b/icons/solid/i.svg new file mode 100644 index 0000000..29cfe4a --- /dev/null +++ b/icons/solid/i.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ice-cream.svg b/icons/solid/ice-cream.svg new file mode 100644 index 0000000..7433af0 --- /dev/null +++ b/icons/solid/ice-cream.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/icicles.svg b/icons/solid/icicles.svg new file mode 100644 index 0000000..3e577cd --- /dev/null +++ b/icons/solid/icicles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/icons.svg b/icons/solid/icons.svg new file mode 100644 index 0000000..cd61720 --- /dev/null +++ b/icons/solid/icons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/id-badge.svg b/icons/solid/id-badge.svg new file mode 100644 index 0000000..0d1d648 --- /dev/null +++ b/icons/solid/id-badge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/id-card-clip.svg b/icons/solid/id-card-clip.svg new file mode 100644 index 0000000..e1f6f60 --- /dev/null +++ b/icons/solid/id-card-clip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/id-card.svg b/icons/solid/id-card.svg new file mode 100644 index 0000000..97e4f17 --- /dev/null +++ b/icons/solid/id-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/igloo.svg b/icons/solid/igloo.svg new file mode 100644 index 0000000..5cd5a64 --- /dev/null +++ b/icons/solid/igloo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/image-portrait.svg b/icons/solid/image-portrait.svg new file mode 100644 index 0000000..f8df9a2 --- /dev/null +++ b/icons/solid/image-portrait.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/image.svg b/icons/solid/image.svg new file mode 100644 index 0000000..4430e8c --- /dev/null +++ b/icons/solid/image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/images.svg b/icons/solid/images.svg new file mode 100644 index 0000000..8645b95 --- /dev/null +++ b/icons/solid/images.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/inbox.svg b/icons/solid/inbox.svg new file mode 100644 index 0000000..ecc3827 --- /dev/null +++ b/icons/solid/inbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/indent.svg b/icons/solid/indent.svg new file mode 100644 index 0000000..73a9513 --- /dev/null +++ b/icons/solid/indent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/indian-rupee-sign.svg b/icons/solid/indian-rupee-sign.svg new file mode 100644 index 0000000..e1d8334 --- /dev/null +++ b/icons/solid/indian-rupee-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/industry.svg b/icons/solid/industry.svg new file mode 100644 index 0000000..5cc93f6 --- /dev/null +++ b/icons/solid/industry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/infinity.svg b/icons/solid/infinity.svg new file mode 100644 index 0000000..687a99d --- /dev/null +++ b/icons/solid/infinity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/info.svg b/icons/solid/info.svg new file mode 100644 index 0000000..eeff40f --- /dev/null +++ b/icons/solid/info.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/italic.svg b/icons/solid/italic.svg new file mode 100644 index 0000000..b0fcd38 --- /dev/null +++ b/icons/solid/italic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/j.svg b/icons/solid/j.svg new file mode 100644 index 0000000..721b518 --- /dev/null +++ b/icons/solid/j.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jar-wheat.svg b/icons/solid/jar-wheat.svg new file mode 100644 index 0000000..7cda605 --- /dev/null +++ b/icons/solid/jar-wheat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jar.svg b/icons/solid/jar.svg new file mode 100644 index 0000000..5b8982a --- /dev/null +++ b/icons/solid/jar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jedi.svg b/icons/solid/jedi.svg new file mode 100644 index 0000000..c39fc9f --- /dev/null +++ b/icons/solid/jedi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jet-fighter-up.svg b/icons/solid/jet-fighter-up.svg new file mode 100644 index 0000000..3a97b05 --- /dev/null +++ b/icons/solid/jet-fighter-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jet-fighter.svg b/icons/solid/jet-fighter.svg new file mode 100644 index 0000000..bf7787b --- /dev/null +++ b/icons/solid/jet-fighter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/joint.svg b/icons/solid/joint.svg new file mode 100644 index 0000000..4e6752f --- /dev/null +++ b/icons/solid/joint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/jug-detergent.svg b/icons/solid/jug-detergent.svg new file mode 100644 index 0000000..bba5423 --- /dev/null +++ b/icons/solid/jug-detergent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/k.svg b/icons/solid/k.svg new file mode 100644 index 0000000..8d47ddb --- /dev/null +++ b/icons/solid/k.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/kaaba.svg b/icons/solid/kaaba.svg new file mode 100644 index 0000000..f4be7f5 --- /dev/null +++ b/icons/solid/kaaba.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/key.svg b/icons/solid/key.svg new file mode 100644 index 0000000..ba43008 --- /dev/null +++ b/icons/solid/key.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/keyboard.svg b/icons/solid/keyboard.svg new file mode 100644 index 0000000..a71e6a6 --- /dev/null +++ b/icons/solid/keyboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/khanda.svg b/icons/solid/khanda.svg new file mode 100644 index 0000000..b6b92bc --- /dev/null +++ b/icons/solid/khanda.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/kip-sign.svg b/icons/solid/kip-sign.svg new file mode 100644 index 0000000..06e3a94 --- /dev/null +++ b/icons/solid/kip-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/kit-medical.svg b/icons/solid/kit-medical.svg new file mode 100644 index 0000000..d3c8eb2 --- /dev/null +++ b/icons/solid/kit-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/kitchen-set.svg b/icons/solid/kitchen-set.svg new file mode 100644 index 0000000..5566bb9 --- /dev/null +++ b/icons/solid/kitchen-set.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/kiwi-bird.svg b/icons/solid/kiwi-bird.svg new file mode 100644 index 0000000..8903e3f --- /dev/null +++ b/icons/solid/kiwi-bird.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/l.svg b/icons/solid/l.svg new file mode 100644 index 0000000..9f1ee64 --- /dev/null +++ b/icons/solid/l.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/land-mine-on.svg b/icons/solid/land-mine-on.svg new file mode 100644 index 0000000..222383f --- /dev/null +++ b/icons/solid/land-mine-on.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/landmark-dome.svg b/icons/solid/landmark-dome.svg new file mode 100644 index 0000000..07ac6ea --- /dev/null +++ b/icons/solid/landmark-dome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/landmark-flag.svg b/icons/solid/landmark-flag.svg new file mode 100644 index 0000000..d243e7d --- /dev/null +++ b/icons/solid/landmark-flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/landmark.svg b/icons/solid/landmark.svg new file mode 100644 index 0000000..6abeb6f --- /dev/null +++ b/icons/solid/landmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/language.svg b/icons/solid/language.svg new file mode 100644 index 0000000..3e75284 --- /dev/null +++ b/icons/solid/language.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/laptop-code.svg b/icons/solid/laptop-code.svg new file mode 100644 index 0000000..9f61ad7 --- /dev/null +++ b/icons/solid/laptop-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/laptop-file.svg b/icons/solid/laptop-file.svg new file mode 100644 index 0000000..0961d1d --- /dev/null +++ b/icons/solid/laptop-file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/laptop-medical.svg b/icons/solid/laptop-medical.svg new file mode 100644 index 0000000..de138e4 --- /dev/null +++ b/icons/solid/laptop-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/laptop.svg b/icons/solid/laptop.svg new file mode 100644 index 0000000..362d3f3 --- /dev/null +++ b/icons/solid/laptop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lari-sign.svg b/icons/solid/lari-sign.svg new file mode 100644 index 0000000..dbf41aa --- /dev/null +++ b/icons/solid/lari-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/layer-group.svg b/icons/solid/layer-group.svg new file mode 100644 index 0000000..8147cfa --- /dev/null +++ b/icons/solid/layer-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/leaf.svg b/icons/solid/leaf.svg new file mode 100644 index 0000000..941c0aa --- /dev/null +++ b/icons/solid/leaf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/left-long.svg b/icons/solid/left-long.svg new file mode 100644 index 0000000..b6b1ff9 --- /dev/null +++ b/icons/solid/left-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/left-right.svg b/icons/solid/left-right.svg new file mode 100644 index 0000000..fcc6a10 --- /dev/null +++ b/icons/solid/left-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lemon.svg b/icons/solid/lemon.svg new file mode 100644 index 0000000..f13f348 --- /dev/null +++ b/icons/solid/lemon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/less-than-equal.svg b/icons/solid/less-than-equal.svg new file mode 100644 index 0000000..a9e6eff --- /dev/null +++ b/icons/solid/less-than-equal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/less-than.svg b/icons/solid/less-than.svg new file mode 100644 index 0000000..5756ad4 --- /dev/null +++ b/icons/solid/less-than.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/life-ring.svg b/icons/solid/life-ring.svg new file mode 100644 index 0000000..efbfae0 --- /dev/null +++ b/icons/solid/life-ring.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lightbulb.svg b/icons/solid/lightbulb.svg new file mode 100644 index 0000000..8e9ba90 --- /dev/null +++ b/icons/solid/lightbulb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lines-leaning.svg b/icons/solid/lines-leaning.svg new file mode 100644 index 0000000..7290735 --- /dev/null +++ b/icons/solid/lines-leaning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/link-slash.svg b/icons/solid/link-slash.svg new file mode 100644 index 0000000..3188543 --- /dev/null +++ b/icons/solid/link-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/link.svg b/icons/solid/link.svg new file mode 100644 index 0000000..c3f41bc --- /dev/null +++ b/icons/solid/link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lira-sign.svg b/icons/solid/lira-sign.svg new file mode 100644 index 0000000..ed13a1e --- /dev/null +++ b/icons/solid/lira-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/list-check.svg b/icons/solid/list-check.svg new file mode 100644 index 0000000..b49c39c --- /dev/null +++ b/icons/solid/list-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/list-ol.svg b/icons/solid/list-ol.svg new file mode 100644 index 0000000..8fd2769 --- /dev/null +++ b/icons/solid/list-ol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/list-ul.svg b/icons/solid/list-ul.svg new file mode 100644 index 0000000..f685152 --- /dev/null +++ b/icons/solid/list-ul.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/list.svg b/icons/solid/list.svg new file mode 100644 index 0000000..79e9cac --- /dev/null +++ b/icons/solid/list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/litecoin-sign.svg b/icons/solid/litecoin-sign.svg new file mode 100644 index 0000000..c4bc1c3 --- /dev/null +++ b/icons/solid/litecoin-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/location-arrow.svg b/icons/solid/location-arrow.svg new file mode 100644 index 0000000..86217ac --- /dev/null +++ b/icons/solid/location-arrow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/location-crosshairs.svg b/icons/solid/location-crosshairs.svg new file mode 100644 index 0000000..223321a --- /dev/null +++ b/icons/solid/location-crosshairs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/location-dot.svg b/icons/solid/location-dot.svg new file mode 100644 index 0000000..86279d9 --- /dev/null +++ b/icons/solid/location-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/location-pin-lock.svg b/icons/solid/location-pin-lock.svg new file mode 100644 index 0000000..d92d178 --- /dev/null +++ b/icons/solid/location-pin-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/location-pin.svg b/icons/solid/location-pin.svg new file mode 100644 index 0000000..5e6e033 --- /dev/null +++ b/icons/solid/location-pin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lock-open.svg b/icons/solid/lock-open.svg new file mode 100644 index 0000000..e19906c --- /dev/null +++ b/icons/solid/lock-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lock.svg b/icons/solid/lock.svg new file mode 100644 index 0000000..877c779 --- /dev/null +++ b/icons/solid/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/locust.svg b/icons/solid/locust.svg new file mode 100644 index 0000000..bdecee9 --- /dev/null +++ b/icons/solid/locust.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lungs-virus.svg b/icons/solid/lungs-virus.svg new file mode 100644 index 0000000..28654dd --- /dev/null +++ b/icons/solid/lungs-virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/lungs.svg b/icons/solid/lungs.svg new file mode 100644 index 0000000..f93785f --- /dev/null +++ b/icons/solid/lungs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/m.svg b/icons/solid/m.svg new file mode 100644 index 0000000..4877caf --- /dev/null +++ b/icons/solid/m.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnet.svg b/icons/solid/magnet.svg new file mode 100644 index 0000000..148734e --- /dev/null +++ b/icons/solid/magnet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-arrow-right.svg b/icons/solid/magnifying-glass-arrow-right.svg new file mode 100644 index 0000000..9aafcae --- /dev/null +++ b/icons/solid/magnifying-glass-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-chart.svg b/icons/solid/magnifying-glass-chart.svg new file mode 100644 index 0000000..1957da1 --- /dev/null +++ b/icons/solid/magnifying-glass-chart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-dollar.svg b/icons/solid/magnifying-glass-dollar.svg new file mode 100644 index 0000000..19a1fd5 --- /dev/null +++ b/icons/solid/magnifying-glass-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-location.svg b/icons/solid/magnifying-glass-location.svg new file mode 100644 index 0000000..15aacea --- /dev/null +++ b/icons/solid/magnifying-glass-location.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-minus.svg b/icons/solid/magnifying-glass-minus.svg new file mode 100644 index 0000000..1905980 --- /dev/null +++ b/icons/solid/magnifying-glass-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass-plus.svg b/icons/solid/magnifying-glass-plus.svg new file mode 100644 index 0000000..a74c1d3 --- /dev/null +++ b/icons/solid/magnifying-glass-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/magnifying-glass.svg b/icons/solid/magnifying-glass.svg new file mode 100644 index 0000000..8a401c2 --- /dev/null +++ b/icons/solid/magnifying-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/manat-sign.svg b/icons/solid/manat-sign.svg new file mode 100644 index 0000000..2654a89 --- /dev/null +++ b/icons/solid/manat-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/map-location-dot.svg b/icons/solid/map-location-dot.svg new file mode 100644 index 0000000..31d36cf --- /dev/null +++ b/icons/solid/map-location-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/map-location.svg b/icons/solid/map-location.svg new file mode 100644 index 0000000..83bc8c2 --- /dev/null +++ b/icons/solid/map-location.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/map-pin.svg b/icons/solid/map-pin.svg new file mode 100644 index 0000000..b1fdaec --- /dev/null +++ b/icons/solid/map-pin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/map.svg b/icons/solid/map.svg new file mode 100644 index 0000000..3e17d10 --- /dev/null +++ b/icons/solid/map.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/marker.svg b/icons/solid/marker.svg new file mode 100644 index 0000000..6ce7652 --- /dev/null +++ b/icons/solid/marker.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-and-venus-burst.svg b/icons/solid/mars-and-venus-burst.svg new file mode 100644 index 0000000..eb6ee7a --- /dev/null +++ b/icons/solid/mars-and-venus-burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-and-venus.svg b/icons/solid/mars-and-venus.svg new file mode 100644 index 0000000..da61501 --- /dev/null +++ b/icons/solid/mars-and-venus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-double.svg b/icons/solid/mars-double.svg new file mode 100644 index 0000000..9d72b13 --- /dev/null +++ b/icons/solid/mars-double.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-stroke-right.svg b/icons/solid/mars-stroke-right.svg new file mode 100644 index 0000000..bec1245 --- /dev/null +++ b/icons/solid/mars-stroke-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-stroke-up.svg b/icons/solid/mars-stroke-up.svg new file mode 100644 index 0000000..26ab9e1 --- /dev/null +++ b/icons/solid/mars-stroke-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars-stroke.svg b/icons/solid/mars-stroke.svg new file mode 100644 index 0000000..cf9df8c --- /dev/null +++ b/icons/solid/mars-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mars.svg b/icons/solid/mars.svg new file mode 100644 index 0000000..49a293c --- /dev/null +++ b/icons/solid/mars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/martini-glass-citrus.svg b/icons/solid/martini-glass-citrus.svg new file mode 100644 index 0000000..b74c8f8 --- /dev/null +++ b/icons/solid/martini-glass-citrus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/martini-glass-empty.svg b/icons/solid/martini-glass-empty.svg new file mode 100644 index 0000000..632f44b --- /dev/null +++ b/icons/solid/martini-glass-empty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/martini-glass.svg b/icons/solid/martini-glass.svg new file mode 100644 index 0000000..a340089 --- /dev/null +++ b/icons/solid/martini-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mask-face.svg b/icons/solid/mask-face.svg new file mode 100644 index 0000000..9908704 --- /dev/null +++ b/icons/solid/mask-face.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mask-ventilator.svg b/icons/solid/mask-ventilator.svg new file mode 100644 index 0000000..bc43995 --- /dev/null +++ b/icons/solid/mask-ventilator.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mask.svg b/icons/solid/mask.svg new file mode 100644 index 0000000..029908e --- /dev/null +++ b/icons/solid/mask.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/masks-theater.svg b/icons/solid/masks-theater.svg new file mode 100644 index 0000000..08bd18b --- /dev/null +++ b/icons/solid/masks-theater.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mattress-pillow.svg b/icons/solid/mattress-pillow.svg new file mode 100644 index 0000000..1231926 --- /dev/null +++ b/icons/solid/mattress-pillow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/maximize.svg b/icons/solid/maximize.svg new file mode 100644 index 0000000..d5321e6 --- /dev/null +++ b/icons/solid/maximize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/medal.svg b/icons/solid/medal.svg new file mode 100644 index 0000000..2b20b36 --- /dev/null +++ b/icons/solid/medal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/memory.svg b/icons/solid/memory.svg new file mode 100644 index 0000000..85b5174 --- /dev/null +++ b/icons/solid/memory.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/menorah.svg b/icons/solid/menorah.svg new file mode 100644 index 0000000..4815cb4 --- /dev/null +++ b/icons/solid/menorah.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mercury.svg b/icons/solid/mercury.svg new file mode 100644 index 0000000..7e223f6 --- /dev/null +++ b/icons/solid/mercury.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/message.svg b/icons/solid/message.svg new file mode 100644 index 0000000..524767d --- /dev/null +++ b/icons/solid/message.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/meteor.svg b/icons/solid/meteor.svg new file mode 100644 index 0000000..ef476a9 --- /dev/null +++ b/icons/solid/meteor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microchip.svg b/icons/solid/microchip.svg new file mode 100644 index 0000000..13b4131 --- /dev/null +++ b/icons/solid/microchip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microphone-lines-slash.svg b/icons/solid/microphone-lines-slash.svg new file mode 100644 index 0000000..2370f43 --- /dev/null +++ b/icons/solid/microphone-lines-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microphone-lines.svg b/icons/solid/microphone-lines.svg new file mode 100644 index 0000000..bf81a7e --- /dev/null +++ b/icons/solid/microphone-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microphone-slash.svg b/icons/solid/microphone-slash.svg new file mode 100644 index 0000000..a959816 --- /dev/null +++ b/icons/solid/microphone-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microphone.svg b/icons/solid/microphone.svg new file mode 100644 index 0000000..b8e2dac --- /dev/null +++ b/icons/solid/microphone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/microscope.svg b/icons/solid/microscope.svg new file mode 100644 index 0000000..4fd3917 --- /dev/null +++ b/icons/solid/microscope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mill-sign.svg b/icons/solid/mill-sign.svg new file mode 100644 index 0000000..85af1b6 --- /dev/null +++ b/icons/solid/mill-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/minimize.svg b/icons/solid/minimize.svg new file mode 100644 index 0000000..8f83750 --- /dev/null +++ b/icons/solid/minimize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/minus.svg b/icons/solid/minus.svg new file mode 100644 index 0000000..8478558 --- /dev/null +++ b/icons/solid/minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mitten.svg b/icons/solid/mitten.svg new file mode 100644 index 0000000..8c8e138 --- /dev/null +++ b/icons/solid/mitten.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mobile-button.svg b/icons/solid/mobile-button.svg new file mode 100644 index 0000000..c8cb85b --- /dev/null +++ b/icons/solid/mobile-button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mobile-retro.svg b/icons/solid/mobile-retro.svg new file mode 100644 index 0000000..fe27676 --- /dev/null +++ b/icons/solid/mobile-retro.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mobile-screen-button.svg b/icons/solid/mobile-screen-button.svg new file mode 100644 index 0000000..4a72567 --- /dev/null +++ b/icons/solid/mobile-screen-button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mobile-screen.svg b/icons/solid/mobile-screen.svg new file mode 100644 index 0000000..b9d04de --- /dev/null +++ b/icons/solid/mobile-screen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mobile.svg b/icons/solid/mobile.svg new file mode 100644 index 0000000..04e2c59 --- /dev/null +++ b/icons/solid/mobile.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-1-wave.svg b/icons/solid/money-bill-1-wave.svg new file mode 100644 index 0000000..27851d3 --- /dev/null +++ b/icons/solid/money-bill-1-wave.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-1.svg b/icons/solid/money-bill-1.svg new file mode 100644 index 0000000..3e39af1 --- /dev/null +++ b/icons/solid/money-bill-1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-transfer.svg b/icons/solid/money-bill-transfer.svg new file mode 100644 index 0000000..9af2e3a --- /dev/null +++ b/icons/solid/money-bill-transfer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-trend-up.svg b/icons/solid/money-bill-trend-up.svg new file mode 100644 index 0000000..0d440b1 --- /dev/null +++ b/icons/solid/money-bill-trend-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-wave.svg b/icons/solid/money-bill-wave.svg new file mode 100644 index 0000000..b8e42b0 --- /dev/null +++ b/icons/solid/money-bill-wave.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill-wheat.svg b/icons/solid/money-bill-wheat.svg new file mode 100644 index 0000000..60a4b16 --- /dev/null +++ b/icons/solid/money-bill-wheat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bill.svg b/icons/solid/money-bill.svg new file mode 100644 index 0000000..7b3880e --- /dev/null +++ b/icons/solid/money-bill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-bills.svg b/icons/solid/money-bills.svg new file mode 100644 index 0000000..2d2df22 --- /dev/null +++ b/icons/solid/money-bills.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-check-dollar.svg b/icons/solid/money-check-dollar.svg new file mode 100644 index 0000000..8a7ff46 --- /dev/null +++ b/icons/solid/money-check-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/money-check.svg b/icons/solid/money-check.svg new file mode 100644 index 0000000..fed3e46 --- /dev/null +++ b/icons/solid/money-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/monument.svg b/icons/solid/monument.svg new file mode 100644 index 0000000..08d891a --- /dev/null +++ b/icons/solid/monument.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/moon.svg b/icons/solid/moon.svg new file mode 100644 index 0000000..a84f32e --- /dev/null +++ b/icons/solid/moon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mortar-pestle.svg b/icons/solid/mortar-pestle.svg new file mode 100644 index 0000000..779d870 --- /dev/null +++ b/icons/solid/mortar-pestle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mosque.svg b/icons/solid/mosque.svg new file mode 100644 index 0000000..148d181 --- /dev/null +++ b/icons/solid/mosque.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mosquito-net.svg b/icons/solid/mosquito-net.svg new file mode 100644 index 0000000..2604e02 --- /dev/null +++ b/icons/solid/mosquito-net.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mosquito.svg b/icons/solid/mosquito.svg new file mode 100644 index 0000000..890f662 --- /dev/null +++ b/icons/solid/mosquito.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/motorcycle.svg b/icons/solid/motorcycle.svg new file mode 100644 index 0000000..a4ddca5 --- /dev/null +++ b/icons/solid/motorcycle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mound.svg b/icons/solid/mound.svg new file mode 100644 index 0000000..331b5b5 --- /dev/null +++ b/icons/solid/mound.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mountain-city.svg b/icons/solid/mountain-city.svg new file mode 100644 index 0000000..653f89e --- /dev/null +++ b/icons/solid/mountain-city.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mountain-sun.svg b/icons/solid/mountain-sun.svg new file mode 100644 index 0000000..8230971 --- /dev/null +++ b/icons/solid/mountain-sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mountain.svg b/icons/solid/mountain.svg new file mode 100644 index 0000000..ce595dd --- /dev/null +++ b/icons/solid/mountain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mug-hot.svg b/icons/solid/mug-hot.svg new file mode 100644 index 0000000..b605282 --- /dev/null +++ b/icons/solid/mug-hot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/mug-saucer.svg b/icons/solid/mug-saucer.svg new file mode 100644 index 0000000..d582873 --- /dev/null +++ b/icons/solid/mug-saucer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/music.svg b/icons/solid/music.svg new file mode 100644 index 0000000..72d4b61 --- /dev/null +++ b/icons/solid/music.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/n.svg b/icons/solid/n.svg new file mode 100644 index 0000000..41d0e9d --- /dev/null +++ b/icons/solid/n.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/naira-sign.svg b/icons/solid/naira-sign.svg new file mode 100644 index 0000000..c82cd2e --- /dev/null +++ b/icons/solid/naira-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/network-wired.svg b/icons/solid/network-wired.svg new file mode 100644 index 0000000..a4cae89 --- /dev/null +++ b/icons/solid/network-wired.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/neuter.svg b/icons/solid/neuter.svg new file mode 100644 index 0000000..89cf6e7 --- /dev/null +++ b/icons/solid/neuter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/newspaper.svg b/icons/solid/newspaper.svg new file mode 100644 index 0000000..2675fc4 --- /dev/null +++ b/icons/solid/newspaper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/not-equal.svg b/icons/solid/not-equal.svg new file mode 100644 index 0000000..aa59ebb --- /dev/null +++ b/icons/solid/not-equal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/notdef.svg b/icons/solid/notdef.svg new file mode 100644 index 0000000..c0480d3 --- /dev/null +++ b/icons/solid/notdef.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/note-sticky.svg b/icons/solid/note-sticky.svg new file mode 100644 index 0000000..dd858d5 --- /dev/null +++ b/icons/solid/note-sticky.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/notes-medical.svg b/icons/solid/notes-medical.svg new file mode 100644 index 0000000..6a9c310 --- /dev/null +++ b/icons/solid/notes-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/o.svg b/icons/solid/o.svg new file mode 100644 index 0000000..da520a2 --- /dev/null +++ b/icons/solid/o.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/object-group.svg b/icons/solid/object-group.svg new file mode 100644 index 0000000..8159384 --- /dev/null +++ b/icons/solid/object-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/object-ungroup.svg b/icons/solid/object-ungroup.svg new file mode 100644 index 0000000..c463106 --- /dev/null +++ b/icons/solid/object-ungroup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/oil-can.svg b/icons/solid/oil-can.svg new file mode 100644 index 0000000..ef3a6a2 --- /dev/null +++ b/icons/solid/oil-can.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/oil-well.svg b/icons/solid/oil-well.svg new file mode 100644 index 0000000..2dd1bec --- /dev/null +++ b/icons/solid/oil-well.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/om.svg b/icons/solid/om.svg new file mode 100644 index 0000000..c7a0970 --- /dev/null +++ b/icons/solid/om.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/otter.svg b/icons/solid/otter.svg new file mode 100644 index 0000000..8c8da49 --- /dev/null +++ b/icons/solid/otter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/outdent.svg b/icons/solid/outdent.svg new file mode 100644 index 0000000..e3287e6 --- /dev/null +++ b/icons/solid/outdent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/p.svg b/icons/solid/p.svg new file mode 100644 index 0000000..29d0e21 --- /dev/null +++ b/icons/solid/p.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pager.svg b/icons/solid/pager.svg new file mode 100644 index 0000000..dafeb8b --- /dev/null +++ b/icons/solid/pager.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paint-roller.svg b/icons/solid/paint-roller.svg new file mode 100644 index 0000000..a4cbfae --- /dev/null +++ b/icons/solid/paint-roller.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paintbrush.svg b/icons/solid/paintbrush.svg new file mode 100644 index 0000000..f672aef --- /dev/null +++ b/icons/solid/paintbrush.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/palette.svg b/icons/solid/palette.svg new file mode 100644 index 0000000..ca9985b --- /dev/null +++ b/icons/solid/palette.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pallet.svg b/icons/solid/pallet.svg new file mode 100644 index 0000000..d3dcd41 --- /dev/null +++ b/icons/solid/pallet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/panorama.svg b/icons/solid/panorama.svg new file mode 100644 index 0000000..eda4782 --- /dev/null +++ b/icons/solid/panorama.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paper-plane.svg b/icons/solid/paper-plane.svg new file mode 100644 index 0000000..8f88f75 --- /dev/null +++ b/icons/solid/paper-plane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paperclip.svg b/icons/solid/paperclip.svg new file mode 100644 index 0000000..1b259ff --- /dev/null +++ b/icons/solid/paperclip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/parachute-box.svg b/icons/solid/parachute-box.svg new file mode 100644 index 0000000..0310216 --- /dev/null +++ b/icons/solid/parachute-box.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paragraph.svg b/icons/solid/paragraph.svg new file mode 100644 index 0000000..1e71a8a --- /dev/null +++ b/icons/solid/paragraph.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/passport.svg b/icons/solid/passport.svg new file mode 100644 index 0000000..c8fca63 --- /dev/null +++ b/icons/solid/passport.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paste.svg b/icons/solid/paste.svg new file mode 100644 index 0000000..8f3f7ac --- /dev/null +++ b/icons/solid/paste.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pause.svg b/icons/solid/pause.svg new file mode 100644 index 0000000..e4c8ef6 --- /dev/null +++ b/icons/solid/pause.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/paw.svg b/icons/solid/paw.svg new file mode 100644 index 0000000..bdced10 --- /dev/null +++ b/icons/solid/paw.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/peace.svg b/icons/solid/peace.svg new file mode 100644 index 0000000..247d53c --- /dev/null +++ b/icons/solid/peace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen-clip.svg b/icons/solid/pen-clip.svg new file mode 100644 index 0000000..7eaa0d1 --- /dev/null +++ b/icons/solid/pen-clip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen-fancy.svg b/icons/solid/pen-fancy.svg new file mode 100644 index 0000000..3486e66 --- /dev/null +++ b/icons/solid/pen-fancy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen-nib.svg b/icons/solid/pen-nib.svg new file mode 100644 index 0000000..a82a689 --- /dev/null +++ b/icons/solid/pen-nib.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen-ruler.svg b/icons/solid/pen-ruler.svg new file mode 100644 index 0000000..629d3de --- /dev/null +++ b/icons/solid/pen-ruler.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen-to-square.svg b/icons/solid/pen-to-square.svg new file mode 100644 index 0000000..1ceb0fd --- /dev/null +++ b/icons/solid/pen-to-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pen.svg b/icons/solid/pen.svg new file mode 100644 index 0000000..26f166a --- /dev/null +++ b/icons/solid/pen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pencil.svg b/icons/solid/pencil.svg new file mode 100644 index 0000000..b65fe0c --- /dev/null +++ b/icons/solid/pencil.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-arrows.svg b/icons/solid/people-arrows.svg new file mode 100644 index 0000000..7ef4ec6 --- /dev/null +++ b/icons/solid/people-arrows.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-carry-box.svg b/icons/solid/people-carry-box.svg new file mode 100644 index 0000000..3901a4c --- /dev/null +++ b/icons/solid/people-carry-box.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-group.svg b/icons/solid/people-group.svg new file mode 100644 index 0000000..442c2d7 --- /dev/null +++ b/icons/solid/people-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-line.svg b/icons/solid/people-line.svg new file mode 100644 index 0000000..3259522 --- /dev/null +++ b/icons/solid/people-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-pulling.svg b/icons/solid/people-pulling.svg new file mode 100644 index 0000000..b1414e9 --- /dev/null +++ b/icons/solid/people-pulling.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-robbery.svg b/icons/solid/people-robbery.svg new file mode 100644 index 0000000..6713de6 --- /dev/null +++ b/icons/solid/people-robbery.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/people-roof.svg b/icons/solid/people-roof.svg new file mode 100644 index 0000000..7d3d0a1 --- /dev/null +++ b/icons/solid/people-roof.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pepper-hot.svg b/icons/solid/pepper-hot.svg new file mode 100644 index 0000000..992811a --- /dev/null +++ b/icons/solid/pepper-hot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/percent.svg b/icons/solid/percent.svg new file mode 100644 index 0000000..b8cfa5f --- /dev/null +++ b/icons/solid/percent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-arrow-down-to-line.svg b/icons/solid/person-arrow-down-to-line.svg new file mode 100644 index 0000000..083791e --- /dev/null +++ b/icons/solid/person-arrow-down-to-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-arrow-up-from-line.svg b/icons/solid/person-arrow-up-from-line.svg new file mode 100644 index 0000000..0d11a00 --- /dev/null +++ b/icons/solid/person-arrow-up-from-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-biking.svg b/icons/solid/person-biking.svg new file mode 100644 index 0000000..19577fe --- /dev/null +++ b/icons/solid/person-biking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-booth.svg b/icons/solid/person-booth.svg new file mode 100644 index 0000000..5cb328a --- /dev/null +++ b/icons/solid/person-booth.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-breastfeeding.svg b/icons/solid/person-breastfeeding.svg new file mode 100644 index 0000000..a5c2d98 --- /dev/null +++ b/icons/solid/person-breastfeeding.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-burst.svg b/icons/solid/person-burst.svg new file mode 100644 index 0000000..3db4458 --- /dev/null +++ b/icons/solid/person-burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-cane.svg b/icons/solid/person-cane.svg new file mode 100644 index 0000000..4aa7aa8 --- /dev/null +++ b/icons/solid/person-cane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-chalkboard.svg b/icons/solid/person-chalkboard.svg new file mode 100644 index 0000000..fca9bd2 --- /dev/null +++ b/icons/solid/person-chalkboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-check.svg b/icons/solid/person-circle-check.svg new file mode 100644 index 0000000..a047e61 --- /dev/null +++ b/icons/solid/person-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-exclamation.svg b/icons/solid/person-circle-exclamation.svg new file mode 100644 index 0000000..4c7a0a3 --- /dev/null +++ b/icons/solid/person-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-minus.svg b/icons/solid/person-circle-minus.svg new file mode 100644 index 0000000..4ecb2d0 --- /dev/null +++ b/icons/solid/person-circle-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-plus.svg b/icons/solid/person-circle-plus.svg new file mode 100644 index 0000000..b40fbe4 --- /dev/null +++ b/icons/solid/person-circle-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-question.svg b/icons/solid/person-circle-question.svg new file mode 100644 index 0000000..bab3647 --- /dev/null +++ b/icons/solid/person-circle-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-circle-xmark.svg b/icons/solid/person-circle-xmark.svg new file mode 100644 index 0000000..29c5426 --- /dev/null +++ b/icons/solid/person-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-digging.svg b/icons/solid/person-digging.svg new file mode 100644 index 0000000..04bf026 --- /dev/null +++ b/icons/solid/person-digging.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-dots-from-line.svg b/icons/solid/person-dots-from-line.svg new file mode 100644 index 0000000..ceaabc2 --- /dev/null +++ b/icons/solid/person-dots-from-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-dress-burst.svg b/icons/solid/person-dress-burst.svg new file mode 100644 index 0000000..a11159c --- /dev/null +++ b/icons/solid/person-dress-burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-dress.svg b/icons/solid/person-dress.svg new file mode 100644 index 0000000..e63394b --- /dev/null +++ b/icons/solid/person-dress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-drowning.svg b/icons/solid/person-drowning.svg new file mode 100644 index 0000000..a60deea --- /dev/null +++ b/icons/solid/person-drowning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-falling-burst.svg b/icons/solid/person-falling-burst.svg new file mode 100644 index 0000000..8dae849 --- /dev/null +++ b/icons/solid/person-falling-burst.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-falling.svg b/icons/solid/person-falling.svg new file mode 100644 index 0000000..66ba132 --- /dev/null +++ b/icons/solid/person-falling.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-half-dress.svg b/icons/solid/person-half-dress.svg new file mode 100644 index 0000000..012c767 --- /dev/null +++ b/icons/solid/person-half-dress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-harassing.svg b/icons/solid/person-harassing.svg new file mode 100644 index 0000000..c3d4bd2 --- /dev/null +++ b/icons/solid/person-harassing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-hiking.svg b/icons/solid/person-hiking.svg new file mode 100644 index 0000000..eb18f88 --- /dev/null +++ b/icons/solid/person-hiking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-military-pointing.svg b/icons/solid/person-military-pointing.svg new file mode 100644 index 0000000..fddd15f --- /dev/null +++ b/icons/solid/person-military-pointing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-military-rifle.svg b/icons/solid/person-military-rifle.svg new file mode 100644 index 0000000..e8e62e5 --- /dev/null +++ b/icons/solid/person-military-rifle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-military-to-person.svg b/icons/solid/person-military-to-person.svg new file mode 100644 index 0000000..60e7a08 --- /dev/null +++ b/icons/solid/person-military-to-person.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-praying.svg b/icons/solid/person-praying.svg new file mode 100644 index 0000000..ca98289 --- /dev/null +++ b/icons/solid/person-praying.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-pregnant.svg b/icons/solid/person-pregnant.svg new file mode 100644 index 0000000..98d1bec --- /dev/null +++ b/icons/solid/person-pregnant.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-rays.svg b/icons/solid/person-rays.svg new file mode 100644 index 0000000..0f4c58f --- /dev/null +++ b/icons/solid/person-rays.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-rifle.svg b/icons/solid/person-rifle.svg new file mode 100644 index 0000000..7e7be6d --- /dev/null +++ b/icons/solid/person-rifle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-running.svg b/icons/solid/person-running.svg new file mode 100644 index 0000000..7699d49 --- /dev/null +++ b/icons/solid/person-running.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-shelter.svg b/icons/solid/person-shelter.svg new file mode 100644 index 0000000..4ce0193 --- /dev/null +++ b/icons/solid/person-shelter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-skating.svg b/icons/solid/person-skating.svg new file mode 100644 index 0000000..f034878 --- /dev/null +++ b/icons/solid/person-skating.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-skiing-nordic.svg b/icons/solid/person-skiing-nordic.svg new file mode 100644 index 0000000..f3fdae9 --- /dev/null +++ b/icons/solid/person-skiing-nordic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-skiing.svg b/icons/solid/person-skiing.svg new file mode 100644 index 0000000..3bf36d2 --- /dev/null +++ b/icons/solid/person-skiing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-snowboarding.svg b/icons/solid/person-snowboarding.svg new file mode 100644 index 0000000..a56ab4b --- /dev/null +++ b/icons/solid/person-snowboarding.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-swimming.svg b/icons/solid/person-swimming.svg new file mode 100644 index 0000000..726b548 --- /dev/null +++ b/icons/solid/person-swimming.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-through-window.svg b/icons/solid/person-through-window.svg new file mode 100644 index 0000000..05ea6f3 --- /dev/null +++ b/icons/solid/person-through-window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking-arrow-loop-left.svg b/icons/solid/person-walking-arrow-loop-left.svg new file mode 100644 index 0000000..a1267a2 --- /dev/null +++ b/icons/solid/person-walking-arrow-loop-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking-arrow-right.svg b/icons/solid/person-walking-arrow-right.svg new file mode 100644 index 0000000..a31bae2 --- /dev/null +++ b/icons/solid/person-walking-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking-dashed-line-arrow-right.svg b/icons/solid/person-walking-dashed-line-arrow-right.svg new file mode 100644 index 0000000..964f1bf --- /dev/null +++ b/icons/solid/person-walking-dashed-line-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking-luggage.svg b/icons/solid/person-walking-luggage.svg new file mode 100644 index 0000000..910aec8 --- /dev/null +++ b/icons/solid/person-walking-luggage.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking-with-cane.svg b/icons/solid/person-walking-with-cane.svg new file mode 100644 index 0000000..a66abb5 --- /dev/null +++ b/icons/solid/person-walking-with-cane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person-walking.svg b/icons/solid/person-walking.svg new file mode 100644 index 0000000..8c1cf75 --- /dev/null +++ b/icons/solid/person-walking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/person.svg b/icons/solid/person.svg new file mode 100644 index 0000000..cbeb9f3 --- /dev/null +++ b/icons/solid/person.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/peseta-sign.svg b/icons/solid/peseta-sign.svg new file mode 100644 index 0000000..1bbcc39 --- /dev/null +++ b/icons/solid/peseta-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/peso-sign.svg b/icons/solid/peso-sign.svg new file mode 100644 index 0000000..d00e29f --- /dev/null +++ b/icons/solid/peso-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/phone-flip.svg b/icons/solid/phone-flip.svg new file mode 100644 index 0000000..0c10875 --- /dev/null +++ b/icons/solid/phone-flip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/phone-slash.svg b/icons/solid/phone-slash.svg new file mode 100644 index 0000000..5c18f31 --- /dev/null +++ b/icons/solid/phone-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/phone-volume.svg b/icons/solid/phone-volume.svg new file mode 100644 index 0000000..329929c --- /dev/null +++ b/icons/solid/phone-volume.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/phone.svg b/icons/solid/phone.svg new file mode 100644 index 0000000..acb74b0 --- /dev/null +++ b/icons/solid/phone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/photo-film.svg b/icons/solid/photo-film.svg new file mode 100644 index 0000000..802c431 --- /dev/null +++ b/icons/solid/photo-film.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/piggy-bank.svg b/icons/solid/piggy-bank.svg new file mode 100644 index 0000000..c6457e8 --- /dev/null +++ b/icons/solid/piggy-bank.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pills.svg b/icons/solid/pills.svg new file mode 100644 index 0000000..7db9a5b --- /dev/null +++ b/icons/solid/pills.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pizza-slice.svg b/icons/solid/pizza-slice.svg new file mode 100644 index 0000000..58a59e5 --- /dev/null +++ b/icons/solid/pizza-slice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/place-of-worship.svg b/icons/solid/place-of-worship.svg new file mode 100644 index 0000000..85b544f --- /dev/null +++ b/icons/solid/place-of-worship.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-arrival.svg b/icons/solid/plane-arrival.svg new file mode 100644 index 0000000..a096432 --- /dev/null +++ b/icons/solid/plane-arrival.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-circle-check.svg b/icons/solid/plane-circle-check.svg new file mode 100644 index 0000000..f395ce2 --- /dev/null +++ b/icons/solid/plane-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-circle-exclamation.svg b/icons/solid/plane-circle-exclamation.svg new file mode 100644 index 0000000..87ceb16 --- /dev/null +++ b/icons/solid/plane-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-circle-xmark.svg b/icons/solid/plane-circle-xmark.svg new file mode 100644 index 0000000..6588172 --- /dev/null +++ b/icons/solid/plane-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-departure.svg b/icons/solid/plane-departure.svg new file mode 100644 index 0000000..305e4d0 --- /dev/null +++ b/icons/solid/plane-departure.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-lock.svg b/icons/solid/plane-lock.svg new file mode 100644 index 0000000..12eb267 --- /dev/null +++ b/icons/solid/plane-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-slash.svg b/icons/solid/plane-slash.svg new file mode 100644 index 0000000..9fe1515 --- /dev/null +++ b/icons/solid/plane-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane-up.svg b/icons/solid/plane-up.svg new file mode 100644 index 0000000..9c82079 --- /dev/null +++ b/icons/solid/plane-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plane.svg b/icons/solid/plane.svg new file mode 100644 index 0000000..70bab37 --- /dev/null +++ b/icons/solid/plane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plant-wilt.svg b/icons/solid/plant-wilt.svg new file mode 100644 index 0000000..5a03596 --- /dev/null +++ b/icons/solid/plant-wilt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plate-wheat.svg b/icons/solid/plate-wheat.svg new file mode 100644 index 0000000..c20d37c --- /dev/null +++ b/icons/solid/plate-wheat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/play.svg b/icons/solid/play.svg new file mode 100644 index 0000000..2795676 --- /dev/null +++ b/icons/solid/play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-bolt.svg b/icons/solid/plug-circle-bolt.svg new file mode 100644 index 0000000..60ad622 --- /dev/null +++ b/icons/solid/plug-circle-bolt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-check.svg b/icons/solid/plug-circle-check.svg new file mode 100644 index 0000000..93ff46f --- /dev/null +++ b/icons/solid/plug-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-exclamation.svg b/icons/solid/plug-circle-exclamation.svg new file mode 100644 index 0000000..e4b54f3 --- /dev/null +++ b/icons/solid/plug-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-minus.svg b/icons/solid/plug-circle-minus.svg new file mode 100644 index 0000000..3c93a91 --- /dev/null +++ b/icons/solid/plug-circle-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-plus.svg b/icons/solid/plug-circle-plus.svg new file mode 100644 index 0000000..78a8ed4 --- /dev/null +++ b/icons/solid/plug-circle-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug-circle-xmark.svg b/icons/solid/plug-circle-xmark.svg new file mode 100644 index 0000000..1da749e --- /dev/null +++ b/icons/solid/plug-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plug.svg b/icons/solid/plug.svg new file mode 100644 index 0000000..163d72a --- /dev/null +++ b/icons/solid/plug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plus-minus.svg b/icons/solid/plus-minus.svg new file mode 100644 index 0000000..3434c80 --- /dev/null +++ b/icons/solid/plus-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/plus.svg b/icons/solid/plus.svg new file mode 100644 index 0000000..3b5ef68 --- /dev/null +++ b/icons/solid/plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/podcast.svg b/icons/solid/podcast.svg new file mode 100644 index 0000000..e17848f --- /dev/null +++ b/icons/solid/podcast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/poo-storm.svg b/icons/solid/poo-storm.svg new file mode 100644 index 0000000..78d259e --- /dev/null +++ b/icons/solid/poo-storm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/poo.svg b/icons/solid/poo.svg new file mode 100644 index 0000000..a9eb31f --- /dev/null +++ b/icons/solid/poo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/poop.svg b/icons/solid/poop.svg new file mode 100644 index 0000000..25e0191 --- /dev/null +++ b/icons/solid/poop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/power-off.svg b/icons/solid/power-off.svg new file mode 100644 index 0000000..ec5c40d --- /dev/null +++ b/icons/solid/power-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/prescription-bottle-medical.svg b/icons/solid/prescription-bottle-medical.svg new file mode 100644 index 0000000..87bf90e --- /dev/null +++ b/icons/solid/prescription-bottle-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/prescription-bottle.svg b/icons/solid/prescription-bottle.svg new file mode 100644 index 0000000..fa1eb89 --- /dev/null +++ b/icons/solid/prescription-bottle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/prescription.svg b/icons/solid/prescription.svg new file mode 100644 index 0000000..e4ef1f6 --- /dev/null +++ b/icons/solid/prescription.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/print.svg b/icons/solid/print.svg new file mode 100644 index 0000000..83c76c0 --- /dev/null +++ b/icons/solid/print.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pump-medical.svg b/icons/solid/pump-medical.svg new file mode 100644 index 0000000..08c925b --- /dev/null +++ b/icons/solid/pump-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/pump-soap.svg b/icons/solid/pump-soap.svg new file mode 100644 index 0000000..d9d3849 --- /dev/null +++ b/icons/solid/pump-soap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/puzzle-piece.svg b/icons/solid/puzzle-piece.svg new file mode 100644 index 0000000..241e2f8 --- /dev/null +++ b/icons/solid/puzzle-piece.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/q.svg b/icons/solid/q.svg new file mode 100644 index 0000000..df57da0 --- /dev/null +++ b/icons/solid/q.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/qrcode.svg b/icons/solid/qrcode.svg new file mode 100644 index 0000000..b94a924 --- /dev/null +++ b/icons/solid/qrcode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/question.svg b/icons/solid/question.svg new file mode 100644 index 0000000..be0f859 --- /dev/null +++ b/icons/solid/question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/quote-left.svg b/icons/solid/quote-left.svg new file mode 100644 index 0000000..080a80a --- /dev/null +++ b/icons/solid/quote-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/quote-right.svg b/icons/solid/quote-right.svg new file mode 100644 index 0000000..922a9c1 --- /dev/null +++ b/icons/solid/quote-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/r.svg b/icons/solid/r.svg new file mode 100644 index 0000000..c6031dc --- /dev/null +++ b/icons/solid/r.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/radiation.svg b/icons/solid/radiation.svg new file mode 100644 index 0000000..cd96777 --- /dev/null +++ b/icons/solid/radiation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/radio.svg b/icons/solid/radio.svg new file mode 100644 index 0000000..623aef3 --- /dev/null +++ b/icons/solid/radio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rainbow.svg b/icons/solid/rainbow.svg new file mode 100644 index 0000000..b067ef7 --- /dev/null +++ b/icons/solid/rainbow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ranking-star.svg b/icons/solid/ranking-star.svg new file mode 100644 index 0000000..a7ddfa2 --- /dev/null +++ b/icons/solid/ranking-star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/receipt.svg b/icons/solid/receipt.svg new file mode 100644 index 0000000..1016e47 --- /dev/null +++ b/icons/solid/receipt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/record-vinyl.svg b/icons/solid/record-vinyl.svg new file mode 100644 index 0000000..8485045 --- /dev/null +++ b/icons/solid/record-vinyl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rectangle-ad.svg b/icons/solid/rectangle-ad.svg new file mode 100644 index 0000000..338dc27 --- /dev/null +++ b/icons/solid/rectangle-ad.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rectangle-list.svg b/icons/solid/rectangle-list.svg new file mode 100644 index 0000000..6dfcae3 --- /dev/null +++ b/icons/solid/rectangle-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rectangle-xmark.svg b/icons/solid/rectangle-xmark.svg new file mode 100644 index 0000000..2e835f5 --- /dev/null +++ b/icons/solid/rectangle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/recycle.svg b/icons/solid/recycle.svg new file mode 100644 index 0000000..2f79032 --- /dev/null +++ b/icons/solid/recycle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/registered.svg b/icons/solid/registered.svg new file mode 100644 index 0000000..77a6fad --- /dev/null +++ b/icons/solid/registered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/repeat.svg b/icons/solid/repeat.svg new file mode 100644 index 0000000..6744b3d --- /dev/null +++ b/icons/solid/repeat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/reply-all.svg b/icons/solid/reply-all.svg new file mode 100644 index 0000000..228cd30 --- /dev/null +++ b/icons/solid/reply-all.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/reply.svg b/icons/solid/reply.svg new file mode 100644 index 0000000..c90ea4c --- /dev/null +++ b/icons/solid/reply.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/republican.svg b/icons/solid/republican.svg new file mode 100644 index 0000000..9171b6e --- /dev/null +++ b/icons/solid/republican.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/restroom.svg b/icons/solid/restroom.svg new file mode 100644 index 0000000..de082b5 --- /dev/null +++ b/icons/solid/restroom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/retweet.svg b/icons/solid/retweet.svg new file mode 100644 index 0000000..b0fc5c1 --- /dev/null +++ b/icons/solid/retweet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ribbon.svg b/icons/solid/ribbon.svg new file mode 100644 index 0000000..f7c7a26 --- /dev/null +++ b/icons/solid/ribbon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/right-from-bracket.svg b/icons/solid/right-from-bracket.svg new file mode 100644 index 0000000..789c141 --- /dev/null +++ b/icons/solid/right-from-bracket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/right-left.svg b/icons/solid/right-left.svg new file mode 100644 index 0000000..a285d14 --- /dev/null +++ b/icons/solid/right-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/right-long.svg b/icons/solid/right-long.svg new file mode 100644 index 0000000..7758c05 --- /dev/null +++ b/icons/solid/right-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/right-to-bracket.svg b/icons/solid/right-to-bracket.svg new file mode 100644 index 0000000..9d1557b --- /dev/null +++ b/icons/solid/right-to-bracket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ring.svg b/icons/solid/ring.svg new file mode 100644 index 0000000..18dea9c --- /dev/null +++ b/icons/solid/ring.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-barrier.svg b/icons/solid/road-barrier.svg new file mode 100644 index 0000000..a0361ed --- /dev/null +++ b/icons/solid/road-barrier.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-bridge.svg b/icons/solid/road-bridge.svg new file mode 100644 index 0000000..1cc8e8e --- /dev/null +++ b/icons/solid/road-bridge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-circle-check.svg b/icons/solid/road-circle-check.svg new file mode 100644 index 0000000..7dd47c0 --- /dev/null +++ b/icons/solid/road-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-circle-exclamation.svg b/icons/solid/road-circle-exclamation.svg new file mode 100644 index 0000000..4578e93 --- /dev/null +++ b/icons/solid/road-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-circle-xmark.svg b/icons/solid/road-circle-xmark.svg new file mode 100644 index 0000000..792dd3c --- /dev/null +++ b/icons/solid/road-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-lock.svg b/icons/solid/road-lock.svg new file mode 100644 index 0000000..0d4b0a3 --- /dev/null +++ b/icons/solid/road-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road-spikes.svg b/icons/solid/road-spikes.svg new file mode 100644 index 0000000..46ad5c1 --- /dev/null +++ b/icons/solid/road-spikes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/road.svg b/icons/solid/road.svg new file mode 100644 index 0000000..56d3fd7 --- /dev/null +++ b/icons/solid/road.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/robot.svg b/icons/solid/robot.svg new file mode 100644 index 0000000..f9ea440 --- /dev/null +++ b/icons/solid/robot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rocket.svg b/icons/solid/rocket.svg new file mode 100644 index 0000000..50991f3 --- /dev/null +++ b/icons/solid/rocket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rotate-left.svg b/icons/solid/rotate-left.svg new file mode 100644 index 0000000..4d84c55 --- /dev/null +++ b/icons/solid/rotate-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rotate-right.svg b/icons/solid/rotate-right.svg new file mode 100644 index 0000000..b73745d --- /dev/null +++ b/icons/solid/rotate-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rotate.svg b/icons/solid/rotate.svg new file mode 100644 index 0000000..bc31e78 --- /dev/null +++ b/icons/solid/rotate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/route.svg b/icons/solid/route.svg new file mode 100644 index 0000000..c20e9b3 --- /dev/null +++ b/icons/solid/route.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rss.svg b/icons/solid/rss.svg new file mode 100644 index 0000000..3c6403a --- /dev/null +++ b/icons/solid/rss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ruble-sign.svg b/icons/solid/ruble-sign.svg new file mode 100644 index 0000000..66cccc3 --- /dev/null +++ b/icons/solid/ruble-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rug.svg b/icons/solid/rug.svg new file mode 100644 index 0000000..fd6ed02 --- /dev/null +++ b/icons/solid/rug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ruler-combined.svg b/icons/solid/ruler-combined.svg new file mode 100644 index 0000000..1af37fd --- /dev/null +++ b/icons/solid/ruler-combined.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ruler-horizontal.svg b/icons/solid/ruler-horizontal.svg new file mode 100644 index 0000000..e71f6ef --- /dev/null +++ b/icons/solid/ruler-horizontal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ruler-vertical.svg b/icons/solid/ruler-vertical.svg new file mode 100644 index 0000000..a3bed39 --- /dev/null +++ b/icons/solid/ruler-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ruler.svg b/icons/solid/ruler.svg new file mode 100644 index 0000000..a7a1072 --- /dev/null +++ b/icons/solid/ruler.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rupee-sign.svg b/icons/solid/rupee-sign.svg new file mode 100644 index 0000000..882ea70 --- /dev/null +++ b/icons/solid/rupee-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/rupiah-sign.svg b/icons/solid/rupiah-sign.svg new file mode 100644 index 0000000..b392bc5 --- /dev/null +++ b/icons/solid/rupiah-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/s.svg b/icons/solid/s.svg new file mode 100644 index 0000000..c800df2 --- /dev/null +++ b/icons/solid/s.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sack-dollar.svg b/icons/solid/sack-dollar.svg new file mode 100644 index 0000000..03d4745 --- /dev/null +++ b/icons/solid/sack-dollar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sack-xmark.svg b/icons/solid/sack-xmark.svg new file mode 100644 index 0000000..d0809f3 --- /dev/null +++ b/icons/solid/sack-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sailboat.svg b/icons/solid/sailboat.svg new file mode 100644 index 0000000..a197a9a --- /dev/null +++ b/icons/solid/sailboat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/satellite-dish.svg b/icons/solid/satellite-dish.svg new file mode 100644 index 0000000..92c1869 --- /dev/null +++ b/icons/solid/satellite-dish.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/satellite.svg b/icons/solid/satellite.svg new file mode 100644 index 0000000..40f18b9 --- /dev/null +++ b/icons/solid/satellite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scale-balanced.svg b/icons/solid/scale-balanced.svg new file mode 100644 index 0000000..94bd762 --- /dev/null +++ b/icons/solid/scale-balanced.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scale-unbalanced-flip.svg b/icons/solid/scale-unbalanced-flip.svg new file mode 100644 index 0000000..2bbd93b --- /dev/null +++ b/icons/solid/scale-unbalanced-flip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scale-unbalanced.svg b/icons/solid/scale-unbalanced.svg new file mode 100644 index 0000000..1cf65cd --- /dev/null +++ b/icons/solid/scale-unbalanced.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school-circle-check.svg b/icons/solid/school-circle-check.svg new file mode 100644 index 0000000..ce546dc --- /dev/null +++ b/icons/solid/school-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school-circle-exclamation.svg b/icons/solid/school-circle-exclamation.svg new file mode 100644 index 0000000..64d2f33 --- /dev/null +++ b/icons/solid/school-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school-circle-xmark.svg b/icons/solid/school-circle-xmark.svg new file mode 100644 index 0000000..2bef6a1 --- /dev/null +++ b/icons/solid/school-circle-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school-flag.svg b/icons/solid/school-flag.svg new file mode 100644 index 0000000..491f8a5 --- /dev/null +++ b/icons/solid/school-flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school-lock.svg b/icons/solid/school-lock.svg new file mode 100644 index 0000000..57d7f6b --- /dev/null +++ b/icons/solid/school-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/school.svg b/icons/solid/school.svg new file mode 100644 index 0000000..85efed8 --- /dev/null +++ b/icons/solid/school.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scissors.svg b/icons/solid/scissors.svg new file mode 100644 index 0000000..4ec5f27 --- /dev/null +++ b/icons/solid/scissors.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/screwdriver-wrench.svg b/icons/solid/screwdriver-wrench.svg new file mode 100644 index 0000000..951e8da --- /dev/null +++ b/icons/solid/screwdriver-wrench.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/screwdriver.svg b/icons/solid/screwdriver.svg new file mode 100644 index 0000000..19d6d15 --- /dev/null +++ b/icons/solid/screwdriver.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scroll-torah.svg b/icons/solid/scroll-torah.svg new file mode 100644 index 0000000..c86e2fa --- /dev/null +++ b/icons/solid/scroll-torah.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/scroll.svg b/icons/solid/scroll.svg new file mode 100644 index 0000000..bdd5ca2 --- /dev/null +++ b/icons/solid/scroll.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sd-card.svg b/icons/solid/sd-card.svg new file mode 100644 index 0000000..c735fb5 --- /dev/null +++ b/icons/solid/sd-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/section.svg b/icons/solid/section.svg new file mode 100644 index 0000000..c4e5dbc --- /dev/null +++ b/icons/solid/section.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/seedling.svg b/icons/solid/seedling.svg new file mode 100644 index 0000000..fbec316 --- /dev/null +++ b/icons/solid/seedling.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/server.svg b/icons/solid/server.svg new file mode 100644 index 0000000..ea096a2 --- /dev/null +++ b/icons/solid/server.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shapes.svg b/icons/solid/shapes.svg new file mode 100644 index 0000000..e8d2d56 --- /dev/null +++ b/icons/solid/shapes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/share-from-square.svg b/icons/solid/share-from-square.svg new file mode 100644 index 0000000..9d59445 --- /dev/null +++ b/icons/solid/share-from-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/share-nodes.svg b/icons/solid/share-nodes.svg new file mode 100644 index 0000000..1f6aa7b --- /dev/null +++ b/icons/solid/share-nodes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/share.svg b/icons/solid/share.svg new file mode 100644 index 0000000..691bca9 --- /dev/null +++ b/icons/solid/share.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sheet-plastic.svg b/icons/solid/sheet-plastic.svg new file mode 100644 index 0000000..de982bb --- /dev/null +++ b/icons/solid/sheet-plastic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shekel-sign.svg b/icons/solid/shekel-sign.svg new file mode 100644 index 0000000..0ed1a83 --- /dev/null +++ b/icons/solid/shekel-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield-cat.svg b/icons/solid/shield-cat.svg new file mode 100644 index 0000000..ae0a621 --- /dev/null +++ b/icons/solid/shield-cat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield-dog.svg b/icons/solid/shield-dog.svg new file mode 100644 index 0000000..4371c5b --- /dev/null +++ b/icons/solid/shield-dog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield-halved.svg b/icons/solid/shield-halved.svg new file mode 100644 index 0000000..959957c --- /dev/null +++ b/icons/solid/shield-halved.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield-heart.svg b/icons/solid/shield-heart.svg new file mode 100644 index 0000000..46a67b5 --- /dev/null +++ b/icons/solid/shield-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield-virus.svg b/icons/solid/shield-virus.svg new file mode 100644 index 0000000..dc74dfc --- /dev/null +++ b/icons/solid/shield-virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shield.svg b/icons/solid/shield.svg new file mode 100644 index 0000000..4873438 --- /dev/null +++ b/icons/solid/shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ship.svg b/icons/solid/ship.svg new file mode 100644 index 0000000..29e45ac --- /dev/null +++ b/icons/solid/ship.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shirt.svg b/icons/solid/shirt.svg new file mode 100644 index 0000000..418e4ec --- /dev/null +++ b/icons/solid/shirt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shoe-prints.svg b/icons/solid/shoe-prints.svg new file mode 100644 index 0000000..a877695 --- /dev/null +++ b/icons/solid/shoe-prints.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shop-lock.svg b/icons/solid/shop-lock.svg new file mode 100644 index 0000000..fc0164e --- /dev/null +++ b/icons/solid/shop-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shop-slash.svg b/icons/solid/shop-slash.svg new file mode 100644 index 0000000..665392e --- /dev/null +++ b/icons/solid/shop-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shop.svg b/icons/solid/shop.svg new file mode 100644 index 0000000..97519a1 --- /dev/null +++ b/icons/solid/shop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shower.svg b/icons/solid/shower.svg new file mode 100644 index 0000000..7b64612 --- /dev/null +++ b/icons/solid/shower.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shrimp.svg b/icons/solid/shrimp.svg new file mode 100644 index 0000000..9f45abd --- /dev/null +++ b/icons/solid/shrimp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shuffle.svg b/icons/solid/shuffle.svg new file mode 100644 index 0000000..1189bca --- /dev/null +++ b/icons/solid/shuffle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/shuttle-space.svg b/icons/solid/shuttle-space.svg new file mode 100644 index 0000000..6eb8b25 --- /dev/null +++ b/icons/solid/shuttle-space.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sign-hanging.svg b/icons/solid/sign-hanging.svg new file mode 100644 index 0000000..7acac43 --- /dev/null +++ b/icons/solid/sign-hanging.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/signal.svg b/icons/solid/signal.svg new file mode 100644 index 0000000..a64e2f5 --- /dev/null +++ b/icons/solid/signal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/signature.svg b/icons/solid/signature.svg new file mode 100644 index 0000000..23fa6e2 --- /dev/null +++ b/icons/solid/signature.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/signs-post.svg b/icons/solid/signs-post.svg new file mode 100644 index 0000000..a494e72 --- /dev/null +++ b/icons/solid/signs-post.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sim-card.svg b/icons/solid/sim-card.svg new file mode 100644 index 0000000..afb4735 --- /dev/null +++ b/icons/solid/sim-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sink.svg b/icons/solid/sink.svg new file mode 100644 index 0000000..5c011a9 --- /dev/null +++ b/icons/solid/sink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sitemap.svg b/icons/solid/sitemap.svg new file mode 100644 index 0000000..f40967e --- /dev/null +++ b/icons/solid/sitemap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/skull-crossbones.svg b/icons/solid/skull-crossbones.svg new file mode 100644 index 0000000..9154d30 --- /dev/null +++ b/icons/solid/skull-crossbones.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/skull.svg b/icons/solid/skull.svg new file mode 100644 index 0000000..04fd497 --- /dev/null +++ b/icons/solid/skull.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/slash.svg b/icons/solid/slash.svg new file mode 100644 index 0000000..f67814c --- /dev/null +++ b/icons/solid/slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sleigh.svg b/icons/solid/sleigh.svg new file mode 100644 index 0000000..c98f031 --- /dev/null +++ b/icons/solid/sleigh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sliders.svg b/icons/solid/sliders.svg new file mode 100644 index 0000000..32fb794 --- /dev/null +++ b/icons/solid/sliders.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/smog.svg b/icons/solid/smog.svg new file mode 100644 index 0000000..aa96de1 --- /dev/null +++ b/icons/solid/smog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/smoking.svg b/icons/solid/smoking.svg new file mode 100644 index 0000000..8b33372 --- /dev/null +++ b/icons/solid/smoking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/snowflake.svg b/icons/solid/snowflake.svg new file mode 100644 index 0000000..0700730 --- /dev/null +++ b/icons/solid/snowflake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/snowman.svg b/icons/solid/snowman.svg new file mode 100644 index 0000000..5135c6f --- /dev/null +++ b/icons/solid/snowman.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/snowplow.svg b/icons/solid/snowplow.svg new file mode 100644 index 0000000..98fd8b6 --- /dev/null +++ b/icons/solid/snowplow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/soap.svg b/icons/solid/soap.svg new file mode 100644 index 0000000..9c0f38f --- /dev/null +++ b/icons/solid/soap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/socks.svg b/icons/solid/socks.svg new file mode 100644 index 0000000..828812c --- /dev/null +++ b/icons/solid/socks.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/solar-panel.svg b/icons/solid/solar-panel.svg new file mode 100644 index 0000000..529b9e8 --- /dev/null +++ b/icons/solid/solar-panel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sort-down.svg b/icons/solid/sort-down.svg new file mode 100644 index 0000000..282c530 --- /dev/null +++ b/icons/solid/sort-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sort-up.svg b/icons/solid/sort-up.svg new file mode 100644 index 0000000..ad12e0e --- /dev/null +++ b/icons/solid/sort-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sort.svg b/icons/solid/sort.svg new file mode 100644 index 0000000..d0ceb81 --- /dev/null +++ b/icons/solid/sort.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spa.svg b/icons/solid/spa.svg new file mode 100644 index 0000000..72ac4d2 --- /dev/null +++ b/icons/solid/spa.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spaghetti-monster-flying.svg b/icons/solid/spaghetti-monster-flying.svg new file mode 100644 index 0000000..ecac7f5 --- /dev/null +++ b/icons/solid/spaghetti-monster-flying.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spell-check.svg b/icons/solid/spell-check.svg new file mode 100644 index 0000000..653db9e --- /dev/null +++ b/icons/solid/spell-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spider.svg b/icons/solid/spider.svg new file mode 100644 index 0000000..8f6deb2 --- /dev/null +++ b/icons/solid/spider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spinner.svg b/icons/solid/spinner.svg new file mode 100644 index 0000000..2bb34fd --- /dev/null +++ b/icons/solid/spinner.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/splotch.svg b/icons/solid/splotch.svg new file mode 100644 index 0000000..c781dcc --- /dev/null +++ b/icons/solid/splotch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spoon.svg b/icons/solid/spoon.svg new file mode 100644 index 0000000..a34cc9c --- /dev/null +++ b/icons/solid/spoon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spray-can-sparkles.svg b/icons/solid/spray-can-sparkles.svg new file mode 100644 index 0000000..fdf33a8 --- /dev/null +++ b/icons/solid/spray-can-sparkles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/spray-can.svg b/icons/solid/spray-can.svg new file mode 100644 index 0000000..03d665d --- /dev/null +++ b/icons/solid/spray-can.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-arrow-up-right.svg b/icons/solid/square-arrow-up-right.svg new file mode 100644 index 0000000..7b792f5 --- /dev/null +++ b/icons/solid/square-arrow-up-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-caret-down.svg b/icons/solid/square-caret-down.svg new file mode 100644 index 0000000..db11f6e --- /dev/null +++ b/icons/solid/square-caret-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-caret-left.svg b/icons/solid/square-caret-left.svg new file mode 100644 index 0000000..0d90f9e --- /dev/null +++ b/icons/solid/square-caret-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-caret-right.svg b/icons/solid/square-caret-right.svg new file mode 100644 index 0000000..c0297a2 --- /dev/null +++ b/icons/solid/square-caret-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-caret-up.svg b/icons/solid/square-caret-up.svg new file mode 100644 index 0000000..0025e92 --- /dev/null +++ b/icons/solid/square-caret-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-check.svg b/icons/solid/square-check.svg new file mode 100644 index 0000000..1e17369 --- /dev/null +++ b/icons/solid/square-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-envelope.svg b/icons/solid/square-envelope.svg new file mode 100644 index 0000000..f1ec20e --- /dev/null +++ b/icons/solid/square-envelope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-full.svg b/icons/solid/square-full.svg new file mode 100644 index 0000000..a764174 --- /dev/null +++ b/icons/solid/square-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-h.svg b/icons/solid/square-h.svg new file mode 100644 index 0000000..d2165c2 --- /dev/null +++ b/icons/solid/square-h.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-minus.svg b/icons/solid/square-minus.svg new file mode 100644 index 0000000..0577e8f --- /dev/null +++ b/icons/solid/square-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-nfi.svg b/icons/solid/square-nfi.svg new file mode 100644 index 0000000..f42605c --- /dev/null +++ b/icons/solid/square-nfi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-parking.svg b/icons/solid/square-parking.svg new file mode 100644 index 0000000..3831e16 --- /dev/null +++ b/icons/solid/square-parking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-pen.svg b/icons/solid/square-pen.svg new file mode 100644 index 0000000..0085953 --- /dev/null +++ b/icons/solid/square-pen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-person-confined.svg b/icons/solid/square-person-confined.svg new file mode 100644 index 0000000..9f3977a --- /dev/null +++ b/icons/solid/square-person-confined.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-phone-flip.svg b/icons/solid/square-phone-flip.svg new file mode 100644 index 0000000..65e1b4e --- /dev/null +++ b/icons/solid/square-phone-flip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-phone.svg b/icons/solid/square-phone.svg new file mode 100644 index 0000000..9318369 --- /dev/null +++ b/icons/solid/square-phone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-plus.svg b/icons/solid/square-plus.svg new file mode 100644 index 0000000..1db6d8f --- /dev/null +++ b/icons/solid/square-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-poll-horizontal.svg b/icons/solid/square-poll-horizontal.svg new file mode 100644 index 0000000..e98f6ff --- /dev/null +++ b/icons/solid/square-poll-horizontal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-poll-vertical.svg b/icons/solid/square-poll-vertical.svg new file mode 100644 index 0000000..fd17ee4 --- /dev/null +++ b/icons/solid/square-poll-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-root-variable.svg b/icons/solid/square-root-variable.svg new file mode 100644 index 0000000..4f62f3b --- /dev/null +++ b/icons/solid/square-root-variable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-rss.svg b/icons/solid/square-rss.svg new file mode 100644 index 0000000..a80dbcb --- /dev/null +++ b/icons/solid/square-rss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-share-nodes.svg b/icons/solid/square-share-nodes.svg new file mode 100644 index 0000000..09923de --- /dev/null +++ b/icons/solid/square-share-nodes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-up-right.svg b/icons/solid/square-up-right.svg new file mode 100644 index 0000000..eb3faba --- /dev/null +++ b/icons/solid/square-up-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-virus.svg b/icons/solid/square-virus.svg new file mode 100644 index 0000000..282c9d6 --- /dev/null +++ b/icons/solid/square-virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square-xmark.svg b/icons/solid/square-xmark.svg new file mode 100644 index 0000000..07c0a28 --- /dev/null +++ b/icons/solid/square-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/square.svg b/icons/solid/square.svg new file mode 100644 index 0000000..0cf71cc --- /dev/null +++ b/icons/solid/square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/staff-snake.svg b/icons/solid/staff-snake.svg new file mode 100644 index 0000000..940100e --- /dev/null +++ b/icons/solid/staff-snake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stairs.svg b/icons/solid/stairs.svg new file mode 100644 index 0000000..bccb50b --- /dev/null +++ b/icons/solid/stairs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stamp.svg b/icons/solid/stamp.svg new file mode 100644 index 0000000..0834f47 --- /dev/null +++ b/icons/solid/stamp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stapler.svg b/icons/solid/stapler.svg new file mode 100644 index 0000000..097b9fa --- /dev/null +++ b/icons/solid/stapler.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star-and-crescent.svg b/icons/solid/star-and-crescent.svg new file mode 100644 index 0000000..51fa04d --- /dev/null +++ b/icons/solid/star-and-crescent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star-half-stroke.svg b/icons/solid/star-half-stroke.svg new file mode 100644 index 0000000..3f3c417 --- /dev/null +++ b/icons/solid/star-half-stroke.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star-half.svg b/icons/solid/star-half.svg new file mode 100644 index 0000000..62de56f --- /dev/null +++ b/icons/solid/star-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star-of-david.svg b/icons/solid/star-of-david.svg new file mode 100644 index 0000000..acec9bc --- /dev/null +++ b/icons/solid/star-of-david.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star-of-life.svg b/icons/solid/star-of-life.svg new file mode 100644 index 0000000..27bd1ad --- /dev/null +++ b/icons/solid/star-of-life.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/star.svg b/icons/solid/star.svg new file mode 100644 index 0000000..5ee90db --- /dev/null +++ b/icons/solid/star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sterling-sign.svg b/icons/solid/sterling-sign.svg new file mode 100644 index 0000000..198610b --- /dev/null +++ b/icons/solid/sterling-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stethoscope.svg b/icons/solid/stethoscope.svg new file mode 100644 index 0000000..dc5ecbc --- /dev/null +++ b/icons/solid/stethoscope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stop.svg b/icons/solid/stop.svg new file mode 100644 index 0000000..e4c9dc9 --- /dev/null +++ b/icons/solid/stop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stopwatch-20.svg b/icons/solid/stopwatch-20.svg new file mode 100644 index 0000000..5d0a248 --- /dev/null +++ b/icons/solid/stopwatch-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stopwatch.svg b/icons/solid/stopwatch.svg new file mode 100644 index 0000000..5310811 --- /dev/null +++ b/icons/solid/stopwatch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/store-slash.svg b/icons/solid/store-slash.svg new file mode 100644 index 0000000..a6d936d --- /dev/null +++ b/icons/solid/store-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/store.svg b/icons/solid/store.svg new file mode 100644 index 0000000..f9701e5 --- /dev/null +++ b/icons/solid/store.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/street-view.svg b/icons/solid/street-view.svg new file mode 100644 index 0000000..d9a24ab --- /dev/null +++ b/icons/solid/street-view.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/strikethrough.svg b/icons/solid/strikethrough.svg new file mode 100644 index 0000000..380272c --- /dev/null +++ b/icons/solid/strikethrough.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/stroopwafel.svg b/icons/solid/stroopwafel.svg new file mode 100644 index 0000000..deecdb6 --- /dev/null +++ b/icons/solid/stroopwafel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/subscript.svg b/icons/solid/subscript.svg new file mode 100644 index 0000000..980ba96 --- /dev/null +++ b/icons/solid/subscript.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/suitcase-medical.svg b/icons/solid/suitcase-medical.svg new file mode 100644 index 0000000..c57165f --- /dev/null +++ b/icons/solid/suitcase-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/suitcase-rolling.svg b/icons/solid/suitcase-rolling.svg new file mode 100644 index 0000000..03c1c47 --- /dev/null +++ b/icons/solid/suitcase-rolling.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/suitcase.svg b/icons/solid/suitcase.svg new file mode 100644 index 0000000..67b7709 --- /dev/null +++ b/icons/solid/suitcase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sun-plant-wilt.svg b/icons/solid/sun-plant-wilt.svg new file mode 100644 index 0000000..6efe4d4 --- /dev/null +++ b/icons/solid/sun-plant-wilt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/sun.svg b/icons/solid/sun.svg new file mode 100644 index 0000000..245e503 --- /dev/null +++ b/icons/solid/sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/superscript.svg b/icons/solid/superscript.svg new file mode 100644 index 0000000..303f65a --- /dev/null +++ b/icons/solid/superscript.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/swatchbook.svg b/icons/solid/swatchbook.svg new file mode 100644 index 0000000..01cc049 --- /dev/null +++ b/icons/solid/swatchbook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/synagogue.svg b/icons/solid/synagogue.svg new file mode 100644 index 0000000..4ec3572 --- /dev/null +++ b/icons/solid/synagogue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/syringe.svg b/icons/solid/syringe.svg new file mode 100644 index 0000000..8abc3a5 --- /dev/null +++ b/icons/solid/syringe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/t.svg b/icons/solid/t.svg new file mode 100644 index 0000000..04e2e5c --- /dev/null +++ b/icons/solid/t.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-cells-column-lock.svg b/icons/solid/table-cells-column-lock.svg new file mode 100644 index 0000000..91748ba --- /dev/null +++ b/icons/solid/table-cells-column-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-cells-large.svg b/icons/solid/table-cells-large.svg new file mode 100644 index 0000000..091f891 --- /dev/null +++ b/icons/solid/table-cells-large.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-cells-row-lock.svg b/icons/solid/table-cells-row-lock.svg new file mode 100644 index 0000000..a2dc12c --- /dev/null +++ b/icons/solid/table-cells-row-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-cells-row-unlock.svg b/icons/solid/table-cells-row-unlock.svg new file mode 100644 index 0000000..2d015e4 --- /dev/null +++ b/icons/solid/table-cells-row-unlock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-cells.svg b/icons/solid/table-cells.svg new file mode 100644 index 0000000..9b9984b --- /dev/null +++ b/icons/solid/table-cells.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-columns.svg b/icons/solid/table-columns.svg new file mode 100644 index 0000000..df9e0ad --- /dev/null +++ b/icons/solid/table-columns.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-list.svg b/icons/solid/table-list.svg new file mode 100644 index 0000000..81e86aa --- /dev/null +++ b/icons/solid/table-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table-tennis-paddle-ball.svg b/icons/solid/table-tennis-paddle-ball.svg new file mode 100644 index 0000000..34b4e58 --- /dev/null +++ b/icons/solid/table-tennis-paddle-ball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/table.svg b/icons/solid/table.svg new file mode 100644 index 0000000..cfb26b5 --- /dev/null +++ b/icons/solid/table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tablet-button.svg b/icons/solid/tablet-button.svg new file mode 100644 index 0000000..d1081d0 --- /dev/null +++ b/icons/solid/tablet-button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tablet-screen-button.svg b/icons/solid/tablet-screen-button.svg new file mode 100644 index 0000000..5151256 --- /dev/null +++ b/icons/solid/tablet-screen-button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tablet.svg b/icons/solid/tablet.svg new file mode 100644 index 0000000..0f11e10 --- /dev/null +++ b/icons/solid/tablet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tablets.svg b/icons/solid/tablets.svg new file mode 100644 index 0000000..7cf83c2 --- /dev/null +++ b/icons/solid/tablets.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tachograph-digital.svg b/icons/solid/tachograph-digital.svg new file mode 100644 index 0000000..bea600e --- /dev/null +++ b/icons/solid/tachograph-digital.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tag.svg b/icons/solid/tag.svg new file mode 100644 index 0000000..ce10d6b --- /dev/null +++ b/icons/solid/tag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tags.svg b/icons/solid/tags.svg new file mode 100644 index 0000000..5ccaa38 --- /dev/null +++ b/icons/solid/tags.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tape.svg b/icons/solid/tape.svg new file mode 100644 index 0000000..61f8a7c --- /dev/null +++ b/icons/solid/tape.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tarp-droplet.svg b/icons/solid/tarp-droplet.svg new file mode 100644 index 0000000..6981eb3 --- /dev/null +++ b/icons/solid/tarp-droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tarp.svg b/icons/solid/tarp.svg new file mode 100644 index 0000000..95f30b8 --- /dev/null +++ b/icons/solid/tarp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/taxi.svg b/icons/solid/taxi.svg new file mode 100644 index 0000000..82ab618 --- /dev/null +++ b/icons/solid/taxi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/teeth-open.svg b/icons/solid/teeth-open.svg new file mode 100644 index 0000000..f9dd2d1 --- /dev/null +++ b/icons/solid/teeth-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/teeth.svg b/icons/solid/teeth.svg new file mode 100644 index 0000000..b8fc921 --- /dev/null +++ b/icons/solid/teeth.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-arrow-down.svg b/icons/solid/temperature-arrow-down.svg new file mode 100644 index 0000000..a6941c3 --- /dev/null +++ b/icons/solid/temperature-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-arrow-up.svg b/icons/solid/temperature-arrow-up.svg new file mode 100644 index 0000000..90925a0 --- /dev/null +++ b/icons/solid/temperature-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-empty.svg b/icons/solid/temperature-empty.svg new file mode 100644 index 0000000..fd474d6 --- /dev/null +++ b/icons/solid/temperature-empty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-full.svg b/icons/solid/temperature-full.svg new file mode 100644 index 0000000..05fc124 --- /dev/null +++ b/icons/solid/temperature-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-half.svg b/icons/solid/temperature-half.svg new file mode 100644 index 0000000..acd45ef --- /dev/null +++ b/icons/solid/temperature-half.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-high.svg b/icons/solid/temperature-high.svg new file mode 100644 index 0000000..f1a2b75 --- /dev/null +++ b/icons/solid/temperature-high.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-low.svg b/icons/solid/temperature-low.svg new file mode 100644 index 0000000..24efcfd --- /dev/null +++ b/icons/solid/temperature-low.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-quarter.svg b/icons/solid/temperature-quarter.svg new file mode 100644 index 0000000..17e3a18 --- /dev/null +++ b/icons/solid/temperature-quarter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/temperature-three-quarters.svg b/icons/solid/temperature-three-quarters.svg new file mode 100644 index 0000000..2d318a5 --- /dev/null +++ b/icons/solid/temperature-three-quarters.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tenge-sign.svg b/icons/solid/tenge-sign.svg new file mode 100644 index 0000000..bf00b5a --- /dev/null +++ b/icons/solid/tenge-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tent-arrow-down-to-line.svg b/icons/solid/tent-arrow-down-to-line.svg new file mode 100644 index 0000000..046ff1b --- /dev/null +++ b/icons/solid/tent-arrow-down-to-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tent-arrow-left-right.svg b/icons/solid/tent-arrow-left-right.svg new file mode 100644 index 0000000..e01ae9b --- /dev/null +++ b/icons/solid/tent-arrow-left-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tent-arrow-turn-left.svg b/icons/solid/tent-arrow-turn-left.svg new file mode 100644 index 0000000..7719884 --- /dev/null +++ b/icons/solid/tent-arrow-turn-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tent-arrows-down.svg b/icons/solid/tent-arrows-down.svg new file mode 100644 index 0000000..2710fb7 --- /dev/null +++ b/icons/solid/tent-arrows-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tent.svg b/icons/solid/tent.svg new file mode 100644 index 0000000..b80a93c --- /dev/null +++ b/icons/solid/tent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tents.svg b/icons/solid/tents.svg new file mode 100644 index 0000000..b8e1797 --- /dev/null +++ b/icons/solid/tents.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/terminal.svg b/icons/solid/terminal.svg new file mode 100644 index 0000000..212c79f --- /dev/null +++ b/icons/solid/terminal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/text-height.svg b/icons/solid/text-height.svg new file mode 100644 index 0000000..73bd157 --- /dev/null +++ b/icons/solid/text-height.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/text-slash.svg b/icons/solid/text-slash.svg new file mode 100644 index 0000000..dfb0c7e --- /dev/null +++ b/icons/solid/text-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/text-width.svg b/icons/solid/text-width.svg new file mode 100644 index 0000000..8aa9fa1 --- /dev/null +++ b/icons/solid/text-width.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/thermometer.svg b/icons/solid/thermometer.svg new file mode 100644 index 0000000..ffb7b75 --- /dev/null +++ b/icons/solid/thermometer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/thumbs-down.svg b/icons/solid/thumbs-down.svg new file mode 100644 index 0000000..4ec672b --- /dev/null +++ b/icons/solid/thumbs-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/thumbs-up.svg b/icons/solid/thumbs-up.svg new file mode 100644 index 0000000..ed07dd5 --- /dev/null +++ b/icons/solid/thumbs-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/thumbtack-slash.svg b/icons/solid/thumbtack-slash.svg new file mode 100644 index 0000000..5865864 --- /dev/null +++ b/icons/solid/thumbtack-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/thumbtack.svg b/icons/solid/thumbtack.svg new file mode 100644 index 0000000..3834b86 --- /dev/null +++ b/icons/solid/thumbtack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ticket-simple.svg b/icons/solid/ticket-simple.svg new file mode 100644 index 0000000..c7ff9ef --- /dev/null +++ b/icons/solid/ticket-simple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/ticket.svg b/icons/solid/ticket.svg new file mode 100644 index 0000000..55515a0 --- /dev/null +++ b/icons/solid/ticket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/timeline.svg b/icons/solid/timeline.svg new file mode 100644 index 0000000..2455e66 --- /dev/null +++ b/icons/solid/timeline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toggle-off.svg b/icons/solid/toggle-off.svg new file mode 100644 index 0000000..64e3f9c --- /dev/null +++ b/icons/solid/toggle-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toggle-on.svg b/icons/solid/toggle-on.svg new file mode 100644 index 0000000..d33f19b --- /dev/null +++ b/icons/solid/toggle-on.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toilet-paper-slash.svg b/icons/solid/toilet-paper-slash.svg new file mode 100644 index 0000000..4e2dd66 --- /dev/null +++ b/icons/solid/toilet-paper-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toilet-paper.svg b/icons/solid/toilet-paper.svg new file mode 100644 index 0000000..ac342d7 --- /dev/null +++ b/icons/solid/toilet-paper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toilet-portable.svg b/icons/solid/toilet-portable.svg new file mode 100644 index 0000000..fde14bb --- /dev/null +++ b/icons/solid/toilet-portable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toilet.svg b/icons/solid/toilet.svg new file mode 100644 index 0000000..3baf0b4 --- /dev/null +++ b/icons/solid/toilet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toilets-portable.svg b/icons/solid/toilets-portable.svg new file mode 100644 index 0000000..6476942 --- /dev/null +++ b/icons/solid/toilets-portable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/toolbox.svg b/icons/solid/toolbox.svg new file mode 100644 index 0000000..841cd2a --- /dev/null +++ b/icons/solid/toolbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tooth.svg b/icons/solid/tooth.svg new file mode 100644 index 0000000..498181d --- /dev/null +++ b/icons/solid/tooth.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/torii-gate.svg b/icons/solid/torii-gate.svg new file mode 100644 index 0000000..dc846e6 --- /dev/null +++ b/icons/solid/torii-gate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tornado.svg b/icons/solid/tornado.svg new file mode 100644 index 0000000..4450224 --- /dev/null +++ b/icons/solid/tornado.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tower-broadcast.svg b/icons/solid/tower-broadcast.svg new file mode 100644 index 0000000..13479a9 --- /dev/null +++ b/icons/solid/tower-broadcast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tower-cell.svg b/icons/solid/tower-cell.svg new file mode 100644 index 0000000..f87e4d1 --- /dev/null +++ b/icons/solid/tower-cell.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tower-observation.svg b/icons/solid/tower-observation.svg new file mode 100644 index 0000000..6ba0a52 --- /dev/null +++ b/icons/solid/tower-observation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tractor.svg b/icons/solid/tractor.svg new file mode 100644 index 0000000..6edd8c8 --- /dev/null +++ b/icons/solid/tractor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trademark.svg b/icons/solid/trademark.svg new file mode 100644 index 0000000..9a51d06 --- /dev/null +++ b/icons/solid/trademark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/traffic-light.svg b/icons/solid/traffic-light.svg new file mode 100644 index 0000000..b9c0524 --- /dev/null +++ b/icons/solid/traffic-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trailer.svg b/icons/solid/trailer.svg new file mode 100644 index 0000000..9b3bd2a --- /dev/null +++ b/icons/solid/trailer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/train-subway.svg b/icons/solid/train-subway.svg new file mode 100644 index 0000000..df144de --- /dev/null +++ b/icons/solid/train-subway.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/train-tram.svg b/icons/solid/train-tram.svg new file mode 100644 index 0000000..5fc79fe --- /dev/null +++ b/icons/solid/train-tram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/train.svg b/icons/solid/train.svg new file mode 100644 index 0000000..b72993d --- /dev/null +++ b/icons/solid/train.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/transgender.svg b/icons/solid/transgender.svg new file mode 100644 index 0000000..200a4ae --- /dev/null +++ b/icons/solid/transgender.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trash-arrow-up.svg b/icons/solid/trash-arrow-up.svg new file mode 100644 index 0000000..b3b42de --- /dev/null +++ b/icons/solid/trash-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trash-can-arrow-up.svg b/icons/solid/trash-can-arrow-up.svg new file mode 100644 index 0000000..9072648 --- /dev/null +++ b/icons/solid/trash-can-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trash-can.svg b/icons/solid/trash-can.svg new file mode 100644 index 0000000..0fcf984 --- /dev/null +++ b/icons/solid/trash-can.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trash.svg b/icons/solid/trash.svg new file mode 100644 index 0000000..e68a29f --- /dev/null +++ b/icons/solid/trash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tree-city.svg b/icons/solid/tree-city.svg new file mode 100644 index 0000000..c17a74d --- /dev/null +++ b/icons/solid/tree-city.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tree.svg b/icons/solid/tree.svg new file mode 100644 index 0000000..30b46e6 --- /dev/null +++ b/icons/solid/tree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/triangle-exclamation.svg b/icons/solid/triangle-exclamation.svg new file mode 100644 index 0000000..00143d6 --- /dev/null +++ b/icons/solid/triangle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trophy.svg b/icons/solid/trophy.svg new file mode 100644 index 0000000..b987bd7 --- /dev/null +++ b/icons/solid/trophy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trowel-bricks.svg b/icons/solid/trowel-bricks.svg new file mode 100644 index 0000000..403b690 --- /dev/null +++ b/icons/solid/trowel-bricks.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/trowel.svg b/icons/solid/trowel.svg new file mode 100644 index 0000000..5edf6f9 --- /dev/null +++ b/icons/solid/trowel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-arrow-right.svg b/icons/solid/truck-arrow-right.svg new file mode 100644 index 0000000..b1d5ae9 --- /dev/null +++ b/icons/solid/truck-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-droplet.svg b/icons/solid/truck-droplet.svg new file mode 100644 index 0000000..86cecb3 --- /dev/null +++ b/icons/solid/truck-droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-fast.svg b/icons/solid/truck-fast.svg new file mode 100644 index 0000000..65710e8 --- /dev/null +++ b/icons/solid/truck-fast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-field-un.svg b/icons/solid/truck-field-un.svg new file mode 100644 index 0000000..cf7f054 --- /dev/null +++ b/icons/solid/truck-field-un.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-field.svg b/icons/solid/truck-field.svg new file mode 100644 index 0000000..d0459fb --- /dev/null +++ b/icons/solid/truck-field.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-front.svg b/icons/solid/truck-front.svg new file mode 100644 index 0000000..a917c8c --- /dev/null +++ b/icons/solid/truck-front.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-medical.svg b/icons/solid/truck-medical.svg new file mode 100644 index 0000000..3db62df --- /dev/null +++ b/icons/solid/truck-medical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-monster.svg b/icons/solid/truck-monster.svg new file mode 100644 index 0000000..2d0c1bc --- /dev/null +++ b/icons/solid/truck-monster.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-moving.svg b/icons/solid/truck-moving.svg new file mode 100644 index 0000000..54be3ca --- /dev/null +++ b/icons/solid/truck-moving.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-pickup.svg b/icons/solid/truck-pickup.svg new file mode 100644 index 0000000..af8a246 --- /dev/null +++ b/icons/solid/truck-pickup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-plane.svg b/icons/solid/truck-plane.svg new file mode 100644 index 0000000..6720212 --- /dev/null +++ b/icons/solid/truck-plane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck-ramp-box.svg b/icons/solid/truck-ramp-box.svg new file mode 100644 index 0000000..497ba7a --- /dev/null +++ b/icons/solid/truck-ramp-box.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/truck.svg b/icons/solid/truck.svg new file mode 100644 index 0000000..b64dced --- /dev/null +++ b/icons/solid/truck.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tty.svg b/icons/solid/tty.svg new file mode 100644 index 0000000..4155763 --- /dev/null +++ b/icons/solid/tty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/turkish-lira-sign.svg b/icons/solid/turkish-lira-sign.svg new file mode 100644 index 0000000..def5c12 --- /dev/null +++ b/icons/solid/turkish-lira-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/turn-down.svg b/icons/solid/turn-down.svg new file mode 100644 index 0000000..8fe4271 --- /dev/null +++ b/icons/solid/turn-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/turn-up.svg b/icons/solid/turn-up.svg new file mode 100644 index 0000000..eaa82dc --- /dev/null +++ b/icons/solid/turn-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/tv.svg b/icons/solid/tv.svg new file mode 100644 index 0000000..b9f567c --- /dev/null +++ b/icons/solid/tv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/u.svg b/icons/solid/u.svg new file mode 100644 index 0000000..dc960a9 --- /dev/null +++ b/icons/solid/u.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/umbrella-beach.svg b/icons/solid/umbrella-beach.svg new file mode 100644 index 0000000..ac4affe --- /dev/null +++ b/icons/solid/umbrella-beach.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/umbrella.svg b/icons/solid/umbrella.svg new file mode 100644 index 0000000..5acd861 --- /dev/null +++ b/icons/solid/umbrella.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/underline.svg b/icons/solid/underline.svg new file mode 100644 index 0000000..2b73a3a --- /dev/null +++ b/icons/solid/underline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/universal-access.svg b/icons/solid/universal-access.svg new file mode 100644 index 0000000..7e78c14 --- /dev/null +++ b/icons/solid/universal-access.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/unlock-keyhole.svg b/icons/solid/unlock-keyhole.svg new file mode 100644 index 0000000..70a2e4e --- /dev/null +++ b/icons/solid/unlock-keyhole.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/unlock.svg b/icons/solid/unlock.svg new file mode 100644 index 0000000..f3a9182 --- /dev/null +++ b/icons/solid/unlock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/up-down-left-right.svg b/icons/solid/up-down-left-right.svg new file mode 100644 index 0000000..13029f8 --- /dev/null +++ b/icons/solid/up-down-left-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/up-down.svg b/icons/solid/up-down.svg new file mode 100644 index 0000000..37b1279 --- /dev/null +++ b/icons/solid/up-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/up-long.svg b/icons/solid/up-long.svg new file mode 100644 index 0000000..a0ae698 --- /dev/null +++ b/icons/solid/up-long.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/up-right-and-down-left-from-center.svg b/icons/solid/up-right-and-down-left-from-center.svg new file mode 100644 index 0000000..b30a637 --- /dev/null +++ b/icons/solid/up-right-and-down-left-from-center.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/up-right-from-square.svg b/icons/solid/up-right-from-square.svg new file mode 100644 index 0000000..c6df01c --- /dev/null +++ b/icons/solid/up-right-from-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/upload.svg b/icons/solid/upload.svg new file mode 100644 index 0000000..73351be --- /dev/null +++ b/icons/solid/upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-astronaut.svg b/icons/solid/user-astronaut.svg new file mode 100644 index 0000000..dd23467 --- /dev/null +++ b/icons/solid/user-astronaut.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-check.svg b/icons/solid/user-check.svg new file mode 100644 index 0000000..b2b9621 --- /dev/null +++ b/icons/solid/user-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-clock.svg b/icons/solid/user-clock.svg new file mode 100644 index 0000000..6e74785 --- /dev/null +++ b/icons/solid/user-clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-doctor.svg b/icons/solid/user-doctor.svg new file mode 100644 index 0000000..b980059 --- /dev/null +++ b/icons/solid/user-doctor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-gear.svg b/icons/solid/user-gear.svg new file mode 100644 index 0000000..f6ad1b8 --- /dev/null +++ b/icons/solid/user-gear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-graduate.svg b/icons/solid/user-graduate.svg new file mode 100644 index 0000000..94bc07f --- /dev/null +++ b/icons/solid/user-graduate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-group.svg b/icons/solid/user-group.svg new file mode 100644 index 0000000..f1f837e --- /dev/null +++ b/icons/solid/user-group.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-injured.svg b/icons/solid/user-injured.svg new file mode 100644 index 0000000..fad4756 --- /dev/null +++ b/icons/solid/user-injured.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-large-slash.svg b/icons/solid/user-large-slash.svg new file mode 100644 index 0000000..cf5c467 --- /dev/null +++ b/icons/solid/user-large-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-large.svg b/icons/solid/user-large.svg new file mode 100644 index 0000000..0cd66c4 --- /dev/null +++ b/icons/solid/user-large.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-lock.svg b/icons/solid/user-lock.svg new file mode 100644 index 0000000..effa2ef --- /dev/null +++ b/icons/solid/user-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-minus.svg b/icons/solid/user-minus.svg new file mode 100644 index 0000000..1e4a3ea --- /dev/null +++ b/icons/solid/user-minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-ninja.svg b/icons/solid/user-ninja.svg new file mode 100644 index 0000000..36f781e --- /dev/null +++ b/icons/solid/user-ninja.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-nurse.svg b/icons/solid/user-nurse.svg new file mode 100644 index 0000000..f7a5c26 --- /dev/null +++ b/icons/solid/user-nurse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-pen.svg b/icons/solid/user-pen.svg new file mode 100644 index 0000000..2d32806 --- /dev/null +++ b/icons/solid/user-pen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-plus.svg b/icons/solid/user-plus.svg new file mode 100644 index 0000000..f348910 --- /dev/null +++ b/icons/solid/user-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-secret.svg b/icons/solid/user-secret.svg new file mode 100644 index 0000000..d38f55b --- /dev/null +++ b/icons/solid/user-secret.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-shield.svg b/icons/solid/user-shield.svg new file mode 100644 index 0000000..ae5b7e1 --- /dev/null +++ b/icons/solid/user-shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-slash.svg b/icons/solid/user-slash.svg new file mode 100644 index 0000000..ba41a6c --- /dev/null +++ b/icons/solid/user-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-tag.svg b/icons/solid/user-tag.svg new file mode 100644 index 0000000..9821929 --- /dev/null +++ b/icons/solid/user-tag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-tie.svg b/icons/solid/user-tie.svg new file mode 100644 index 0000000..ceba765 --- /dev/null +++ b/icons/solid/user-tie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user-xmark.svg b/icons/solid/user-xmark.svg new file mode 100644 index 0000000..9cb0083 --- /dev/null +++ b/icons/solid/user-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/user.svg b/icons/solid/user.svg new file mode 100644 index 0000000..eaa426f --- /dev/null +++ b/icons/solid/user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-between-lines.svg b/icons/solid/users-between-lines.svg new file mode 100644 index 0000000..16df8a0 --- /dev/null +++ b/icons/solid/users-between-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-gear.svg b/icons/solid/users-gear.svg new file mode 100644 index 0000000..40d9398 --- /dev/null +++ b/icons/solid/users-gear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-line.svg b/icons/solid/users-line.svg new file mode 100644 index 0000000..f4e9d1b --- /dev/null +++ b/icons/solid/users-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-rays.svg b/icons/solid/users-rays.svg new file mode 100644 index 0000000..d1d970e --- /dev/null +++ b/icons/solid/users-rays.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-rectangle.svg b/icons/solid/users-rectangle.svg new file mode 100644 index 0000000..e7bcca0 --- /dev/null +++ b/icons/solid/users-rectangle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-slash.svg b/icons/solid/users-slash.svg new file mode 100644 index 0000000..ef6a69d --- /dev/null +++ b/icons/solid/users-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users-viewfinder.svg b/icons/solid/users-viewfinder.svg new file mode 100644 index 0000000..2324b46 --- /dev/null +++ b/icons/solid/users-viewfinder.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/users.svg b/icons/solid/users.svg new file mode 100644 index 0000000..c8666c2 --- /dev/null +++ b/icons/solid/users.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/utensils.svg b/icons/solid/utensils.svg new file mode 100644 index 0000000..5345a60 --- /dev/null +++ b/icons/solid/utensils.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/v.svg b/icons/solid/v.svg new file mode 100644 index 0000000..069abc7 --- /dev/null +++ b/icons/solid/v.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/van-shuttle.svg b/icons/solid/van-shuttle.svg new file mode 100644 index 0000000..9339651 --- /dev/null +++ b/icons/solid/van-shuttle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vault.svg b/icons/solid/vault.svg new file mode 100644 index 0000000..78dff9b --- /dev/null +++ b/icons/solid/vault.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vector-square.svg b/icons/solid/vector-square.svg new file mode 100644 index 0000000..063fffd --- /dev/null +++ b/icons/solid/vector-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/venus-double.svg b/icons/solid/venus-double.svg new file mode 100644 index 0000000..44ea36e --- /dev/null +++ b/icons/solid/venus-double.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/venus-mars.svg b/icons/solid/venus-mars.svg new file mode 100644 index 0000000..2395526 --- /dev/null +++ b/icons/solid/venus-mars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/venus.svg b/icons/solid/venus.svg new file mode 100644 index 0000000..3db00bb --- /dev/null +++ b/icons/solid/venus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vest-patches.svg b/icons/solid/vest-patches.svg new file mode 100644 index 0000000..88768d3 --- /dev/null +++ b/icons/solid/vest-patches.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vest.svg b/icons/solid/vest.svg new file mode 100644 index 0000000..3ef76cc --- /dev/null +++ b/icons/solid/vest.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vial-circle-check.svg b/icons/solid/vial-circle-check.svg new file mode 100644 index 0000000..a75af10 --- /dev/null +++ b/icons/solid/vial-circle-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vial-virus.svg b/icons/solid/vial-virus.svg new file mode 100644 index 0000000..edb39c4 --- /dev/null +++ b/icons/solid/vial-virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vial.svg b/icons/solid/vial.svg new file mode 100644 index 0000000..7261ade --- /dev/null +++ b/icons/solid/vial.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vials.svg b/icons/solid/vials.svg new file mode 100644 index 0000000..065aa35 --- /dev/null +++ b/icons/solid/vials.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/video-slash.svg b/icons/solid/video-slash.svg new file mode 100644 index 0000000..87e9152 --- /dev/null +++ b/icons/solid/video-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/video.svg b/icons/solid/video.svg new file mode 100644 index 0000000..d74ba17 --- /dev/null +++ b/icons/solid/video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vihara.svg b/icons/solid/vihara.svg new file mode 100644 index 0000000..bb2fbde --- /dev/null +++ b/icons/solid/vihara.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/virus-covid-slash.svg b/icons/solid/virus-covid-slash.svg new file mode 100644 index 0000000..24fb66b --- /dev/null +++ b/icons/solid/virus-covid-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/virus-covid.svg b/icons/solid/virus-covid.svg new file mode 100644 index 0000000..6b8040d --- /dev/null +++ b/icons/solid/virus-covid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/virus-slash.svg b/icons/solid/virus-slash.svg new file mode 100644 index 0000000..e668334 --- /dev/null +++ b/icons/solid/virus-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/virus.svg b/icons/solid/virus.svg new file mode 100644 index 0000000..5a3ee72 --- /dev/null +++ b/icons/solid/virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/viruses.svg b/icons/solid/viruses.svg new file mode 100644 index 0000000..b686f49 --- /dev/null +++ b/icons/solid/viruses.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/voicemail.svg b/icons/solid/voicemail.svg new file mode 100644 index 0000000..10f086d --- /dev/null +++ b/icons/solid/voicemail.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volcano.svg b/icons/solid/volcano.svg new file mode 100644 index 0000000..a5798fb --- /dev/null +++ b/icons/solid/volcano.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volleyball.svg b/icons/solid/volleyball.svg new file mode 100644 index 0000000..f0e652b --- /dev/null +++ b/icons/solid/volleyball.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volume-high.svg b/icons/solid/volume-high.svg new file mode 100644 index 0000000..0046a99 --- /dev/null +++ b/icons/solid/volume-high.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volume-low.svg b/icons/solid/volume-low.svg new file mode 100644 index 0000000..4e9b460 --- /dev/null +++ b/icons/solid/volume-low.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volume-off.svg b/icons/solid/volume-off.svg new file mode 100644 index 0000000..d33471e --- /dev/null +++ b/icons/solid/volume-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/volume-xmark.svg b/icons/solid/volume-xmark.svg new file mode 100644 index 0000000..58325ad --- /dev/null +++ b/icons/solid/volume-xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/vr-cardboard.svg b/icons/solid/vr-cardboard.svg new file mode 100644 index 0000000..5739580 --- /dev/null +++ b/icons/solid/vr-cardboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/w.svg b/icons/solid/w.svg new file mode 100644 index 0000000..d0b87c9 --- /dev/null +++ b/icons/solid/w.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/walkie-talkie.svg b/icons/solid/walkie-talkie.svg new file mode 100644 index 0000000..94e0ee4 --- /dev/null +++ b/icons/solid/walkie-talkie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wallet.svg b/icons/solid/wallet.svg new file mode 100644 index 0000000..e19ee2d --- /dev/null +++ b/icons/solid/wallet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wand-magic-sparkles.svg b/icons/solid/wand-magic-sparkles.svg new file mode 100644 index 0000000..8826c32 --- /dev/null +++ b/icons/solid/wand-magic-sparkles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wand-magic.svg b/icons/solid/wand-magic.svg new file mode 100644 index 0000000..0c0841c --- /dev/null +++ b/icons/solid/wand-magic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wand-sparkles.svg b/icons/solid/wand-sparkles.svg new file mode 100644 index 0000000..c156659 --- /dev/null +++ b/icons/solid/wand-sparkles.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/warehouse.svg b/icons/solid/warehouse.svg new file mode 100644 index 0000000..29ecb0b --- /dev/null +++ b/icons/solid/warehouse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/water-ladder.svg b/icons/solid/water-ladder.svg new file mode 100644 index 0000000..893bf5a --- /dev/null +++ b/icons/solid/water-ladder.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/water.svg b/icons/solid/water.svg new file mode 100644 index 0000000..e81c976 --- /dev/null +++ b/icons/solid/water.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wave-square.svg b/icons/solid/wave-square.svg new file mode 100644 index 0000000..1d0c71e --- /dev/null +++ b/icons/solid/wave-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/web-awesome.svg b/icons/solid/web-awesome.svg new file mode 100644 index 0000000..1dac51f --- /dev/null +++ b/icons/solid/web-awesome.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/weight-hanging.svg b/icons/solid/weight-hanging.svg new file mode 100644 index 0000000..1820815 --- /dev/null +++ b/icons/solid/weight-hanging.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/weight-scale.svg b/icons/solid/weight-scale.svg new file mode 100644 index 0000000..0c99b43 --- /dev/null +++ b/icons/solid/weight-scale.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wheat-awn-circle-exclamation.svg b/icons/solid/wheat-awn-circle-exclamation.svg new file mode 100644 index 0000000..72630f2 --- /dev/null +++ b/icons/solid/wheat-awn-circle-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wheat-awn.svg b/icons/solid/wheat-awn.svg new file mode 100644 index 0000000..222627c --- /dev/null +++ b/icons/solid/wheat-awn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wheelchair-move.svg b/icons/solid/wheelchair-move.svg new file mode 100644 index 0000000..aa95de4 --- /dev/null +++ b/icons/solid/wheelchair-move.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wheelchair.svg b/icons/solid/wheelchair.svg new file mode 100644 index 0000000..0d33b51 --- /dev/null +++ b/icons/solid/wheelchair.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/whiskey-glass.svg b/icons/solid/whiskey-glass.svg new file mode 100644 index 0000000..05cfd6e --- /dev/null +++ b/icons/solid/whiskey-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wifi.svg b/icons/solid/wifi.svg new file mode 100644 index 0000000..b0e8305 --- /dev/null +++ b/icons/solid/wifi.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wind.svg b/icons/solid/wind.svg new file mode 100644 index 0000000..984fdcd --- /dev/null +++ b/icons/solid/wind.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/window-maximize.svg b/icons/solid/window-maximize.svg new file mode 100644 index 0000000..532064f --- /dev/null +++ b/icons/solid/window-maximize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/window-minimize.svg b/icons/solid/window-minimize.svg new file mode 100644 index 0000000..8c27a23 --- /dev/null +++ b/icons/solid/window-minimize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/window-restore.svg b/icons/solid/window-restore.svg new file mode 100644 index 0000000..f7c3206 --- /dev/null +++ b/icons/solid/window-restore.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wine-bottle.svg b/icons/solid/wine-bottle.svg new file mode 100644 index 0000000..8657c9a --- /dev/null +++ b/icons/solid/wine-bottle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wine-glass-empty.svg b/icons/solid/wine-glass-empty.svg new file mode 100644 index 0000000..6ee480e --- /dev/null +++ b/icons/solid/wine-glass-empty.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wine-glass.svg b/icons/solid/wine-glass.svg new file mode 100644 index 0000000..17d3a75 --- /dev/null +++ b/icons/solid/wine-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/won-sign.svg b/icons/solid/won-sign.svg new file mode 100644 index 0000000..6fce303 --- /dev/null +++ b/icons/solid/won-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/worm.svg b/icons/solid/worm.svg new file mode 100644 index 0000000..03fe287 --- /dev/null +++ b/icons/solid/worm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/wrench.svg b/icons/solid/wrench.svg new file mode 100644 index 0000000..443f514 --- /dev/null +++ b/icons/solid/wrench.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/x-ray.svg b/icons/solid/x-ray.svg new file mode 100644 index 0000000..7a29e82 --- /dev/null +++ b/icons/solid/x-ray.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/x.svg b/icons/solid/x.svg new file mode 100644 index 0000000..556de61 --- /dev/null +++ b/icons/solid/x.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/xmark.svg b/icons/solid/xmark.svg new file mode 100644 index 0000000..6d3f10f --- /dev/null +++ b/icons/solid/xmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/xmarks-lines.svg b/icons/solid/xmarks-lines.svg new file mode 100644 index 0000000..c5f9628 --- /dev/null +++ b/icons/solid/xmarks-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/y.svg b/icons/solid/y.svg new file mode 100644 index 0000000..6f3004e --- /dev/null +++ b/icons/solid/y.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/yen-sign.svg b/icons/solid/yen-sign.svg new file mode 100644 index 0000000..6c87cda --- /dev/null +++ b/icons/solid/yen-sign.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/yin-yang.svg b/icons/solid/yin-yang.svg new file mode 100644 index 0000000..fc0e4ed --- /dev/null +++ b/icons/solid/yin-yang.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/solid/z.svg b/icons/solid/z.svg new file mode 100644 index 0000000..9d38042 --- /dev/null +++ b/icons/solid/z.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/square_foot.svg b/icons/square_foot.svg deleted file mode 100644 index ffb13f8..0000000 --- a/icons/square_foot.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/swap_horiz.svg b/icons/swap_horiz.svg deleted file mode 100644 index 045284e..0000000 --- a/icons/swap_horiz.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/swap_vert.svg b/icons/swap_vert.svg deleted file mode 100644 index 1cfa607..0000000 --- a/icons/swap_vert.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/target.svg b/icons/target.svg deleted file mode 100644 index 1b79629..0000000 --- a/icons/target.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/visibility.svg b/icons/visibility.svg deleted file mode 100644 index f510cf4..0000000 --- a/icons/visibility.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/width.svg b/icons/width.svg deleted file mode 100644 index 63b1820..0000000 --- a/icons/width.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/icons/zoom_in.svg b/icons/zoom_in.svg deleted file mode 100644 index f0cc93e..0000000 --- a/icons/zoom_in.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/index.html b/index.html index e83a175..87f7c6c 100644 --- a/index.html +++ b/index.html @@ -3,24 +3,44 @@ mixx + + - +
+
+
+
+
-
+
+
+
+
+
-
-
+
+
-
+
+
+
+ + + diff --git a/main.js b/main.js deleted file mode 100644 index 3b03507..0000000 --- a/main.js +++ /dev/null @@ -1,38 +0,0 @@ -// main.js - -import { app, BrowserWindow } from 'electron'; -import path from 'path'; - -function createWindow() { - const mainWindow = new BrowserWindow({ - width: 800, - height: 600, - webPreferences: { - contextIsolation: false, // Set to false to enable console interaction - enableRemoteModule: true, // Set to true if you need to use the remote module - nodeIntegration: true // Ensure this is set to true to load renderer.js - } - }); - - mainWindow.maximize(); - mainWindow.loadFile('index.html'); - - mainWindow.webContents.openDevTools(); - -} - -app.on('ready', createWindow); - -app.on('window-all-closed', () => { - if (process.platform !== 'darwin') { - app.quit(); - } - -}); - -app.on('activate', () => { - if (BrowserWindow.getAllWindows().length === 0) { - createWindow(); - } - -}); diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 1b1bbf8..0000000 --- a/package-lock.json +++ /dev/null @@ -1,2143 +0,0 @@ -{ - "name": "mixx", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "mixx", - "version": "1.0.0", - "devDependencies": { - "electron": "^31.3.1", - "eslint": "^9.9.1", - "globals": "^15.9.0", - "nodemon": "^3.1.4" - } - }, - "node_modules/@electron/get": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", - "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "env-paths": "^2.2.0", - "fs-extra": "^8.1.0", - "got": "^11.8.5", - "progress": "^2.0.3", - "semver": "^6.2.0", - "sumchecker": "^3.0.1" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "global-agent": "^3.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", - "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", - "dev": true, - "dependencies": { - "@eslint/object-schema": "^2.1.4", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", - "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.1.tgz", - "integrity": "sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", - "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/retry": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz", - "integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "dev": true, - "dependencies": { - "defer-to-connect": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@types/cacheable-request": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", - "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", - "dev": true, - "dependencies": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" - } - }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", - "dev": true - }, - "node_modules/@types/keyv": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", - "dev": true, - "dependencies": { - "undici-types": "~6.19.2" - } - }, - "node_modules/@types/responselike": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", - "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yauzl": { - "version": "2.10.3", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", - "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boolean": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", - "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", - "dev": true, - "optional": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", - "dev": true, - "engines": { - "node": ">=10.6.0" - } - }, - "node_modules/cacheable-request": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", - "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", - "dev": true, - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dev": true, - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "optional": true, - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "optional": true, - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true, - "optional": true - }, - "node_modules/electron": { - "version": "31.4.0", - "resolved": "https://registry.npmjs.org/electron/-/electron-31.4.0.tgz", - "integrity": "sha512-YTwKoAA+nrJMlI1TTHnIXLYWoQLKnhbkz0qxZcI7Hadcy0UaFMFs9xzwvH2MnrRpVJy7RKo49kVGuvSdRl8zMA==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@electron/get": "^2.0.0", - "@types/node": "^20.9.0", - "extract-zip": "^2.0.1" - }, - "bin": { - "electron": "cli.js" - }, - "engines": { - "node": ">= 12.20.55" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dev": true, - "optional": true, - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true, - "optional": true - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.1.tgz", - "integrity": "sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.11.0", - "@eslint/config-array": "^0.18.0", - "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.9.1", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.3.0", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.0.2", - "eslint-visitor-keys": "^4.0.0", - "espree": "^10.1.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-scope": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz", - "integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", - "dev": true, - "dependencies": { - "acorn": "^8.12.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "optional": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dev": true, - "optional": true, - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/global-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", - "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", - "dev": true, - "optional": true, - "dependencies": { - "boolean": "^3.0.1", - "es6-error": "^4.1.1", - "matcher": "^3.0.0", - "roarr": "^2.15.3", - "semver": "^7.3.2", - "serialize-error": "^7.0.1" - }, - "engines": { - "node": ">=10.0" - } - }, - "node_modules/global-agent/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/globals": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", - "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "optional": true, - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "optional": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "optional": true, - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, - "optional": true, - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "dev": true, - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true, - "optional": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", - "dev": true, - "optional": true, - "dependencies": { - "escape-string-regexp": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/nodemon": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.4.tgz", - "integrity": "sha512-wjPBbFhtpJwmIeY2yP7QF+UKzPfltVGtfce1g/bB15/8vCGZj8uxD62b/b9M9/WVgme0NZudpownKN+c0plXlQ==", - "dev": true, - "dependencies": { - "chokidar": "^3.5.2", - "debug": "^4", - "ignore-by-default": "^1.0.1", - "minimatch": "^3.1.2", - "pstree.remy": "^1.1.8", - "semver": "^7.5.3", - "simple-update-notifier": "^2.0.0", - "supports-color": "^5.5.0", - "touch": "^3.1.0", - "undefsafe": "^2.0.5" - }, - "bin": { - "nodemon": "bin/nodemon.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/nodemon" - } - }, - "node_modules/nodemon/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/nodemon/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/nodemon/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/pstree.remy": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", - "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", - "dev": true - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "dev": true, - "dependencies": { - "lowercase-keys": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/roarr": { - "version": "2.15.4", - "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", - "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", - "dev": true, - "optional": true, - "dependencies": { - "boolean": "^3.0.1", - "detect-node": "^2.0.4", - "globalthis": "^1.0.1", - "json-stringify-safe": "^5.0.1", - "semver-compare": "^1.0.0", - "sprintf-js": "^1.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true, - "optional": true - }, - "node_modules/serialize-error": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", - "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", - "dev": true, - "optional": true, - "dependencies": { - "type-fest": "^0.13.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/simple-update-notifier": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", - "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/simple-update-notifier/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true, - "optional": true - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sumchecker": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", - "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", - "dev": true, - "dependencies": { - "debug": "^4.1.0" - }, - "engines": { - "node": ">= 8.0" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/touch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.1.tgz", - "integrity": "sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==", - "dev": true, - "bin": { - "nodetouch": "bin/nodetouch.js" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/undefsafe": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", - "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", - "dev": true - }, - "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index f0e3167..0000000 --- a/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "mixx", - "version": "1.0.0", - "type": "module", - "description": "", - "main": "main.js", - "scripts": { - "start": "nodemon --exec electron ." - }, - "devDependencies": { - "electron": "^31.3.1", - "eslint": "^9.9.1", - "globals": "^15.9.0", - "nodemon": "^3.1.4" - } -} diff --git a/scripts/canvas.js b/scripts/canvas.js index f8755d5..3fe7c1e 100644 --- a/scripts/canvas.js +++ b/scripts/canvas.js @@ -1,161 +1,218 @@ -/* global makeColor */ - function disableImageSmoothing({ctx}) { ctx.imageSmoothingEnabled = false; if (ctx.imageSmoothingEnabled !== false) { ctx.mozImageSmoothingEnabled = false; - ctx.webkitImageSmoothingEnabled = false; ctx.msImageSmoothingEnabled = false; + ctx.webkitImageSmoothingEnabled = false; + ctx.msImageSmoothingEnabled = false; } }; function makeCanvas({height, width}) { const canvas = document.createElement("canvas"); - canvas.ctx = this.getContext("2d"); - canvas.temp = document.createElement("canvas"); - canvas.temp.ctx = this.temp.getContext("2d"); - canvas.resize({height, width}); - - canvas.getData = function() { - return this.ctx.getImageData(0, 0, this.width, this.height).data; - }; - - canvas.fromDataUrl = function({dataUrl}) { - const image = new Image(); - image.src = dataUrl; - image.onload = () => { - this.width = image.width; - this.height = image.height; - this.style.width = `${image.width}px`; - this.style.height = `${image.height}px`; - this.ctx.drawImage(image, 0, 0); - disableImageSmoothing(this.ctx); - }; - return this; - }; - - canvas.setHeight = function({height}) { - this.height = height; - this.style.height = `${height}px`; - disableImageSmoothing(this.ctx); - return this; - }; - - canvas.setWidth = function({width}) { - this.width = width; - this.style.width = `${width}px`; - disableImageSmoothing(this.ctx); - return this; - }; - - canvas.resize = function({height, width}) { - this.height = height; - this.width = width; - this.style.height = `${height}px`; - this.style.width = `${width}px`; - disableImageSmoothing(this.ctx); - return this; - }; - - canvas.clear = function() { - this.ctx.clearRect(0, 0, this.width, this.height); - return this; - }; - - canvas.fill = function({color}) { - this.ctx.fillStyle = color.toRgbaString(); - this.ctx.fillRect(0, 0, this.width, this.height); - return this; - }; - - canvas.getColorAtPixel = function({x, y}) { - const data = this.getData(); - const index = (y * this.width + x) * 4; + + canvas.save = function() { // {{{ + canvas.temp.ctx.clearRect(0, 0, canvas.temp.width, canvas.temp.height); + canvas.temp.ctx.drawImage(canvas, 0, 0); + + return canvas; + } // }}} + + canvas.restore = function({x=0, y=0}={}) { // {{{ + canvas.ctx.drawImage(canvas.temp, x, y); + + return canvas; + } // }}} + + canvas.add = function({canvas2}) { // {{{ + canvas.ctx.drawImage(canvas2, 0, 0); + + return canvas; + } // }}} + + canvas.getData = function() { // {{{ + return canvas.ctx.getImageData(0, 0, canvas.width, canvas.height).data; + }; // }}} + + canvas.fromDataUrl = function({dataUrl}) { // {{{ + return new Promise((resolve, reject) => { + const image = new Image(); + image.src = dataUrl; + image.onload = () => { + canvas.width = image.width; + canvas.height = image.height; + canvas.style.width = `${image.width}px`; + canvas.style.height = `${image.height}px`; + canvas.ctx.drawImage(image, 0, 0); + disableImageSmoothing({ctx: canvas.ctx}); + resolve(canvas); + }; + image.onerror = (error) => { + reject(error); // Reject the promise if an error occurs + } + }); + } // }}} + + canvas.toDataUrl = function() { // {{{ + return canvas.toDataURL(); + }; // }}} + + canvas.resize = function({height, width}) { // {{{ + canvas.save(); + canvas.clear(); + canvas.height = height; + canvas.width = width; + canvas.style.height = `${height}px`; + canvas.style.width = `${width}px`; + disableImageSmoothing({ctx: canvas.ctx}); + canvas.restore(); + + canvas.temp.height = height; + canvas.temp.width = width; + canvas.temp.style.height = `${height}px`; + canvas.temp.style.width = `${width}px`; + disableImageSmoothing({ctx: canvas.temp.ctx}); + + return canvas; + }; // }}} + + canvas.drawRect = function({x, y, width, height, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + x = Math.round(x); + y = Math.round(y); + width = Math.round(width); + height = Math.round(height); + if (erase === true) { + canvas.ctx.clearRect(x, y, width, height); + } else { + canvas.ctx.fillStyle = color.toRgbaString(); + canvas.ctx.fillRect(x, y, width, height); + } + return canvas; + }; // }}} + + canvas.clear = function() { // {{{ + canvas.drawRect({ + x: 0, + y: 0, + width: canvas.width, + height: canvas.height, + erase: true, + }); + + return canvas; + }; // }}} + + canvas.fill = function({color=makeColor({r: 0, g: 0, b: 0, a: 255})}) { // {{{ + canvas.drawRect({ + x: 0, + y: 0, + width: canvas.width, + height: canvas.height, + color: color, + }); + + return canvas; + }; // }}} + + canvas.getPixel = function({x, y}) { // {{{ + if (x < 0 || x >= canvas.width || y < 0 || y >= canvas.height) { + return makeColor({r: 0, g: 0, b: 0, a: 0}); + } + const data = canvas.getData(); + const index = (y * canvas.width + x) * 4; + const r = data[index]; + const g = data[index + 1]; + const b = data[index + 2]; + const a = data[index + 3]; return makeColor({r: data[index], g: data[index + 1], b: data[index + 2], a: data[index + 3]}); - }; - - canvas.setColorAtPixel = function({x, y, color}) { - const data = this.getData(); - const index = (y * this.width + x) * 4; - const rgbaArray = color.toRgbaArray(); - data[index] = rgbaArray[0]; // red - data[index + 1] = rgbaArray[1]; // green - data[index + 2] = rgbaArray[2]; // blue - data[index + 3] = rgbaArray[3]; // alpha - return this; - }; - - canvas.drawLineWithPixels = function({x1, y1, x2, y2, color}) { + }; // }}} + + canvas.drawPixel = function({x, y, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + canvas.drawRect({ + x, + y, + width: 1, + height: 1, + color, + erase, + }); + + return canvas; + }; // }}} + + canvas.drawLineWithPixels = function({x1, y1, x2, y2, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + canvas.ctx.fillStyle = color.toRgbaString(); const dx = Math.abs(x2 - x1); const dy = Math.abs(y2 - y1); const sx = x1 < x2 ? 1 : -1; const sy = y1 < y2 ? 1 : -1; let err = dx - dy; while (true) { - this.setColorAtPixel(x1, y1, color); + canvas.drawPixel({x: x1, y: y1, color, erase}); if (x1 === x2 && y1 === y2) break; const e2 = err * 2; if (e2 > -dy) { err -= dy; x1 += sx; } if (e2 < dx) { err += dx; y1 += sy; } } - return this; - }; - canvas.drawEmptyRectangle = function({x, y, width, height, color}) { - this.ctx.fillStyle = color.toRgbaString(); - for (let x1 = x; x1 < x + width; x1++) { - this.setPixel(x1, y, color.toRgbaArray()); - } - for (let y1 = y; y1 < y + height; y1++) { - this.setPixel(x, y1, color.toRgbaString()); - } - for (let x1 = x; x1 < x + width; x1++) { - this.setPixel(x1, y + height, color.toRgbaString()); - } - for (let y1 = y; y1 < y + height; y1++) { - this.setPixel(x + width, y1, color.toRgbaString()); - } - return this; - }; + return canvas; + }; // }}} - canvas.drawRectangle = function({x, y, width, height, color}) { - for (let x1 = x; x1 < x + width; x1++) { - for (let y1 = y; y1 < y + height; y1++) { - this.setPixel(x1, y1, color.toRgbaString()); - } - } - return this; - }; + canvas.drawEmptyRectangle = function({x, y, width, height, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + width = Math.round(width); + height = Math.round(height); + canvas.rect({x: x, y: y, width: width, height: 1, color, erase}); + canvas.rect({x: x, y: y, width: 1, height: height, color, erase}); + canvas.rect({x: x, y: y + height, width: width, height: 1, color, erase}); + canvas.rect({x: x + width, y: y, width: 1, height: height, color, erase}); - canvas.drawEmptyCircle = function({x, y, diameter, color}) { - const radius = Math.floor(diameter / 2); + return canvas; + }; // }}} + + canvas.drawCircle = function({x, y, diameter, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + if (diameter === 1) { + canvas.drawPixel({x, y, color, erase}); + } + let radius = Math.floor(diameter / 2); + let radiusSquared = radius * radius; for (let y1 = -radius; y1 <= radius; y1++) { for (let x1 = -radius; x1 <= radius; x1++) { - if (Math.abs(x1 * x1 + y1 * y1 - radius * radius) < 2) { - this.setPixel(x + x1, y + y1, color.toRgbaString()); + if ((x1 * x1 + y1 * y1) <= radiusSquared - radius) { + canvas.drawRect({x: x + x1, y: y + y1, width: 1, height: 1, color, erase}); } } } - return this; - }; - canvas.drawCircle = function({x, y, diameter, color}) { + return canvas; + }; // }}} + + canvas.drawEmptyCircle = function({x, y, diameter, color = makeColor({r: 0, g: 0, b: 0, a: 255}), erase = false}) { // {{{ if (diameter === 1) { - this.drawPixel(x, y, color.toRgbaString()); + canvas.drawPixel({x, y, color, erase}); + return canvas; } - this.ctx.fillStyle = color.toRgbaString(); + let radius = Math.floor(diameter / 2); let radiusSquared = radius * radius; + for (let y1 = -radius; y1 <= radius; y1++) { for (let x1 = -radius; x1 <= radius; x1++) { - if ((x1 * x1 + y1 * y1) <= radiusSquared - radius) { - this.drawRectangle(x + x1, y + y1, 1, 1, color.toRgbaString()); + let distanceSquared = x1 * x1 + y1 * y1; + + // Check if the point is on the circumference + if (distanceSquared >= radiusSquared - radius && distanceSquared <= radiusSquared + radius) { + canvas.drawRect({x: x + x1, y: y + y1, width: 1, height: 1, color, erase}); } } } - return this; - }; - canvas.drawLineWithCircles = function({x1, y1, x2, y2, diameter, color}) { + return canvas; + }; // }}} + + canvas.drawLineWithCircles = function({x1, y1, x2, y2, diameter, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + if (diameter === 1) { + canvas.drawLineWithPixels({x1, y1, x2, y2, color, erase}); + return canvas; + } const dx = x2 - x1; const dy = y2 - y1; const distance = Math.sqrt(dx * dx + dy * dy); @@ -163,34 +220,82 @@ function makeCanvas({height, width}) { for (let i = 0; i <= steps; i++) { const x = Math.round(x1 + (dx * i) / steps); const y = Math.round(y1 + (dy * i) / steps); - this.drawCircle(x, y, diameter, color.toRgbaString()); + canvas.drawCircle({x, y, diameter, color, erase}); } - return this; - }; - canvas.floodFill = function({x, y, color}) { - const targetColor = this.getColorAtPixel(x, y); + return canvas; + }; // }}} + + canvas.drawCrossHairs = function({x, y, length=5, color=makeColor({r: 0, g: 0, b: 0, a: 255}), erase=false}) { // {{{ + canvas.drawRect({x: x - length, y, width: length * 2, height: 1, color, erase}); + canvas.drawRect({x, y: y - length, width: 1, height: length * 2, color, erase}); + + return canvas; + } // }}} + + canvas.floodFill = function({x, y, color=makeColor({r: 0, g: 0, b: 0, a: 255})}) { // {{{ + + const targetColor = canvas.getPixel({x, y}); const fillColor = color; - if (targetColor.match({color: fillColor})) return; + if (targetColor.match({color2: fillColor})) { + return; + } + + const targetColorArray = targetColor.toRgbaArray(); + const fillColorArray = fillColor.toRgbaArray(); + const data = canvas.getData(); const stack = [{x, y}]; while (stack.length > 0) { const {x, y} = stack.pop(); - const currentColor = this.getColorAtPixel(x, y); - if (currentColor.match({color: targetColor})) { - this.setColorAtPixel({x, y, color: fillColor}); + + const index = (y * canvas.width + x) * 4; + const currentColorArray = [data[index], data[index + 1], data[index + 2], data[index + 3]]; + + if (currentColorArray[0] === targetColorArray[0] && + currentColorArray[1] === targetColorArray[1] && + currentColorArray[2] === targetColorArray[2] && + currentColorArray[3] === targetColorArray[3] + ) { + data[index] = fillColorArray[0]; + data[index + 1] = fillColorArray[1]; + data[index + 2] = fillColorArray[2]; + data[index + 3] = fillColorArray[3]; + if (x > 0) stack.push({x: x - 1, y}); - if (x < this.width - 1) stack.push({x: x + 1, y}); + if (x < canvas.width - 1) stack.push({x: x + 1, y}); if (y > 0) stack.push({x, y: y - 1}); - if (y < this.height - 1) stack.push({x, y: y + 1}); + if (y < canvas.height - 1) stack.push({x, y: y + 1}); } } - return this; - }; + + canvas.ctx.putImageData(new ImageData(data, canvas.width, canvas.height), 0, 0); + + return canvas; + }; // }}} + + canvas.getPositionOnCanvas = function(e) { // {{{ + const rect = canvas.getBoundingClientRect(); + return { + x: Math.round((e.clientX - rect.left) / zoom), + y: Math.round((e.clientY - rect.top) / zoom), + }; + } // }}} + + canvas.init = function() { // {{{ + canvas.style.imageRendering = "pixelated"; + canvas.ctx = canvas.getContext("2d", { willReadFrequently: true }); + canvas.temp = document.createElement("canvas"); + canvas.temp.ctx = canvas.temp.getContext("2d", { willReadFrequently: true }); + canvas.resize({height, width}); + + return canvas; + } // }}} + + canvas.init(); return canvas; } - diff --git a/scripts/color.js b/scripts/color.js index a12c194..8de82a3 100644 --- a/scripts/color.js +++ b/scripts/color.js @@ -1,76 +1,142 @@ -/* exported makeColor */ - -function makeColor({r=0, g=0, b=0, a=255}) { +function makeColor({r=0, g=0, b=0, a=255, controllerElement=undefined} = {}) { const color = {}; - color.r = r; - color.g = g; - color.b = b; - color.a = a; - - color.fromRgbaArray = function({rgbaArray}) { + color.fromRgbaArray = function({rgbaArray}) { // {{{ color.r = rgbaArray[0]; color.g = rgbaArray[1]; color.b = rgbaArray[2]; color.a = rgbaArray[3]; + if (controllerElement) { + controllerElement.style.backgroundColor = color.toRgbaString(); + } + return color; - } + }; // }}} - color.toRgbaArray = function() { + color.toRgbaArray = function() { // {{{ return [color.r, color.g, color.b, color.a]; - } + }; // }}} - color.fromRgbaString = function({rgbaString}) { - color.r = rgbaString.split(',')[0].split('(')[1]; - color.g = rgbaString.split(',')[1]; - color.b = rgbaString.split(',')[2]; - color.a = rgbaString.split(',')[3].split(')')[0]; + color.fromRgbArray = function({rgbArray}) { // {{{ + color.r = rgbArray[0]; + color.g = rgbArray[1]; + color.b = rgbArray[2]; + color.a = 255; + if (controllerElement) { + controllerElement.style.backgroundColor = color.toRgbaString(); + } return color; - } + } // }}} + + color.toRgbArray = function() { // {{{ + return [color.r, color.g, color.b]; + } // }}} + + color.fromRgbaString = function({rgbaString}) { // {{{ + color.r = rgbaString.split(",")[0].split("(")[1]; + color.g = rgbaString.split(",")[1]; + color.b = rgbaString.split(",")[2]; + color.a = rgbaString.split(",")[3].split(")")[0]; + if (controllerElement) { + controllerElement.style.backgroundColor = color.toRgbaString(); + } + return color;; + }; // }}} - color.toRgbaString = function() { + color.toRgbaString = function() { // {{{ return `rgba(${color.r},${color.g},${color.b},${color.a})`; - } + }; // }}} - color.fromRgbString = function(rgbString) { - color.r = rgbString.split(',')[0].split('(')[1]; - color.g = rgbString.split(',')[1]; - color.b = rgbString.split(',')[2].split(')')[0]; + color.fromRgbString = function(rgbString) { // {{{ + color.r = rgbString.split(",")[0].split("(")[1]; + color.g = rgbString.split(",")[1]; + color.b = rgbString.split(",")[2].split(")")[0]; color.a = 255; + if (controllerElement) { + controllerElement.style.backgroundColor = color.toRgbaString(); + } return color; - } + }; // }}} - color.toRgbString = function() { + color.toRgbString = function() { // {{{ return `rgb(${color.r},${color.g},${color.b})`; - } + }; // }}} - color.matchRgbArray = function({rgbArray, tolerance = 2}) { + color.matchRgbaArray = function({color2RgbaArray, tolerance = 2}) { // {{{ + const color1RgbaArray = color.toRgbaArray(); + return Math.abs(color1RgbaArray[0] - color2RgbaArray[0]) <= tolerance && + Math.abs(color1RgbaArray[1] - color2RgbaArray[1]) <= tolerance && + Math.abs(color1RgbaArray[2] - color2RgbaArray[2]) <= tolerance && + color1RgbaArray[3] == color2RgbaArray[3]; + }; // }}} + + color.matchRgbArray = function({color2RgbArray, tolerance = 2}) { // {{{ const color1RgbArray = color.toRgbArray(); - const color2RgbArray = rgbArray; return Math.abs(color1RgbArray[0] - color2RgbArray[0]) <= tolerance && Math.abs(color1RgbArray[1] - color2RgbArray[1]) <= tolerance && - Math.abs(color1RgbArray[2] - color2RgbArray[2]) <= tolerance; - } + Math.abs(color1RgbArray[2] - color2RgbArray[2]) <= tolerance; + } // }}} - color.matchColor = function({color}) { - return color.matchRgbArray({rgbArray: color.toRgbArray()}); - } + color.match = function({color2}) { // {{{ + const color2RgbaArray = color2.toRgbaArray(); + return color.matchRgbaArray({color2RgbaArray}); + }; // }}} - color.mixxRgbArray = function({rgbArray, t}) { + color.mixxRgbArray = function({color2RgbArray, t}) { // {{{ const color1RgbArray = color.toRgbArray(); - const color2RgbArray = rgbArray; var color3RgbArray; - if (color.matchRgbArray({rgbArray: color2RgbArray})) { + if (color.matchRgbArray({color2RgbArray})) { color3RgbArray = color2RgbArray; } else { color3RgbArray = mixbox.lerp(color1RgbArray, color2RgbArray, t); } - return color.fromRgbArray(color3RgbArray); - } + color.fromRgbArray({rgbArray: color3RgbArray}); + + return color; + }; // }}} - color.mixxColor = function({color, t}) { - color.mixxRgbArray({rgbArray: color.toRgbArray(), t}); - } + color.mixxColor = function({color2, t}) { // {{{ + color.mixxRgbArray({color2RgbArray: color2.toRgbArray(), t}); -} + return color; + }; // }}} + + color.isOpaque = function() { // {{{ + return color.a == 255; + }; // }}} + color.copy = function({color2}) { // {{{ + color.r = color2.r; + color.g = color2.g; + color.b = color2.b; + color.a = color2.a; + + return color; + }; // }}} + + color.refreshController = function() { // {{{ + controllerElement.style.backgroundColor = color.toRgbaString(); + + return color; + } // }}} + + color.refresh = function() { // {{{ + color.refreshController(); + + return color; + } // }}} + + color.init = function() { // {{{ + color.r = r; + color.g = g; + color.b = b; + color.a = a; + + return color; + } // }}} + + color.init(); + + return color; + +} diff --git a/scripts/command.js b/scripts/command.js new file mode 100644 index 0000000..42affef --- /dev/null +++ b/scripts/command.js @@ -0,0 +1,59 @@ +function makeCommand({name, key=undefined, iconPath, func}) { + const command = {}; + command.name = name; + command.key = key; + command.iconPath = iconPath; + command.func = function() { + func(); + } + + return command; +} + +function makeCommands({controllerElement}) { + const commands = []; + commands.controllerElement = controllerElement; + + commands.add = function({name, key, iconPath, func}) { + const command = makeCommand({name, key, iconPath, func}); + commands.push(command); + }; + + commands.get = function(name) { + return commands.find(command => command.name === name); + }; + + commands.click = function(name) { + const command = commands.get(name); + command.func(); + }; + + commands.refreshController = function() { + commands.controllerElement.innerHTML = ''; + commands.forEach(command => { + const button = document.createElement('button'); + button.classList.add('button'); + button.classList.add('command-button'); + button.innerHTML = `${command.name}`; + button.onclick = () => { + command.func(); + }; + + if (command.key) { + const keyHint = document.createElement("div"); + keyHint.classList.add("key-hint"); + keyHint.innerHTML = command.key; + button.appendChild(keyHint); + } + + commands.controllerElement.appendChild(button); + }); + + }; + + commands.refresh = function() { + commands.refreshController(); + }; + + return commands; +} diff --git a/scripts/layer.js b/scripts/layer.js index 5309d37..712a10f 100644 --- a/scripts/layer.js +++ b/scripts/layer.js @@ -1,244 +1,474 @@ -class Layer { - constructor({height=600, width=800}) { - this.drawCanvas = new Canvas({height, width}); - this.selectCanvas = new Canvas({height, width}); - this.active = false; - - const previewElement = document.createElement('div'); - previewElement.className = 'layer-preview'; - this.previewElement = previewElement; - } +function makeLayer({height=600, width=800}={}) { + const layer = {}; - setHeight({height}) { - this.height = height; - this.drawCanvas.setHeight(height); - this.selectCanvas.setHeight(height); - return this; - } + layer.resize = function({height, width}) { // {{{ + layer.height = height; + layer.width = width; + layer.drawCanvas.resize({height, width}); + layer.selectCanvas.resize({height, width}); + return layer; + }; // }}} - setWidth({width}) { - this.width = width; - this.drawCanvas.setWidth(width); - this.selectCanvas.setWidth(width); - return this; - } + layer.refreshPreviewElement = function() { // {{{ + layer.previewElement.src = layer.drawCanvas.toDataUrl(); - resize({height, width}) { - this.height = height; - this.width = width; - this.drawCanvas.resize({height, width}); - this.selectCanvas.resize({height, width}); - return this; - } + return layer; + }; // }}} - refreshPreviewElement() { - this.previewElement.src = this.drawCanvas.toDataURL(); - } + layer.fill = function({color}) { // {{{ + layer.drawCanvas.fill({color}); + + return layer; + } // }}} + + layer.add = function({layer2}) { // {{{ + layer.drawCanvas.add({canvas2: layer2.drawCanvas}); + + return layer; + } // }}} + + // init + + layer.destruct = function() { // {{{ + if (layer.drawCanvas && layer.drawCanvas.parentNode) { + layer.drawCanvas.parentNode.removeChild(layer.drawCanvas); + } + if (layer.selectCanvas && layer.selectCanvas.parentNode) { + layer.selectCanvas.parentNode.removeChild(layer.selectCanvas); + } + }; // }}} + + layer.init = function() { // {{{ + layer.height = height; + layer.width = width; + layer.drawCanvas = makeCanvas({height, width}); + layer.selectCanvas = makeCanvas({height, width}); + layer.selectCanvas.style.mixBlendMode = 'difference'; + layer.selectCanvas.style.pointerEvents = 'none'; + layer.selectCanvas.style.zIndex = 5; + const previewElement = document.createElement("img"); + previewElement.className = "layer-preview"; + layer.previewElement = previewElement; + + return layer; + } // }}} + + layer.init(); + + return layer; } -class Layers { - constructor({easelElement, controllersElement, height=600, width=800, backgroundColor=new Color(255, 255, 255)}) { - this.backgroundColor = backgroundColor; - this.height = height; - this.width = width; - this.easelElement = easelElement; - this.controllersElement = controllersElement; - this.zoom = 1; - this.layers = [ - new Layer({height: this.height, width: this.width}).fill({color: this.backgroundColor}), - new Layer({height: this.height, width: this.width}) - ]; - this.activeIndex = 1; - this.refresh(); +function makeLayers({easelElement, controllerElement, height=600, width=800, backgroundColor=makeColor({r: 255, g: 255, b: 255})}) { + if (!easelElement || !controllerElement) { + throw new Error("easelElement and controllerElement are required to make layers"); } - setHeight({height}) { - this.height = height; - this.easelElement.style.height = `${height}px`; - this.layers.forEach(layer => { - layer.setHeight(height); - }); - this.layers[0].fill({color: this.background}); - return this; - } + const layers = []; - setWidth({width}) { - this.width = width; - this.easelElement.style.width = `${width}px`; - this.layers.forEach(layer => { - layer.setWidth(width); - }); - this.layers[0].fill({color: this.background}); - return this; - } - getActive() { - return this.layers[this.activeIndex]; - } + // state + + layers._serialize = function() { // {{{ + return { + height: layers.height, + width: layers.width, + layersData: layers.map(layer => ({ + drawCanvasData: layer.drawCanvas.toDataUrl() + })) + }; + }; // }}} - resize({height, width}) { - this.height = height; - this.width = width; - this.easelElement.style.height = `${height}px`; - this.easelElement.style.width = `${width}px`; - this.layers.forEach(layer => { - layer.resize({height, width}); - }); - this.layers[0].fill({color: this.background}); - } + layers._deserialize = function({state}) { // {{{ + layers.clear(); - add() { - const layer = new Layer(); - this.layers.push(layer); - layer.moveUpButton.addEventListener('click', () => { - this.moveUp(layer); - }); - layer.moveDownButton.addEventListener('click', () => { - this.moveDown(layer); + layers.height = state.height; + layers.width = state.width; + layers.easelElement.style.height = `${state.height + 2}px`; + layers.easelElement.style.width = `${state.width + 2}px`; + + const loadPromises = state.layersData.map(layerState => { + const layer = makeLayer({ height: layers.height, width: layers.width }); + layers.push(layer); + + return layer.drawCanvas.fromDataUrl({ dataUrl: layerState.drawCanvasData }); }); - layer.deleteButton.addEventListener('click', () => { - layer.remove(); - this.delete(layer); + + Promise.all(loadPromises).then(() => { + layers.updateActive(); + layers.refreshPreviews(); }); + }; // }}} + + layers.saveToLocalStorage = function() { // {{{ + const historyData = JSON.stringify(historyStack); + const redoData = JSON.stringify(redoStack); + localStorage.setItem('layersHistory', historyData); + localStorage.setItem('layersRedo', redoData); + + return layers; + }; // }}} + + layers.loadFromLocalStorage = function() { // {{{ + const historyData = localStorage.getItem('layersHistory'); + const redoData = localStorage.getItem('layersRedo'); + if (historyData) { + historyStack = JSON.parse(historyData); + } + if (redoData) { + redoStack = JSON.parse(redoData); + } + if (historyStack.length > 0) { + console.log("Restoring history from local storage"); + const lastState = historyStack[historyStack.length - 1]; + layers._deserialize({state: lastState}); + } + + return layers; + }; // }}} + + layers.save = function() { // {{{ + const state = layers._serialize(); + historyStack.push(state); + redoStack = []; + layers.saveToLocalStorage(); - } + return layers; + }; // }}} + + layers.undo = function() { // {{{ + if (historyStack.length > 1) { + const currentState = historyStack.pop(); + redoStack.push(currentState); + const previousState = historyStack[historyStack.length - 1]; + layers._deserialize({state: previousState}); + layers.saveToLocalStorage(); + } - delete({layer}) { - const index = this.layers.indexOf(layer); - if (index > -1) { - this.layers.splice(index, 1); + return layers; + }; // }}} + + layers.redo = function() { // {{{ + if (redoStack.length > 0) { + const nextState = redoStack.pop(); + historyStack.push(nextState); + layers._deserialize({state: nextState}); + layers.saveToLocalStorage(); } - } - switchIndex({index1, index2}) { - const temp = this.layers[index1]; - this.layers[index1] = this.layers[index2]; - this.layers[index2] = temp; - this.refresh(); - } + return layers; + }; // }}} - mergeIndex({index1, index2}) { - this.layers[index1].add(this.layers[index2]); - this.delete(this.layers[index2]); - this.refresh(); - } - moveUp = function({layer}) { - const index = this.layers.indexOf(layer); - if (index === 0 || index === this.layers.length - 1) return; - this.switchIndex({index1: index, index2: index + 1}); - } + // active layer + + layers.getActive = function() { // {{{ + return layers[layers.activeIndex]; + }; // }}} + + layers.activate = function({layer}) { // {{{ + layers.activeIndex = layers.indexOf(layer); + + return layers; + }; // }}} + + layers.updateActive = function() { // {{{ + if (layers.activeIndex < 0 || layers.activeIndex >= layers.length) { + layers.activeIndex = layers.length - 1; + } + + return layers; + }; // }}} + + + // layer management + + layers.add = function() { // {{{ + const layer = makeLayer({height: layers.height, width: layers.width}); + layers.push(layer); + layers.activate({layer}); + + return layers; + }; // }}} + + layers.remove = function({ layer}) { // {{{ + const index = layers.indexOf(layer); + if (index > 1 && index < layers.length) { + layer.destruct(); + layers.splice(index, 1); + layers.updateActive(); + } + + return layers; + }; // }}} + + layers.clear = function() { // {{{ + while (layers.length > 0) { + const layer = layers.pop(); + if (layer.drawCanvas && layer.drawCanvas.parentNode) { + layer.drawCanvas.parentNode.removeChild(layer.drawCanvas); + } + if (layer.selectCanvas && layer.selectCanvas.parentNode) { + layer.selectCanvas.parentNode.removeChild(layer.selectCanvas); + } + } - moveDown = function({layer}) { - const index = this.layers.indexOf(layer); + return layers; + }; // }}} + + layers.switchIndex = function({index1, index2}) { // {{{ + const temp = layers[index1]; + layers[index1] = layers[index2]; + layers[index2] = temp; + + return layers; + }; // }}} + + layers.mergeIndex = function({index1, index2}) { // {{{ + layers[index1].add({layer2: layers[index2]}); + layers.remove({layer: layers[index2]}); + + return layers; + }; // }}} + + layers.moveUp = function({layer}) { // {{{ + const index = layers.indexOf(layer); + if (index === 0 || index === layers.length - 1) return; + layers.switchIndex({index1: index, index2: index + 1}); + layers.activate({layer: layers[index]}); + + return layers; + }; // }}} + + layers.moveDown = function({layer}) { // {{{ + const index = layers.indexOf(layer); if (index === 0 || index === 1) return; - this.switchIndex({index1: index, index2: index - 1}); - } + layers.switchIndex({index1: index, index2: index - 1}); + layers.activate({layer: layers[index]}); - mergeUp = function({layer}) { - const index = this.layers.indexOf(layer); - if (index === 0 || index === this.layers.length - 1) return - this.mergeIndex({index1: index, index2: index + 1}); - } + return layers; + }; // }}} + + layers.mergeUp = function({layer}) { // {{{ + const index = layers.indexOf(layer); + if (index === 0 || index === layers.length - 1) return; + layers.mergeIndex({index1: index, index2: index + 1}); + layers.activate({layer: layers[index]}); + + return layers; + }; // }}} - mergeDown = function({layer}) { - const index = this.layers.indexOf(layer); + layers.mergeDown = function({layer}) { // {{{ + const index = layers.indexOf(layer); if (index === 0 || index === 1) return; - this.mergeIndex({index2: index, index1: index - 1}); - } + layers.mergeIndex({index2: index, index1: index - 1}); + layers.activate({layer: layers[index - 1]}); + + return layers; + }; // }}} + - refreshEasel() { - this.easelElement.innerHTML = ''; - this.layers.forEach(layer => { - console.log("test"); - this.easelElement.appendChild(layer.drawCanvas); - this.easelElement.appendChild(layer.selectCanvas); + // resize + + layers.resize = function({height, width}) { // {{{ + layers.height = height; + layers.width = width; + layers.easelElement.style.height = `${height + 2}px`; + layers.easelElement.style.width = `${width + 2}px`; + layers.forEach(layer => { + layer.resize({height, width}); }); - } + if (layers.length > 0) { + layers[0].fill({color: layers.backgroundColor}); + } + + return layers; + }; // }}} + + + // export and import + + layers.exportPng = function() { // {{{ + const mergedCanvas = document.createElement('canvas'); + mergedCanvas.width = layers.width; + mergedCanvas.height = layers.height; + const mergedCtx = mergedCanvas.getContext('2d'); + + layers.forEach(layer => { + if (layer === layers[0]) return; + mergedCtx.drawImage(layer.drawCanvas, 0, 0); + }); + + const pngDataUrl = mergedCanvas.toDataURL('image/png'); + + const link = document.createElement('a'); + link.href = pngDataUrl; + link.download = 'layers.png'; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + + return layers; + }; // }}} - refreshControllers() { - this.controllersElement.innerHTML = ''; - this.layers.forEach(layer => { - const controllerElement = document.createElement('div'); - controllerElement.className = 'layer-controller'; + // refresh - const previewElement = this.layers.previewElement; - previewElement.addEventListener('click', () => { - this.activeIndex = this.layers.indexOf(layer); - }); + layers.refreshEasel = function() { // {{{ + layers.easelElement.innerHTML = ""; + layers.forEach(layer => { + layers.easelElement.appendChild(layer.drawCanvas); + layers.easelElement.appendChild(layer.selectCanvas); + }); + + return layers; + }; // }}} + + layers.refreshController = function() { // {{{ + layers.controllerElement.innerHTML = ""; + layers.forEach(layer => { + + const controllerElement = document.createElement("div"); + controllerElement.className = "layer"; + if (layer === layers.getActive()) { + controllerElement.classList.add("active"); + } + + const previewElement = layer.previewElement; controllerElement.appendChild(previewElement); - const moveButtons = document.createElement('div'); - moveButtons.classList.add('button'); - moveButtons.classList.add('layer-move-buttons'); - moveButtons.className = 'layer-move-buttons'; + if(layer !== layers[0]) { + previewElement.addEventListener("click", () => { + layers.activate({layer}).refreshController().refreshEasel(); + }); + + + const moveButtons = document.createElement("div"); + moveButtons.classList.add("layer-move-buttons"); + moveButtons.className = "layer-move-buttons"; - const moveUpButton = document.createElement('div'); - moveUpButton.classList.add('button'); - moveUpButton.classList.add('layer-move-button'); - moveUpButton.innerHTML = ''; - moveUpButton.addEventListener('click', () => { - this.moveUp({layer}); - }); + const moveUpButton = document.createElement("div"); + moveUpButton.classList.add("button"); + moveUpButton.classList.add("mini-button"); + moveUpButton.classList.add("layer-move-button"); + moveUpButton.innerHTML = `move up`; + moveUpButton.addEventListener("click", () => { + layers.moveUp({layer}).save().refreshController().refreshEasel(); + }); - moveButtons.appendChild(layer.moveUpButton); + moveButtons.appendChild(moveUpButton); - const moveDownButton = document.createElement('div'); - moveDownButton.classList.add('button'); - moveDownButton.classList.add('layer-move-button'); - moveDownButton.innerHTML = ''; - moveDownButton.addEventListener('click', () => { - this.moveDown({layer}); - }); + const moveDownButton = document.createElement("div"); + moveDownButton.classList.add("button"); + moveDownButton.classList.add("mini-button"); + moveDownButton.classList.add("layer-move-button"); + moveDownButton.innerHTML = `move down`; + moveDownButton.addEventListener("click", () => { + layers.moveDown({layer}).save().refreshController().refreshEasel(); + }); - layer.moveButtons.appendChild(layer.moveDownButton); + moveButtons.appendChild(moveDownButton); - layer.controllerElement.appendChild(layer.moveButtons); + controllerElement.appendChild(moveButtons); - const mergeButtons = document.createElement('div'); - mergeButtons.classList.add('button'); - mergeButtons.classList.add('layer-merge-buttons'); - mergeButtons.className = 'layer-merge-buttons'; + const mergeButtons = document.createElement("div"); + mergeButtons.classList.add("layer-merge-buttons"); + mergeButtons.className = "layer-merge-buttons"; - const mergeUpButton = document.createElement('div'); - mergeUpButton.classList.add('button'); - mergeUpButton.classList.add('layer-merge-button'); - mergeUpButton.innerHTML = ''; - mergeUpButton.addEventListener('click', () => { - this.mergeUp({layer}); - }); + const mergeDownButton = document.createElement("div"); + mergeDownButton.classList.add("button"); + mergeDownButton.classList.add("mini-button"); + mergeDownButton.classList.add("layer-merge-button"); + mergeDownButton.innerHTML = `merge up`; + mergeDownButton.addEventListener("click", () => { + layers.mergeDown({layer}).save().refreshController().refreshEasel(); + }); - mergeButtons.appendChild(layer.mergeUpButton); + mergeButtons.appendChild(mergeDownButton); - layer.controllerElement.appendChild(layer.mergeButtons); - const deleteButton = document.createElement('div'); - deleteButton.classList.add('button'); - deleteButton.classList.add('layer-delete-button'); - deleteButton.innerHTML = ''; - deleteButton.addEventListener('click', () => { - this.delete({layer}); - }); + const deleteButton = document.createElement("div"); + deleteButton.classList.add("button"); + deleteButton.classList.add("mini-button"); + deleteButton.classList.add("layer-delete-button"); + deleteButton.innerHTML = `delete`; + deleteButton.addEventListener("click", () => { + layers.remove({layer}).save().refreshController().refreshEasel(); + }); - layer.controllerElement.appendChild(layer.deleteButton); + mergeButtons.appendChild(deleteButton); + + controllerElement.appendChild(mergeButtons); + } + + layers.controllerElement.appendChild(controllerElement); }); - } - refreshPreviews() { - this.layers.forEach(layer => { + const addLayerButton = document.createElement("div"); + addLayerButton.classList.add("layer-add-button"); + addLayerButton.classList.add("button"); + addLayerButton.innerHTML = `add layer`; + addLayerButton.addEventListener("click", () => { + layers.add().save().refresh(); + }); + layers.controllerElement.appendChild(addLayerButton) + + return layers; + }; // }}} + + layers.refreshPreviews = function() { // {{{ + layers.forEach(layer => { layer.refreshPreviewElement(); }); - } - refresh() { - console.log("test"); - this.refreshEasel(); - this.refreshControllers(); - this.refreshPreviews(); - } + return layers; + }; // }}} + + layers.refresh = function() { // {{{ + layers + .refreshEasel() + .refreshController() + .refreshPreviews(); + + return layers; + }; // }}} + + + // init + + layers.destruct = function() { // {{{ + layers.clear(); + layers.easelElement.innerHTML = ""; + layers.controllerElement.innerHTML = ""; + }; // }}} + + layers.reset = function() { // {{{ + layers.backgroundColor = backgroundColor; + layers.height = height; + layers.width = width; + layers.easelElement = easelElement; + layers.controllerElement = controllerElement; + layers.activeIndex = 1; + layers.clear(); + layers.push(makeLayer({height: layers.height, width: layers.width}).fill({color: layers.backgroundColor})); + layers.push(makeLayer({height: layers.height, width: layers.width})); + + return layers; + } // }}} + + layers.init = function() { // {{{ + layers.undoStack = []; + layers.redoStack = []; + layers.reset(); + + return layers; + }; // }}} + + layers.init(); + + + return layers; } diff --git a/scripts/main.js b/scripts/main.js index bc4a2fe..c3999b3 100644 --- a/scripts/main.js +++ b/scripts/main.js @@ -1,12 +1,14 @@ -import { Layers } from './layer.js'; -import { Tools } from './tool.js'; - -const commandBarElement = document.getElementById('menu-bar'); -const toolBarElement = document.getElementById('tool-bar'); -const layerControllersElement = document.getElementById('layer-controllers'); +// CONSTANTS {{{ +const toolTipElement = document.getElementById('tool-tip'); +const colorTipElement = document.getElementById('color-tip'); +const commandsElement = document.getElementById('commands'); +const toolsElement = document.getElementById('tools'); +const brushColorElement = document.getElementById('brush-color'); +const canvasColorElement = document.getElementById('canvas-color'); const studioElement = document.getElementById('studio'); -const colorBarElement = document.getElementById('color-bar'); const easelElement = document.getElementById('easel'); +const layersElement = document.getElementById('layers'); +const colorsElement = document.getElementById('colors'); const dZoom = 0.001; const dBrushSize = 0.5; @@ -16,10 +18,12 @@ const initialHeight = 600; const maxBrushSize = 500; const tolerance = 1; -let brushShape = 'circle' +// }}} + +// VARIABLES {{{ + let brushSize = 10; let zoom = 1; - let startX = 0; let startY = 0; let endX = 0; @@ -32,40 +36,575 @@ let canvasEndX = 0; let canvasEndY = 0; let canvasDX = 0; let canvasDY = 0; - let isKeyDown = false; let isMouseDown = false; - let interval; -var startTime; +let startTime; -document.on +// }}} -const layers = new Layers({ +// HELPERS {{{ + +function home() { + const rect = studioElement.getBoundingClientRect(); + easelElement.style.left = `${rect.left}px`; + easelElement.style.top = `${rect.top}px`; +} + +// }}} + +// LAYERS {{{ + +const layers = makeLayers({ + controllerElement: layersElement, easelElement: easelElement, - controllersElement: layerControllersElement, height: initialHeight, width: initialWidth }); -const tools = new Tools({ - controllersElement: toolBarElement +layers.loadFromLocalStorage().refresh(); + +// }}} + +// COLORS {{{ + +const black = makeColor({r: 0, g: 0, b: 0}) +const white = makeColor({r: 255, g: 255, b: 255}) +const cadmiumYellow = makeColor({r: 254, g: 236, b: 0}) +const hansaYellow = makeColor({r: 252, g: 211, b: 0}) +const cadmiumOrange = makeColor({r: 255, g: 105, b: 0}) +const cadmiumRed = makeColor({r: 255, g: 39, b: 2}) +const quinacridoneMagenta = makeColor({r: 128, g: 2, b: 46}) +const cobaltViolet = makeColor({r: 78, g: 0, b: 66}) +const ultramarineBlue = makeColor({r: 25, g: 0, b: 89}) +const cobaltBlue = makeColor({r: 0, g: 33, b: 133}) +const phthaloBlue = makeColor({r: 13, g: 27, b: 68}) +const phthaloGreen = makeColor({r: 0, g: 60, b: 50}) +const permanentGreen = makeColor({r: 7, g: 109, b: 22}) +const sapGreen = makeColor({r: 107, g: 148, b: 4}) +const burntSienna = makeColor({r: 123, g: 72, b: 0}) +const red = makeColor({r: 255, g: 0, b: 0}) +const green = makeColor({r: 0, g: 255, b: 0}) +const blue = makeColor({r: 0, g: 0, b: 255}) +const cyan = makeColor({r: 0, g: 255, b: 255}) +const yellow = makeColor({r: 255, g: 255, b: 0}) +const magenta = makeColor({r: 255, g: 0, b: 255}) + +const tempColor = makeColor({r: 0, g: 0, b: 0}); +const brushColor = makeColor({r: 0, g: 0, b: 0, controllerElement: brushColorElement}).refresh(); +const canvasColor = makeColor({r: 0, g: 0, b: 0, controllerElement: canvasColorElement}).refresh(); + +// }}} + +// PUCKS {{{ +const pucks = makePucks({ + controllerElement: colorsElement, + brushColor: brushColor, + interval: interval +}); + +pucks.push({color: black}); +pucks.push({color: white}); +pucks.push({color: cadmiumYellow}); +pucks.push({color: hansaYellow}); +pucks.push({color: cadmiumOrange}); +pucks.push({color: cadmiumRed}); +pucks.push({color: quinacridoneMagenta}); +pucks.push({color: cobaltViolet}); +pucks.push({color: ultramarineBlue}); +pucks.push({color: cobaltBlue}); +pucks.push({color: phthaloBlue}); +pucks.push({color: phthaloGreen}); +pucks.push({color: permanentGreen}); +pucks.push({color: sapGreen}); +pucks.push({color: burntSienna}); +pucks.push({color: red}); +pucks.push({color: green}); +pucks.push({color: blue}); +pucks.push({color: cyan}); +pucks.push({color: yellow}); +pucks.push({color: magenta}); + +pucks.refresh(); + +// }}} + +// COMMANDS {{{ + +const commands = makeCommands({ + controllerElement: commandsElement +}); + +commands.add({ // undo {{{ + name: 'Undo', + key: 'z', + iconPath: 'icons/solid/rotate-left.svg', + func: () => { + layers.undo().updateActive().refresh(); + } +}); // }}} +commands.add({ // redo {{{ + name: 'Redo', + key: 'y', + iconPath: 'icons/solid/rotate-right.svg', + func: () => { + layers.redo().updateActive().refresh(); + } +}); // }}} +commands.add({ // reset {{{ + name: 'Reset', + iconPath: 'icons/regular/trash-can.svg', + func: () => { + layers.reset().save().updateActive().refresh(); + } +}); // }}} +commands.add({ // clear {{{ + name: 'Clear', + key: 'c', + iconPath: 'icons/solid/broom.svg', + func: () => { + layers.getActive().drawCanvas.clear(); + layers.save().refresh(); + } +}); // }}} +commands.add({ // save {{{ + name: 'Save', + iconPath: 'icons/solid/file-arrow-down.svg', + func: () => { + layers.exportPng(); + } +}); // }}} +commands.add({ // home {{{ + name: 'Home', + iconPath: 'icons/solid/house.svg', + func: () => { + home(); + } +}); // }}} + +commands.refresh(); + +// }}} + +// TOOLS {{{ + +const tools = makeTools({ + controllerElement: toolsElement, + toolTipElement: toolTipElement }); -tools.addTool({ // brush {{{ +tools.push(makeTool({ // brush {{{ name: 'Brush', key: 'b', - iconPath: 'icons/brush.svg', - mouseMove: () => { - const canvas = layers.getActive().selectCanvas; - canvas + iconPath: 'icons/solid/pen.svg', + mouseMove: (e) => { + layers.getActive() + .selectCanvas + .clear() + .drawEmptyCircle({ + x: canvasEndX, + y: canvasEndY, + diameter: brushSize, + color: white + }) + .drawPixel({ + x: canvasEndX, + y: canvasEndY, + color: white + }); + }, + mouseDown: (e) => { + layers.getActive() + .drawCanvas + .drawCircle({ + x: canvasEndX, + y: canvasEndY, + diameter: brushSize, + color: brushColor + }); + }, + mouseDrag: (e) => { + layers.getActive() + .drawCanvas + .drawLineWithCircles({ + x1: canvasStartX, + y1: canvasStartY, + x2: canvasEndX, + y2: canvasEndY, + diameter: brushSize, + color: brushColor + }); + startX = endX; + startY = endY; + canvasStartX = canvasEndX; + canvasStartY = canvasEndY; + }, + mouseUp: (e) => { + layers.refreshPreviews().save(); + }, + mouseLeave: (e) => { + layers.getActive() + .selectCanvas + .clear(); + } +})); // }}} + +tools.push(makeTool({ // eraser {{{ + name: 'Eraser', + key: 'e', + iconPath: 'icons/solid/eraser.svg', + mouseMove: (e) => { + layers.getActive() + .selectCanvas + .clear() + .drawEmptyCircle({ + x: canvasEndX, + y: canvasEndY, + diameter: brushSize, + color: white + }) + .drawPixel({ + x: canvasEndX, + y: canvasEndY, + color: white + }); + }, + mouseDown: (e) => { + layers.getActive() + .drawCanvas + .drawCircle({ + x: canvasEndX, + y: canvasEndY, + diameter: brushSize, + erase: true + }); + }, + mouseDrag: (e) => { + layers.getActive() + .drawCanvas + .drawLineWithCircles({ + x1: canvasStartX, + y1: canvasStartY, + x2: canvasEndX, + y2: canvasEndY, + diameter: brushSize, + erase: true + }); + startX = endX; + startY = endY; + canvasStartX = canvasEndX; + canvasStartY = canvasEndY; + }, + mouseUp: (e) => { + layers + .save() + .refreshPreviews(); + }, + mouseLeave: (e) => { + layers.getActive() + .selectCanvas + .clear(); + } +})); // }}} + +tools.push(makeTool({ // brush-size {{{ + name: 'Brush Size', + key: 's', + iconPath: 'icons/regular/circle-dot.svg', + mouseMove: (e) => { + layers.getActive() + .selectCanvas + .clear() + .drawEmptyCircle({ + x: canvasEndX, + y: canvasEndY, + diameter: brushSize, + color: white + }) + .drawPixel({ + x: canvasEndX, + y: canvasEndY, + color: white + }); }, - mouseDown: () => { - isMouseDown = true; + mouseDrag: (e) => { + brushSize += dX * dBrushSize; + brushSize = Math.min(Math.max(brushSize, 1), maxBrushSize); + startX = endX; + }, + mouseLeave: (e) => { + layers.getActive() + .selectCanvas + .clear(); + } +})); // }}} + +tools.push(makeTool({ // bucket {{{ + name: 'Bucket', + key: 'k', + iconPath: 'icons/solid/fill.svg', + mouseMove: (e) => { + layers.getActive() + .selectCanvas + .clear() + .drawCrossHairs({ + x: canvasEndX, + y: canvasEndY, + color: white + }); + }, + mouseDown: (e) => { + layers.getActive() + .drawCanvas + .floodFill({ + x: canvasEndX, + y: canvasEndY, + color: brushColor + }); + layers.refreshPreviews().save(); + }, + mouseLeave: (e) => { + layers.getActive() + .selectCanvas + .clear(); + } +})); // }}} + +tools.push(makeTool({ // move {{{ + name: 'Move', + key: 'm', + iconPath: 'icons/solid/arrows-up-down-left-right.svg', + mouseDown: (e) => { + startX = e.clientX - easelElement.offsetLeft; + startY = e.clientY - easelElement.offsetTop; }, - mouseUp: () => { - isMouseDown = false; + mouseDrag: (e) => { + easelElement.style.left = dX + 'px'; + easelElement.style.top = dY + 'px'; } +})); // }}} + +tools.push(makeTool({ // resize {{{ + name: 'Resize', + key: 'r', + iconPath: 'icons/solid/ruler-combined.svg', + mouseDrag: (e) => { + let newWidth = layers.width + dX; + let newHeight = layers.height + dY; + layers.resize({height: newHeight, width: newWidth, save: false}); + startX = endX; + startY = endY; + }, + mouseUp: (e) => { + layers.save().refreshPreviews(); + } +})); // }}} + +tools.push(makeTool({ // content-move {{{ + name: 'Content Move', + key: 'h', + iconPath: 'icons/regular/hand.svg', + mouseDown: (e) => { + layers.getActive() + .drawCanvas + .save(); + }, + mouseDrag: (e) => { + layers.getActive() + .drawCanvas + .clear() + .restore({x: dX, y: dY}); + }, + mouseUp: (e) => { + layers.save().refreshPreviews(); + } +})); // }}} + +tools.push(makeTool({ // color-mix {{{ + name: 'color-mix', + key: 'x', + iconPath: 'icons/solid/mortar-pestle.svg', + mouseMove: (e) => { + layers.getActive() + .selectCanvas + .clear() + .drawCrossHairs({ + x: canvasEndX, + y: canvasEndY, + color: white + }); + }, + mouseDown: function(e) { + tempColor.copy({color2: canvasColor}); + startTime = Date.now(); + interval = setInterval(() => { + if (!tempColor.match({color2: canvasColor})) { + startTime = Date.now(); + tempColor.copy({color2: canvasColor}); + } + if (!canvasColor.isOpaque()) { + startTime = Date.now(); + } else { + const elapsedTime = Date.now() - startTime; + const t = Math.min(1, elapsedTime / 10000); + brushColor.mixxColor({color2: tempColor, t}).refresh(); + if (!isMouseDown) { + clearInterval(interval); + startTime = Date.now(); + } + } + }, 50); + }, + mouseUp: function(e) { + clearInterval(interval); + }, + mouseLeave: function(e) { + clearInterval(interval); + } +})); // }}} + +tools.refresh(); + +// }}} + +// MOUSE EVENTS {{{ + +studioElement.addEventListener('mousemove', (e) => { // {{{ + endX = e.clientX; + endY = e.clientY; + dX = endX - startX; + dY = endY - startY; + + const canvas = layers.getActive().drawCanvas; + + canvasEndX = canvas.getPositionOnCanvas(e).x; + canvasEndY = canvas.getPositionOnCanvas(e).y; + canvasDX = canvasEndX - canvasStartX; + canvasDY = canvasEndY - canvasStartY; + canvasColor.copy({color2: canvas.getPixel({x: canvasEndX, y: canvasEndY})}).refresh(); + + if (tools.active) { + + if (tools.active.mouseMove) { + tools.active.mouseMove(e); + } + + if (isMouseDown) { + + if (tools.active.mouseDrag) { + tools.active.mouseDrag(e); + } + + } + + } + + toolTipElement.style.display = 'block'; + toolTipElement.style.left = `${e.clientX + 3}px`; + toolTipElement.style.top = `${e.clientY - 16 - 3}px`; + +}); // }}} + +studioElement.addEventListener('mousedown', (e) => { // {{{ + isMouseDown = true; + startX = e.clientX; + startY = e.clientY; + + const canvas = layers[0].selectCanvas; + canvasStartX = canvas.getPositionOnCanvas(e).x; + canvasStartY = canvas.getPositionOnCanvas(e).y; + + if (tools.active) { + if (tools.active.mouseDown) { + tools.active.mouseDown(e); + } + } + +}); // }}} + +studioElement.addEventListener('mouseup', (e) => { // {{{ + isMouseDown = false; + startX = e.clientX; + startY = e.clientY; + + const canvas = layers[0].selectCanvas; + canvasStartX = canvas.getPositionOnCanvas(e).x; + canvasStartY = canvas.getPositionOnCanvas(e).y; + + if (tools.active) { + if (tools.active.mouseUp) { + tools.active.mouseUp(e); + } + } + +}); // }}} + +studioElement.addEventListener('mouseleave', (e) => { // {{{ + isMouseDown = false; + startX = e.clientX; + startY = e.clientY; + + const canvas = layers[0].selectCanvas; + canvasStartX = canvas.getPositionOnCanvas(e).x; + canvasStartY = canvas.getPositionOnCanvas(e).y; + + if (tools.active) { + if (tools.active.mouseLeave) { + tools.active.mouseLeave(e); + } + } + + toolTipElement.style.display = 'none'; + +}); // }}} + +// }}} + +// KEY EVENTS {{{ + +document.addEventListener('keydown', (e) => { + if (isKeyDown) { + return; + } + + tools.forEach(tool => { + if (tool.key === e.key.toLowerCase()) { + console.log(`Key down: ${e.key} activates tool: ${tool.name}`); + tools.activate({tool}).refresh(); + layers.getActive().selectCanvas.clear(); + isKeyDown = true; + } + }); + + commands.forEach(command => { + if (command.key) { + if (command.key.toLowerCase() === e.key.toLowerCase()) { + command.func(); + } + } + }); + }); +document.addEventListener('keyup', (e) => { + tools.forEach(tool => { + if (tool.key === e.key.toLowerCase()) { + isKeyDown = false; + if (tool.key === e.key) { + console.log(`Key up: ${e.key} reverts from tool: ${tool.name}`); + tools.revert().refresh(); + layers.getActive().selectCanvas.clear(); + } + } + }); + +}); + +// }}} + +// INIT {{{ + +home(); +tools.activateByName({name: 'Brush'}).refresh(); + // }}} diff --git a/scripts/puck.js b/scripts/puck.js new file mode 100644 index 0000000..cfc7ef2 --- /dev/null +++ b/scripts/puck.js @@ -0,0 +1,50 @@ +function makePucks({controllerElement, brushColor, interval}) { + const pucks = []; + + pucks.refreshController = function() { // {{{ + pucks.controllerElement.innerHTML = ''; + pucks.forEach(puck => { + const element = document.createElement('div'); + element.style.backgroundColor = puck.color.toRgbString(); + element.className = 'puck'; + + element.addEventListener('mousedown', (e) => { + const startTime = Date.now(); + interval = setInterval(() => { + const elapsedTime = Date.now() - startTime; + const t = Math.min(1, elapsedTime / 10000); + brushColor.mixxColor({color2: puck.color, t}); + }, 50); + }); + + element.addEventListener('mouseup', (e) => { + clearInterval(interval); + }); + + element.addEventListener('mouseleave', (e) => { + clearInterval(interval); + }); + + controllerElement.appendChild(element); + + }); + + return pucks; + }; // }}} + + pucks.refresh = function() { // {{{ + pucks.refreshController(); + + return pucks; + } // }}} + + pucks.init = function() { // {{{ + pucks.controllerElement = controllerElement; + + return pucks; + } // }}} + + pucks.init(); + + return pucks; +} diff --git a/scripts/tool.js b/scripts/tool.js index 63345d3..6eb259c 100644 --- a/scripts/tool.js +++ b/scripts/tool.js @@ -1,57 +1,116 @@ -class Tool { - constructor({name, key, iconPath, mouseDown, mouseMove, mouseDrag, mouseUp, mouseLeave}) { - this.name = name; - this.key = key; - this.iconPath = iconPath; - this.mouseDown = mouseDown; - this.mouseMove = mouseMove; - this.mouseDrag = mouseDrag; - this.mouseUp = mouseUp; - this.mouseLeave = mouseLeave; +function makeTool({name, key, iconPath, mouseDown=undefined, mouseMove=undefined, mouseDrag=undefined, mouseUp=undefined, mouseLeave=undefined}) { + if (!name || !key || !iconPath) { + throw new Error("name, key, and iconPath are required to make a tool"); } + + const tool = {}; + + tool.init = function() { // {{{ + tool.name = name; + tool.key = key; + tool.iconPath = iconPath; + tool.mouseDown = mouseDown; + tool.mouseMove = mouseMove; + tool.mouseDrag = mouseDrag; + tool.mouseUp = mouseUp; + tool.mouseLeave = mouseLeave; + + return tool; + } // }}} + + tool.init(); + + return tool; } -class Tools { - constructor({controllersElement}) { - this.tools = []; - this.activeTool = null; - this.controllersElement = controllersElement; +function makeTools({controllerElement, toolTipElement}) { + if (!controllerElement || !toolTipElement) { + throw new Error("controllerElement and toolTipElement are required to make tools"); } - addTool({name, key, iconPath, mouseDown, mouseMove, mouseDrag, mouseUp, mouseLeave}) { - this.tools.push(new Tool({name, key, iconPath, mouseDown, mouseMove, mouseDrag, mouseUp, mouseLeave})); - this.refreshControllers(); - return this; - } + const tools = []; - setActiveTool({tool}) { - this.activeTool = tool; - return this; - } + tools.get = function({name}) { // {{{ + return tools.find(tool => tool.name === name); + }; // }}} - getActiveTool() { - return this.activeTool; - } + tools.activate = function({tool}) { // {{{ + if (tools.active) { + tools.previous = tools.active; + } + tools.active = tool; + return tools; + }; // }}} - getTool({key}) { - return this.tools.find(tool => tool.key === key); - } + tools.activateByName = function({name}) { // {{{ + const tool = tools.get({name}); + if (tool) { + tools.activate({tool}); + console.log(`Activated tool: ${tool.name}`); + } + + return tools; + }; // }}} + + tools.revert = function() { // {{{ + if (tools.previous) { + tools.active = tools.previous; + } + return tools; + }; // }}} - refreshControllers() { - this.controllersElement.innerHTML = ''; - this.tools.forEach(tool => { - const button = document.createElement('div'); - button.classList.add('button'); - button.classList.add('tool-button'); + tools.refreshController = function() { // {{{ + tools.controllerElement.innerHTML = ""; + tools.forEach(tool => { + const button = document.createElement("div"); + button.classList.add("button"); + button.classList.add("tool-button"); + if (tool === tools.active) { + button.classList.add("active"); + } button.innerHTML = `${tool.name}`; - button.addEventListener('click', () => { - this.setActiveTool({tool}); + button.addEventListener("click", () => { + tools.activate({tool}).refresh(); }); - this.controllersElement.appendChild(button); + + if (tool.key) { + const keyHint = document.createElement("div"); + keyHint.classList.add("key-hint"); + keyHint.innerHTML = tool.key; + button.appendChild(keyHint); + } + + tools.controllerElement.appendChild(button); }); - return this; - } -} + return tools; + }; // }}} + + tools.refreshToolTip = function() { // {{{ + if (tools.active) { + tools.toolTipElement.innerHTML = `${tools.active.name}`; + } + return tools; + }; // }}} + + tools.refresh = function() { // {{{ + tools.refreshController(); + tools.refreshToolTip(); + + return tools; + }; // }}} -export { Tools }; + tools.init = function() { // {{{ + tools.controllerElement = controllerElement; + tools.toolTipElement = toolTipElement; + tools.active = null; + tools.previous = null; + + return tools; + } // }}} + + tools.init(); + + return tools; + +} diff --git a/styles/archive.css b/styles/archive.css deleted file mode 100644 index 578c21c..0000000 --- a/styles/archive.css +++ /dev/null @@ -1,243 +0,0 @@ -:root { - --white: #FFFFFF; - --button: #DDE4E7; - --hover: #B3BBBD; - --active: #8F9598; - /* --background: #7E888B; */ - --background: #949C9E; - --black: #000000; -} - -@font-face { - font-family: 'VT323'; - src: url('fonts/VT323-Regular.ttf') format('truetype'); -} - -div { - box-sizing: border-box; -} - -body { - margin: 0; - overflow: hidden; - display: flex; - flex-direction: column; - height: 100vh; - width: 100vw; - font-family: 'VT323', monospace; - background-color: var(--background); - color: var(--black); -} - -#menu-bar, -#info-bar, -#tool-bar, -#layer-bar { - z-index: 2; -} - -#menu-bar { - justify-content: space-between; -} - -#menu-bar, #info-bar { - padding: 10px; - background-color: var(--button); - display: flex; - flex-direction: row; - gap: 10px; - justify-content: flex-start; - flex-wrap: wrap; -} - -#menu-bar { - order: 1; -} - -#info-bar { - order: 3; -} - - -#tool-bar, #layer-bar { - display: flex; - padding: 10px; - padding-top: 0; - padding-bottom: 0; - background-color: var(--button); - gap: 10px; - height: 100%; - flex-direction: column; - justify-content: flex-start; -} - -#studio { - flex-grow: 1; - height: 100%; - border: 1px solid; - cursor: crosshair; -} - -#easel { - position: absolute; - border: 1px solid; - z-index: -1; -} - -.button { - background-color: var(--button); - border: 1px solid; - border-radius: 2px; - cursor: pointer; - display: flex; - text-align: center; - justify-content: center; -} - -.button:hover { - background-color: var(--hover); -} - -.button.active, .button:active { - background-color: var(--active); -} - -.bar-button { - position: relative; - flex-shrink: 0; - width: 30px; - height: 30px; - padding: 5px; - flex-direction: column; -} - -.puck { - position: relative; - flex-shrink: 0; - width: 30px; - height: 30px; - border: 1px solid; - border-radius: 2px; -} - -.key-hint { - display: block; - height: 13px; - width: 9px; - line-height: 8px; - position: absolute; - top: 2px; - left: 1px; - font-size: 1em; - justify-content: center; - text-align: center; - border-radius: 0 0 5px 0; - text-shadow: - 1px 1px 0 #000, - -1px 1px 0 #000, - -1px -1px 0 #000, - 1px -1px 0 #000; - color: var(--white); - pointer-events: none; -} - -#layer-controllers { - background-color: var(--background); - border: 1px solid; - height: 100%; -} - -.layer-controller { - background-color: var(--button); - height: 40px; - width: 90px; - border: 1px solid; - border-radius: 2px; - padding: 2px; - position: relative; - margin: 1px; - display: flex; - flex-direction: row; - gap: 2px; - align-items: center; - justify-content: space-between; -} - -.layer-controller.active { - background-color: var(--active); -} - -.layer-controller:hover { - background-color: var(--hover); -} - -.layer-add-button { - background-color: var(--button); - height: 12px; - width: 100%; - border: 1px solid; - border-radius: 2px; - position: relative; - margin: 1px; - text-align: center; - font-size: .7em; - cursor: pointer; -} - -.layer-add-button:hover { - background-color: var(--hover); -} - -.top-left { - top: 0; - left: 0; -} - -.bottom-right { - bottom: 0; - right: 0; -} - -.top-right { - top: 0; - right: 0; -} - -.bottom-left { - bottom: 0; - left: 0; -} - -.layer-preview { - width: 30px; - height: 30px; - border: 1px solid; - object-fit: contain; - background-color: var(--background); - cursor: pointer; -} - -.layer-move-buttons, .layer-merge-buttons { - font-size: .7em; - display: flex; - flex-direction: column; - gap: 2px; - flex-grow: 1; - height: 100%; -} - -.layer-delete-button { - font-size: .7em; - flex-grow: 1; - height: 100%; - display: flex; - flex-direction: column; - justify-content: center; -} - -.layer-move-button, .layer-merge-button { - flex-grow: 1; - display: flex; - flex-direction: column; - justify-content: center; -} diff --git a/styles/main.css b/styles/main.css index d807641..a89e077 100644 --- a/styles/main.css +++ b/styles/main.css @@ -7,13 +7,10 @@ --black: #000000; } -@font-face { - font-family: 'VT323'; - src: url('fonts/VT323-Regular.ttf') format('truetype'); -} -div { +* { box-sizing: border-box; + font-family: 'VT323', monospace; } body { @@ -23,40 +20,73 @@ body { flex-direction: column; height: 100vh; width: 100vw; - font-family: 'VT323', monospace; background-color: var(--background); color: var(--black); } -.bar { +#tool-tip { + position: absolute; + width: 16px; + height: 16px; + z-index: 5; + pointer-events: none; + cursor: none; +} + +#tool-tip > img { + width: 16px; + height: 16px; + object-fit: contain; + filter: + drop-shadow(1px 0 0 white) + drop-shadow(-1px 0 0 white) + drop-shadow(0 1px 0 white) + drop-shadow(0 -1px 0 white); +} + +#row { + display: flex; + flex-direction: row; + flex-grow: 1; +} + +#top-bar, #left-bar, #right-bar, #bottom-bar { z-index: 2; background-color: var(--button); display: flex; - gap: 10px; + gap: 8px; justify-content: flex-start; flex-wrap: wrap; - padding: 10px; + padding: 8px; } -#row { - display: flex; +#top-bar, #bottom-bar { flex-direction: row; - flex-grow: 1; } -#menu-bar, #color-bar { +#left-bar, #right-bar { + flex-direction: column; + padding-top: 0; + padding-bottom: 0; +} + +#commands, #colors { + display: flex; flex-direction: row; + gap: 8px; } -#tool-bar, #layer-bar { +#tools { + display: flex; flex-direction: column; + gap: 8px; } #studio { flex-grow: 1; height: 100%; border: 1px solid; - cursor: crosshair; + cursor: none; } #easel { @@ -71,3 +101,143 @@ canvas { left: 0; } +.button { + background-color: var(--button); + border: 1px solid; + border-radius: 3px; + cursor: pointer; +} + +.button:hover { + background-color: var(--hover); +} + +.button.active, .button:active { + background-color: var(--active); +} + +.tool-button, .command-button { + position: relative; + width: 32px; + height: 32px; + padding: 4px; + +} + +.tool-button > img, .command-button > img { + width: 22px; + height: 22px; + object-fit: contain; +} + +.key-hint { + display: block; + position: absolute; + line-height: 12px; + font-size: 16px; + top: 0; + left: 2px; + color: var(--white); + text-shadow: + 1px 1px 0 #000, + -1px 1px 0 #000, + -1px -1px 0 #000, + 1px -1px 0 #000; + pointer-events: none; +} + + +.puck, #brush-color, #canvas-color { + width: 32px; + height: 32px; + border: 1px solid; + border-radius: 3px; +} + +#layers { + background-color: var(--background); + border: 1px solid; + padding: 1px; + height: 100%; + display: flex; + flex-direction: column-reverse; + justify-content: flex-start; + gap: 1px; + overflow-y: scroll; + min-height: 0; +} + +.layer { + width: 96px; + height: 48px; + background-color: var(--button); + border: 1px solid; + border-radius: 3px; + display: flex; + flex-direction: row; + gap: 4px; + padding: 4px; +} + +.layer.active { + background-color: var(--active); +} + +.layer-preview { + width: 38px; + height: 38px; + background-color: var(--background); + border: 1px solid; + flex-shrink: 0; +} + +.layer-merge-buttons, .layer-move-buttons { + flex-grow: 1; + display: flex; + gap: 4px; + flex-direction: column; + height: 100%; +} + +.layer-move-button, .layer-merge-button, .layer-delete-button { + border: 1px solid; + min-height: 0; + flex-grow: 1; + flex-shrink: 1; + border-radius: 3px; +} + +.layer-add-button { + display: flex; + flex-direction: row; + justify-content: center; + width: 100%; + height: 18px; + background-color: var(--button); + border: 1px solid; + border-radius: 3px; + padding: 1px; +} +.layer-add-button > img { + height: 100%; + width: 100%; + object-fit: contain; +} + +.mini-button { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + padding: 1px; +} + +.mini-button > img { + width: 100%; + height: 100%; + object-fit: contain; +} + +.layer-preview { + object-fit: contain; +} diff --git a/tools.js b/tools.js deleted file mode 100644 index 6929118..0000000 --- a/tools.js +++ /dev/null @@ -1,3 +0,0 @@ -import { Tools } from './tool.js'; - -