@cap-js/change-tracking 1.0.8 → 1.1.1
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 +38 -0
- package/README.md +34 -2
- package/_i18n/i18n.properties +4 -0
- package/_i18n/i18n_ar.properties +55 -0
- package/_i18n/i18n_bg.properties +55 -0
- package/_i18n/i18n_cs.properties +55 -0
- package/_i18n/i18n_da.properties +55 -0
- package/_i18n/i18n_de.properties +55 -51
- package/_i18n/i18n_el.properties +55 -0
- package/_i18n/i18n_en.properties +5 -1
- package/_i18n/i18n_en_US_saptrc.properties +55 -0
- package/_i18n/i18n_es.properties +55 -51
- package/_i18n/i18n_es_MX.properties +55 -0
- package/_i18n/i18n_fi.properties +55 -0
- package/_i18n/i18n_fr.properties +55 -51
- package/_i18n/i18n_he.properties +55 -0
- package/_i18n/i18n_hr.properties +55 -0
- package/_i18n/i18n_hu.properties +55 -0
- package/_i18n/i18n_it.properties +55 -51
- package/_i18n/i18n_ja.properties +11 -3
- package/_i18n/i18n_kk.properties +55 -0
- package/_i18n/i18n_ko.properties +55 -0
- package/_i18n/i18n_ms.properties +55 -0
- package/_i18n/i18n_nl.properties +55 -0
- package/_i18n/i18n_no.properties +55 -0
- package/_i18n/i18n_pl.properties +55 -51
- package/_i18n/i18n_pt.properties +55 -51
- package/_i18n/i18n_ro.properties +55 -0
- package/_i18n/i18n_ru.properties +55 -51
- package/_i18n/i18n_sh.properties +55 -0
- package/_i18n/i18n_sk.properties +55 -0
- package/_i18n/i18n_sl.properties +55 -0
- package/_i18n/i18n_sv.properties +55 -0
- package/_i18n/i18n_th.properties +55 -0
- package/_i18n/i18n_tr.properties +55 -0
- package/_i18n/i18n_uk.properties +55 -0
- package/_i18n/i18n_vi.properties +55 -0
- package/_i18n/i18n_zh_CN.properties +10 -6
- package/_i18n/i18n_zh_TW.properties +55 -0
- package/cds-plugin.js +1 -1
- package/index.cds +4 -3
- package/lib/change-log.js +26 -9
- package/lib/entity-helper.js +21 -1
- package/lib/format-options.js +66 -0
- package/lib/localization.js +55 -43
- package/package.json +12 -12
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=ID sprememb
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=ID objekta
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=ID nadrejenega objekta
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=Nadrejeni klju\u010D
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=Pot entitete storitve
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=Polje
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=Klju\u010Di sprememb
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=Vrsta spremembe
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=Stara vrednost
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=Nova vrednost
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=Tip objekta
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=Tip objekta storitve
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=Podatkovni tip vrednosti
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=Entiteta
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=Klju\u010D entitete
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=Entiteta storitve
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=Ustvari
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=Posodobi
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=Izbri\u0161i
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=Spremenjeno ob
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=Spremenil
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=Zgodovina sprememb
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=\u00C4ndrings-ID
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=Objekt-ID
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=ID f\u00F6r \u00F6verordnat objekt
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=\u00D6verordnad nyckel
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=S\u00F6kv\u00E4g f\u00F6r tj\u00E4nstentitet
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=F\u00E4lt
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=\u00C4ndringsnycklar
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=\u00C4ndringsslag
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=Gammalt v\u00E4rde
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=Nytt v\u00E4rde
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=Objekttyp
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=Serviceobjekttyp
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=V\u00E4rdedatatyp
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=Entitet
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=Entitetsnyckel
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=Tj\u00E4nstentitet
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=Skapa
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=Uppdatera
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=Radera
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=\u00C4ndring kl.
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=\u00C4ndring av
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=\u00C4ndringshistorik
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=ID \u0E01\u0E32\u0E23\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=ID \u0E2D\u0E2D\u0E1A\u0E40\u0E08\u0E04
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=ID \u0E2D\u0E2D\u0E1A\u0E40\u0E08\u0E04\u0E2B\u0E25\u0E31\u0E01
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=\u0E04\u0E35\u0E22\u0E4C\u0E2B\u0E25\u0E31\u0E01
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=\u0E1E\u0E32\u0E18\u0E40\u0E2D\u0E19\u0E17\u0E34\u0E15\u0E35\u0E49\u0E01\u0E32\u0E23\u0E1A\u0E23\u0E34\u0E01\u0E32\u0E23
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=\u0E1F\u0E34\u0E25\u0E14\u0E4C
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=\u0E04\u0E35\u0E22\u0E4C\u0E01\u0E32\u0E23\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E01\u0E32\u0E23\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=\u0E04\u0E48\u0E32\u0E40\u0E14\u0E34\u0E21
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=\u0E04\u0E48\u0E32\u0E43\u0E2B\u0E21\u0E48
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E2D\u0E2D\u0E1A\u0E40\u0E08\u0E04
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E2D\u0E2D\u0E1A\u0E40\u0E08\u0E04\u0E01\u0E32\u0E23\u0E1A\u0E23\u0E34\u0E01\u0E32\u0E23
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E04\u0E48\u0E32
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=\u0E40\u0E2D\u0E19\u0E17\u0E34\u0E15\u0E35\u0E49
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=\u0E04\u0E35\u0E22\u0E4C\u0E40\u0E2D\u0E19\u0E17\u0E34\u0E15\u0E35\u0E49
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=\u0E40\u0E2D\u0E19\u0E17\u0E34\u0E15\u0E35\u0E49\u0E01\u0E32\u0E23\u0E1A\u0E23\u0E34\u0E01\u0E32\u0E23
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=\u0E2A\u0E23\u0E49\u0E32\u0E07
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=\u0E2D\u0E31\u0E1E\u0E40\u0E14\u0E17
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=\u0E25\u0E1A
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07\u0E40\u0E21\u0E37\u0E48\u0E2D
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07\u0E42\u0E14\u0E22
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=\u0E1B\u0E23\u0E30\u0E27\u0E31\u0E15\u0E34\u0E01\u0E32\u0E23\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E41\u0E1B\u0E25\u0E07
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=De\u011Fi\u015Fiklikler tan\u0131t\u0131c\u0131s\u0131
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=Nesne tan\u0131t\u0131c\u0131s\u0131
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=\u00DCst d\u00FCzey nesne tan\u0131t\u0131c\u0131s\u0131
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=\u00DCst d\u00FCzey anahtar
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=Servis birimi yolu
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=Alan
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=De\u011Fi\u015Fiklikler anahtarlar\u0131
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=De\u011Fi\u015Fiklik t\u00FCr\u00FC
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=Eski de\u011Fer
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=Yeni de\u011Fer
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=Nesne t\u00FCr\u00FC
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=Servis nesnesi t\u00FCr\u00FC
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=De\u011Fer verileri t\u00FCr\u00FC
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=Birim
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=Birim anahtar\u0131
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=Servis birimi
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=Olu\u015Ftur
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=G\u00FCncelle
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=Sil
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=De\u011Fi\u015Fiklik saati
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=De\u011Fi\u015Ftiren
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=De\u011Fi\u015Fiklik ge\u00E7mi\u015Fi
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=\u0406\u0414 \u0437\u043C\u0456\u043D
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=\u0406\u0414 \u043E\u0431\u2019\u0454\u043A\u0442\u0430
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=\u0406\u0414 \u0431\u0430\u0442\u044C\u043A\u0456\u0432\u0441\u044C\u043A\u043E\u0433\u043E \u043E\u0431\u2019\u0454\u043A\u0442\u0430
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=\u0411\u0430\u0442\u044C\u043A\u0456\u0432\u0441\u044C\u043A\u0438\u0439 \u043A\u043B\u044E\u0447
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=\u0428\u043B\u044F\u0445 \u0434\u043E \u0441\u0443\u0442\u043D\u043E\u0441\u0442\u0456 \u0441\u0435\u0440\u0432\u0456\u0441\u0443
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=\u041F\u043E\u043B\u0435
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=\u041A\u043B\u044E\u0447\u0456 \u0437\u043C\u0456\u043D
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=\u0422\u0438\u043F \u0437\u043C\u0456\u043D\u0438
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=\u0421\u0442\u0430\u0440\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=\u041D\u043E\u0432\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=\u0422\u0438\u043F \u043E\u0431'\u0454\u043A\u0442\u0430
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=\u0422\u0438\u043F \u043E\u0431'\u0454\u043A\u0442\u0430 \u0441\u0435\u0440\u0432\u0456\u0441\u0443
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=\u0422\u0438\u043F \u0434\u0430\u043D\u0438\u0445 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=\u0421\u0443\u0442\u043D\u0456\u0441\u0442\u044C
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=\u041A\u043B\u044E\u0447 \u0441\u0443\u0442\u043D\u043E\u0441\u0442\u0456
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=\u0421\u0443\u0442\u043D\u0456\u0441\u0442\u044C \u0441\u0435\u0440\u0432\u0456\u0441\u0443
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=\u0421\u0442\u0432\u043E\u0440\u0438\u0442\u0438
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=\u041E\u043D\u043E\u0432\u0438\u0442\u0438
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=\u0412\u0438\u0434\u0430\u043B\u0438\u0442\u0438
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=\u0427\u0430\u0441 \u0437\u043C\u0456\u043D\u0438
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=\u0410\u0432\u0442\u043E\u0440 \u0437\u043C\u0456\u043D\u0438
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=\u0406\u0441\u0442\u043E\u0440\u0456\u044F \u0437\u043C\u0456\u043D
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=M\u00E3 thay \u0111\u1ED5i
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=M\u00E3 \u0111\u00F4\u0301i t\u01B0\u01A1\u0323ng
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=M\u00E3 \u0111\u00F4\u0301i t\u01B0\u01A1\u0323ng m\u1EB9
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=Kh\u00F3a ch\u00EDnh
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=\u0110\u01B0\u01A1\u0300ng d\u00E2\u0303n \u0111\u1EBFn th\u1EF1c th\u00EA\u0309 d\u1ECBch v\u1EE5
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=Tr\u01B0\u01A1\u0300ng
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=Kh\u00F3a thay \u0111\u1ED5i
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=Lo\u1EA1i thay \u0111\u1ED5i
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=Gia\u0301 tri\u0323 cu\u0303
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=Gia\u0301 tri\u0323 m\u01A1\u0301i
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=Loa\u0323i \u0111\u00F4\u0301i t\u01B0\u01A1\u0323ng
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=Loa\u0323i \u0111\u00F4\u0301i t\u01B0\u01A1\u0323ng d\u1ECBch v\u1EE5
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=Lo\u1EA1i d\u1EEF li\u1EC7u gi\u00E1 tr\u1ECB
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=Th\u01B0\u0323c th\u00EA\u0309
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=Kh\u00F3a th\u1EF1c th\u1EC3
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=Th\u1EF1c th\u1EC3 d\u1ECBch v\u1EE5
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=Ta\u0323o
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=C\u00E2\u0323p nh\u00E2\u0323t
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=Xo\u0301a
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=Thay \u0111\u00F4\u0309i lu\u0301c
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=Thay \u0111\u00F4\u0309i b\u01A1\u0309i
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=Li\u0323ch s\u01B0\u0309 thay \u0111\u00F4\u0309i
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
## Change Table Fields Description##
|
|
2
2
|
####################################
|
|
3
3
|
#XTIT: Field Name
|
|
4
|
-
Changes.ID=\u66F4\
|
|
4
|
+
Changes.ID=\u53D8\u66F4\u6807\u8BC6
|
|
5
5
|
#XTIT: Field Name
|
|
6
6
|
Changes.entityID=\u5BF9\u8C61\u6807\u8BC6
|
|
7
7
|
#XTIT: Field Name
|
|
8
8
|
Changes.parentEntityID=\u7236\u5BF9\u8C61\u6807\u8BC6
|
|
9
9
|
#XTIT: Field Name
|
|
10
|
-
Changes.parentKey=\u7236\
|
|
10
|
+
Changes.parentKey=\u7236\u9879\u952E\u503C
|
|
11
11
|
#XTIT: Field Name
|
|
12
12
|
Changes.serviceEntityPath=\u670D\u52A1\u5B9E\u4F53\u8DEF\u5F84
|
|
13
13
|
#XTIT: Field Name
|
|
14
14
|
Changes.attribute=\u5B57\u6BB5
|
|
15
15
|
#XTIT: Field Name
|
|
16
|
-
Changes.keys=\u66F4\
|
|
16
|
+
Changes.keys=\u53D8\u66F4\u952E\u503C
|
|
17
17
|
#XTIT: Field Name
|
|
18
18
|
Changes.modification=\u66F4\u6539\u7C7B\u578B
|
|
19
19
|
#XTIT: Field Name
|
|
@@ -25,14 +25,14 @@ Changes.entity=\u5BF9\u8C61\u7C7B\u578B
|
|
|
25
25
|
#XTIT: Field Name
|
|
26
26
|
Changes.serviceEntity=\u670D\u52A1\u5BF9\u8C61\u7C7B\u578B
|
|
27
27
|
#XTIT: Field Name
|
|
28
|
-
Changes.valueDataType=\
|
|
28
|
+
Changes.valueDataType=\u503C\u6570\u636E\u7C7B\u578B
|
|
29
29
|
|
|
30
30
|
## Change Log Table Fields Description##
|
|
31
31
|
########################################
|
|
32
32
|
#XTIT: Field Name
|
|
33
33
|
ChangeLog.entity=\u5B9E\u4F53
|
|
34
34
|
#XTIT: Field Name
|
|
35
|
-
ChangeLog.entityKey=\u5B9E\u4F53\
|
|
35
|
+
ChangeLog.entityKey=\u5B9E\u4F53\u952E\u503C
|
|
36
36
|
#XTIT: Field Name
|
|
37
37
|
ChangeLog.serviceEntity=\u670D\u52A1\u5B9E\u4F53
|
|
38
38
|
|
|
@@ -45,7 +45,11 @@ ChangeLog.modification.create=\u521B\u5EFA
|
|
|
45
45
|
ChangeLog.modification.update=\u66F4\u65B0
|
|
46
46
|
#XFLD: Field label
|
|
47
47
|
ChangeLog.modification.delete=\u5220\u9664
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=\u66F4\u6539\u65F6\u95F4
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=\u66F4\u6539\u8005
|
|
48
52
|
|
|
49
53
|
## Change History Table##
|
|
50
54
|
########################################
|
|
51
|
-
ChangeHistory=\
|
|
55
|
+
ChangeHistory=\u53D8\u66F4\u5386\u53F2\u8BB0\u5F55
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## Change Table Fields Description##
|
|
2
|
+
####################################
|
|
3
|
+
#XTIT: Field Name
|
|
4
|
+
Changes.ID=\u66F4\u6539 ID
|
|
5
|
+
#XTIT: Field Name
|
|
6
|
+
Changes.entityID=\u7269\u4EF6 ID
|
|
7
|
+
#XTIT: Field Name
|
|
8
|
+
Changes.parentEntityID=\u4E0A\u5C64\u7269\u4EF6 ID
|
|
9
|
+
#XTIT: Field Name
|
|
10
|
+
Changes.parentKey=\u4E0A\u5C64\u9375\u503C
|
|
11
|
+
#XTIT: Field Name
|
|
12
|
+
Changes.serviceEntityPath=\u670D\u52D9\u5BE6\u9AD4\u8DEF\u5F91
|
|
13
|
+
#XTIT: Field Name
|
|
14
|
+
Changes.attribute=\u6B04\u4F4D
|
|
15
|
+
#XTIT: Field Name
|
|
16
|
+
Changes.keys=\u66F4\u6539\u9375\u503C
|
|
17
|
+
#XTIT: Field Name
|
|
18
|
+
Changes.modification=\u66F4\u6539\u985E\u578B
|
|
19
|
+
#XTIT: Field Name
|
|
20
|
+
Changes.valueChangedFrom=\u820A\u503C
|
|
21
|
+
#XTIT: Field Name
|
|
22
|
+
Changes.valueChangedTo=\u65B0\u503C
|
|
23
|
+
#XTIT: Field Name
|
|
24
|
+
Changes.entity=\u7269\u4EF6\u985E\u578B
|
|
25
|
+
#XTIT: Field Name
|
|
26
|
+
Changes.serviceEntity=\u670D\u52D9\u7269\u4EF6\u985E\u578B
|
|
27
|
+
#XTIT: Field Name
|
|
28
|
+
Changes.valueDataType=\u503C\u8CC7\u6599\u985E\u578B
|
|
29
|
+
|
|
30
|
+
## Change Log Table Fields Description##
|
|
31
|
+
########################################
|
|
32
|
+
#XTIT: Field Name
|
|
33
|
+
ChangeLog.entity=\u5BE6\u9AD4
|
|
34
|
+
#XTIT: Field Name
|
|
35
|
+
ChangeLog.entityKey=\u5BE6\u9AD4\u9375\u503C
|
|
36
|
+
#XTIT: Field Name
|
|
37
|
+
ChangeLog.serviceEntity=\u670D\u52D9\u5BE6\u9AD4
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Change Log Modifications##
|
|
41
|
+
########################################
|
|
42
|
+
#XFLD: Field label
|
|
43
|
+
ChangeLog.modification.create=\u5EFA\u7ACB
|
|
44
|
+
#XFLD: Field label
|
|
45
|
+
ChangeLog.modification.update=\u66F4\u65B0
|
|
46
|
+
#XFLD: Field label
|
|
47
|
+
ChangeLog.modification.delete=\u522A\u9664
|
|
48
|
+
#XFLD: Field label
|
|
49
|
+
ChangeLog.createdAt=\u66F4\u6539\u6642\u9593
|
|
50
|
+
#XFLD: Field label
|
|
51
|
+
ChangeLog.createdBy=\u66F4\u6539\u8005
|
|
52
|
+
|
|
53
|
+
## Change History Table##
|
|
54
|
+
########################################
|
|
55
|
+
ChangeHistory=\u66F4\u6539\u6B77\u53F2\u8A18\u9304
|
package/cds-plugin.js
CHANGED
|
@@ -180,7 +180,7 @@ function enhanceModel (m) {
|
|
|
180
180
|
|
|
181
181
|
// Add association to ChangeView...
|
|
182
182
|
const keys = entityKey4(entity); if (!keys.length) continue // If no key attribute is defined for the entity, the logic to add association to ChangeView should be skipped.
|
|
183
|
-
const assoc = { ...changes, on: [ ...changes.on, ...keys ] }
|
|
183
|
+
const assoc = new cds.builtin.classes.Association({ ...changes, on: [ ...changes.on, ...keys ] })
|
|
184
184
|
|
|
185
185
|
// --------------------------------------------------------------------
|
|
186
186
|
// PARKED: Add auto-exposed projection on ChangeView to service if applicable
|
package/index.cds
CHANGED
|
@@ -40,8 +40,8 @@ entity ChangeLog : managed, cuid {
|
|
|
40
40
|
serviceEntity : String(5000) @title: '{i18n>ChangeLog.serviceEntity}'; // definition name of target entity (on service level) - e.g. ProcessorsService.Incidents
|
|
41
41
|
entity : String(5000) @title: '{i18n>ChangeLog.entity}'; // definition name of target entity (on db level) - e.g. sap.capire.incidents.Incidents
|
|
42
42
|
entityKey : UUID @title: '{i18n>ChangeLog.entityKey}'; // primary key of target entity, e.g. Incidents.ID
|
|
43
|
-
createdAt : managed:createdAt;
|
|
44
|
-
createdBy : managed:createdBy;
|
|
43
|
+
createdAt : managed:createdAt @title : '{i18n>ChangeLog.createdAt}';
|
|
44
|
+
createdBy : managed:createdBy @title : '{i18n>ChangeLog.createdBy}';
|
|
45
45
|
changes : Composition of many Changes on changes.changeLog = $self;
|
|
46
46
|
}
|
|
47
47
|
|
|
@@ -84,7 +84,8 @@ annotate ChangeView with @(UI: {
|
|
|
84
84
|
RequestAtLeast: [
|
|
85
85
|
parentKey,
|
|
86
86
|
serviceEntity,
|
|
87
|
-
serviceEntityPath
|
|
87
|
+
serviceEntityPath,
|
|
88
|
+
valueDataType
|
|
88
89
|
],
|
|
89
90
|
SortOrder : [{
|
|
90
91
|
Property : createdAt,
|
package/lib/change-log.js
CHANGED
|
@@ -13,6 +13,7 @@ const {
|
|
|
13
13
|
getEntityByContextPath,
|
|
14
14
|
getObjIdElementNamesInArray,
|
|
15
15
|
getValueEntityType,
|
|
16
|
+
splitPath,
|
|
16
17
|
} = require("./entity-helper")
|
|
17
18
|
const { localizeLogFields } = require("./localization")
|
|
18
19
|
const isRoot = "change-tracking-isRootEntity"
|
|
@@ -149,9 +150,12 @@ const _formatAssociationContext = async function (changes, reqData) {
|
|
|
149
150
|
if (!semkeys.length) continue
|
|
150
151
|
|
|
151
152
|
const ID = a.keys[0].ref[0] || 'ID'
|
|
152
|
-
const [ from, to ] = await cds.db.run ([
|
|
153
|
-
SELECT.
|
|
154
|
-
SELECT.
|
|
153
|
+
const [ [from], [to] ] = await cds.db.run (cds.env.requires['change-tracking'].considerLocalizedValues ? [
|
|
154
|
+
SELECT.localized.from(a.target).where({ [ID]: change.valueChangedFrom }).limit(1),
|
|
155
|
+
SELECT.localized.from(a.target).where({ [ID]: change.valueChangedTo }).limit(1)
|
|
156
|
+
] : [
|
|
157
|
+
SELECT.from(a.target).where({ [ID]: change.valueChangedFrom }).limit(1),
|
|
158
|
+
SELECT.from(a.target).where({ [ID]: change.valueChangedTo }).limit(1)
|
|
155
159
|
])
|
|
156
160
|
|
|
157
161
|
const fromObjId = await getObjectId(reqData, a.target, semkeys, { curObjFromDbQuery: from || undefined }) // Note: ... || undefined is important for subsequent object destructuring with defaults
|
|
@@ -193,7 +197,7 @@ const _formatCompositionContext = async function (changes, reqData) {
|
|
|
193
197
|
}
|
|
194
198
|
for (const childNodeChange of change.valueChangedTo) {
|
|
195
199
|
const curChange = Object.assign({}, change)
|
|
196
|
-
const path = childNodeChange._path
|
|
200
|
+
const path = splitPath(childNodeChange._path)
|
|
197
201
|
const curNodePathVal = path.pop()
|
|
198
202
|
curChange.modification = childNodeChange._op
|
|
199
203
|
const objId = await _getChildChangeObjId(
|
|
@@ -270,7 +274,7 @@ const _getObjectIdByPath = async function (
|
|
|
270
274
|
const _formatObjectID = async function (changes, reqData) {
|
|
271
275
|
const objectIdCache = new Map()
|
|
272
276
|
for (const change of changes) {
|
|
273
|
-
const path = change.serviceEntityPath
|
|
277
|
+
const path = splitPath(change.serviceEntityPath)
|
|
274
278
|
const curNodePathVal = path.pop()
|
|
275
279
|
const parentNodePathVal = path.pop()
|
|
276
280
|
|
|
@@ -502,6 +506,18 @@ async function track_changes (req) {
|
|
|
502
506
|
let diff = await req.diff()
|
|
503
507
|
if (!diff) return
|
|
504
508
|
|
|
509
|
+
const diffs = Array.isArray(diff) ? diff : [diff];
|
|
510
|
+
const changes = (
|
|
511
|
+
await Promise.all(diffs.map(item => trackChangesForDiff(item, req, this)))
|
|
512
|
+
).filter(Boolean);
|
|
513
|
+
|
|
514
|
+
if (changes.length > 0) {
|
|
515
|
+
await INSERT.into("sap.changelog.ChangeLog").entries(changes);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
async function trackChangesForDiff(diff, req, that){
|
|
505
521
|
let target = req.target
|
|
506
522
|
let compContext = null;
|
|
507
523
|
let entityKey = diff.ID
|
|
@@ -518,10 +534,11 @@ async function track_changes (req) {
|
|
|
518
534
|
target[isRoot] &&
|
|
519
535
|
!cds.env.requires["change-tracking"]?.preserveDeletes
|
|
520
536
|
) {
|
|
521
|
-
|
|
537
|
+
await DELETE.from(`sap.changelog.ChangeLog`).where({ entityKey });
|
|
538
|
+
return;
|
|
522
539
|
}
|
|
523
540
|
|
|
524
|
-
let changes = _trackedChanges4(
|
|
541
|
+
let changes = _trackedChanges4(that, target, diff)
|
|
525
542
|
if (!changes) return
|
|
526
543
|
|
|
527
544
|
await _formatChangeLog(changes, req)
|
|
@@ -538,7 +555,7 @@ async function track_changes (req) {
|
|
|
538
555
|
[ target, entityKey ] = await _prepareChangeLogForComposition(target, entityKey, changes, reqInfo)
|
|
539
556
|
}
|
|
540
557
|
const dbEntity = getDBEntity(target)
|
|
541
|
-
|
|
558
|
+
return {
|
|
542
559
|
entity: dbEntity.name,
|
|
543
560
|
entityKey: entityKey,
|
|
544
561
|
serviceEntity: target.name || target,
|
|
@@ -547,7 +564,7 @@ async function track_changes (req) {
|
|
|
547
564
|
valueChangedFrom: `${c.valueChangedFrom ?? ''}`,
|
|
548
565
|
valueChangedTo: `${c.valueChangedTo ?? ''}`,
|
|
549
566
|
})),
|
|
550
|
-
}
|
|
567
|
+
};
|
|
551
568
|
}
|
|
552
569
|
|
|
553
570
|
module.exports = { track_changes, _afterReadChangeView }
|
package/lib/entity-helper.js
CHANGED
|
@@ -37,7 +37,7 @@ const getCurObjFromDbQuery = async function (entityName, queryVal, /**optional*/
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
const getCurObjFromReqData = function (reqData, nodePathVal, pathVal) {
|
|
40
|
-
const pathVals = pathVal
|
|
40
|
+
const pathVals = splitPath(pathVal);
|
|
41
41
|
const rootNodePathVal = pathVals[0]
|
|
42
42
|
let curReqObj = reqData || {}
|
|
43
43
|
|
|
@@ -183,6 +183,25 @@ const _getCompositionObjFromReq = function (obj, targetID) {
|
|
|
183
183
|
return null;
|
|
184
184
|
};
|
|
185
185
|
|
|
186
|
+
function splitPath (path) {
|
|
187
|
+
let result = [];
|
|
188
|
+
let buf = "";
|
|
189
|
+
let paren = 0;
|
|
190
|
+
for (let i = 0; i < path.length; i++) {
|
|
191
|
+
const c = path[i];
|
|
192
|
+
if (c === "(") paren++;
|
|
193
|
+
if (c === ")") paren--;
|
|
194
|
+
if (c === "/" && paren === 0) {
|
|
195
|
+
result.push(buf);
|
|
196
|
+
buf = "";
|
|
197
|
+
} else {
|
|
198
|
+
buf += c;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
if (buf) result.push(buf);
|
|
202
|
+
return result;
|
|
203
|
+
}
|
|
204
|
+
|
|
186
205
|
module.exports = {
|
|
187
206
|
getCurObjFromReqData,
|
|
188
207
|
getCurObjFromDbQuery,
|
|
@@ -193,4 +212,5 @@ module.exports = {
|
|
|
193
212
|
getEntityByContextPath,
|
|
194
213
|
getObjIdElementNamesInArray,
|
|
195
214
|
getValueEntityType,
|
|
215
|
+
splitPath,
|
|
196
216
|
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
const formatOptions = {
|
|
2
|
+
'cds.Date': {
|
|
3
|
+
'de': { day: '2-digit', month: '2-digit', year: 'numeric' },
|
|
4
|
+
'en': { day: 'numeric', month: 'short', year: 'numeric' },
|
|
5
|
+
'es': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
6
|
+
'fi': { year: 'numeric', month: '2-digit', day: '2-digit' },
|
|
7
|
+
'fr': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
8
|
+
'it': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
9
|
+
'ja': { year: 'numeric', month: '2-digit', day: '2-digit' },
|
|
10
|
+
'pl': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
11
|
+
'pt': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
12
|
+
'ru': { day: '2-digit', month: 'short', year: 'numeric' },
|
|
13
|
+
'zh-CN': { year: 'numeric', month: 'long', day: 'numeric' }
|
|
14
|
+
},
|
|
15
|
+
'cds.DateTime': {
|
|
16
|
+
'de': { day: '2-digit', month: '2-digit', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
17
|
+
'el': { day: 'numeric', month: 'short', year: 'numeric',hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
18
|
+
'en': { day: 'numeric', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
19
|
+
'es': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
20
|
+
'es_MX': { day: '2-digit', month: 'short', year: 'numeric', hour: 'numeric', minute: '2-digit', second: '2-digit', hour12: true },
|
|
21
|
+
'fi': { year: 'numeric', month: '2-digit', day: '2-digit',hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
22
|
+
'fr': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
23
|
+
'it': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
24
|
+
'ja': { year: 'numeric', month: '2-digit', day: '2-digit',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
25
|
+
'pl': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
26
|
+
'pt': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
27
|
+
'ru': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
28
|
+
'zh-CN': { year: 'numeric', month: 'long', day: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' }
|
|
29
|
+
},
|
|
30
|
+
'cds.Timestamp': {
|
|
31
|
+
'cs': { day: 'numeric', month: 'short', year: 'numeric',hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
32
|
+
'de': { day: '2-digit', month: '2-digit', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
33
|
+
'el': { day: 'numeric', month: 'short', year: 'numeric',hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
34
|
+
'en': { day: 'numeric', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
35
|
+
'es': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
36
|
+
'es_MX': { day: '2-digit', month: 'short', year: 'numeric', hour: 'numeric', minute: '2-digit', second: '2-digit', hour12: true },
|
|
37
|
+
'fi': { year: 'numeric', month: '2-digit', day: '2-digit',hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
38
|
+
'fr': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
39
|
+
'it': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
40
|
+
'ja': { year: 'numeric', month: '2-digit', day: '2-digit',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
41
|
+
'pl': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
42
|
+
'pt': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
43
|
+
'ru': { day: '2-digit', month: 'short', year: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
44
|
+
'zh-CN': { year: 'numeric', month: 'long', day: 'numeric',hour: '2-digit', minute: '2-digit', second: '2-digit' }
|
|
45
|
+
},
|
|
46
|
+
'cds.Time': {
|
|
47
|
+
'cs': { hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
48
|
+
'fi': { hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
49
|
+
'de': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
50
|
+
'el': { hour: 'numeric', minute: '2-digit', second: '2-digit' },
|
|
51
|
+
'en': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
52
|
+
'es': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
53
|
+
'es_MX': { hour: 'numeric', minute: '2-digit', second: '2-digit', hour12: true },
|
|
54
|
+
'fr': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
55
|
+
'it': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
56
|
+
'ja': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
57
|
+
'pl': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
58
|
+
'pt': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
59
|
+
'ru': { hour: '2-digit', minute: '2-digit', second: '2-digit' },
|
|
60
|
+
'zh-CN': { hour: '2-digit', minute: '2-digit', second: '2-digit' }
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
module.exports = {
|
|
65
|
+
formatOptions
|
|
66
|
+
};
|