includio-cms 0.16.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +122 -0
- package/DOCS.md +1 -1
- package/README.md +62 -0
- package/dist/admin/api/rest/routes/collections.js +1 -1
- package/dist/admin/api/rest/routes/entries.js +1 -1
- package/dist/admin/api/rest/routes/singletons.js +1 -1
- package/dist/admin/remote/entry.remote.js +20 -3
- package/dist/admin/remote/invite.d.ts +1 -1
- package/dist/admin/remote/preview.remote.js +10 -2
- package/dist/admin/remote/reorder.js +1 -1
- package/dist/admin/remote/shop.remote.d.ts +18 -18
- package/dist/ai-claude/index.d.ts +9 -0
- package/dist/ai-claude/index.js +23 -7
- package/dist/ai-openai/index.d.ts +9 -0
- package/dist/ai-openai/index.js +28 -9
- package/dist/cms/runtime/api.d.ts +10 -6
- package/dist/cms/runtime/api.js +7 -7
- package/dist/components/ui/accordion/accordion.svelte.d.ts +1 -1
- package/dist/components/ui/calendar/calendar.svelte.d.ts +1 -1
- package/dist/components/ui/command/command-dialog.svelte.d.ts +1 -1
- package/dist/components/ui/command/command-input.svelte.d.ts +1 -1
- package/dist/components/ui/command/command.svelte.d.ts +1 -1
- package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +1 -1
- package/dist/components/ui/input/input.svelte.d.ts +1 -1
- package/dist/components/ui/input-group/input-group-input.svelte.d.ts +1 -1
- package/dist/components/ui/input-group/input-group-textarea.svelte.d.ts +1 -1
- package/dist/components/ui/radio-group/radio-group.svelte.d.ts +1 -1
- package/dist/components/ui/sidebar/sidebar-input.svelte.d.ts +1 -1
- package/dist/components/ui/tabs/tabs.svelte.d.ts +1 -1
- package/dist/components/ui/textarea/textarea.svelte.d.ts +1 -1
- package/dist/components/ui/toggle-group/toggle-group-item.svelte.d.ts +1 -1
- package/dist/components/ui/toggle-group/toggle-group.svelte.d.ts +1 -1
- package/dist/core/server/entries/operations/create.js +1 -1
- package/dist/core/server/entries/operations/get.d.ts +20 -16
- package/dist/core/server/entries/operations/get.js +45 -214
- package/dist/core/server/entries/operations/resolveEntry.d.ts +94 -0
- package/dist/core/server/entries/operations/resolveEntry.js +210 -0
- package/dist/core/server/entries/operations/update.js +1 -1
- package/dist/core/server/fields/populateEntry.d.ts +9 -1
- package/dist/core/server/fields/populateEntry.js +22 -18
- package/dist/core/server/fields/resolveRelationFields.d.ts +2 -1
- package/dist/core/server/fields/resolveRelationFields.js +140 -34
- package/dist/core/server/fields/resolveRichtextLinks.d.ts +2 -1
- package/dist/core/server/fields/resolveRichtextLinks.js +2 -1
- package/dist/core/server/fields/resolveUrlFields.d.ts +2 -1
- package/dist/core/server/fields/resolveUrlFields.js +6 -5
- package/dist/core/server/generator/generator.js +17 -14
- package/dist/db-postgres/index.d.ts +4 -0
- package/dist/db-postgres/index.js +4 -0
- package/dist/email-nodemailer/index.d.ts +9 -0
- package/dist/email-nodemailer/index.js +28 -6
- package/dist/entity/index.js +1 -1
- package/dist/files-local/index.d.ts +4 -0
- package/dist/files-local/index.js +4 -0
- package/dist/paraglide/messages/_index.d.ts +3 -36
- package/dist/paraglide/messages/_index.js +3 -71
- package/dist/paraglide/messages/hello_world.d.ts +5 -0
- package/dist/paraglide/messages/hello_world.js +33 -0
- package/dist/paraglide/messages/login_hello.d.ts +16 -0
- package/dist/paraglide/messages/login_hello.js +34 -0
- package/dist/paraglide/messages/login_please_login.d.ts +16 -0
- package/dist/paraglide/messages/login_please_login.js +34 -0
- package/dist/shop/server/populate.d.ts +2 -1
- package/dist/shop/server/populate.js +2 -1
- package/dist/sveltekit/server/index.d.ts +1 -1
- package/dist/sveltekit/server/index.js +1 -1
- package/dist/types/adapters/ai.d.ts +8 -0
- package/dist/types/adapters/db.d.ts +9 -0
- package/dist/types/adapters/email.d.ts +6 -0
- package/dist/types/adapters/files.d.ts +5 -0
- package/dist/types/plugins.d.ts +6 -2
- package/dist/updates/0.18.0/index.d.ts +2 -0
- package/dist/updates/0.18.0/index.js +78 -0
- package/dist/updates/0.19.0/index.d.ts +2 -0
- package/dist/updates/0.19.0/index.js +40 -0
- package/dist/updates/index.js +3 -1
- package/package.json +14 -5
- package/dist/paraglide/messages/en.d.ts +0 -5
- package/dist/paraglide/messages/en.js +0 -14
- package/dist/paraglide/messages/pl.d.ts +0 -5
- package/dist/paraglide/messages/pl.js +0 -14
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export const update = {
|
|
2
|
+
version: '0.18.0',
|
|
3
|
+
date: '2026-04-29',
|
|
4
|
+
description: 'Konsolidacja entry resolverów — kanoniczny `resolveEntry()` / `resolveEntries()` / `countEntries()` w jednym public API. Locale strict, cycle detection, populate config per-field opt-out + maxDepth. Hard remove starych funkcji (getEntry, getEntries, getRawEntry/ies, getDbEntry/ies, populateEntryData) z public surface — przeniesione do internal lub całkowicie usunięte.',
|
|
5
|
+
features: [
|
|
6
|
+
'`resolveEntry({ id?, collection?, locale?, status?, populate? })` — kanoniczny resolver pojedynczego entry; `id` lub `collection` wymagane. Default locale = `cms.languages[0]`, default status = `published`. Zwraca null gdy locale/status nie ma versionu (strict, brak fallback).',
|
|
7
|
+
'`resolveEntries({ collection, locale?, status?, ids?, filter?, orderBy?, limit?, offset?, populate? })` — kanoniczny lister; pokrywa wszystkie use case starego `getEntries`.',
|
|
8
|
+
'`countEntries({ collection, locale?, status?, ids?, filter? })` — zlicza entries pasujące do kryteriów (per locale, per status). Bez populate (tani DB count).',
|
|
9
|
+
'`PopulateConfig` — typ public: `{ maxDepth?: number; fields?: Record<string, false> }`. Per-field opt-out (`{ author: false }` → raw ID). Default maxDepth = 5 (soft cap).',
|
|
10
|
+
'Cycle detection w nested populate — A → B → A nie wybucha; powtórzony entryId zachowuje raw ID zamiast dalszej rekurencji.',
|
|
11
|
+
'Status cascade — draft entry z `status: "draft"` populuje draft relations (jeśli istnieją w tym samym locale). Published cascade do published nested.',
|
|
12
|
+
'`status: "scheduled"` — dostępne w resolverze. Use case: strona z odliczaniem (countdown) do launchu produktu/postu. `entry._publishedAt` daje datę przyszłej publikacji.'
|
|
13
|
+
],
|
|
14
|
+
fixes: [
|
|
15
|
+
'Locale spójny w całym call chain — żaden field-level resolver nie hardcoduje już lokalizacji ani nie używa innego defaultu niż top-level resolver. Stara fragmentacja (`resolveRelationFields` defaultowało do `getEntries` published-only) usunięta.',
|
|
16
|
+
'Recursion guard — głęboka kolekcja relacji (≥ 6 poziomów) nie wybucha już stackiem. Soft maxDepth=5 + cycle detection.',
|
|
17
|
+
'Strict locale — brak ukrytego fallbacku do `cms.languages[0]` w nested resolverach (był różnie w każdym field-resolverze).'
|
|
18
|
+
],
|
|
19
|
+
breakingChanges: [
|
|
20
|
+
'**REMOVED z public API**: `getEntry`, `getEntries`, `getEntryOrThrow`, `getRawEntry`, `getRawEntries`, `getRawEntryOrThrow`, `getDbEntry`, `getDbEntries`, `populateEntryData`. Wszystkie te funkcje były dotąd re-exportowane przez `includio-cms/server` i `includio-cms`. **Zamień na `resolveEntry`/`resolveEntries`/`countEntries`** zgodnie z migration table niżej. Nie ma deprecated wrappera — hard remove zgodnie z polityką lean-v1 (wszystkie breakingy PRZED v1.0).',
|
|
21
|
+
'**Rename arg `language` → `locale`** w `resolveEntry`/`resolveEntries`/`countEntries`. Stare API używało `language`, nowe `locale` (semantycznie bardziej precyzyjne; wartość bez zmian — `cms.languages[N]`).',
|
|
22
|
+
'**Rename arg `slug` → `collection`** w resolverach. Stare API używało `slug` (co konfundowało z slugiem entry). Nowe: `collection: "posts"`. Singletons też używają `collection: "settings"` (cms.getBySlug obejmuje obie typy).',
|
|
23
|
+
'**`status` enum zwężony** z `"published" | "draft" | "scheduled" | "archived"` do `"published" | "draft" | "scheduled"`. `archived` nie jest już dostępny w resolverze (to filter listy, nie fetch by id) — admin używa internal `_getRawEntries` envelope.',
|
|
24
|
+
'**Plugin `populateResolver` 3-arg signature** — custom field plugin `populateResolver(value, field)` ma teraz 3-ci arg `ctx: PopulateCtx` (locale, status, depth, visited, populate, entryId). Plugin API jest `@experimental`, więc breaking dopuszczalne. Migracja: zaktualizuj sygnaturę. Stary 2-arg call zostaje wywołany ale ignoruje cascade — najlepiej dodać 3-ci arg.',
|
|
25
|
+
'**`PopulateConfig`** wymagany dla opt-out — wcześniej populate był all-or-nothing.',
|
|
26
|
+
'**`populatePreviewData` (admin remote)** używa teraz internal `_populate` zamiast `populateEntryData`. Public API niezmienione, ale jeśli importowałeś `populateEntryData` jako helper — usuń.',
|
|
27
|
+
'**Internal renames** — `_getRawEntry/ies`, `_getDbEntry/ies`, `_getRawEntryOrThrow`. Funkcje pozostają dostępne dla admin REST i remote, ale **NIE** są re-exportowane przez `includio-cms/server`. Userland code MUSI przejść na `resolveEntry`/`resolveEntries`.'
|
|
28
|
+
],
|
|
29
|
+
notes: `Migration table:
|
|
30
|
+
|
|
31
|
+
| Old | New |
|
|
32
|
+
|---|---|
|
|
33
|
+
| \`getEntry({ slug, id, language, status })\` | \`resolveEntry({ collection: slug, id, locale: language, status })\` |
|
|
34
|
+
| \`getEntry({ slug, language })\` (singleton) | \`resolveEntry({ collection: slug, locale: language })\` |
|
|
35
|
+
| \`getEntries({ slug, language, status, ids?, limit?, offset? })\` | \`resolveEntries({ collection: slug, locale: language, status, ids?, limit?, offset? })\` |
|
|
36
|
+
| \`getEntryOrThrow(opts)\` | \`const e = await resolveEntry(opts); if (!e) throw new Error('Entry not found');\` |
|
|
37
|
+
| \`getRawEntry/ies(...)\` | INTERNAL — niedostępne. Jeśli potrzebujesz envelope z per-language draft/published versions, zbuduj custom REST endpoint po stronie aplikacji. |
|
|
38
|
+
| \`getDbEntry/ies(...)\` | INTERNAL — niedostępne. Userland NIE powinien używać raw DB queries; przejdź na \`resolveEntry/ies\`. |
|
|
39
|
+
| \`populateEntryData(data, fields, language, entryId?)\` | INTERNAL — admin preview używa wewnątrz. |
|
|
40
|
+
|
|
41
|
+
Before/after:
|
|
42
|
+
|
|
43
|
+
\`\`\`ts
|
|
44
|
+
// PRZED (0.16):
|
|
45
|
+
import { getEntry, getEntries } from 'includio-cms/server';
|
|
46
|
+
const post = await getEntry({ slug: 'posts', id: postId, language: 'pl' });
|
|
47
|
+
const all = await getEntries({ slug: 'posts', language: 'pl', limit: 10 });
|
|
48
|
+
|
|
49
|
+
// PO (0.17):
|
|
50
|
+
import { resolveEntry, resolveEntries } from 'includio-cms/server';
|
|
51
|
+
const post = await resolveEntry({ collection: 'posts', id: postId, locale: 'pl' });
|
|
52
|
+
const all = await resolveEntries({ collection: 'posts', locale: 'pl', limit: 10 });
|
|
53
|
+
\`\`\`
|
|
54
|
+
|
|
55
|
+
Populate opt-out:
|
|
56
|
+
|
|
57
|
+
\`\`\`ts
|
|
58
|
+
// Pomiń populate dla pojedynczego pola (zwróć raw ID zamiast Entry):
|
|
59
|
+
const post = await resolveEntry({
|
|
60
|
+
collection: 'posts',
|
|
61
|
+
id: postId,
|
|
62
|
+
locale: 'pl',
|
|
63
|
+
populate: { fields: { author: false } }
|
|
64
|
+
});
|
|
65
|
+
console.log(post.author); // 'a1' (string, nie Entry)
|
|
66
|
+
|
|
67
|
+
// Ogranicz głębokość rekursji:
|
|
68
|
+
const post = await resolveEntry({
|
|
69
|
+
collection: 'posts',
|
|
70
|
+
id: postId,
|
|
71
|
+
locale: 'pl',
|
|
72
|
+
populate: { maxDepth: 1 }
|
|
73
|
+
});
|
|
74
|
+
// post.author = pełen Entry, post.author.featuredPost = raw ID (depth 2)
|
|
75
|
+
\`\`\`
|
|
76
|
+
|
|
77
|
+
Brak SQL migration. Stary code używający usuniętych funkcji rzuci ImportError przy \`pnpm i && pnpm build\` — wszystko w userland kodzie wyłapie się TS-em od razu.`
|
|
78
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export const update = {
|
|
2
|
+
version: '0.19.0',
|
|
3
|
+
date: '2026-04-29',
|
|
4
|
+
description: 'Adapter contracts final + 3rd-party SDKs (`@anthropic-ai/sdk`, `openai`, `nodemailer`) przeniesione do `peerDependenciesMeta` jako optional. Adapter typy + factory oznaczone `@public` JSDoc. README sekcja "Writing your own adapter".',
|
|
5
|
+
features: [
|
|
6
|
+
'Adapter typy (`DatabaseAdapter`, `FilesAdapter`, `EmailAdapter`, `AIAdapter`) finalne, oznaczone `@public` JSDoc — stabilna powierzchnia kontraktu, TypeScript egzekwuje surface.',
|
|
7
|
+
'Factory funkcje adapterów (`pg`, `local`, `nodemailerAdapter`, `openAIAdapter`, `claudeAdapter`) oznaczone `@public`.',
|
|
8
|
+
'README sekcja "Writing your own adapter" + przykład bazujący na `db-postgres` + tabela optional peer dependencies.',
|
|
9
|
+
'Lazy import 3 SDK (`@anthropic-ai/sdk`, `openai`, `nodemailer`) w factory adapterach — SDK nie ładuje się dopóki adapter nie jest faktycznie użyty.'
|
|
10
|
+
],
|
|
11
|
+
fixes: [
|
|
12
|
+
'Bundle slim — instalacja `includio-cms` w czystym projekcie nie ciąga już ~7-9MB SDK (anthropic + openai + nodemailer). Zostają w peer optional, doinstalowane tylko gdy faktycznie potrzebne.'
|
|
13
|
+
],
|
|
14
|
+
breakingChanges: [
|
|
15
|
+
'**`@anthropic-ai/sdk`, `openai`, `nodemailer` przeniesione z `dependencies` do `peerDependenciesMeta` jako optional**. Userland używający `email-nodemailer`/`ai-openai`/`ai-claude` musi sam doinstalować odpowiedni SDK: `pnpm add nodemailer`, `pnpm add openai`, `pnpm add @anthropic-ai/sdk`. Brak peer = throw przy pierwszym użyciu adaptera (`generateAltText`/`sendMail`) z czytelnym komunikatem co doinstalować.',
|
|
16
|
+
'**`runed` przeniesione z `peerDependenciesMeta.optional` do required peer**. `runed` jest hard-importowane w admin UI (PersistedState), więc opcjonalność była fikcyjna — userland uruchamiający admin BEZ `runed` dostawał crash przy bootcie. Teraz peer wymaga jawnej instalacji (lub pozostaje pulled przez SvelteKit projektu).'
|
|
17
|
+
],
|
|
18
|
+
notes: `Migracja:
|
|
19
|
+
|
|
20
|
+
1. Dodaj wymagane peer SDK do swojego \`package.json\`:
|
|
21
|
+
|
|
22
|
+
\`\`\`bash
|
|
23
|
+
# Jeśli używasz nodemailerAdapter:
|
|
24
|
+
pnpm add nodemailer
|
|
25
|
+
|
|
26
|
+
# Jeśli używasz openAIAdapter:
|
|
27
|
+
pnpm add openai
|
|
28
|
+
|
|
29
|
+
# Jeśli używasz claudeAdapter:
|
|
30
|
+
pnpm add @anthropic-ai/sdk
|
|
31
|
+
\`\`\`
|
|
32
|
+
|
|
33
|
+
2. \`runed\` był już peer wcześniej, ale teraz nie jest optional — upewnij się że jest zainstalowane (zwykle pulled przez SvelteKit). Jeśli \`pnpm install\` zgłasza missing peer, dodaj jawnie: \`pnpm add runed\`.
|
|
34
|
+
|
|
35
|
+
Brak SQL migration. Zmiana czysto package-level.
|
|
36
|
+
|
|
37
|
+
Pisanie własnych adapterów:
|
|
38
|
+
|
|
39
|
+
Wszystkie 4 typy adapterów (\`DatabaseAdapter\`, \`FilesAdapter\`, \`EmailAdapter\`, \`AIAdapter\`) mają teraz \`@public\` kontrakty. Patrz README sekcja "Writing your own adapter" + przykład bazujący na \`db-postgres\`.`
|
|
40
|
+
};
|
package/dist/updates/index.js
CHANGED
|
@@ -51,7 +51,9 @@ import { update as update0153 } from './0.15.3/index.js';
|
|
|
51
51
|
import { update as update0154 } from './0.15.4/index.js';
|
|
52
52
|
import { update as update0155 } from './0.15.5/index.js';
|
|
53
53
|
import { update as update0160 } from './0.16.0/index.js';
|
|
54
|
-
|
|
54
|
+
import { update as update0180 } from './0.18.0/index.js';
|
|
55
|
+
import { update as update0190 } from './0.19.0/index.js';
|
|
56
|
+
export const updates = [update0065, update0066, update0067, update0068, update0069, update010, update011, update012, update013, update014, update015, update020, update022, update050, update051, update052, update053, update054, update055, update056, update057, update058, update060, update061, update062, update070, update071, update072, update073, update080, update090, update0100, update0110, update0120, update0130, update0131, update0132, update0133, update0134, update0140, update0141, update0142, update0143, update0144, update0145, update0146, update0150, update0151, update0152, update0153, update0154, update0155, update0160, update0180, update0190];
|
|
55
57
|
export const getUpdatesFrom = (fromVersion) => {
|
|
56
58
|
const fromParts = fromVersion.split('.').map(Number);
|
|
57
59
|
return updates.filter((update) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "includio-cms",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"dev": "vite dev",
|
|
6
6
|
"build": "vite build && npm run prepack",
|
|
@@ -177,6 +177,7 @@
|
|
|
177
177
|
}
|
|
178
178
|
},
|
|
179
179
|
"peerDependencies": {
|
|
180
|
+
"@anthropic-ai/sdk": ">=0.39.0",
|
|
180
181
|
"@sveltejs/kit": "^2.48.0",
|
|
181
182
|
"@sveltejs/vite-plugin-svelte": "^6.2.1",
|
|
182
183
|
"better-auth": "^1.3.34",
|
|
@@ -184,6 +185,8 @@
|
|
|
184
185
|
"drizzle-orm": "^0.40.0",
|
|
185
186
|
"embla-carousel-svelte": "^8.6.0",
|
|
186
187
|
"formsnap": "^2.0.1",
|
|
188
|
+
"nodemailer": ">=7.0.0",
|
|
189
|
+
"openai": ">=6.0.0",
|
|
187
190
|
"paneforge": "^1.0.2",
|
|
188
191
|
"postgres": "^3.4.5",
|
|
189
192
|
"runed": "^0.35.1",
|
|
@@ -198,7 +201,13 @@
|
|
|
198
201
|
"zod": "^4.0.0"
|
|
199
202
|
},
|
|
200
203
|
"peerDependenciesMeta": {
|
|
201
|
-
"
|
|
204
|
+
"@anthropic-ai/sdk": {
|
|
205
|
+
"optional": true
|
|
206
|
+
},
|
|
207
|
+
"nodemailer": {
|
|
208
|
+
"optional": true
|
|
209
|
+
},
|
|
210
|
+
"openai": {
|
|
202
211
|
"optional": true
|
|
203
212
|
},
|
|
204
213
|
"svelte-tiptap": {
|
|
@@ -215,6 +224,7 @@
|
|
|
215
224
|
}
|
|
216
225
|
},
|
|
217
226
|
"devDependencies": {
|
|
227
|
+
"@anthropic-ai/sdk": "^0.39.0",
|
|
218
228
|
"@chromatic-com/storybook": "^5.0.1",
|
|
219
229
|
"@eslint/compat": "^1.2.5",
|
|
220
230
|
"@eslint/js": "^9.18.0",
|
|
@@ -237,6 +247,8 @@
|
|
|
237
247
|
"@types/fluent-ffmpeg": "^2.1.27",
|
|
238
248
|
"@types/node": "^22",
|
|
239
249
|
"@types/nodemailer": "^7.0.4",
|
|
250
|
+
"nodemailer": "^7.0.11",
|
|
251
|
+
"openai": "^6.9.0",
|
|
240
252
|
"better-auth": "^1.3.34",
|
|
241
253
|
"bits-ui": "^2.11.5",
|
|
242
254
|
"clsx": "^2.1.1",
|
|
@@ -283,7 +295,6 @@
|
|
|
283
295
|
"svelte"
|
|
284
296
|
],
|
|
285
297
|
"dependencies": {
|
|
286
|
-
"@anthropic-ai/sdk": "^0.39.0",
|
|
287
298
|
"@inlang/paraglide-js": "^2.0.0",
|
|
288
299
|
"@internationalized/date": "^3.8.2",
|
|
289
300
|
"@lucide/svelte": "^0.544.0",
|
|
@@ -316,8 +327,6 @@
|
|
|
316
327
|
"isomorphic-dompurify": "3.0.0-rc.2",
|
|
317
328
|
"lowlight": "^3.3.0",
|
|
318
329
|
"mrmime": "^2.0.1",
|
|
319
|
-
"nodemailer": "^7.0.11",
|
|
320
|
-
"openai": "^6.9.0",
|
|
321
330
|
"path-to-regexp": "^8.2.0",
|
|
322
331
|
"readline": "^1.3.0",
|
|
323
332
|
"slugify": "^1.6.6",
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export const hello_world = /** @type {(inputs: { name: NonNullable<unknown> }) => string} */ (i) => {
|
|
5
|
-
return `Hello, ${i.name} from en!`
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
export const login_hello = /** @type {(inputs: {}) => string} */ () => {
|
|
9
|
-
return `Welcome back`
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export const login_please_login = /** @type {(inputs: {}) => string} */ () => {
|
|
13
|
-
return `Login to your account`
|
|
14
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export const hello_world = /** @type {(inputs: { name: NonNullable<unknown> }) => string} */ (i) => {
|
|
5
|
-
return `Hello, ${i.name} from pl!`
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
export const login_hello = /** @type {(inputs: {}) => string} */ () => {
|
|
9
|
-
return `Witaj ponownie`
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export const login_please_login = /** @type {(inputs: {}) => string} */ () => {
|
|
13
|
-
return `Zaloguj się na swoje konto`
|
|
14
|
-
};
|