diff --git a/components.d.ts b/components.d.ts index 25148492..e457a0c5 100644 --- a/components.d.ts +++ b/components.d.ts @@ -51,6 +51,7 @@ declare module '@vue/runtime-core' { Encryption: typeof import('./src/tools/encryption/encryption.vue')['default'] EtaCalculator: typeof import('./src/tools/eta-calculator/eta-calculator.vue')['default'] FavoriteButton: typeof import('./src/components/FavoriteButton.vue')['default'] + FileHash: typeof import('./src/tools/file-hash/file-hash.vue')['default'] FormatTransformer: typeof import('./src/components/FormatTransformer.vue')['default'] GitMemo: typeof import('./src/tools/git-memo/git-memo.vue')['default'] 'GitMemo.content': typeof import('./src/tools/git-memo/git-memo.content.md')['default'] diff --git a/src/tools/file-hash/file-hash.e2e.spec.ts b/src/tools/file-hash/file-hash.e2e.spec.ts new file mode 100644 index 00000000..c44b7c91 --- /dev/null +++ b/src/tools/file-hash/file-hash.e2e.spec.ts @@ -0,0 +1,15 @@ +import { test, expect } from '@playwright/test'; + +test.describe('Tool - File hash', () => { + test.beforeEach(async ({ page }) => { + await page.goto('/file-hash'); + }); + + test('Has correct title', async ({ page }) => { + await expect(page).toHaveTitle('File hash - IT Tools'); + }); + + test('', async ({ page }) => { + + }); +}); \ No newline at end of file diff --git a/src/tools/file-hash/file-hash.service.test.ts b/src/tools/file-hash/file-hash.service.test.ts new file mode 100644 index 00000000..cf56c670 --- /dev/null +++ b/src/tools/file-hash/file-hash.service.test.ts @@ -0,0 +1,6 @@ +import { expect, describe, it } from 'vitest'; +// import { } from './file-hash.service'; +// +// describe('file-hash', () => { +// +// }) \ No newline at end of file diff --git a/src/tools/file-hash/file-hash.service.ts b/src/tools/file-hash/file-hash.service.ts new file mode 100644 index 00000000..e69de29b diff --git a/src/tools/file-hash/file-hash.vue b/src/tools/file-hash/file-hash.vue new file mode 100644 index 00000000..23eac902 --- /dev/null +++ b/src/tools/file-hash/file-hash.vue @@ -0,0 +1,149 @@ + + + diff --git a/src/tools/file-hash/index.ts b/src/tools/file-hash/index.ts new file mode 100644 index 00000000..c622d805 --- /dev/null +++ b/src/tools/file-hash/index.ts @@ -0,0 +1,12 @@ +import { Key } from '@vicons/tabler'; +import { defineTool } from '../tool'; + +export const tool = defineTool({ + name: 'File hash', + path: '/file-hash', + description: 'Calculate file hashes', + keywords: ['file', 'hash', 'md5', 'sha', 'crypto'], + component: () => import('./file-hash.vue'), + icon: Key, + createdAt: new Date('2023-07-13'), +}); diff --git a/src/tools/index.ts b/src/tools/index.ts index fb05045f..aa56c5f3 100644 --- a/src/tools/index.ts +++ b/src/tools/index.ts @@ -1,6 +1,7 @@ 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 fileHash } from './file-hash'; import { tool as passwordStrengthAnalyser } from './password-strength-analyser'; import { tool as yamlToToml } from './yaml-to-toml'; import { tool as jsonToToml } from './json-to-toml'; @@ -69,7 +70,7 @@ import { tool as xmlFormatter } from './xml-formatter'; export const toolsByCategory: ToolCategory[] = [ { name: 'Crypto', - components: [tokenGenerator, hashText, bcrypt, uuidGenerator, cypher, bip39, hmacGenerator, rsaKeyPairGenerator, passwordStrengthAnalyser], + components: [fileHash, tokenGenerator, hashText, bcrypt, uuidGenerator, cypher, bip39, hmacGenerator, rsaKeyPairGenerator, passwordStrengthAnalyser], }, { name: 'Converter',