@sapui5/sap.suite.ui.generic.template 1.148.0 → 1.148.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/package.json +1 -1
- package/src/sap/suite/ui/generic/template/.library +1 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_fr_CA.properties +2 -2
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/Canvas/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr.properties +1 -1
- package/src/sap/suite/ui/generic/template/ListReport/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ObjectPage/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/Actions.fragment.xml +13 -13
- package/src/sap/suite/ui/generic/template/QuickCreate/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/QuickView/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/lib/AppComponent.js +1 -1
- package/src/sap/suite/ui/generic/template/lib/CommonEventHandlers.js +57 -6
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillAIOrchestrator.js +185 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillApplyHandler.js +476 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillDialogController.js +311 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillFieldCollector.js +669 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillFormRenderer.js +217 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillHandler.js +323 -1120
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/EasyFillTableRenderer.js +491 -0
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/fragments/EasyFillDialog.fragment.xml +14 -10
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n.properties +11 -8
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ar.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_bg.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ca.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cnr.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cs.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cy.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_da.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_de.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_el.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_GB.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saprigi.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es_MX.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_et.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +15 -1
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr_CA.properties +15 -1
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hi.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hr.properties +15 -1
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hu.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_id.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_it.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_iw.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ja.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_kk.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ko.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lt.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lv.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_mk.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ms.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +15 -1
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_no.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pl.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt_PT.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ro.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sh.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sk.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sl.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sr.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sv.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_th.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_tr.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_uk.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_vi.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_CN.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_TW.properties +14 -0
- package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +1 -1
- package/src/sap/suite/ui/generic/template/library.js +1 -1
- package/src/sap/suite/ui/generic/template/themes/base/ObjectPage.less +8 -3
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/ObjectPageSectionHandler.js +0 -282
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/fragments/EasyFillNonUpdatableSmartForm.fragment.xml +0 -18
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFill/fragments/EasyFillUpdatebleSmartForm.fragment.xml +0 -15
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Criado com IA
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Feedback enviado
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Eliminar consulta
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Foram detetadas atualiza\u00E7\u00F5es de linha e ser\u00E3o aplicadas quando confirmar.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Anterior
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Novo
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Linha {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Alguns valores de tabela s\u00E3o inv\u00E1lidos para a ajuda de valores\: {0}. Atualize o seu pedido e tente novamente.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(inv\u00E1lido)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Cabe\u00E7alho
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Creat cu AI
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Feedback expediat
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u0218tergere query
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Actualiz\u0103ri ale liniilor de tabel au fost detectate \u0219i vor fi aplicate c\u00E2nd confirma\u021Bi.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Anterior
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Nou
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Linia {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Unele valori de tabel sunt nevalabile pentru ajutorul de intrare\: {0}. Actualiza\u021Bi cererea dvs. \u0219i \u00EEncerca\u021Bi din nou.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(nevalabil)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Antet
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u0421\u043E\u0437\u0434\u0430\u043D\u043E \u043F\u04
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u041E\u0442\u0437\u044B\u0432 \u043E\u0442\u043F\u0440\u0430\u0432\u043B\u0435\u043D
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0437\u0430\u043F\u0440\u043E\u0441
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u041E\u0431\u043D\u0430\u0440\u0443\u0436\u0435\u043D\u044B \u043E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u044F \u0441\u0442\u0440\u043E\u043A \u0442\u0430\u0431\u043B\u0438\u0446\u044B, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0431\u0443\u0434\u0443\u0442 \u043F\u0440\u0438\u043C\u0435\u043D\u0435\u043D\u044B \u043F\u043E\u0441\u043B\u0435 \u0432\u0430\u0448\u0435\u0433\u043E \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u041D\u0430\u0437\u0430\u0434
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u041D\u043E\u0432\u044B\u0439
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u0421\u0442\u0440\u043E\u043A\u0430 {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u041D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0442\u0430\u0431\u043B\u0438\u0446\u044B \u043D\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u044B \u0434\u043B\u044F \u0441\u043F\u0440\u0430\u0432\u043A\u0438 \u043F\u043E \u0432\u0432\u043E\u0434\u0443\: {0}. \u041E\u0431\u043D\u043E\u0432\u0438\u0442\u0435 \u0437\u0430\u043F\u0440\u043E\u0441 \u0438 \u043F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043F\u043E\u043F\u044B\u0442\u043A\u0443.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(\u043D\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u043E)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Kreirano pomo\u0107u ve\u0161ta\u010Dke inteligencije
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Povratne informacije su poslate
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Izbri\u0161i upit
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Otkrivena su a\u017Euriranja reda tabele i bi\u0107e primenjena nakon va\u0161e potvrde.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Prethodno
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Novo
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Red {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Neke vrednosti tabele su neva\u017Ee\u0107e za pomo\u0107 pri unosu\: {0}. A\u017Eurirajte zahtev i poku\u0161ajte ponovo.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(neva\u017Ee\u0107e)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Zaglavlje
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Vytvoren\u00E9 pomocou Al
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Sp\u00E4tn\u00E1 v\u00E4zba odoslan\u00E1
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Odstr\u00E1ni\u0165 dotaz
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Boli zisten\u00E9 aktualiz\u00E1cie riadkov tabu\u013Eky a pou\u017Eij\u00FA sa pri potvrden\u00ED.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Predch\u00E1dzaj\u00FAce
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Nov\u00E9
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Riadok {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Niektor\u00E9 hodnoty tabu\u013Eky s\u00FA neplatn\u00E9 pre n\u00E1pove\u010F zad\u00E1vania\: {0}. Aktualizujte svoju po\u017Eiadavku a sk\u00FAste to znova.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(neplat\u00ED)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Hlavi\u010Dka
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Ustvarjeno z umetno inteligenco
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Povratne informacije so poslane
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Izbri\u0161i poizvedbo
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Posodobitve vrstic tabele so zaznane in bodo uporabljene, ko potrdite.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Nazaj
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Novo
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Vrstica {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Nekatere vrednosti tabele niso veljavne za pomo\u010D pri vnosu\: {0}. Posodobite zahtevo in poskusite znova.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(neveljavno)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Glava
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u041A\u0440\u0435\u0438\u0440\u0430\u043D\u043E \u04
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u041F\u043E\u0432\u0440\u0430\u0442\u043D\u0435 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0458\u0435 \u0441\u0443 \u043F\u043E\u0441\u043B\u0430\u0442\u0435
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u0418\u0437\u0431\u0440\u0438\u0448\u0438 \u0443\u043F\u0438\u0442
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u041E\u0442\u043A\u0440\u0438\u0432\u0435\u043D\u0430 \u0441\u0443 \u0430\u0436\u0443\u0440\u0438\u0440\u0430\u045A\u0430 \u0440\u0435\u0434\u0430 \u0442\u0430\u0431\u0435\u043B\u0435 \u0438 \u0431\u0438\u045B\u0435 \u043F\u0440\u0438\u043C\u0435\u045A\u0435\u043D\u0430 \u043D\u0430\u043A\u043E\u043D \u0432\u0430\u0448\u0435 \u043F\u043E\u0442\u0432\u0440\u0434\u0435.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u041F\u0440\u0435\u0442\u0445\u043E\u0434\u043D\u043E
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u041D\u043E\u0432\u043E
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u0420\u0435\u0434 {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u041D\u0435\u043A\u0435 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0438 \u0442\u0430\u0431\u0435\u043B\u0435 \u0441\u0443 \u043D\u0435\u0432\u0430\u0436\u0435\u045B\u0435 \u0437\u0430 \u043F\u043E\u043C\u043E\u045B \u043F\u0440\u0438 \u0443\u043D\u043E\u0441\u0443\: {0}. \u0410\u0436\u0443\u0440\u0438\u0440\u0430\u0458\u0442\u0435 \u0437\u0430\u0445\u0442\u0435\u0432 \u0438 \u043F\u043E\u043A\u0443\u0448\u0430\u0458\u0442\u0435 \u043F\u043E\u043D\u043E\u0432\u043E.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(\u043D\u0435\u0432\u0430\u0436\u0435\u045B\u0435)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u0417\u0430\u0433\u043B\u0430\u0432\u0459\u0435
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Skapat med AI
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Feedback har skickats
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Radera fr\u00E5ga
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Uppdateringar av tabellrader uppt\u00E4cktes och till\u00E4mpas n\u00E4r du bekr\u00E4ftar.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=F\u00F6reg\u00E5ende
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Nytt
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Rad {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=N\u00E5gra tabellv\u00E4rden \u00E4r ogiltiga f\u00F6r F4-hj\u00E4lp\: {0}. Uppdatera din beg\u00E4ran och f\u00F6rs\u00F6k igen.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(ogiltigt)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Huvud
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u0E2A\u0E23\u0E49\u0E32\u0E07\u0E14\u0E49\u0E27\u0E2
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u0E2A\u0E48\u0E07\u0E02\u0E49\u0E2D\u0E40\u0E2A\u0E19\u0E2D\u0E41\u0E19\u0E30\u0E41\u0E25\u0E49\u0E27
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u0E25\u0E1A\u0E04\u0E34\u0E27\u0E23\u0E35
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u0E15\u0E23\u0E27\u0E08\u0E1E\u0E1A\u0E01\u0E32\u0E23\u0E2D\u0E31\u0E1E\u0E40\u0E14\u0E17\u0E41\u0E16\u0E27\u0E15\u0E32\u0E23\u0E32\u0E07 \u0E41\u0E25\u0E30\u0E08\u0E30\u0E16\u0E39\u0E01\u0E19\u0E33\u0E44\u0E1B\u0E43\u0E0A\u0E49\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E04\u0E38\u0E13\u0E22\u0E37\u0E19\u0E22\u0E31\u0E19
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u0E01\u0E48\u0E2D\u0E19\u0E2B\u0E19\u0E49\u0E32
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u0E2A\u0E23\u0E49\u0E32\u0E07
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u0E41\u0E16\u0E27 {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u0E04\u0E48\u0E32\u0E43\u0E19\u0E15\u0E32\u0E23\u0E32\u0E07\u0E1A\u0E32\u0E07\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A\u0E15\u0E31\u0E27\u0E0A\u0E48\u0E27\u0E22\u0E01\u0E32\u0E23\u0E1B\u0E49\u0E2D\u0E19\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\: {0} \u0E2D\u0E31\u0E1E\u0E40\u0E14\u0E17\u0E04\u0E33\u0E02\u0E2D\u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13\u0E41\u0E25\u0E49\u0E27\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u0E2A\u0E48\u0E27\u0E19\u0E2B\u0E31\u0E27
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=Yapay zeka ile olu\u015Fturuldu
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=Geri bildirim g\u00F6nderildi
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=Sorguyu sil
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=Tablo sat\u0131r\u0131 g\u00FCncellemeleri alg\u0131land\u0131 ve teyit etti\u011Finizde uygulanacak.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u00D6nceki
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=Yeni
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=Sat\u0131r {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=Giri\u015F yard\u0131m\u0131 i\u00E7in baz\u0131 tablo de\u011Ferleri ge\u00E7ersiz\: {0}. Talebinizi g\u00FCncelleyin ve tekrar deneyin.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(ge\u00E7ersiz)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Ba\u015Fl\u0131k
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u0421\u0442\u0432\u043E\u0440\u0435\u043D\u043E \u04
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u0412\u0456\u0434\u0433\u0443\u043A \u043D\u0430\u0434\u0456\u0441\u043B\u0430\u043D\u043E
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u0412\u0438\u0434\u0430\u043B\u0438\u0442\u0438 \u0437\u0430\u043F\u0438\u0442
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u0412\u0438\u044F\u0432\u043B\u0435\u043D\u043E \u043E\u043D\u043E\u0432\u043B\u0435\u043D\u043D\u044F \u0440\u044F\u0434\u043A\u0456\u0432 \u0442\u0430\u0431\u043B\u0438\u0446\u0456, \u044F\u043A\u0456 \u0431\u0443\u0434\u0435 \u0437\u0430\u0441\u0442\u043E\u0441\u043E\u0432\u0430\u043D\u043E \u043F\u0456\u0441\u043B\u044F \u043F\u0456\u0434\u0442\u0432\u0435\u0440\u0434\u0436\u0435\u043D\u043D\u044F.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u041D\u0430\u0437\u0430\u0434
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u041D\u043E\u0432\u0435
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u0420\u044F\u0434\u043E\u043A {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u0414\u0435\u044F\u043A\u0456 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0442\u0430\u0431\u043B\u0438\u0446\u0456 \u043D\u0435\u0434\u0456\u0439\u0441\u043D\u0456 \u0434\u043B\u044F \u0434\u043E\u0432\u0456\u0434\u043A\u0438 \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F\: {0}. \u041E\u043D\u043E\u0432\u0456\u0442\u044C \u0441\u0432\u0456\u0439 \u0437\u0430\u043F\u0438\u0442 \u0456 \u043F\u043E\u0432\u0442\u043E\u0440\u0456\u0442\u044C \u0441\u043F\u0440\u043E\u0431\u0443.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(\u043D\u0435\u0434\u0456\u0439\u0441\u043D\u043E)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u0412\u0435\u0440\u0445\u043D\u0456\u0439 \u043A\u043E\u043B\u043E\u043D\u0442\u0438\u0442\u0443\u043B
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u0110\u01B0\u1EE3c t\u1EA1o b\u1EB1ng AI
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u0110\u00E3 g\u1EEDi ph\u1EA3n h\u1ED3i
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=X\u00F3a truy v\u1EA5n
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=C\u1EADp nh\u1EADt ha\u0300ng ba\u0309ng \u0111a\u0303 \u0111\u01B0\u01A1\u0323c pha\u0301t hi\u1EC7n va\u0300 se\u0303 \u0111\u01B0\u01A1\u0323c a\u0301p du\u0323ng khi ba\u0323n xa\u0301c nh\u1EADn.
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=Tr\u01B0\u01A1\u0301c
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=M\u1EDBi
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=H\u00E0ng {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=M\u1ED9t s\u00F4\u0301 gia\u0301 tri\u0323 ba\u0309ng kh\u00F4ng h\u01A1\u0323p l\u1EC7 cho chi\u0309 d\u00E2\u0303n nh\u1EADp\: {0}. C\u1EADp nh\u1EADt y\u00EAu c\u1EA7u c\u1EE7a b\u1EA1n v\u00E0 th\u1EED l\u1EA1i.
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(kh\u00F4ng h\u01A1\u0323p l\u1EC7)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=Ti\u00EAu \u0111\u00EA\u0300
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u4F7F\u7528 AI \u521B\u5EFA
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u53CD\u9988\u5DF2\u53D1\u9001
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u5220\u9664\u67E5\u8BE2
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u68C0\u6D4B\u5230\u8868\u884C\u66F4\u65B0\uFF0C\u5C06\u5728\u786E\u8BA4\u65F6\u4E88\u4EE5\u5E94\u7528\u3002
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u5148\u524D
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u65B0
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u884C {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u67D0\u4E9B\u8868\u503C\u5BF9\u503C\u5E2E\u52A9\u65E0\u6548\uFF1A{0}\u3002\u66F4\u65B0\u8BF7\u6C42\u5E76\u91CD\u8BD5\u3002
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=\uFF08\u65E0\u6548\uFF09
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u62AC\u5934
|
|
@@ -543,3 +543,17 @@ EASY_FILL_POPOVER_AI_TITLE=\u5DF2\u4F7F\u7528 AI \u5EFA\u7ACB
|
|
|
543
543
|
EASYFILL_RESULT_FEEDBACK=\u5DF2\u50B3\u9001\u53CD\u994B
|
|
544
544
|
|
|
545
545
|
EASYFILL_CLEAR_ALL=\u522A\u9664\u67E5\u8A62
|
|
546
|
+
|
|
547
|
+
EASY_FILL_TABLE_UPDATES_INFO=\u5DF2\u5075\u6E2C\u5230\u8868\u683C\u5217\u66F4\u65B0\uFF0C\u7576\u60A8\u78BA\u8A8D\u5F8C\u5C07\u6703\u5957\u7528\u3002
|
|
548
|
+
|
|
549
|
+
EASY_FILL_TABLE_VIEW_PREVIOUS=\u4E0A\u4E00\u500B
|
|
550
|
+
|
|
551
|
+
EASY_FILL_TABLE_VIEW_NEW=\u65B0\u589E
|
|
552
|
+
|
|
553
|
+
EASY_FILL_TABLE_ROW_LABEL=\u5217 {0}
|
|
554
|
+
|
|
555
|
+
EASY_FILL_TABLE_VALIDATION_MESSAGE=\u90E8\u4EFD\u8868\u683C\u503C\u4E0D\u9069\u7528\u65BC\u8F38\u5165\u8F14\u52A9\u8AAA\u660E\uFF1A{0}\u3002\u8ACB\u66F4\u65B0\u8ACB\u6C42\u4E26\u518D\u8A66\u4E00\u6B21\u3002
|
|
556
|
+
|
|
557
|
+
EASY_FILL_TABLE_INVALID_CELL_SUFFIX=(\u7121\u6548)
|
|
558
|
+
|
|
559
|
+
EASY_FILL_SECTION_HEADER=\u8868\u982D
|
|
@@ -3222,7 +3222,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
3222
3222
|
* @param {sap.suite.ui.generic.template.lib.AppComponent} oAppComponent The AppComponent instance
|
|
3223
3223
|
* @public
|
|
3224
3224
|
* @extends sap.ui.base.Object
|
|
3225
|
-
* @version 1.148.
|
|
3225
|
+
* @version 1.148.1
|
|
3226
3226
|
* @since 1.30.0
|
|
3227
3227
|
* @alias sap.suite.ui.generic.template.lib.NavigationController
|
|
3228
3228
|
*/
|
|
@@ -413,7 +413,7 @@ html[dir='rtl'] .sapSmartTemplatesObjectPage .sapSmartTemplatesObjectPageSubSect
|
|
|
413
413
|
|
|
414
414
|
.sapSmartTemplatesObjectPageEasyFillReviewArea {
|
|
415
415
|
background-color: var(--sapShell_Background);
|
|
416
|
-
|
|
416
|
+
height: 100%;
|
|
417
417
|
|
|
418
418
|
.sapSmartTemplatesObjectPageEasyFillReviewAreaTitleUpdatable {
|
|
419
419
|
bottom: 1.5rem;
|
|
@@ -467,9 +467,14 @@ html[dir='rtl'] .sapSmartTemplatesObjectPage .sapSmartTemplatesObjectPageSubSect
|
|
|
467
467
|
}
|
|
468
468
|
|
|
469
469
|
.sapSmartTemplatesObjectPageEasyFillAINoticePopover {
|
|
470
|
-
width: 22.8125rem;
|
|
471
|
-
|
|
472
470
|
.sapSmartTemplatesObjectPageEasyFillAINotice {
|
|
473
471
|
padding: 1rem 1rem 0.5rem 1rem;
|
|
474
472
|
}
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
.sapUxAPObjectPageHeaderContent .sapUxAPObjectPageHeaderContentItem {
|
|
476
|
+
line-height: 2rem;
|
|
477
|
+
.sapMBtn {
|
|
478
|
+
padding-top: 0px;
|
|
479
|
+
}
|
|
475
480
|
}
|
|
@@ -1,282 +0,0 @@
|
|
|
1
|
-
sap.ui.define([
|
|
2
|
-
],function(){
|
|
3
|
-
"use strict";
|
|
4
|
-
/**
|
|
5
|
-
* This class extracts the what sections are present according to the property from the manifest and EntityType and show it in objectpage
|
|
6
|
-
* Currently it only supports the default annotations from the ObjectPage, In future we should make sure to add Custom Sections and Reusable Components to integrate in it
|
|
7
|
-
* @namespace suite.ui.generic.template.lib.ai.EasyFill.ObjectPageSectionHandler.js
|
|
8
|
-
* @private
|
|
9
|
-
*/
|
|
10
|
-
return {
|
|
11
|
-
getSectionsForObjectPageView: function (oEntityType,oLLMResult,oRb) {
|
|
12
|
-
let aSections = [];
|
|
13
|
-
//Extract the Header Information,Section and SubObject table information
|
|
14
|
-
aSections = aSections.concat(this.getSectionsForHeader(oEntityType,oRb))
|
|
15
|
-
.concat(this.getSectionsForObjectPageFacets(oEntityType));
|
|
16
|
-
const aTree = this.transformToTree(aSections,oEntityType);
|
|
17
|
-
// return aTree;
|
|
18
|
-
return this.filterTreeByLLMResult(aTree,oLLMResult);
|
|
19
|
-
},
|
|
20
|
-
|
|
21
|
-
getSectionsForCondensedView: function (oLLMResult) {
|
|
22
|
-
return this.transformToTreeExpanded(oLLMResult);
|
|
23
|
-
},
|
|
24
|
-
|
|
25
|
-
getSectionsForObjectPageFacets: function (oEntityType) {
|
|
26
|
-
const aSectionFacets = oEntityType["com.sap.vocabularies.UI.v1.Facets"];
|
|
27
|
-
if (aSectionFacets && aSectionFacets.length > 0) {
|
|
28
|
-
return this.extractFacetInfoRecursively(oEntityType,aSectionFacets,[]);
|
|
29
|
-
}
|
|
30
|
-
return [];
|
|
31
|
-
},
|
|
32
|
-
|
|
33
|
-
//We have to write a recursive code, as there might be nested CollectionFacets
|
|
34
|
-
extractFacetInfoRecursively: function(oEntityType,aFacets,aTitle) {
|
|
35
|
-
let aRes = [];
|
|
36
|
-
aFacets.forEach((oFacet) => {
|
|
37
|
-
if (oFacet.RecordType === "com.sap.vocabularies.UI.v1.CollectionFacet") {
|
|
38
|
-
const aInnerFacets = oFacet.Facets;
|
|
39
|
-
if (aInnerFacets && aInnerFacets.length > 0) {
|
|
40
|
-
aRes = aRes.concat(this.extractFacetInfoRecursively(oEntityType,aInnerFacets,aTitle.concat(oFacet.Label.String ? oFacet.Label.String : [])));
|
|
41
|
-
}
|
|
42
|
-
} else {
|
|
43
|
-
aRes = aRes.concat(this.extractSectionInfoFromReferenceFacet(oEntityType,[oFacet],aTitle));
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
return aRes;
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
//For HeaderFacets we only have one section and the rest of the fields will be part of it, currently we are not supporting multiple subsections in the header
|
|
50
|
-
getSectionsForHeader: function (oEntityType,oRb) {
|
|
51
|
-
let aRes = [];
|
|
52
|
-
//Fetch the HeaderInfo and HeaderFacets, if not present return empty array, as we will not be able to find any section without it
|
|
53
|
-
const oHeaderInfo = oEntityType["com.sap.vocabularies.UI.v1.HeaderInfo"];
|
|
54
|
-
const aHeaderFacets = oEntityType["com.sap.vocabularies.UI.v1.HeaderFacets"];
|
|
55
|
-
|
|
56
|
-
if (oHeaderInfo && Object.keys(oHeaderInfo).length > 0) {
|
|
57
|
-
const aKeys = Object.keys(oHeaderInfo).filter(sKey => oHeaderInfo[sKey].RecordType === "com.sap.vocabularies.UI.v1.DataField");
|
|
58
|
-
aKeys?.forEach((sKey) => {
|
|
59
|
-
aRes.push({title:[oRb.getText("EASY_FILL_SECTION_HEADER"),oRb.getText("EASY_FILL_SECTION_HEADER")],property: oHeaderInfo[sKey].Value.Path});
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
if (aHeaderFacets && aHeaderFacets.length > 0) {
|
|
64
|
-
const aSection = this.extractSectionInfoFromReferenceFacet(oEntityType,aHeaderFacets);
|
|
65
|
-
aSection.forEach((oSection) => {
|
|
66
|
-
oSection.title = [oRb.getText("EASY_FILL_SECTION_HEADER"),oRb.getText("EASY_FILL_SECTION_HEADER")];
|
|
67
|
-
});
|
|
68
|
-
aRes.push(...aSection);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return aRes;
|
|
72
|
-
},
|
|
73
|
-
|
|
74
|
-
//Use it once you get the reference facets, if the sText is already known then we will give that as priority
|
|
75
|
-
extractSectionInfoFromReferenceFacet: function(oEntityType,aFacets,aText = []) {
|
|
76
|
-
// eslint-disable-next-line no-warning-comments
|
|
77
|
-
//TODO: Handle the LineItem Code here only and SemanticObjects for intentbased Navigation
|
|
78
|
-
const aRes = [];
|
|
79
|
-
aFacets.forEach((oFacet) => {
|
|
80
|
-
//We are skipping the IntentBased Navigation for now, as we will be handling it in a different way, as we need to check the SemanticObject and Action for it,
|
|
81
|
-
//so we will be doing it in a different method
|
|
82
|
-
if (oFacet.RecordType === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation") {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
const aTempText = [...aText];
|
|
87
|
-
const sAnnotationPath = oFacet.Target.AnnotationPath.substring(1);
|
|
88
|
-
const oAnnotation = oEntityType[sAnnotationPath];
|
|
89
|
-
let sTitle = null;
|
|
90
|
-
|
|
91
|
-
if (oFacet?.Label) {
|
|
92
|
-
sTitle = oFacet.Label.String;
|
|
93
|
-
} else if (oAnnotation?.Label) {
|
|
94
|
-
sTitle = oAnnotation.Label.String;
|
|
95
|
-
} else if (oFacet?.Title) {
|
|
96
|
-
sTitle = oFacet.Title.String;
|
|
97
|
-
} else if (oAnnotation?.Title) {
|
|
98
|
-
sTitle = oAnnotation.Title.String;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
// if (oFacet.Label) {
|
|
103
|
-
// sTitle = oFacet.Label.String;
|
|
104
|
-
// } else if (oFacet.Title) {
|
|
105
|
-
// sTitle = oFacet.Title.String;
|
|
106
|
-
// }
|
|
107
|
-
|
|
108
|
-
if (sTitle) {
|
|
109
|
-
aTempText.push(sTitle);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
if (oAnnotation) {
|
|
113
|
-
if (oAnnotation.Data) {
|
|
114
|
-
oAnnotation.Data.forEach((oData) => {
|
|
115
|
-
if (!this.isSupportedRecordType(oData.RecordType)) {
|
|
116
|
-
return;
|
|
117
|
-
}
|
|
118
|
-
aRes.push({title:aTempText,property:oData.Value.Path});
|
|
119
|
-
});
|
|
120
|
-
} else if (Array.isArray(oAnnotation)) {
|
|
121
|
-
const aArray = oAnnotation;
|
|
122
|
-
aArray.forEach((oAnno) => {
|
|
123
|
-
if (!this.isSupportedRecordType(oAnno.RecordType)) {
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
aRes.push({title:aTempText,property:oAnno.Value.Path});
|
|
127
|
-
});
|
|
128
|
-
} else if (oAnnotation.Value && oAnnotation.Value.Path) {
|
|
129
|
-
aRes.push({title:aTempText,property:oAnnotation.Value.Path});
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
return aRes;
|
|
134
|
-
},
|
|
135
|
-
|
|
136
|
-
//We have to support most of the below annotations in our future waves
|
|
137
|
-
isSupportedRecordType: function(sRecordType) {
|
|
138
|
-
if (sRecordType === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" || sRecordType === "com.sap.vocabularies.UI.v1.DataFieldForAnnotation"
|
|
139
|
-
|| sRecordType === "com.sap.vocabularies.UI.v1.DataFieldForAction"
|
|
140
|
-
) {
|
|
141
|
-
return false;
|
|
142
|
-
}
|
|
143
|
-
return true;
|
|
144
|
-
},
|
|
145
|
-
|
|
146
|
-
transformToTreeExpanded: function(oLLMRes) {
|
|
147
|
-
return [
|
|
148
|
-
{
|
|
149
|
-
title: "",
|
|
150
|
-
fields: [],
|
|
151
|
-
children: [{
|
|
152
|
-
title: "",
|
|
153
|
-
fields: Object.keys(oLLMRes),
|
|
154
|
-
id: this.generateId("", Object.keys(oLLMRes))
|
|
155
|
-
}]
|
|
156
|
-
}
|
|
157
|
-
];
|
|
158
|
-
},
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
transformToTree: function (data, oEntityType) {
|
|
162
|
-
const rootMap = {};
|
|
163
|
-
const seen = new Set();
|
|
164
|
-
const that = this;
|
|
165
|
-
|
|
166
|
-
data.forEach(({ title, property }) => {
|
|
167
|
-
if (seen.has(property)) {
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
|
-
seen.add(property);
|
|
171
|
-
|
|
172
|
-
let currentMap = rootMap;
|
|
173
|
-
let sTitlePath = "";
|
|
174
|
-
|
|
175
|
-
title.forEach((level, index) => {
|
|
176
|
-
const isLast = index === title.length - 1;
|
|
177
|
-
|
|
178
|
-
// Build cumulative title path: "Header_Header", "GeneralInformation_SalesOrdertotalamount"
|
|
179
|
-
sTitlePath = sTitlePath ? `${sTitlePath}_${level}` : level;
|
|
180
|
-
|
|
181
|
-
if (!currentMap[level]) {
|
|
182
|
-
currentMap[level] = {
|
|
183
|
-
title: level,
|
|
184
|
-
titlePath: sTitlePath, // ✅ Store full path for ID generation later
|
|
185
|
-
fields: [],
|
|
186
|
-
_childrenMap: {}
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
if (isLast) {
|
|
191
|
-
currentMap[level].fields.push(property);
|
|
192
|
-
} else {
|
|
193
|
-
currentMap = currentMap[level]._childrenMap;
|
|
194
|
-
}
|
|
195
|
-
});
|
|
196
|
-
});
|
|
197
|
-
|
|
198
|
-
// ID is generated here - after all fields are collected
|
|
199
|
-
function convertToArray(oMap) {
|
|
200
|
-
return Object.values(oMap).map((oNode) => ({
|
|
201
|
-
title: oNode.title,
|
|
202
|
-
id: that.generateId(oNode.titlePath, oNode.fields), // ✅ title path + fields combined
|
|
203
|
-
fields: oNode.fields,
|
|
204
|
-
children: oNode._childrenMap ? convertToArray(oNode._childrenMap) : []
|
|
205
|
-
}));
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
return convertToArray(rootMap);
|
|
209
|
-
},
|
|
210
|
-
|
|
211
|
-
generateId: function(sTitlePath, aFields) {
|
|
212
|
-
const sSanitizedTitle = sTitlePath
|
|
213
|
-
.replace(/\s+/g, "_")
|
|
214
|
-
.replace(/[^a-zA-Z0-9_]/g, "")
|
|
215
|
-
.toLowerCase();
|
|
216
|
-
|
|
217
|
-
// Join fields to make it unique per section content
|
|
218
|
-
const sFieldsPart = aFields
|
|
219
|
-
.join("_")
|
|
220
|
-
.replace(/[^a-zA-Z0-9_]/g, "")
|
|
221
|
-
.toLowerCase();
|
|
222
|
-
|
|
223
|
-
return "EasyFillSmartForm_" + sSanitizedTitle + (sFieldsPart ? "_" + sFieldsPart : "");
|
|
224
|
-
},
|
|
225
|
-
|
|
226
|
-
filterTreeByLLMResult: function(aTree, oLLMResult) {
|
|
227
|
-
const aRequestedKeys = Object.keys(oLLMResult);
|
|
228
|
-
const aMatchedKeys = new Set();
|
|
229
|
-
|
|
230
|
-
function generateId(sTitlePath, aFields) {
|
|
231
|
-
const sSanitizedTitle = sTitlePath
|
|
232
|
-
.replace(/\s+/g, "_")
|
|
233
|
-
.replace(/[^a-zA-Z0-9_]/g, "")
|
|
234
|
-
.toLowerCase();
|
|
235
|
-
const sFieldsPart = aFields
|
|
236
|
-
.join("_")
|
|
237
|
-
.replace(/[^a-zA-Z0-9_]/g, "")
|
|
238
|
-
.toLowerCase();
|
|
239
|
-
return "EasyFillSmartForm_" + sSanitizedTitle + (sFieldsPart ? "_" + sFieldsPart : "");
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
function filterNode(oNode, sParentPath) {
|
|
243
|
-
const sTitlePath = sParentPath ? `${sParentPath}_${oNode.title}` : oNode.title;
|
|
244
|
-
|
|
245
|
-
const aFilteredFields = oNode.fields.filter((sField) => {
|
|
246
|
-
if (aRequestedKeys.includes(sField)) {
|
|
247
|
-
aMatchedKeys.add(sField);
|
|
248
|
-
return true;
|
|
249
|
-
}
|
|
250
|
-
return false;
|
|
251
|
-
});
|
|
252
|
-
|
|
253
|
-
const aFilteredChildren = oNode.children
|
|
254
|
-
.map((oChild) => filterNode(oChild, sTitlePath))
|
|
255
|
-
.filter((oChild) => oChild.fields.length > 0 || oChild.children.length > 0);
|
|
256
|
-
|
|
257
|
-
return {
|
|
258
|
-
title: oNode.title,
|
|
259
|
-
id: generateId(sTitlePath, aFilteredFields), // ✅ Regenerate ID with filtered fields
|
|
260
|
-
fields: aFilteredFields,
|
|
261
|
-
children: aFilteredChildren
|
|
262
|
-
};
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
const aFilteredTree = aTree
|
|
266
|
-
.map((oNode) => filterNode(oNode, ""))
|
|
267
|
-
.filter((oNode) => oNode.fields.length > 0 || oNode.children.length > 0);
|
|
268
|
-
|
|
269
|
-
const aUnmatchedKeys = aRequestedKeys.filter((sKey) => !aMatchedKeys.has(sKey));
|
|
270
|
-
if (aUnmatchedKeys.length > 0) {
|
|
271
|
-
aFilteredTree.push({
|
|
272
|
-
title: "unableToFill",
|
|
273
|
-
id: generateId("unableToFill", aUnmatchedKeys),
|
|
274
|
-
fields: aUnmatchedKeys,
|
|
275
|
-
children: []
|
|
276
|
-
});
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
return aFilteredTree;
|
|
280
|
-
}
|
|
281
|
-
};
|
|
282
|
-
});
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core" xmlns:sfo="sap.ui.comp.smartform" xmlns:smartField="sap.ui.comp.smartfield"
|
|
2
|
-
xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
|
|
3
|
-
template:require="{AH: 'sap/suite/ui/generic/template/js/AnnotationHelper'}">
|
|
4
|
-
<Title text="{i18n>EASY_FILL_UNABLE_FILL}" class="sapSmartTemplatesObjectPageEasyFillReviewAreaSmartFormNonUpdatableTitle"/>
|
|
5
|
-
<MessageStrip
|
|
6
|
-
text="{i18n>EASY_FILL_WARNING_MESSAGE}"
|
|
7
|
-
showIcon="true"
|
|
8
|
-
type="Warning">
|
|
9
|
-
</MessageStrip>
|
|
10
|
-
<sfo:SmartForm
|
|
11
|
-
id="EasyFillNonUpdatebleForm"
|
|
12
|
-
class = "sapSmartTemplatesObjectPageEasyFillReviewAreaSmartForm sapSmartTemplatesObjectPageEasyFillReviewAreaSmartFormNonUpdatable"
|
|
13
|
-
editable="false">
|
|
14
|
-
<sfo:layout>
|
|
15
|
-
<sfo:ColumnLayout columnsM="2" columnsL="3" columnsXL="4"/>
|
|
16
|
-
</sfo:layout>
|
|
17
|
-
</sfo:SmartForm>
|
|
18
|
-
</core:FragmentDefinition>
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core" xmlns:sfo="sap.ui.comp.smartform" xmlns:smartField="sap.ui.comp.smartfield"
|
|
2
|
-
xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
|
|
3
|
-
template:require="{AH: 'sap/suite/ui/generic/template/js/AnnotationHelper'}">
|
|
4
|
-
|
|
5
|
-
<Title class="sapSmartTemplatesObjectPageEasyFillReviewAreaTitleUpdatable" text="{i18n>EASY_FILL_FILLED_FIELDS}"></Title>
|
|
6
|
-
<sfo:SmartForm
|
|
7
|
-
id="EasyFillUpdatebleForm"
|
|
8
|
-
validationMode = "Async"
|
|
9
|
-
class="sapSmartTemplatesObjectPageEasyFillReviewAreaSmartForm"
|
|
10
|
-
editable="true">
|
|
11
|
-
<sfo:layout>
|
|
12
|
-
<sfo:ColumnLayout columnsM="2" columnsL="3" columnsXL="4"/>
|
|
13
|
-
</sfo:layout>
|
|
14
|
-
</sfo:SmartForm>
|
|
15
|
-
</core:FragmentDefinition>
|