diff --git a/docs/ai.md b/docs/ai.md index 7ceb137..5768734 100644 --- a/docs/ai.md +++ b/docs/ai.md @@ -23,35 +23,27 @@ Here is an example configuration for a counter element: ```ts import { OpenAISchema } from '@tailor-cms/cek-common'; -export const Schema: OpenAISchema = { - type: 'json_schema', - name: 'ce_counter', - schema: { - type: 'object', - properties: { - count: { type: 'number' }, - description: { type: 'string' }, +export const ai = { + Schema: { + type: 'json_schema', + name: 'ce_counter', + schema: { + type: 'object', + properties: { + count: { type: 'number' }, + description: { type: 'string' }, + }, + required: ['count', 'description'], + additionalProperties: false, }, - required: ['count', 'description'], - additionalProperties: false, - }, -}; - -export const getPrompt = () => ` - Generate a counter content element as an object with the following - properties: - { - "description": "", - "count": 0 - }, - where: - - 'description' is the counter description - - 'count' is the number representing the counter value -`; - -const ai = { - getPrompt, - Schema, + } as OpenAISchema, + getPrompt: () => ` + Generate counter content element as an object with the following + properties: { "description": "", "count": 0 }. + Where: + - 'description' is the counter description + - 'count' is the number representing counter value + `, processResponse: (val: any) => val, }; ``` diff --git a/example/packages/manifest/package.json b/example/packages/manifest/package.json index fd787e5..8c1f3ec 100644 --- a/example/packages/manifest/package.json +++ b/example/packages/manifest/package.json @@ -24,10 +24,8 @@ "nuke:dist": "pnpm dlx del-cli dist", "prepublish": "pnpm build" }, - "dependencies": { - "@tailor-cms/cek-common": "workspace:*" - }, "devDependencies": { + "@tailor-cms/cek-common": "workspace:*", "@tailor-cms/eslint-config": "workspace:*", "tsup": "^8.5.0", "typescript": "^5.8.3" diff --git a/example/packages/manifest/src/ai.ts b/example/packages/manifest/src/ai.ts deleted file mode 100644 index bc7215d..0000000 --- a/example/packages/manifest/src/ai.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { OpenAISchema } from '@tailor-cms/cek-common'; - -export const Schema: OpenAISchema = { - type: 'json_schema', - name: 'ce_counter', - schema: { - type: 'object', - properties: { - count: { type: 'number' }, - description: { type: 'string' }, - }, - required: ['count', 'description'], - additionalProperties: false, - }, -}; - -export const getPrompt = () => ` - Generate counter content element as an object with the following properties: - { - "description": "", - "count": 0 - }, - where: - - 'description' is the counter description - - 'count' is the number representing counter value -`; - -export default { - getPrompt, - Schema, - processResponse: (val: any) => val, -}; diff --git a/example/packages/manifest/src/index.ts b/example/packages/manifest/src/index.ts index c513597..75aaa9b 100644 --- a/example/packages/manifest/src/index.ts +++ b/example/packages/manifest/src/index.ts @@ -1,9 +1,10 @@ +import type { OpenAISchema } from '@tailor-cms/cek-common'; + import type { DataInitializer, ElementData, ElementManifest, } from './interfaces'; -import ai from './ai'; // Element unique id within the target system (e.g. Tailor) export const type = 'ACME_TCE_COUNTER'; @@ -37,7 +38,29 @@ export const mocks = { ], }; -export { ai }; +export const ai = { + Schema: { + type: 'json_schema', + name: 'ce_counter', + schema: { + type: 'object', + properties: { + count: { type: 'number' }, + description: { type: 'string' }, + }, + required: ['count', 'description'], + additionalProperties: false, + }, + } as OpenAISchema, + getPrompt: () => ` + Generate counter content element as an object with the following + properties: { "description": "", "count": 0 }. + Where: + - 'description' is the counter description + - 'count' is the number representing counter value + `, + processResponse: (val: any) => val, +}; const manifest: ElementManifest = { type, @@ -45,8 +68,8 @@ const manifest: ElementManifest = { name, initState, ui, - ai, mocks, + ai, }; export default manifest; diff --git a/example/packages/server/src/index.ts b/example/packages/server/src/index.ts index e40fe67..c332f33 100644 --- a/example/packages/server/src/index.ts +++ b/example/packages/server/src/index.ts @@ -78,6 +78,7 @@ export default { onUserInteraction, beforeDisplay, mocks, + ai, }; export { type, initState, mocks, ai }; diff --git a/packages/common/CHANGELOG.md b/packages/common/CHANGELOG.md index 34c21ef..c2e1704 100644 --- a/packages/common/CHANGELOG.md +++ b/packages/common/CHANGELOG.md @@ -1,5 +1,17 @@ # @tailor-cms/cek-common +## 1.2.5 + +### Patch Changes + +- Update content generation handling. + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. + ## 1.2.3 ### Patch Changes diff --git a/packages/common/package.json b/packages/common/package.json index 4c3b565..8ee24f6 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -3,7 +3,7 @@ "description": "Content element kit shared util library", "author": "Studion ", "type": "module", - "version": "1.2.3", + "version": "1.2.5", "exports": { ".": { "import": "./dist/index.js", diff --git a/packages/common/src/api.ts b/packages/common/src/api.ts index 607c594..983e4fd 100644 --- a/packages/common/src/api.ts +++ b/packages/common/src/api.ts @@ -16,7 +16,7 @@ export const getApiClient = ( url: string, runtime: 'authoring' | 'delivery' = 'authoring', ) => { - const api = ky.create({ prefixUrl: url }); + const api = ky.create({ prefixUrl: url, timeout: false }); const opts = { searchParams: { runtime } }; const getElement = (id: string): Promise => diff --git a/packages/e2e/CHANGELOG.md b/packages/e2e/CHANGELOG.md index 65c6bb3..54742e2 100644 --- a/packages/e2e/CHANGELOG.md +++ b/packages/e2e/CHANGELOG.md @@ -1,5 +1,17 @@ # @tailor-cms/cek-e2e +## 1.2.5 + +### Patch Changes + +- Update content generation handling. + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. + ## 1.2.3 ### Patch Changes diff --git a/packages/e2e/package.json b/packages/e2e/package.json index af225fa..ba69f0a 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,6 +1,6 @@ { "name": "@tailor-cms/cek-e2e", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "exports": { ".": { diff --git a/packages/runtime/preview/CHANGELOG.md b/packages/runtime/preview/CHANGELOG.md index 515c198..fce42b0 100644 --- a/packages/runtime/preview/CHANGELOG.md +++ b/packages/runtime/preview/CHANGELOG.md @@ -1,5 +1,21 @@ # @tailor-cms/tce-preview-runtime +## 1.2.5 + +### Patch Changes + +- Update content generation handling. +- Updated dependencies + - @tailor-cms/cek-common@1.2.5 + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. +- Updated dependencies + - @tailor-cms/cek-common@1.2.4 + ## 1.2.3 ### Patch Changes diff --git a/packages/runtime/preview/package.json b/packages/runtime/preview/package.json index 480d1bc..2704aea 100644 --- a/packages/runtime/preview/package.json +++ b/packages/runtime/preview/package.json @@ -2,7 +2,7 @@ "name": "@tailor-cms/tce-preview-runtime", "description": "Preview content element client side runtime", "author": "Studion ", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "scripts": { "dev": "vite", diff --git a/packages/runtime/tce-display/CHANGELOG.md b/packages/runtime/tce-display/CHANGELOG.md index d294682..910e1e5 100644 --- a/packages/runtime/tce-display/CHANGELOG.md +++ b/packages/runtime/tce-display/CHANGELOG.md @@ -1,5 +1,21 @@ # @tailor-cms/tce-display-runtime +## 1.2.5 + +### Patch Changes + +- Update content generation handling. +- Updated dependencies + - @tailor-cms/cek-common@1.2.5 + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. +- Updated dependencies + - @tailor-cms/cek-common@1.2.4 + ## 1.2.3 ### Patch Changes diff --git a/packages/runtime/tce-display/package.json b/packages/runtime/tce-display/package.json index 9f4a162..213675c 100644 --- a/packages/runtime/tce-display/package.json +++ b/packages/runtime/tce-display/package.json @@ -2,7 +2,7 @@ "name": "@tailor-cms/tce-display-runtime", "description": "Display content element client side runtime", "author": "Studion ", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "scripts": { "dev": "vite", diff --git a/packages/runtime/tce-edit/CHANGELOG.md b/packages/runtime/tce-edit/CHANGELOG.md index 9e0cbe8..25fb132 100644 --- a/packages/runtime/tce-edit/CHANGELOG.md +++ b/packages/runtime/tce-edit/CHANGELOG.md @@ -1,5 +1,21 @@ # @tailor-cms/tce-edit-runtime +## 1.2.5 + +### Patch Changes + +- Update content generation handling. +- Updated dependencies + - @tailor-cms/cek-common@1.2.5 + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. +- Updated dependencies + - @tailor-cms/cek-common@1.2.4 + ## 1.2.3 ### Patch Changes diff --git a/packages/runtime/tce-edit/package.json b/packages/runtime/tce-edit/package.json index 5c3f29a..5dd0a2f 100644 --- a/packages/runtime/tce-edit/package.json +++ b/packages/runtime/tce-edit/package.json @@ -2,7 +2,7 @@ "name": "@tailor-cms/tce-edit-runtime", "description": "Edit content element client side runtime", "author": "Studion ", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "scripts": { "dev": "vite", diff --git a/packages/runtime/tce-edit/src/App.vue b/packages/runtime/tce-edit/src/App.vue index fcf614b..8e48526 100644 --- a/packages/runtime/tce-edit/src/App.vue +++ b/packages/runtime/tce-edit/src/App.vue @@ -263,6 +263,7 @@ import { import { getCurrentInstance, inject, + nextTick, onMounted, provide, ref, @@ -363,9 +364,9 @@ const doTheMagic = async () => { console.log('Error on element content generate:', error); } finally { isGeneratingContent.value = false; + await nextTick(); + isFocused.value = true; } - isGeneratingContent.value = false; - isFocused.value = true; }; const onLink = () => { diff --git a/packages/runtime/tce-server/CHANGELOG.md b/packages/runtime/tce-server/CHANGELOG.md index 82df82f..34d1564 100644 --- a/packages/runtime/tce-server/CHANGELOG.md +++ b/packages/runtime/tce-server/CHANGELOG.md @@ -1,5 +1,17 @@ # @tailor-cms/tce-server-runtime +## 1.2.5 + +### Patch Changes + +- Update content generation handling. + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. + ## 1.2.3 ### Patch Changes diff --git a/packages/runtime/tce-server/package.json b/packages/runtime/tce-server/package.json index f6a6407..545ff80 100644 --- a/packages/runtime/tce-server/package.json +++ b/packages/runtime/tce-server/package.json @@ -2,7 +2,7 @@ "name": "@tailor-cms/tce-server-runtime", "description": "Teaching element server runtime", "author": "Studion ", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "scripts": { "dev": "node --experimental-specifier-resolution=node --loader ts-node/esm ./boot.ts", diff --git a/packages/tce-boot/CHANGELOG.md b/packages/tce-boot/CHANGELOG.md index 53774dd..bb63d67 100644 --- a/packages/tce-boot/CHANGELOG.md +++ b/packages/tce-boot/CHANGELOG.md @@ -1,5 +1,27 @@ # @tailor-cms/tce-boot +## 1.2.5 + +### Patch Changes + +- Update content generation handling. +- Updated dependencies + - @tailor-cms/tce-display-runtime@1.2.5 + - @tailor-cms/tce-server-runtime@1.2.5 + - @tailor-cms/tce-edit-runtime@1.2.5 + - @tailor-cms/tce-preview-runtime@1.2.5 + +## 1.2.4 + +### Patch Changes + +- Remove request timeout, fix focus on content generate. +- Updated dependencies + - @tailor-cms/tce-edit-runtime@1.2.4 + - @tailor-cms/tce-preview-runtime@1.2.4 + - @tailor-cms/tce-display-runtime@1.2.4 + - @tailor-cms/tce-server-runtime@1.2.4 + ## 1.2.3 ### Patch Changes diff --git a/packages/tce-boot/package.json b/packages/tce-boot/package.json index 510fae0..94e4783 100644 --- a/packages/tce-boot/package.json +++ b/packages/tce-boot/package.json @@ -2,7 +2,7 @@ "name": "@tailor-cms/tce-boot", "description": "Content element runtime boot script", "author": "Studion ", - "version": "1.2.3", + "version": "1.2.5", "type": "module", "scripts": { "start": "node src/free-ports.js && node src/index.js", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 40aa4d8..faae4b1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -102,11 +102,10 @@ importers: version: 2.2.10(typescript@5.8.3) example/packages/manifest: - dependencies: + devDependencies: '@tailor-cms/cek-common': specifier: workspace:* version: link:../../../packages/common - devDependencies: '@tailor-cms/eslint-config': specifier: workspace:* version: link:../../../packages/eslint