@livinglogic/livingapi 1.33.0 → 1.35.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 CHANGED
@@ -1,5 +1,43 @@
1
1
  # Changes
2
2
 
3
+ ## 1.35.0 (2026-08-28)
4
+
5
+ The eight `typename_*` attributes of `AppLang` have been replaced by the
6
+ new read-only attribute `typenames`: a map that maps noun form identifiers
7
+ (e.g. `nom_sin` for nominative singular) to the type name in that form.
8
+ This supports arbitrary per-language forms instead of the fixed eight German
9
+ forms. The `typename_*` attributes of the `App` itself are unchanged
10
+ (they hold the system language version); their getters now take the `typenames`
11
+ map of the translation for the current language into account.
12
+
13
+ `App` has a new read-only attribute `typenames` that mirrors the `typenames`
14
+ map of the translation for the current language (`globals.lang`), falling
15
+ back to the noun forms for the system language.
16
+
17
+
18
+ ## 1.34.0 (2026-08-19)
19
+
20
+ Added support for the translations of the multilingual attributes of apps,
21
+ app groups, controls and lookup items via the new classes `AppLang`,
22
+ `AppGroupLang`, `ControlLang` and `LookupItemLang`.
23
+
24
+ The multilingual attributes themselves (e.g. `control.label`) remain plain
25
+ strings: their getters now return the translation matching `globals.lang`.
26
+ A label from the active view still wins over the translation, and when
27
+ there's no translation (or the translated attribute is `None`) the attribute
28
+ of the object itself is used.
29
+
30
+ All translations are accessible (and modifiable) in UL4 via the new
31
+ attribute `translations` whose attributes are the language codes (the
32
+ language attributes are available in Javascript too, e.g.
33
+ `control.translations.de`). Accessing a known language for which no
34
+ translations exist yet creates a new empty translation object. Note that (as with all other LivingAPI objects) changes
35
+ to translation objects can not be saved back to the database.
36
+
37
+ Setting e.g. `control.label` still sets the attribute of the control itself
38
+ and never touches the translations.
39
+
40
+
3
41
  ## 1.33.0 (2025-06-24)
4
42
 
5
43
  Added the `App` attribute `order`.
package/README.md CHANGED
@@ -40,7 +40,7 @@ do
40
40
 
41
41
  ```html
42
42
  <script type="module">
43
- import * as la from '/npm/@livinglogic/livingapi@1.33.0/dist/esm-npm/livingapi.js';
43
+ import * as la from '/npm/@livinglogic/livingapi@1.35.0/dist/esm-npm/livingapi.js';
44
44
  ...
45
45
  </script>
46
46
  ```
@@ -50,7 +50,7 @@ or (if you need both UL4 and LivingAPI):
50
50
  ```html
51
51
  <script type="module">
52
52
  import * as ul4 from '/npm/@livinglogic/ul4@1.19.0/dist/esm/ul4.js';
53
- import * as la from '/npm/@livinglogic/livingapi@1.33.0/dist/esm-npm/livingapi.js';
53
+ import * as la from '/npm/@livinglogic/livingapi@1.35.0/dist/esm-npm/livingapi.js';
54
54
  ...
55
55
  </script>
56
56
  ```