import { tool as base64FileConverter } from './base64-file-converter'; import { tool as base64StringConverter } from './base64-string-converter'; import { tool as basicAuthGenerator } from './basic-auth-generator'; import { tool as benchmarkBuilder } from './benchmark-builder'; import { tool as ipv4SubnetCalculator } from './ipv4-subnet-calculator'; import { tool as dockerRunToDockerComposeConverter } from './docker-run-to-docker-compose-converter'; import { tool as htmlWysiwygEditor } from './html-wysiwyg-editor'; import { tool as rsaKeyPairGenerator } from './rsa-key-pair-generator'; import { tool as textToNatoAlphabet } from './text-to-nato-alphabet'; import { tool as slugifyString } from './slugify-string'; import { tool as keycodeInfo } from './keycode-info'; import { tool as jsonMinify } from './json-minify'; import { tool as bcrypt } from './bcrypt'; import { tool as bip39 } from './bip39-generator'; import { tool as caseConverter } from './case-converter'; import { tool as chmodCalculator } from './chmod-calculator'; import { tool as chronometer } from './chronometer'; import { tool as colorConverter } from './color-converter'; import { tool as crontabGenerator } from './crontab-generator'; import { tool as dateTimeConverter } from './date-time-converter'; import { tool as deviceInformation } from './device-information'; import { tool as cypher } from './encryption'; import { tool as etaCalculator } from './eta-calculator'; import { tool as gitMemo } from './git-memo'; import { tool as hashText } from './hash-text'; import { tool as hmacGenerator } from './hmac-generator'; import { tool as htmlEntities } from './html-entities'; import { tool as baseConverter } from './integer-base-converter'; import { tool as jsonViewer } from './json-viewer'; import { tool as jwtParser } from './jwt-parser'; import { tool as loremIpsumGenerator } from './lorem-ipsum-generator'; import { tool as mathEvaluator } from './math-evaluator'; import { tool as metaTagGenerator } from './meta-tag-generator'; import { tool as mimeTypes } from './mime-types'; import { tool as otpCodeGeneratorAndValidator } from './otp-code-generator-and-validator'; import { tool as qrCodeGenerator } from './qr-code-generator'; import { tool as randomPortGenerator } from './random-port-generator'; import { tool as romanNumeralConverter } from './roman-numeral-converter'; import { tool as sqlPrettify } from './sql-prettify'; import { tool as svgPlaceholderGenerator } from './svg-placeholder-generator'; import { tool as temperatureConverter } from './temperature-converter'; import { tool as textStatistics } from './text-statistics'; import { tool as tokenGenerator } from './token-generator'; import type { ToolCategory } from './tools.types'; import { tool as urlEncoder } from './url-encoder'; import { tool as urlParser } from './url-parser'; import { tool as uuidGenerator } from './uuid-generator'; export const toolsByCategory: ToolCategory[] = [ { name: 'Crypto', components: [tokenGenerator, hashText, bcrypt, uuidGenerator, cypher, bip39, hmacGenerator, rsaKeyPairGenerator], }, { name: 'Converter', components: [ dateTimeConverter, baseConverter, romanNumeralConverter, base64StringConverter, base64FileConverter, colorConverter, caseConverter, textToNatoAlphabet, ], }, { name: 'Web', components: [ urlEncoder, htmlEntities, urlParser, deviceInformation, basicAuthGenerator, metaTagGenerator, otpCodeGeneratorAndValidator, mimeTypes, jwtParser, keycodeInfo, slugifyString, htmlWysiwygEditor, ], }, { name: 'Images', components: [qrCodeGenerator, svgPlaceholderGenerator], }, { name: 'Development', components: [ gitMemo, randomPortGenerator, crontabGenerator, jsonViewer, jsonMinify, sqlPrettify, chmodCalculator, dockerRunToDockerComposeConverter, ], }, { name: 'Network', components: [ipv4SubnetCalculator], }, { name: 'Math', components: [mathEvaluator, etaCalculator], }, { name: 'Measurement', components: [chronometer, temperatureConverter, benchmarkBuilder], }, { name: 'Text', components: [loremIpsumGenerator, textStatistics], }, ]; export const tools = toolsByCategory.flatMap(({ components }) => components); export const toolsWithCategory = toolsByCategory.flatMap(({ components, name }) => components.map((tool) => ({ category: name, ...tool })), );