@digitalservicebund/a2j-xjustiz-bridge 0.7.1 → 0.8.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/dist/nachricht/zahlungsklage.d.ts +113 -28
- package/dist/nachricht/zahlungsklage.js +144 -40
- package/package.json +7 -7
|
@@ -22,6 +22,7 @@ import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
|
22
22
|
type InferCodeliste<Liste extends Codeliste<Codelisteneintraege>> = Liste[keyof Liste];
|
|
23
23
|
type Codelisteneintraege = Record<string, string>;
|
|
24
24
|
type Codeliste<Eintraege extends Codelisteneintraege> = { readonly [Name in keyof Eintraege]: Eintraege[Name] extends (infer Code) ? Codelisteneintrag<Name & string, Code & string> : never; };
|
|
25
|
+
type IsCodeliste<MaybeCodeliste> = [MaybeCodeliste] extends [Codelisteneintrag<string, string>] ? [keyof MaybeCodeliste] extends [keyof Codelisteneintrag<string, string>] ? true : false : false;
|
|
25
26
|
/**
|
|
26
27
|
* Prettifies the display of Codelisteinträge, conserving the name to improve
|
|
27
28
|
* comprehensibility.
|
|
@@ -2655,20 +2656,21 @@ declare const datatypeA: RefinedTypeFactory<string, DatatypeA, <Value extends st
|
|
|
2655
2656
|
}>;
|
|
2656
2657
|
/**
|
|
2657
2658
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2658
|
-
* maintains the invariants of {@link DatatypeA}.
|
|
2659
|
-
*
|
|
2659
|
+
* maintains the invariants of {@link DatatypeA}. Any `undefined` entry in
|
|
2660
|
+
* `segments` is filtered automatically.
|
|
2660
2661
|
* @example
|
|
2661
2662
|
* ```typescript
|
|
2662
2663
|
* const fullName = join(
|
|
2663
2664
|
* datatypeA(" ").value,
|
|
2664
2665
|
* datatypeA("Frau").value,
|
|
2665
2666
|
* datatypeA("Erika").value,
|
|
2667
|
+
* undefined,
|
|
2666
2668
|
* datatypeA("Musterfrau").value,
|
|
2667
2669
|
* );
|
|
2668
2670
|
* // "Frau Erika Musterfrau" - still DatatypeA no plain string
|
|
2669
2671
|
* ```
|
|
2670
2672
|
*/
|
|
2671
|
-
declare function join(separator: DatatypeA, ...segments: readonly DatatypeA[]): DatatypeA;
|
|
2673
|
+
declare function join(separator: DatatypeA, ...segments: readonly (DatatypeA | undefined)[]): DatatypeA;
|
|
2672
2674
|
type DatatypeACharacterIncomplete = LateinischeBuchstabenIncomplete | NichtBuchstabenN1;
|
|
2673
2675
|
type GuaranteedInvalidCharacter = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "#" | "$" | "%" | "&" | "*" | "+" | "/" | "<" | "=" | ">" | "@" | "\\" | "^" | "_" | "|" | "!" | '"' | "(" | ")" | ":" | ";" | "?" | "[" | "]" | "{" | "}";
|
|
2674
2676
|
//#endregion
|
|
@@ -2716,20 +2718,24 @@ declare const datatypeB: RefinedTypeFactory<string, DatatypeB, <Value extends st
|
|
|
2716
2718
|
}>;
|
|
2717
2719
|
/**
|
|
2718
2720
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2719
|
-
* maintains the invariants of {@link DatatypeB}.
|
|
2721
|
+
* maintains the invariants of {@link DatatypeB}. Also supports passing
|
|
2722
|
+
* and mixing {@link DatatypeA} values, as any {@link DatentypA} is also a valid
|
|
2723
|
+
* {@link DatatypeB}. Any `undefined` entry in `segments` is filtered
|
|
2724
|
+
* automatically.
|
|
2720
2725
|
*
|
|
2721
2726
|
* @example
|
|
2722
2727
|
* ```typescript
|
|
2723
2728
|
* const fullAddress = join(
|
|
2724
|
-
*
|
|
2729
|
+
* datatypeA(" ").value,
|
|
2725
2730
|
* datatypeB("Musterstraße").value,
|
|
2726
2731
|
* datatypeB("1A").value,
|
|
2732
|
+
* undefined,
|
|
2727
2733
|
* datatypeB("Musterstadt").value,
|
|
2728
2734
|
* );
|
|
2729
2735
|
* // "Musterstraße 1A Musterstadt" - still DatatypeB no plain string
|
|
2730
2736
|
* ```
|
|
2731
2737
|
*/
|
|
2732
|
-
declare function join$1(separator: DatatypeB, ...segments: readonly DatatypeB[]): DatatypeB;
|
|
2738
|
+
declare function join$1(separator: DatatypeA | DatatypeB, ...segments: readonly (DatatypeA | DatatypeB | undefined)[]): DatatypeB;
|
|
2733
2739
|
type DatatypeBCharacterIncomplete = LateinischeBuchstabenIncomplete | NichtBuchstabenN1 | NichtBuchstabenN2;
|
|
2734
2740
|
//#endregion
|
|
2735
2741
|
//#region src/xjustiz-schemata/din-91379/datatypeC.d.ts
|
|
@@ -2779,20 +2785,24 @@ declare const datatypeC: RefinedTypeFactory<string, DatatypeC, <Value extends st
|
|
|
2779
2785
|
}>;
|
|
2780
2786
|
/**
|
|
2781
2787
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2782
|
-
* maintains the invariants of {@link DatatypeC}.
|
|
2788
|
+
* maintains the invariants of {@link DatatypeC}. Also supports passing
|
|
2789
|
+
* and mixing {@link DatatypeA} and {@link DatatypeB} values, as any of them is
|
|
2790
|
+
* also a valid {@link DatatypeC}. Any `undefined` entry in `segments` is
|
|
2791
|
+
* filtered automatically.
|
|
2783
2792
|
*
|
|
2784
2793
|
* @example
|
|
2785
2794
|
* ```typescript
|
|
2786
|
-
* const
|
|
2787
|
-
*
|
|
2795
|
+
* const output = join(
|
|
2796
|
+
* datatypeA(" ").value,
|
|
2788
2797
|
* datatypeC("Lorem").value,
|
|
2789
|
-
*
|
|
2798
|
+
* datatypeB("ipsum").value,
|
|
2799
|
+
* undefined,
|
|
2790
2800
|
* datatypeC("dolor").value,
|
|
2791
2801
|
* );
|
|
2792
2802
|
* // "Lorem ipsum dolor" - still DatatypeC no plain string
|
|
2793
2803
|
* ```
|
|
2794
2804
|
*/
|
|
2795
|
-
declare function join$2(separator: DatatypeC, ...segments: readonly DatatypeC[]): DatatypeC;
|
|
2805
|
+
declare function join$2(separator: DatatypeA | DatatypeB | DatatypeC, ...segments: readonly (DatatypeA | DatatypeB | DatatypeC | undefined)[]): DatatypeC;
|
|
2796
2806
|
//#endregion
|
|
2797
2807
|
//#region src/xjustiz-schemata/din-91379/datatypeD.d.ts
|
|
2798
2808
|
declare const TAG$9: unique symbol;
|
|
@@ -2843,20 +2853,24 @@ declare const datatypeD: RefinedTypeFactory<string, DatatypeD, <Value extends st
|
|
|
2843
2853
|
}>;
|
|
2844
2854
|
/**
|
|
2845
2855
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2846
|
-
* maintains the invariants of {@link DatatypeD}.
|
|
2856
|
+
* maintains the invariants of {@link DatatypeD}. Also supports passing
|
|
2857
|
+
* and mixing {@link DatatypeA} and {@link DatatypeB} values, as any of them is
|
|
2858
|
+
* also a valid {@link DatatypeD}. Any `undefined` entry in `segments` is
|
|
2859
|
+
* filtered automatically.
|
|
2847
2860
|
*
|
|
2848
2861
|
* @example
|
|
2849
2862
|
* ```typescript
|
|
2850
|
-
* const
|
|
2851
|
-
*
|
|
2863
|
+
* const output = join(
|
|
2864
|
+
* datatypeA(" ").value,
|
|
2852
2865
|
* datatypeD("Lorem").value,
|
|
2853
|
-
*
|
|
2866
|
+
* datatypeB("ipsum").value,
|
|
2867
|
+
* undefined,
|
|
2854
2868
|
* datatypeD("dolor").value,
|
|
2855
2869
|
* );
|
|
2856
2870
|
* // "Lorem ipsum dolor" - still DatatypeD no plain string
|
|
2857
2871
|
* ```
|
|
2858
2872
|
*/
|
|
2859
|
-
declare function join$3(separator: DatatypeD, ...segments: readonly DatatypeD[]): DatatypeD;
|
|
2873
|
+
declare function join$3(separator: DatatypeA | DatatypeB | DatatypeD, ...segments: readonly (DatatypeA | DatatypeB | DatatypeD | undefined)[]): DatatypeD;
|
|
2860
2874
|
//#endregion
|
|
2861
2875
|
//#region src/xjustiz-schemata/xml-schema-definition/decimal.d.ts
|
|
2862
2876
|
declare const TAG$8: unique symbol;
|
|
@@ -3101,9 +3115,15 @@ interface UuidGenerator<NachrichtenScope> {
|
|
|
3101
3115
|
}
|
|
3102
3116
|
//#endregion
|
|
3103
3117
|
//#region src/xjustiz-schemata/grunddatensatz/composites.d.ts
|
|
3118
|
+
/**
|
|
3119
|
+
* The Herstellerinformationen are fixed agreed on with the Bundesministerium
|
|
3120
|
+
* der Justiz und für Verbraucherschutz. The `version` is expected to be the one
|
|
3121
|
+
* of the XJustiz-Bridge. It can be constructed ergonomically with the
|
|
3122
|
+
* {@link herstellerinformation} constructor function.
|
|
3123
|
+
*/
|
|
3104
3124
|
interface Herstellerinformation {
|
|
3105
|
-
nameDesProdukts:
|
|
3106
|
-
herstellerDesProdukts:
|
|
3125
|
+
nameDesProdukts: "Justizportal XJustiz Services";
|
|
3126
|
+
herstellerDesProdukts: "Bundesministerium der Justiz und für Verbraucherschutz, ausgeführt durch DigitalService GmbH des Bundes";
|
|
3107
3127
|
version: DatatypeC;
|
|
3108
3128
|
}
|
|
3109
3129
|
interface NatuerlichePerson {
|
|
@@ -3139,6 +3159,10 @@ interface Anschrift {
|
|
|
3139
3159
|
postleitzahl?: DatatypeC;
|
|
3140
3160
|
ort?: DatatypeB;
|
|
3141
3161
|
}
|
|
3162
|
+
/**
|
|
3163
|
+
* Can be constructed ergonomically with the {@link email} and {@link telefon}
|
|
3164
|
+
* constructor functions.
|
|
3165
|
+
*/
|
|
3142
3166
|
interface Kommunikation {
|
|
3143
3167
|
telekommunikationsart: Telekommunikationsart;
|
|
3144
3168
|
verbindung: DatatypeC;
|
|
@@ -3249,20 +3273,25 @@ declare const datatypeE: RefinedTypeFactory<string, DatatypeE, <Value extends st
|
|
|
3249
3273
|
}>;
|
|
3250
3274
|
/**
|
|
3251
3275
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
3252
|
-
* maintains the invariants of {@link DatatypeE}.
|
|
3276
|
+
* maintains the invariants of {@link DatatypeE}. Also supports passing
|
|
3277
|
+
* and mixing {@link DatatypeA}, {@link DatatypeB}, {@link DatatypeC} and
|
|
3278
|
+
* {@link DatatypeD} values, as any of them is also a valid {@link DatatypeE}.
|
|
3279
|
+
* Any `undefined` entry in `segments` is filtered automatically.
|
|
3253
3280
|
*
|
|
3254
3281
|
* @example
|
|
3255
3282
|
* ```typescript
|
|
3256
|
-
* const
|
|
3257
|
-
*
|
|
3258
|
-
*
|
|
3259
|
-
*
|
|
3260
|
-
*
|
|
3283
|
+
* const output = join(
|
|
3284
|
+
* datatypeA(" ").value,
|
|
3285
|
+
* datatypeB("Lorem").value,
|
|
3286
|
+
* datatypeC("ipsum").value,
|
|
3287
|
+
* datatypeD("dolor").value,
|
|
3288
|
+
* undefined,
|
|
3289
|
+
* datatypeE("sit").value,
|
|
3261
3290
|
* );
|
|
3262
|
-
* // "Lorem ipsum dolor" - still DatatypeE no plain string
|
|
3291
|
+
* // "Lorem ipsum dolor sit" - still DatatypeE no plain string
|
|
3263
3292
|
* ```
|
|
3264
3293
|
*/
|
|
3265
|
-
declare function join$4(separator: DatatypeE, ...segments: readonly DatatypeE[]): DatatypeE;
|
|
3294
|
+
declare function join$4(separator: DatatypeA | DatatypeB | DatatypeC | DatatypeD | DatatypeE, ...segments: readonly (DatatypeA | DatatypeB | DatatypeC | DatatypeD | DatatypeE | undefined)[]): DatatypeE;
|
|
3266
3295
|
//#endregion
|
|
3267
3296
|
//#region src/xjustiz-schemata/klaver/fortlaufende-nummer.d.ts
|
|
3268
3297
|
/**
|
|
@@ -3544,7 +3573,7 @@ type ExcessPropertiesError<ExcessProperties> = TypeError & "Found properties in
|
|
|
3544
3573
|
readonly excessProperties: ExcessProperties;
|
|
3545
3574
|
};
|
|
3546
3575
|
type VerifyNoExcessProperties<Nachricht, MessageProfile> = FindExcessProperties<Nachricht, MessageProfile> extends (infer ExcessProperties) ? IsEmpty<ExcessProperties> extends false ? ExcessPropertiesError<ExcessProperties> : AllGood : Unreachable;
|
|
3547
|
-
type FindExcessProperties<Nachricht, MessageProfile> = HasMatchingVariantOfMessageProfileWithoutExcessProperties<Nachricht, MessageProfile> extends true ? AllGood : Exclude<FindExcessPropertiesAgainst<Nachricht, MessageProfile>, StructuralIncompatibilityIssues>;
|
|
3576
|
+
type FindExcessProperties<Nachricht, MessageProfile> = IsCodeliste<MessageProfile> extends true ? [Nachricht] extends [object] ? Exclude<keyof Nachricht, keyof MessageProfile> : StructuralIncompatibilityIssues : HasMatchingVariantOfMessageProfileWithoutExcessProperties<Nachricht, MessageProfile> extends true ? AllGood : Exclude<FindExcessPropertiesAgainst<Nachricht, MessageProfile>, StructuralIncompatibilityIssues>;
|
|
3548
3577
|
/**
|
|
3549
3578
|
* A `MessageProfile` can define type unions on different levels in the
|
|
3550
3579
|
* document tree structure. Unions of objects with different key sets are
|
|
@@ -3703,6 +3732,43 @@ declare function antragAufVersaeumnisurteil(): AntragAufVersaeumnisurteil;
|
|
|
3703
3732
|
*/
|
|
3704
3733
|
declare function weitererAntrag(antragInTextform: DatatypeE): WeitererAntrag;
|
|
3705
3734
|
//#endregion
|
|
3735
|
+
//#region src/nachricht/zahlungsklage/ergonomics/nachrichtenkopf.d.ts
|
|
3736
|
+
/**
|
|
3737
|
+
* Constructs a {@link NachrichtenkopfFuerZahlungsklage} with the `klaeger` as
|
|
3738
|
+
* Absender and `gericht` as Empfänger.
|
|
3739
|
+
*
|
|
3740
|
+
* The `erstellungszeitpunkt` will be current date-time at the call.
|
|
3741
|
+
*
|
|
3742
|
+
* The `klaeger` will be formatted based on their Geschlecht, Titel, Vorname and
|
|
3743
|
+
* Nachname. For example: `"Frau Dr. Erika Musterfrau"`. A Titel which can't be
|
|
3744
|
+
* parsed from {@link DatatypeC} to {@link DatatypeD} will be discarded. Any
|
|
3745
|
+
* Geschlecht but männlich or weiblich will also be discarded for the Anrede.
|
|
3746
|
+
*/
|
|
3747
|
+
declare function nachrichtenkopf<NachrichtenScope, const EigeneNachrichtenID extends UUID<NachrichtenScope>, const Gericht extends Gerichte>(_scope: ScopeToken<NachrichtenScope>, eigeneNachrichtenID: EigeneNachrichtenID, klaeger: Klaeger<NachrichtenScope> // oxlint-disable-line typescript/prefer-readonly-parameter-types -- false positive
|
|
3748
|
+
, gericht: Gericht): {
|
|
3749
|
+
xjustizVersion: "3.6.2";
|
|
3750
|
+
erstellungszeitpunkt: Temporal.Instant;
|
|
3751
|
+
absender: {
|
|
3752
|
+
informationen: {
|
|
3753
|
+
auswahlKommunikationspartner: {
|
|
3754
|
+
sonstige: DatatypeD;
|
|
3755
|
+
};
|
|
3756
|
+
};
|
|
3757
|
+
eigeneNachrichtenID: EigeneNachrichtenID;
|
|
3758
|
+
};
|
|
3759
|
+
empfaenger: {
|
|
3760
|
+
informationen: {
|
|
3761
|
+
auswahlKommunikationspartner: {
|
|
3762
|
+
gericht: Gerichte;
|
|
3763
|
+
};
|
|
3764
|
+
};
|
|
3765
|
+
auswahlAktenzeichen: {
|
|
3766
|
+
aktenzeichenNeu: true;
|
|
3767
|
+
};
|
|
3768
|
+
};
|
|
3769
|
+
herstellerinformation: Herstellerinformation;
|
|
3770
|
+
};
|
|
3771
|
+
//#endregion
|
|
3706
3772
|
//#region src/xjustiz-schemata/klaver/ergonomics/beweis.d.ts
|
|
3707
3773
|
/**
|
|
3708
3774
|
* Constructs a {@link Beweis} with Zeugen as Beweismittel. The referenced
|
|
@@ -3777,8 +3843,27 @@ declare function parteivernehmung<NachrichtenScope, const Nummer extends BeweisN
|
|
|
3777
3843
|
* ```
|
|
3778
3844
|
*/
|
|
3779
3845
|
declare function geldbetrag(zahl: Double): Geldbetrag;
|
|
3846
|
+
//#endregion
|
|
3847
|
+
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/herstellerinformation.d.ts
|
|
3848
|
+
/**
|
|
3849
|
+
* Constructs the static {@link Herstellerinformationen} with the version of the
|
|
3850
|
+
* XJustiz-Bridge in use.
|
|
3851
|
+
*/
|
|
3852
|
+
declare function herstellerinformation(): Herstellerinformation;
|
|
3853
|
+
//#endregion
|
|
3854
|
+
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/kommunikation.d.ts
|
|
3855
|
+
/**
|
|
3856
|
+
* Constructs a {@link Kommunikation} with {@link Telekommunikationsart.EMail}
|
|
3857
|
+
* as `telekommunikationsart`.
|
|
3858
|
+
*/
|
|
3859
|
+
declare function email(address: DatatypeC): Kommunikation;
|
|
3860
|
+
/**
|
|
3861
|
+
* Constructs a {@link Kommunikation} with {@link Telekommunikationsart.Telefon}
|
|
3862
|
+
* as `telekommunikationsart`.
|
|
3863
|
+
*/
|
|
3864
|
+
declare function telefon(number: DatatypeC): Kommunikation;
|
|
3780
3865
|
declare namespace index_d_exports {
|
|
3781
|
-
export { antragAufAnwaltskosten, antragAufVersaeumnisurteil, geldbetrag, parteivernehmung, weitererAntrag, zeuge };
|
|
3866
|
+
export { antragAufAnwaltskosten, antragAufVersaeumnisurteil, email, geldbetrag, herstellerinformation, nachrichtenkopf, parteivernehmung, telefon, weitererAntrag, zeuge };
|
|
3782
3867
|
}
|
|
3783
3868
|
//#endregion
|
|
3784
3869
|
export { type AnspruchFuerZahlungsklage, Anspruchsart, type AntraegeFuerZahlungsklage, type AntragAufAnwaltskosten, type AntragAufVersaeumnisurteil, AntragCodeliste, type AusfuehrungenFuerZahlungsklage, type BegruendetheitFuerZahlungsklage, type BeklagteOrganisation, type BeklagtePerson, type Beklagter, type DatatypeA, type DatatypeB, type DatatypeC, type DatatypeD, type DatatypeE, type Decimal, Gerichte, Geschlecht, type GesetzlicherVertreter, type GrunddatenFuerZahlungsklage, Kanzleiform, type Klaeger, type NachrichtenkopfFuerZahlungsklage, type Prozessbevollmaechtiger, Rollenbezeichnung, type ScopeToken, type SonstigerAntragFuerZahlungsklage, Telekommunikationsart, type VortragZurBegruendetheitFuerZahlungsklage, Waehrung, type WeitererAntrag, type Zahlungsklage, type Zeuge, Zinsmethode, createFortlaufendeNummerGenerator, createRollennummerGenerator, createUuidGenerator, datatypeA, datatypeB, datatypeC, datatypeD, datatypeE, decimal, index_d_exports as ergonomics, join as joinDatatyeA, join$1 as joinDatatyeB, join$2 as joinDatatyeC, join$3 as joinDatatyeD, join$4 as joinDatatyeE, verifyZahlungsklage, zahlungsklage };
|
|
@@ -2351,6 +2351,35 @@ const Gerichte = defineCodeliste({
|
|
|
2351
2351
|
"Der Generalbundesanwalt beim Bundesgerichtshof Ref. IV 3 AZ. IV 29 H 2/90": "Z7350"
|
|
2352
2352
|
});
|
|
2353
2353
|
//#endregion
|
|
2354
|
+
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/geldbetrag.ts
|
|
2355
|
+
/**
|
|
2356
|
+
* Constructs a {@link Geldbetrag} from an amount in Euro.
|
|
2357
|
+
*
|
|
2358
|
+
* @example
|
|
2359
|
+
* ```typescript
|
|
2360
|
+
* const betrag = geldbetrag(5_000);
|
|
2361
|
+
* ```
|
|
2362
|
+
*/
|
|
2363
|
+
function geldbetrag(zahl) {
|
|
2364
|
+
return {
|
|
2365
|
+
zahl,
|
|
2366
|
+
auswahlWaehrung: { waehrung: Waehrung.Euro }
|
|
2367
|
+
};
|
|
2368
|
+
}
|
|
2369
|
+
//#endregion
|
|
2370
|
+
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/herstellerinformation.ts
|
|
2371
|
+
/**
|
|
2372
|
+
* Constructs the static {@link Herstellerinformationen} with the version of the
|
|
2373
|
+
* XJustiz-Bridge in use.
|
|
2374
|
+
*/
|
|
2375
|
+
function herstellerinformation() {
|
|
2376
|
+
return {
|
|
2377
|
+
nameDesProdukts: "Justizportal XJustiz Services",
|
|
2378
|
+
herstellerDesProdukts: "Bundesministerium der Justiz und für Verbraucherschutz, ausgeführt durch DigitalService GmbH des Bundes",
|
|
2379
|
+
version: "\"0.8.0\""
|
|
2380
|
+
};
|
|
2381
|
+
}
|
|
2382
|
+
//#endregion
|
|
2354
2383
|
//#region src/xjustiz-schemata/shared-kernel/refined-types.ts
|
|
2355
2384
|
/**
|
|
2356
2385
|
* Produce a factory to construct valid instanced for a refined type.
|
|
@@ -2555,21 +2584,23 @@ invalidCharacters: (characters) => `Contains characters not allowed by DIN 91379
|
|
|
2555
2584
|
const datatypeA = defineRefinedType(isString, parseDatatypeA);
|
|
2556
2585
|
/**
|
|
2557
2586
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2558
|
-
* maintains the invariants of {@link DatatypeA}.
|
|
2559
|
-
*
|
|
2587
|
+
* maintains the invariants of {@link DatatypeA}. Any `undefined` entry in
|
|
2588
|
+
* `segments` is filtered automatically.
|
|
2589
|
+
|
|
2560
2590
|
* @example
|
|
2561
2591
|
* ```typescript
|
|
2562
2592
|
* const fullName = join(
|
|
2563
2593
|
* datatypeA(" ").value,
|
|
2564
2594
|
* datatypeA("Frau").value,
|
|
2565
2595
|
* datatypeA("Erika").value,
|
|
2596
|
+
* undefined,
|
|
2566
2597
|
* datatypeA("Musterfrau").value,
|
|
2567
2598
|
* );
|
|
2568
2599
|
* // "Frau Erika Musterfrau" - still DatatypeA no plain string
|
|
2569
2600
|
* ```
|
|
2570
2601
|
*/
|
|
2571
2602
|
function join(separator, ...segments) {
|
|
2572
|
-
return segments.join(separator);
|
|
2603
|
+
return segments.filter((segment) => segment !== void 0).join(separator);
|
|
2573
2604
|
}
|
|
2574
2605
|
const DATATYPE_A_PATTERN = transformXsdPatternToJavaScriptExpression(String.raw`( |'|[,-\.]|[A-Z]|[`-z]|~|¨|´|·|[À-Ö]|[Ø-ö]|[ø-ž]|[Ƈ-ƈ]|Ə|Ɨ|[Ơ-ơ]|[Ư-ư]|Ʒ|[Ǎ-ǜ]|[Ǟ-ǟ]|[Ǣ-ǰ]|[Ǵ-ǵ]|[Ǹ-ǿ]|[Ȓ-ȓ]|[Ș-ț]|[Ȟ-ȟ]|[ȧ-ȳ]|ə|ɨ|ʒ|[ʹ-ʺ]|[ʾ-ʿ]|ˈ|ˌ|[Ḃ-ḃ]|[Ḇ-ḇ]|[Ḋ-ḑ]|ḗ|[Ḝ-ḫ]|[ḯ-ḷ]|[Ḻ-ḻ]|[Ṁ-ṉ]|[Ṓ-ṛ]|[Ṟ-ṣ]|[Ṫ-ṯ]|[Ẁ-ẇ]|[Ẍ-ẗ]|ẞ|[Ạ-ỹ]|’|‡|A̋|C(̀|̄|̆|̈|̕|̣|̦|̨̆)|D̂|F(̀|̄)|G̀|H(̄|̦|̱)|J(́|̌)|K(̀|̂|̄|̇|̕|̛|̦|͟H|͟h)|L(̂|̥|̥̄|̦)|M(̀|̂|̆|̐)|N(̂|̄|̆|̦)|P(̀|̄|̕|̣)|R(̆|̥|̥̄)|S(̀|̄|̛̄|̱)|T(̀|̄|̈|̕|̛)|U̇|Z(̀|̄|̆|̈|̧)|a̋|c(̀|̄|̆|̈|̕|̣|̦|̨̆)|d̂|f(̀|̄)|g̀|h(̄|̦)|j́|k(̀|̂|̄|̇|̕|̛|̦|͟h)|l(̂|̥|̥̄|̦)|m(̀|̂|̆|̐)|n(̂|̄|̆|̦)|p(̀|̄|̕|̣)|r(̆|̥|̥̄)|s(̀|̄|̛̄|̱)|t(̀|̄|̕|̛)|u̇|z(̀|̄|̆|̈|̧)|Ç̆|Û̄|ç̆|û̄|ÿ́|Č(̕|̣)|č(̕|̣)|ē̍|Ī́|ī́|ō̍|Ž(̦|̧)|ž(̦|̧)|Ḳ̄|ḳ̄|Ṣ̄|ṣ̄|Ṭ̄|ṭ̄|Ạ̈|ạ̈|Ọ̈|ọ̈|Ụ(̄|̈)|ụ(̄|̈))*`);
|
|
2575
2606
|
//#endregion
|
|
@@ -2612,21 +2643,25 @@ invalidCharacters: (characters) => `Contains characters not allowed by DIN 91379
|
|
|
2612
2643
|
const datatypeB = defineRefinedType(isString, parseDatatypeB);
|
|
2613
2644
|
/**
|
|
2614
2645
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2615
|
-
* maintains the invariants of {@link DatatypeB}.
|
|
2646
|
+
* maintains the invariants of {@link DatatypeB}. Also supports passing
|
|
2647
|
+
* and mixing {@link DatatypeA} values, as any {@link DatentypA} is also a valid
|
|
2648
|
+
* {@link DatatypeB}. Any `undefined` entry in `segments` is filtered
|
|
2649
|
+
* automatically.
|
|
2616
2650
|
*
|
|
2617
2651
|
* @example
|
|
2618
2652
|
* ```typescript
|
|
2619
2653
|
* const fullAddress = join(
|
|
2620
|
-
*
|
|
2654
|
+
* datatypeA(" ").value,
|
|
2621
2655
|
* datatypeB("Musterstraße").value,
|
|
2622
2656
|
* datatypeB("1A").value,
|
|
2657
|
+
* undefined,
|
|
2623
2658
|
* datatypeB("Musterstadt").value,
|
|
2624
2659
|
* );
|
|
2625
2660
|
* // "Musterstraße 1A Musterstadt" - still DatatypeB no plain string
|
|
2626
2661
|
* ```
|
|
2627
2662
|
*/
|
|
2628
2663
|
function join$1(separator, ...segments) {
|
|
2629
|
-
return segments.join(separator);
|
|
2664
|
+
return segments.filter((segment) => segment !== void 0).join(separator);
|
|
2630
2665
|
}
|
|
2631
2666
|
const DATATYPE_B_PATTERN = transformXsdPatternToJavaScriptExpression(String.raw`([ -~]|[¡-£]|¥|[§-¬]|[®-·]|[¹-»]|[¿-ž]|[Ƈ-ƈ]|Ə|Ɨ|[Ơ-ơ]|[Ư-ư]|Ʒ|[Ǎ-ǜ]|[Ǟ-ǟ]|[Ǣ-ǰ]|[Ǵ-ǵ]|[Ǹ-ǿ]|[Ȓ-ȓ]|[Ș-ț]|[Ȟ-ȟ]|[ȧ-ȳ]|ə|ɨ|ʒ|[ʹ-ʺ]|[ʾ-ʿ]|ˈ|ˌ|[Ḃ-ḃ]|[Ḇ-ḇ]|[Ḋ-ḑ]|ḗ|[Ḝ-ḫ]|[ḯ-ḷ]|[Ḻ-ḻ]|[Ṁ-ṉ]|[Ṓ-ṛ]|[Ṟ-ṣ]|[Ṫ-ṯ]|[Ẁ-ẇ]|[Ẍ-ẗ]|ẞ|[Ạ-ỹ]|’|‡|€|A̋|C(̀|̄|̆|̈|̕|̣|̦|̨̆)|D̂|F(̀|̄)|G̀|H(̄|̦|̱)|J(́|̌)|K(̀|̂|̄|̇|̕|̛|̦|͟H|͟h)|L(̂|̥|̥̄|̦)|M(̀|̂|̆|̐)|N(̂|̄|̆|̦)|P(̀|̄|̕|̣)|R(̆|̥|̥̄)|S(̀|̄|̛̄|̱)|T(̀|̄|̈|̕|̛)|U̇|Z(̀|̄|̆|̈|̧)|a̋|c(̀|̄|̆|̈|̕|̣|̦|̨̆)|d̂|f(̀|̄)|g̀|h(̄|̦)|j́|k(̀|̂|̄|̇|̕|̛|̦|͟h)|l(̂|̥|̥̄|̦)|m(̀|̂|̆|̐)|n(̂|̄|̆|̦)|p(̀|̄|̕|̣)|r(̆|̥|̥̄)|s(̀|̄|̛̄|̱)|t(̀|̄|̕|̛)|u̇|z(̀|̄|̆|̈|̧)|Ç̆|Û̄|ç̆|û̄|ÿ́|Č(̕|̣)|č(̕|̣)|ē̍|Ī́|ī́|ō̍|Ž(̦|̧)|ž(̦|̧)|Ḳ̄|ḳ̄|Ṣ̄|ṣ̄|Ṭ̄|ṭ̄|Ạ̈|ạ̈|Ọ̈|ọ̈|Ụ(̄|̈)|ụ(̄|̈))*`);
|
|
2632
2667
|
//#endregion
|
|
@@ -2669,24 +2704,50 @@ invalidCharacters: (characters) => `Contains characters not allowed by DIN 91379
|
|
|
2669
2704
|
const datatypeC = defineRefinedType(isString, parseDatatypeC);
|
|
2670
2705
|
/**
|
|
2671
2706
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2672
|
-
* maintains the invariants of {@link DatatypeC}.
|
|
2707
|
+
* maintains the invariants of {@link DatatypeC}. Also supports passing
|
|
2708
|
+
* and mixing {@link DatatypeA} and {@link DatatypeB} values, as any of them is
|
|
2709
|
+
* also a valid {@link DatatypeC}. Any `undefined` entry in `segments` is
|
|
2710
|
+
* filtered automatically.
|
|
2673
2711
|
*
|
|
2674
2712
|
* @example
|
|
2675
2713
|
* ```typescript
|
|
2676
|
-
* const
|
|
2677
|
-
*
|
|
2714
|
+
* const output = join(
|
|
2715
|
+
* datatypeA(" ").value,
|
|
2678
2716
|
* datatypeC("Lorem").value,
|
|
2679
|
-
*
|
|
2717
|
+
* datatypeB("ipsum").value,
|
|
2718
|
+
* undefined,
|
|
2680
2719
|
* datatypeC("dolor").value,
|
|
2681
2720
|
* );
|
|
2682
2721
|
* // "Lorem ipsum dolor" - still DatatypeC no plain string
|
|
2683
2722
|
* ```
|
|
2684
2723
|
*/
|
|
2685
2724
|
function join$2(separator, ...segments) {
|
|
2686
|
-
return segments.join(separator);
|
|
2725
|
+
return segments.filter((segment) => segment !== void 0).join(separator);
|
|
2687
2726
|
}
|
|
2688
2727
|
const DATATYPE_C_PATTERN = transformXsdPatternToJavaScriptExpression(String.raw`([	-
]|
|[ -~]|[ -¬]|[®-ž]|[Ƈ-ƈ]|Ə|Ɨ|[Ơ-ơ]|[Ư-ư]|Ʒ|[Ǎ-ǜ]|[Ǟ-ǟ]|[Ǣ-ǰ]|[Ǵ-ǵ]|[Ǹ-ǿ]|[Ȓ-ȓ]|[Ș-ț]|[Ȟ-ȟ]|[ȧ-ȳ]|ə|ɨ|ʒ|[ʹ-ʺ]|[ʾ-ʿ]|ˈ|ˌ|[Ḃ-ḃ]|[Ḇ-ḇ]|[Ḋ-ḑ]|ḗ|[Ḝ-ḫ]|[ḯ-ḷ]|[Ḻ-ḻ]|[Ṁ-ṉ]|[Ṓ-ṛ]|[Ṟ-ṣ]|[Ṫ-ṯ]|[Ẁ-ẇ]|[Ẍ-ẗ]|ẞ|[Ạ-ỹ]|’|‡|€|A̋|C(̀|̄|̆|̈|̕|̣|̦|̨̆)|D̂|F(̀|̄)|G̀|H(̄|̦|̱)|J(́|̌)|K(̀|̂|̄|̇|̕|̛|̦|͟H|͟h)|L(̂|̥|̥̄|̦)|M(̀|̂|̆|̐)|N(̂|̄|̆|̦)|P(̀|̄|̕|̣)|R(̆|̥|̥̄)|S(̀|̄|̛̄|̱)|T(̀|̄|̈|̕|̛)|U̇|Z(̀|̄|̆|̈|̧)|a̋|c(̀|̄|̆|̈|̕|̣|̦|̨̆)|d̂|f(̀|̄)|g̀|h(̄|̦)|j́|k(̀|̂|̄|̇|̕|̛|̦|͟h)|l(̂|̥|̥̄|̦)|m(̀|̂|̆|̐)|n(̂|̄|̆|̦)|p(̀|̄|̕|̣)|r(̆|̥|̥̄)|s(̀|̄|̛̄|̱)|t(̀|̄|̕|̛)|u̇|z(̀|̄|̆|̈|̧)|Ç̆|Û̄|ç̆|û̄|ÿ́|Č(̕|̣)|č(̕|̣)|ē̍|Ī́|ī́|ō̍|Ž(̦|̧)|ž(̦|̧)|Ḳ̄|ḳ̄|Ṣ̄|ṣ̄|Ṭ̄|ṭ̄|Ạ̈|ạ̈|Ọ̈|ọ̈|Ụ(̄|̈)|ụ(̄|̈))*`);
|
|
2689
2728
|
//#endregion
|
|
2729
|
+
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/kommunikation.ts
|
|
2730
|
+
/**
|
|
2731
|
+
* Constructs a {@link Kommunikation} with {@link Telekommunikationsart.EMail}
|
|
2732
|
+
* as `telekommunikationsart`.
|
|
2733
|
+
*/
|
|
2734
|
+
function email(address) {
|
|
2735
|
+
return {
|
|
2736
|
+
verbindung: address,
|
|
2737
|
+
telekommunikationsart: Telekommunikationsart.EMail
|
|
2738
|
+
};
|
|
2739
|
+
}
|
|
2740
|
+
/**
|
|
2741
|
+
* Constructs a {@link Kommunikation} with {@link Telekommunikationsart.Telefon}
|
|
2742
|
+
* as `telekommunikationsart`.
|
|
2743
|
+
*/
|
|
2744
|
+
function telefon(number) {
|
|
2745
|
+
return {
|
|
2746
|
+
verbindung: number,
|
|
2747
|
+
telekommunikationsart: Telekommunikationsart.Telefon
|
|
2748
|
+
};
|
|
2749
|
+
}
|
|
2750
|
+
//#endregion
|
|
2690
2751
|
//#region src/xjustiz-schemata/din-91379/datatypeD.ts
|
|
2691
2752
|
function parseDatatypeD(issueMessages = DEFAULT_ISSUE_MESSAGES$3) {
|
|
2692
2753
|
return function parse(input) {
|
|
@@ -2726,21 +2787,25 @@ invalidCharacters: (characters) => `Contains characters not allowed by DIN 91379
|
|
|
2726
2787
|
const datatypeD = defineRefinedType(isString, parseDatatypeD);
|
|
2727
2788
|
/**
|
|
2728
2789
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2729
|
-
* maintains the invariants of {@link DatatypeD}.
|
|
2790
|
+
* maintains the invariants of {@link DatatypeD}. Also supports passing
|
|
2791
|
+
* and mixing {@link DatatypeA} and {@link DatatypeB} values, as any of them is
|
|
2792
|
+
* also a valid {@link DatatypeD}. Any `undefined` entry in `segments` is
|
|
2793
|
+
* filtered automatically.
|
|
2730
2794
|
*
|
|
2731
2795
|
* @example
|
|
2732
2796
|
* ```typescript
|
|
2733
|
-
* const
|
|
2734
|
-
*
|
|
2797
|
+
* const output = join(
|
|
2798
|
+
* datatypeA(" ").value,
|
|
2735
2799
|
* datatypeD("Lorem").value,
|
|
2736
|
-
*
|
|
2800
|
+
* datatypeB("ipsum").value,
|
|
2801
|
+
* undefined,
|
|
2737
2802
|
* datatypeD("dolor").value,
|
|
2738
2803
|
* );
|
|
2739
2804
|
* // "Lorem ipsum dolor" - still DatatypeD no plain string
|
|
2740
2805
|
* ```
|
|
2741
2806
|
*/
|
|
2742
2807
|
function join$3(separator, ...segments) {
|
|
2743
|
-
return segments.join(separator);
|
|
2808
|
+
return segments.filter((segment) => segment !== void 0).join(separator);
|
|
2744
2809
|
}
|
|
2745
2810
|
const DATATYPE_D_PATTERN = transformXsdPatternToJavaScriptExpression(String.raw`([ -~]|[¡-¬]|[®-ž]|[Ƈ-ƈ]|Ə|ƒ|Ɨ|[Ơ-ơ]|[Ư-ư]|Ʒ|[Ǎ-ǜ]|[Ǟ-ǟ]|[Ǣ-ǰ]|[Ǵ-ǵ]|[Ǹ-ǿ]|[Ȓ-ȓ]|[Ș-ț]|[Ȟ-ȟ]|[ȧ-ȳ]|ə|ɨ|ʒ|ʰ|ʳ|[ʹ-ʺ]|[ʾ-ʿ]|ˆ|ˈ|ˌ|˜|ˢ|Ά|[Έ-Ί]|Ό|[Ύ-Ρ]|[Σ-ώ]|ᵈ|ᵗ|[Ḃ-ḃ]|[Ḇ-ḇ]|[Ḋ-ḑ]|ḗ|[Ḝ-ḫ]|[ḯ-ḷ]|[Ḻ-ḻ]|[Ṁ-ṉ]|[Ṓ-ṛ]|[Ṟ-ṣ]|[Ṫ-ṯ]|[Ẁ-ẇ]|[Ẍ-ẗ]|ẞ|[Ạ-ỹ]|[‘-‚]|[“-„]|[†-‡]|…|‰|[′-″]|[‹-›]|⁰|[⁴-⁹]|[ⁿ-₉]|€|™|∞|[≤-≥]|A̋|C(̀|̄|̆|̈|̕|̣|̦|̨̆)|D̂|F(̀|̄)|G̀|H(̄|̦|̱)|J(́|̌)|K(̀|̂|̄|̇|̕|̛|̦|͟H|͟h)|L(̂|̥|̥̄|̦)|M(̀|̂|̆|̐)|N(̂|̄|̆|̦)|P(̀|̄|̕|̣)|R(̆|̥|̥̄)|S(̀|̄|̛̄|̱)|T(̀|̄|̈|̕|̛)|U̇|Z(̀|̄|̆|̈|̧)|a̋|c(̀|̄|̆|̈|̕|̣|̦|̨̆)|d̂|f(̀|̄)|g̀|h(̄|̦)|j́|k(̀|̂|̄|̇|̕|̛|̦|͟h)|l(̂|̥|̥̄|̦)|m(̀|̂|̆|̐)|n(̂|̄|̆|̦)|p(̀|̄|̕|̣)|r(̆|̥|̥̄)|s(̀|̄|̛̄|̱)|t(̀|̄|̕|̛)|u̇|z(̀|̄|̆|̈|̧)|Ç̆|Û̄|ç̆|û̄|ÿ́|Č(̕|̣)|č(̕|̣)|ē̍|Ī́|ī́|ō̍|Ž(̦|̧)|ž(̦|̧)|Ḳ̄|ḳ̄|Ṣ̄|ṣ̄|Ṭ̄|ṭ̄|Ạ̈|ạ̈|Ọ̈|ọ̈|Ụ(̄|̈)|ụ(̄|̈))*`);
|
|
2746
2811
|
//#endregion
|
|
@@ -2937,22 +3002,6 @@ function randomUUID() {
|
|
|
2937
3002
|
return globalThis.crypto.randomUUID();
|
|
2938
3003
|
}
|
|
2939
3004
|
//#endregion
|
|
2940
|
-
//#region src/xjustiz-schemata/grunddatensatz/ergonomics/geldbetrag.ts
|
|
2941
|
-
/**
|
|
2942
|
-
* Constructs a {@link Geldbetrag} from an amount in Euro.
|
|
2943
|
-
*
|
|
2944
|
-
* @example
|
|
2945
|
-
* ```typescript
|
|
2946
|
-
* const betrag = geldbetrag(5_000);
|
|
2947
|
-
* ```
|
|
2948
|
-
*/
|
|
2949
|
-
function geldbetrag(zahl) {
|
|
2950
|
-
return {
|
|
2951
|
-
zahl,
|
|
2952
|
-
auswahlWaehrung: { waehrung: Waehrung.Euro }
|
|
2953
|
-
};
|
|
2954
|
-
}
|
|
2955
|
-
//#endregion
|
|
2956
3005
|
//#region src/xjustiz-schemata/din-91379/datatypeE.ts
|
|
2957
3006
|
function parseDatatypeE(issueMessages = DEFAULT_ISSUE_MESSAGES$1) {
|
|
2958
3007
|
return function parse(input) {
|
|
@@ -2993,21 +3042,26 @@ invalidCharacters: (characters) => `Contains characters not allowed by DIN 91379
|
|
|
2993
3042
|
const datatypeE = defineRefinedType(isString, parseDatatypeE);
|
|
2994
3043
|
/**
|
|
2995
3044
|
* Adapted version of the default {@link Array.prototype.join} operation that
|
|
2996
|
-
* maintains the invariants of {@link DatatypeE}.
|
|
3045
|
+
* maintains the invariants of {@link DatatypeE}. Also supports passing
|
|
3046
|
+
* and mixing {@link DatatypeA}, {@link DatatypeB}, {@link DatatypeC} and
|
|
3047
|
+
* {@link DatatypeD} values, as any of them is also a valid {@link DatatypeE}.
|
|
3048
|
+
* Any `undefined` entry in `segments` is filtered automatically.
|
|
2997
3049
|
*
|
|
2998
3050
|
* @example
|
|
2999
3051
|
* ```typescript
|
|
3000
|
-
* const
|
|
3001
|
-
*
|
|
3002
|
-
*
|
|
3003
|
-
*
|
|
3004
|
-
*
|
|
3052
|
+
* const output = join(
|
|
3053
|
+
* datatypeA(" ").value,
|
|
3054
|
+
* datatypeB("Lorem").value,
|
|
3055
|
+
* datatypeC("ipsum").value,
|
|
3056
|
+
* datatypeD("dolor").value,
|
|
3057
|
+
* undefined,
|
|
3058
|
+
* datatypeE("sit").value,
|
|
3005
3059
|
* );
|
|
3006
|
-
* // "Lorem ipsum dolor" - still DatatypeE no plain string
|
|
3060
|
+
* // "Lorem ipsum dolor sit" - still DatatypeE no plain string
|
|
3007
3061
|
* ```
|
|
3008
3062
|
*/
|
|
3009
3063
|
function join$4(separator, ...segments) {
|
|
3010
|
-
return segments.join(separator);
|
|
3064
|
+
return segments.filter((segment) => segment !== void 0).join(separator);
|
|
3011
3065
|
}
|
|
3012
3066
|
const DATATYPE_E_PATTERN = transformXsdPatternToJavaScriptExpression(String.raw`([	-
]|
|[ -~]|[ -¬]|[®-ž]|[Ƈ-ƈ]|Ə|ƒ|Ɨ|[Ơ-ơ]|[Ư-ư]|Ʒ|[Ǎ-ǜ]|[Ǟ-ǟ]|[Ǣ-ǰ]|[Ǵ-ǵ]|[Ǹ-ǿ]|[Ȓ-ȓ]|[Ș-ț]|[Ȟ-ȟ]|[ȧ-ȳ]|ə|ɨ|ʒ|ʰ|ʳ|[ʹ-ʺ]|[ʾ-ʿ]|ˆ|ˈ|ˌ|˜|ˢ|Ά|[Έ-Ί]|Ό|[Ύ-Ρ]|[Σ-ώ]|Ѝ|[А-Ъ]|Ь|[Ю-ъ]|ь|[ю-я]|ѝ|ᵈ|ᵗ|[Ḃ-ḃ]|[Ḇ-ḇ]|[Ḋ-ḑ]|ḗ|[Ḝ-ḫ]|[ḯ-ḷ]|[Ḻ-ḻ]|[Ṁ-ṉ]|[Ṓ-ṛ]|[Ṟ-ṣ]|[Ṫ-ṯ]|[Ẁ-ẇ]|[Ẍ-ẗ]|ẞ|[Ạ-ỹ]|[‘-‚]|[“-„]|[†-‡]|…|‰|[′-″]|[‹-›]|⁰|[⁴-⁹]|[ⁿ-₉]|€|™|∞|[≤-≥]|A̋|C(̀|̄|̆|̈|̕|̣|̦|̨̆)|D̂|F(̀|̄)|G̀|H(̄|̦|̱)|J(́|̌)|K(̀|̂|̄|̇|̕|̛|̦|͟H|͟h)|L(̂|̥|̥̄|̦)|M(̀|̂|̆|̐)|N(̂|̄|̆|̦)|P(̀|̄|̕|̣)|R(̆|̥|̥̄)|S(̀|̄|̛̄|̱)|T(̀|̄|̈|̕|̛)|U̇|Z(̀|̄|̆|̈|̧)|a̋|c(̀|̄|̆|̈|̕|̣|̦|̨̆)|d̂|f(̀|̄)|g̀|h(̄|̦)|j́|k(̀|̂|̄|̇|̕|̛|̦|͟h)|l(̂|̥|̥̄|̦)|m(̀|̂|̆|̐)|n(̂|̄|̆|̦)|p(̀|̄|̕|̣)|r(̆|̥|̥̄)|s(̀|̄|̛̄|̱)|t(̀|̄|̕|̛)|u̇|z(̀|̄|̆|̈|̧)|Ç̆|Û̄|ç̆|û̄|ÿ́|Č(̕|̣)|č(̕|̣)|ē̍|Ī́|ī́|ō̍|Ž(̦|̧)|ž(̦|̧)|Ḳ̄|ḳ̄|Ṣ̄|ṣ̄|Ṭ̄|ṭ̄|Ạ̈|ạ̈|Ọ̈|ọ̈|Ụ(̄|̈)|ụ(̄|̈))*`);
|
|
3013
3067
|
//#endregion
|
|
@@ -3287,12 +3341,62 @@ function verifyZahlungsklage(_scope, nachricht) {
|
|
|
3287
3341
|
return nachricht;
|
|
3288
3342
|
}
|
|
3289
3343
|
//#endregion
|
|
3344
|
+
//#region src/nachricht/zahlungsklage/ergonomics/nachrichtenkopf.ts
|
|
3345
|
+
/**
|
|
3346
|
+
* Constructs a {@link NachrichtenkopfFuerZahlungsklage} with the `klaeger` as
|
|
3347
|
+
* Absender and `gericht` as Empfänger.
|
|
3348
|
+
*
|
|
3349
|
+
* The `erstellungszeitpunkt` will be current date-time at the call.
|
|
3350
|
+
*
|
|
3351
|
+
* The `klaeger` will be formatted based on their Geschlecht, Titel, Vorname and
|
|
3352
|
+
* Nachname. For example: `"Frau Dr. Erika Musterfrau"`. A Titel which can't be
|
|
3353
|
+
* parsed from {@link DatatypeC} to {@link DatatypeD} will be discarded. Any
|
|
3354
|
+
* Geschlecht but männlich or weiblich will also be discarded for the Anrede.
|
|
3355
|
+
*/
|
|
3356
|
+
function nachrichtenkopf(_scope, eigeneNachrichtenID, klaeger, gericht) {
|
|
3357
|
+
return {
|
|
3358
|
+
xjustizVersion: "3.6.2",
|
|
3359
|
+
erstellungszeitpunkt: Temporal.Now.instant(),
|
|
3360
|
+
absender: {
|
|
3361
|
+
informationen: { auswahlKommunikationspartner: { sonstige: formatKlaegerAsAbsender(klaeger.beteiligter.auswahlBeteiligter.natuerlichePerson) } },
|
|
3362
|
+
eigeneNachrichtenID
|
|
3363
|
+
},
|
|
3364
|
+
empfaenger: {
|
|
3365
|
+
informationen: { auswahlKommunikationspartner: { gericht } },
|
|
3366
|
+
auswahlAktenzeichen: { aktenzeichenNeu: true }
|
|
3367
|
+
},
|
|
3368
|
+
herstellerinformation: herstellerinformation()
|
|
3369
|
+
};
|
|
3370
|
+
}
|
|
3371
|
+
function formatKlaegerAsAbsender(klaeger) {
|
|
3372
|
+
return join$3(datatypeD(" ").value, mapGeschlechtToAndrede(klaeger.geschlecht), tryToParseTitelAsDatatypeD(klaeger.vollerName.titel), klaeger.vollerName.vorname, klaeger.vollerName.nachname);
|
|
3373
|
+
}
|
|
3374
|
+
function tryToParseTitelAsDatatypeD(titel) {
|
|
3375
|
+
const maybeResult = titel ? datatypeD(titel) : { issues: [] };
|
|
3376
|
+
return maybeResult.issues === void 0 ? maybeResult.value : void 0;
|
|
3377
|
+
}
|
|
3378
|
+
function mapGeschlechtToAndrede(geschlecht) {
|
|
3379
|
+
switch (geschlecht) {
|
|
3380
|
+
case void 0:
|
|
3381
|
+
case Geschlecht.Unbekannt:
|
|
3382
|
+
case Geschlecht.Divers:
|
|
3383
|
+
case Geschlecht.Saechlich: return;
|
|
3384
|
+
case Geschlecht.Maennlich: return datatypeD("Herr").value;
|
|
3385
|
+
case Geschlecht.Weiblich: return datatypeD("Frau").value;
|
|
3386
|
+
default: return;
|
|
3387
|
+
}
|
|
3388
|
+
}
|
|
3389
|
+
//#endregion
|
|
3290
3390
|
//#region src/nachricht/zahlungsklage/ergonomics/index.ts
|
|
3291
3391
|
var ergonomics_exports = /* @__PURE__ */ __exportAll({
|
|
3292
3392
|
antragAufAnwaltskosten: () => antragAufAnwaltskosten,
|
|
3293
3393
|
antragAufVersaeumnisurteil: () => antragAufVersaeumnisurteil,
|
|
3394
|
+
email: () => email,
|
|
3294
3395
|
geldbetrag: () => geldbetrag,
|
|
3396
|
+
herstellerinformation: () => herstellerinformation,
|
|
3397
|
+
nachrichtenkopf: () => nachrichtenkopf,
|
|
3295
3398
|
parteivernehmung: () => parteivernehmung,
|
|
3399
|
+
telefon: () => telefon,
|
|
3296
3400
|
weitererAntrag: () => weitererAntrag,
|
|
3297
3401
|
zeuge: () => zeuge
|
|
3298
3402
|
});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://www.schemastore.org/package.json",
|
|
3
3
|
"name": "@digitalservicebund/a2j-xjustiz-bridge",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.0",
|
|
5
5
|
"description": "Assisted composition of XJustiz messages that are ensured to be valid.",
|
|
6
6
|
"author": "Team Court Communication (Access to Justice) - DigitalService GmbH des Bundes",
|
|
7
7
|
"license": "MIT",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@standard-schema/spec": "^1.1.0",
|
|
31
|
-
"ky": "^2.0
|
|
32
|
-
"typescript": "^6.0.3"
|
|
31
|
+
"ky": "^2.1.0"
|
|
33
32
|
},
|
|
34
33
|
"devDependencies": {
|
|
35
|
-
"fast-check": "^4.
|
|
36
|
-
"publint": "^0.3.
|
|
34
|
+
"fast-check": "^4.9.0",
|
|
35
|
+
"publint": "^0.3.24",
|
|
37
36
|
"testcontainers": "^12.1.0",
|
|
38
|
-
"tsdown": "^0.22.
|
|
39
|
-
"
|
|
37
|
+
"tsdown": "^0.22.14",
|
|
38
|
+
"typescript": "^7.0.2",
|
|
39
|
+
"vitest": "^4.1.11"
|
|
40
40
|
}
|
|
41
41
|
}
|