diff --git a/components.d.ts b/components.d.ts index f4172cea..0143f529 100644 --- a/components.d.ts +++ b/components.d.ts @@ -11,6 +11,7 @@ declare module '@vue/runtime-core' { export interface GlobalComponents { '404.page': typeof import('./src/pages/404.page.vue')['default'] About: typeof import('./src/pages/About.vue')['default'] + AiPromptSplitter: typeof import('./src/tools/ai-prompt-splitter/ai-prompt-splitter.vue')['default'] App: typeof import('./src/App.vue')['default'] Argon2HashGenerator: typeof import('./src/tools/argon2-hash-generator/argon2-hash-generator.vue')['default'] AsciiTextDrawer: typeof import('./src/tools/ascii-text-drawer/ascii-text-drawer.vue')['default'] diff --git a/locales/en.yml b/locales/en.yml index fe0917e9..2c37134f 100644 --- a/locales/en.yml +++ b/locales/en.yml @@ -391,6 +391,10 @@ tools: text-to-binary: title: Text to ASCII binary description: Convert text to its ASCII binary representation and vice-versa. + + ai-prompt-splitter: + title: AI prompt splitter + description: Split up large prompts into smaller, manageable segments based on a set character limit for AI chat prompts. image-resizer: title: Image resizer description: Convert the width and height of an image file, preview, and download it in a desired format (.jpg, .jpeg, .png, .bmp, .ico, .svg) \ No newline at end of file diff --git a/src/tools/ai-prompt-splitter/ai-prompt-splitter.vue b/src/tools/ai-prompt-splitter/ai-prompt-splitter.vue new file mode 100644 index 00000000..445a01a5 --- /dev/null +++ b/src/tools/ai-prompt-splitter/ai-prompt-splitter.vue @@ -0,0 +1,282 @@ + + + + + diff --git a/src/tools/ai-prompt-splitter/index.ts b/src/tools/ai-prompt-splitter/index.ts new file mode 100644 index 00000000..b525c55c --- /dev/null +++ b/src/tools/ai-prompt-splitter/index.ts @@ -0,0 +1,12 @@ +import { Messages } from '@vicons/tabler'; +import { defineTool } from '../tool'; + +export const tool = defineTool({ + name: 'Ai prompt splitter', + path: '/ai-prompt-splitter', + description: '', + keywords: ['ai', 'prompt', 'splitter'], + component: () => import('./ai-prompt-splitter.vue'), + icon: Messages, + createdAt: new Date('2024-10-18'), +}); diff --git a/src/tools/index.ts b/src/tools/index.ts index 1070da26..92e6d5aa 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 aiPromptSplitter } from './ai-prompt-splitter'; import { tool as argon2HashGenerator } from './argon2-hash-generator'; import { tool as imageResizer } from './image-resizer'; import { tool as dnsQueries } from './dns-queries'; @@ -224,6 +225,7 @@ export const toolsByCategory: ToolCategory[] = [ textDiff, numeronymGenerator, asciiTextDrawer, + aiPromptSplitter, ], }, {