@christianriedl/media 1.0.180 → 1.0.182

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.
@@ -1,6 +1,6 @@
1
1
  import { IRest } from '@christianriedl/rest';
2
2
  import { ILogger, IStatistics, InjectionKey } from '@christianriedl/utils';
3
- import { IBook, IAuthor, IAuthorShort, IBooksService } from "./iBooks";
3
+ import { IBook, IFullBook, IAuthor, IAuthorShort, IBooksService } from "./iBooks";
4
4
  export declare const getBooksSymbol: InjectionKey<() => BooksService>;
5
5
  export declare class BooksService implements IBooksService {
6
6
  rest: IRest;
@@ -8,6 +8,8 @@ export declare class BooksService implements IBooksService {
8
8
  user: string;
9
9
  log: ILogger;
10
10
  cachedAuthors?: IAuthorShort[];
11
+ categories: string[];
12
+ flags: string[];
11
13
  constructor(rest: IRest, user: string, statistics: IStatistics, log: ILogger);
12
14
  getAuthors(surName?: string, givenName?: string, withBooks?: boolean, id?: number): Promise<IAuthor[]>;
13
15
  getAuthorsShort(): Promise<IAuthorShort[]>;
@@ -15,6 +17,7 @@ export declare class BooksService implements IBooksService {
15
17
  updateAuthor(author: IAuthor): Promise<boolean>;
16
18
  deleteAuthor(id: number): Promise<boolean>;
17
19
  getBooks(authorId?: number, bookId?: number): Promise<IBook[]>;
20
+ getFullBooks(surName?: string, givenName?: string, title?: string, flags?: string, minRating?: number): Promise<IFullBook[]>;
18
21
  addBook(book: IBook): Promise<number>;
19
22
  updateBook(book: IBook): Promise<boolean>;
20
23
  deleteBook(id: number): Promise<boolean>;
@@ -5,11 +5,15 @@ export class BooksService {
5
5
  user;
6
6
  log;
7
7
  cachedAuthors;
8
+ categories;
9
+ flags;
8
10
  constructor(rest, user, statistics, log) {
9
11
  this.log = log;
10
12
  this.rest = rest;
11
13
  this.user = user;
12
14
  this.mediaUrl = rest.serviceUrl;
15
+ this.categories = ["Literatur", "Geschichte", "Philosophie", "Naturwissenschaft"];
16
+ this.flags = ["liesCH", "liesCH", "ausgeborgt"];
13
17
  }
14
18
  async getAuthors(surName, givenName, withBooks, id) {
15
19
  const info = await this.rest.getData('apibooks/authors', { surName, givenName, withBooks, id });
@@ -49,6 +53,10 @@ export class BooksService {
49
53
  const info = await this.rest.getData('apibooks/books', { authorId, bookId });
50
54
  return info.result;
51
55
  }
56
+ async getFullBooks(surName, givenName, title, flags, minRating) {
57
+ const info = await this.rest.getData('apibooks/books/full', { surName, givenName, title, flags, minRating });
58
+ return info.result;
59
+ }
52
60
  async addBook(book) {
53
61
  const url = `apibooks/books`;
54
62
  const res = await this.rest.postDataEx(url, book);
@@ -1 +1 @@
1
- {"version":3,"file":"booksService.js","sourceRoot":"","sources":["../src/booksService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"booksService.js","sourceRoot":"","sources":["../src/booksService.ts"],"names":[],"mappings":"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"}
package/dist/iBooks.d.ts CHANGED
@@ -4,6 +4,7 @@ export interface IAuthor {
4
4
  givenName: string;
5
5
  yearOfBirth: number;
6
6
  yearOfDeath?: number;
7
+ category?: string;
7
8
  country?: string;
8
9
  books?: IBook[];
9
10
  }
@@ -20,8 +21,20 @@ export interface IBook {
20
21
  year?: number;
21
22
  comment?: string;
22
23
  rating?: number;
24
+ flags?: string;
25
+ }
26
+ export interface IFullBook {
27
+ authorId: number;
28
+ surName: string;
29
+ givenName: string;
30
+ bookId: number;
31
+ title: string;
32
+ rating?: number;
33
+ flags?: string;
23
34
  }
24
35
  export interface IBooksService {
36
+ categories: string[];
37
+ flags: string[];
25
38
  getAuthors(surName?: string, givenName?: string, withBooks?: boolean, id?: number): Promise<IAuthor[]>;
26
39
  getAuthorsShort(): Promise<IAuthorShort[]>;
27
40
  addAuthor(author: IAuthor): Promise<number>;
@@ -31,4 +44,5 @@ export interface IBooksService {
31
44
  addBook(book: IBook): Promise<number>;
32
45
  updateBook(book: IBook): Promise<boolean>;
33
46
  deleteBook(id: number): Promise<boolean>;
47
+ getFullBooks(surName?: string, givenName?: string, title?: string, flags?: string, minRating?: number): Promise<IFullBook[]>;
34
48
  }
@@ -66,7 +66,7 @@ export class LocationHelper {
66
66
  const id1 = id.replace(rating, ratings[i]);
67
67
  const parentFolder = mediaService.getFolder(parentId1);
68
68
  const folder = mediaService.getFolder(id1);
69
- if (parentFolder && folder) {
69
+ if (parentFolder && folder && folder.mustExpand) {
70
70
  LocationHelper.expandLocationFolder(mediaService, parentFolder, folder);
71
71
  }
72
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"locationHelper.js","sourceRoot":"","sources":["../src/locationHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locationHelper.js","sourceRoot":"","sources":["../src/locationHelper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christianriedl/media",
3
- "version": "1.0.180",
3
+ "version": "1.0.182",
4
4
  "description": "RIC media interfaces",
5
5
 
6
6
  "main": "dist/index.js",
@@ -2,7 +2,7 @@
2
2
  import { ref } from 'vue';
3
3
  import { IBook } from '@christianriedl/media';
4
4
 
5
- const props = defineProps<{ book: IBook, add?: boolean, readonly?: boolean, ismobile?: boolean, allbooks?: IBook[] }>();
5
+ const props = defineProps<{ book: IBook, flags: string[], add?: boolean, readonly?: boolean, ismobile?: boolean, allbooks?: IBook[] }>();
6
6
  const book = props.book;
7
7
  const emits = defineEmits<{
8
8
  (e: 'selectbook', id: number, func: () => void): void,
@@ -63,15 +63,18 @@
63
63
  <v-col v-else cols="6" >
64
64
  <v-text-field v-model="book.title" hide-details density="compact" @update:modelValue="fieldChanged"></v-text-field>
65
65
  </v-col>
66
- <v-col cols="2" >
66
+ <v-col cols="1" >
67
67
  <v-text-field v-model="book.year" hide-details density="compact" type="number" @update:modelValue="fieldChanged"></v-text-field>
68
68
  </v-col>
69
- <v-col cols="2" >
69
+ <v-col cols="1" >
70
70
  <v-rating hover clearable :length="5" :size="32" v-model="book.rating" active-color="primary" @update:modelValue="fieldChanged" />
71
71
  </v-col>
72
72
  <v-col cols="2">
73
- <v-btn v-if="showDelete" icon="$delete" :disabled="props.readonly" @click="onDelete"></v-btn>
73
+ <v-select v-model="book.flags" :items="props.flags" multiple hide-details density="compact" single-line @update:modelValue="fieldChanged"></v-select>
74
+ </v-col>
75
+ <v-col cols="2">
74
76
  <v-btn v-if="showSave" icon="$save" :disabled="props.readonly" @click="onSave"></v-btn>
77
+ <v-btn v-if="showDelete" icon="$delete" :disabled="props.readonly" @click="onDelete"></v-btn>
75
78
  </v-col>
76
79
  </v-row>
77
80
  </template>
@@ -0,0 +1,24 @@
1
+ <script setup lang="ts">
2
+ import { IFullBook } from '@christianriedl/media';
3
+ const props = defineProps<{ book: IFullBook, ismobile?: boolean }>();
4
+ const book = props.book;
5
+ </script>
6
+
7
+ <template>
8
+ <v-row v-if="props.ismobile" dense align="center" class="bg-office">
9
+ <v-col cols="12" >
10
+ <p class="font-weight-bold">{{book.givenName + ' ' + book.surName}}</p>
11
+ </v-col>
12
+ <v-col cols="12" >
13
+ <p class="font-weight-medium">{{book.title}}</p>
14
+ </v-col>
15
+ </v-row>
16
+ <v-row v-else dense align="center" :class="cls" @click="onSelect" >
17
+ <v-col cols="6" >
18
+ <p class="font-weight-bold">{{book.givenName + ' ' + book.surName}}</p>
19
+ </v-col>
20
+ <v-col cols="6" >
21
+ <p class="font-weight-medium">{{book.title}}</p>
22
+ </v-col>
23
+ </v-row>
24
+ </template>
@@ -70,6 +70,7 @@
70
70
  author.givenName = "";
71
71
  author.yearOfBirth = 0;
72
72
  author.yearOfDeath = undefined;
73
+ author.category = undefined;
73
74
  author.country = undefined;
74
75
  author.books = [];
75
76
  }
@@ -82,6 +83,7 @@
82
83
  author.givenName = a.givenName;
83
84
  author.yearOfBirth = a.yearOfBirth;
84
85
  author.yearOfDeath = a.yearOfDeath;
86
+ author.category = a.category;
85
87
  author.country = a.country;
86
88
  author.books = a.books ? a.books : [];
87
89
  return true;
@@ -98,6 +100,11 @@
98
100
  if (!mustAddAuthor.value) {
99
101
  const authorShort = arg as IAuthorShort;
100
102
  const rc = await getCurrentAuthor (authorShort.id, true);
103
+ if (rc && !author.country) {
104
+ const rc = await getAuthorDataFromAI (author.surName, author.givenName);
105
+ if (rc)
106
+ mustUpdateAuthor.value = true;
107
+ }
101
108
  }
102
109
  else {
103
110
  initAuthor (arg as string);
@@ -146,7 +153,6 @@
146
153
  if (currentBook.value.description && setBookChanged)
147
154
  setBookChanged();
148
155
  }
149
-
150
156
  }
151
157
  }
152
158
  }
@@ -225,7 +231,7 @@
225
231
  }
226
232
  return true;
227
233
  }
228
- async function getAuthorDataFromAI(surName: string, givenName: string) {
234
+ async function getAuthorDataFromAI(surName: string, givenName: string) : Promise<boolean> {
229
235
  const schema =
230
236
  {
231
237
  "name": "author_data",
@@ -251,12 +257,19 @@
251
257
  const prompt = `Geburtstag, Sterbetag, Geburtsland von ${givenName} ${surName} ?`;
252
258
  const result = await openAI.completeJson(prompt, schema) as any;
253
259
  if (result) {
254
- author.yearOfBirth = getYear(result.geburtstag);
255
- author.yearOfDeath = result.sterbetag ? getYear(result.sterbetag) : undefined;
256
- author.country = result.geburtsland;
260
+ if (!author.yearOfBirth)
261
+ author.yearOfBirth = getYear(result.geburtstag);
262
+ if (!author.yearOfDeath)
263
+ author.yearOfDeath = result.sterbetag ? getYear(result.sterbetag) : undefined;
264
+ if (!author.category)
265
+ author.category = categories[0];
266
+ if (!author.country)
267
+ author.country = result.geburtsland;
268
+ return true;
257
269
  }
258
270
  else {
259
271
  alert("No AI result for : " + prompt);
272
+ return false;
260
273
  }
261
274
  }
262
275
  function getYear(dt: string): number {
@@ -334,8 +347,9 @@
334
347
  <v-row v-else dense align="center">
335
348
  <v-col cols="2">Name</v-col>
336
349
  <v-col cols="2">Vorname</v-col>
337
- <v-col cols="2">Von</v-col>
338
- <v-col cols="2">Bis</v-col>
350
+ <v-col cols="1">Von</v-col>
351
+ <v-col cols="1">Bis</v-col>
352
+ <v-col cols="2">Kategorie</v-col>
339
353
  <v-col cols="2">Land</v-col>
340
354
  </v-row>
341
355
  <v-row v-if="isMobile" dense align="center">
@@ -353,12 +367,15 @@
353
367
  <v-col cols="2">
354
368
  <v-text-field v-model="author.givenName" hide-details density="compact" @update:modelValue="fieldChanged" @update:focused="givenNameFocused"></v-text-field>
355
369
  </v-col>
356
- <v-col cols="2">
370
+ <v-col cols="1">
357
371
  <v-text-field v-model="author.yearOfBirth" hide-details density="compact" type="number" @update:modelValue="fieldChanged"></v-text-field>
358
372
  </v-col>
359
- <v-col cols="2">
373
+ <v-col cols="1">
360
374
  <v-text-field v-model="author.yearOfDeath" hide-details density="compact" type="number" @update:modelValue="fieldChanged"></v-text-field>
361
375
  </v-col>
376
+ <v-col cols="2">
377
+ <v-select v-model="author.category" :items="booksService.categories" hide-details density="compact" single-line @update:modelValue="fieldChanged"></v-select>
378
+ </v-col>
362
379
  <v-col cols="2">
363
380
  <v-text-field v-model="author.country" hide-details density="compact" @update:modelValue="fieldChanged"></v-text-field>
364
381
  </v-col>
@@ -375,15 +392,16 @@
375
392
  </v-row>
376
393
  <v-row v-else dense align="center">
377
394
  <v-col cols="6">TITEL</v-col>
378
- <v-col cols="2">JAHR</v-col>
379
- <v-col cols="2">RATING</v-col>
395
+ <v-col cols="1">JAHR</v-col>
396
+ <v-col cols="1">RATING</v-col>
397
+ <v-col cols="2">STATUS</v-col>
380
398
  <v-col v-if="author.id" cols="2">
381
399
  <v-btn v-if="!showAddBookLine" @click="addNewBook" :disabled="readonly" prepend-icon="$plus">BOOK</v-btn>
382
400
  <v-btn v-if="showAddBookLine" @click="cancelAddNewBook" :disabled="readonly" icon="$cancel"></v-btn>
383
401
  </v-col>
384
402
  </v-row>
385
- <book-line v-if="showAddBookLine" :book="newBook" :add="true" :allbooks="allBooks" :readonly="readonly" :ismobile="isMobile" @selectbook="selectBook" @deletebook="deleteBook" @savebook="saveBook"></book-line>
386
- <book-line v-for="book in author.books" :key="book.id" :book="book" :readonly="readonly" :ismobile="isMobile" @selectbook="selectBook" @deletebook="deleteBook" @savebook="saveBook"></book-line>
403
+ <book-line v-if="showAddBookLine" :book="newBook" :flags="bookService.flags" :add="true" :allbooks="allBooks" :readonly="readonly" :ismobile="isMobile" @selectbook="selectBook" @deletebook="deleteBook" @savebook="saveBook"></book-line>
404
+ <book-line v-for="book in author.books" :key="book.id" :book="book" :flags="bookService.flags" :readonly="readonly" :ismobile="isMobile" @selectbook="selectBook" @deletebook="deleteBook" @savebook="saveBook"></book-line>
387
405
  <v-textarea v-if="showCurrentBook" clearable auto-grow variant="outlined" label="Beschreibung" :disabled="isMobile" class="pt-2" v-model="currentBook.description" @update:modelValue="descriptionChanged">
388
406
  </v-textarea>
389
407
  <v-textarea v-if="showCurrentBook" clearable auto-grow variant="outlined" label="Kommentar" :disabled="isMobile" v-model="currentBook.comment" @update:modelValue="descriptionChanged">
@@ -0,0 +1,78 @@
1
+ <script setup lang="ts">
2
+ import { inject, ref, reactive, onMounted, onUnmounted, computed, StyleValue } from 'vue';
3
+ import { IAppState, appStateSymbol, getOpenAISymbol, IOpenAIService, ICompleteData, EScope, EDevice } from '@christianriedl/utils';
4
+ import { BooksService, getBooksSymbol, IAuthorShort, IAuthor, IBookFull } from '@christianriedl/media';
5
+ import BookSearchLine from '../components/BookSearchLine.vue';
6
+
7
+ const appState = inject(appStateSymbol)!;
8
+ const getBooksService = inject(getBooksSymbol)!;
9
+ const booksService = getBooksService() as BooksService;
10
+ const authors = reactive<IAuthorShort[]>([]);
11
+ const books = ref<IBookFull>([]);
12
+ const selected = ref<IAuthorShort | string | undefined>();
13
+ const title = ref("");
14
+ const rating = ref(0);
15
+ const flags = ref("");
16
+ let isMobile = appState.isMobile && (appState.device != EDevice.iPad);
17
+ const heightStyle = computed<StyleValue>(() => { return { height: appState.bodyHeight.value + "px", overflowY: "auto" } });
18
+
19
+ start();
20
+
21
+ async function start() {
22
+ const authorsShort = await booksService.getAuthorsShort();
23
+ if (authorsShort) {
24
+ authors.splice(0, authors.length, ...authorsShort);
25
+ }
26
+ }
27
+ async function search() {
28
+ books.value = await getFullBooks(selected.sN, selected.gN, title.value, flags.value, rating.value): Promise<IFullBook[]>;
29
+ }
30
+ </script>
31
+
32
+ <template>
33
+ <v-container fluid class="bg-office" :style="heightStyle">
34
+ <v-defaults-provider :defaults="{'VBtn':{'size':'large','variant':'flat','class':'bg-office'}}">
35
+ <v-row v-if="isMobile" dense align="center">
36
+ <v-col cols="6">
37
+ <v-combobox v-model="selected" :items="authors" label="Author" item-value="id" item-title="sN" hide-details density="compact" single-line ></v-combobox>
38
+ </v-col>
39
+ <v-col cols="6">
40
+ <p>{{selected.gN}}</p>
41
+ </v-col>
42
+ <v-col cols="6">
43
+ <v-text-field label="Titel" v-model="title" hide-details density="compact"></v-text-field>
44
+ </v-col>
45
+ <v-col cols="2">
46
+ <v-select label="Status" v-model="flags" :items="booksService.flags" hide-details density="compact" single-line ></v-select>
47
+ </v-col>
48
+ <v-col cols="2">
49
+ <v-rating label="Rating" hover clearable :length="5" :size="16" v-model="rating" active-color="primary" />
50
+ </v-col>
51
+ <v-col cols="2">
52
+ <v-btn @click=search" icon="$search"></v-btn>
53
+ </v-col>
54
+ </v-row>
55
+ <v-row v-else dense align="center">
56
+ <v-col cols="2">
57
+ <v-combobox v-model="selected" :items="authors" label="Author" item-value="id" item-title="sN" hide-details density="compact" single-line ></v-combobox>
58
+ </v-col>
59
+ <v-col cols="2">
60
+ <p>{{selected.gN}}</p>
61
+ </v-col>
62
+ <v-col cols="3">
63
+ <v-text-field label="Titel" v-model="title" hide-details density="compact"></v-text-field>
64
+ </v-col>
65
+ <v-col cols="2">
66
+ <v-select label="Status" v-model="flags" :items="booksService.flags" hide-details density="compact" single-line ></v-select>
67
+ </v-col>
68
+ <v-col cols="1">
69
+ <v-rating label="Rating" hover clearable :length="5" :size="32" v-model="rating" active-color="primary" />
70
+ </v-col>
71
+ <v-col cols="2">
72
+ <v-btn @click=search" prepend-icon="$search">Search</v-btn>
73
+ </v-col>
74
+ </v-row>
75
+ <v-divider></v-divider>
76
+ <book-search-line v-for="book in books" :key="book.bookId" :book="book" :ismobile="isMobile"></book-search-line>
77
+ </v-container>
78
+ </template>
@@ -29,8 +29,9 @@
29
29
  const uploadVisible = ref(false);
30
30
 
31
31
  const roots: string[] = ['Jahr', 'Orte', 'Ereignisse', 'Personen'];
32
- const root = ref('Jahr');
33
32
  const criterias: string[] = ['ye', 'lo', 'ev', 'pe'];
33
+ const critIdx = criterias.findIndex ((x) => x == selected.criteria);
34
+ const root = ref(critIdx < 0 ? 'Jahr' : roots[critIdx]);
34
35
  const backVisible = ref(false);
35
36
  const itemIndex = ref(0);
36
37
  const showDownload = ref(false);
@@ -104,6 +105,7 @@
104
105
  else {
105
106
  if (folder.mustExpand) {
106
107
  LocationHelper.expandLocationFolders(mediaService, selectedFolder.value.dlnaid, folder.dlnaid);
108
+ items.value = [];
107
109
  items.value = selectedFolder.value.folders;
108
110
  return;
109
111
  }