@transai/connector-runner-mkg 0.7.1 → 0.7.3

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/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import*as l from"node:process";var v=class{constructor(r,e){this.#e="connector-runtime";this.init=()=>Promise.resolve();this.start=()=>Promise.resolve();this.stop=()=>Promise.resolve();this.#t=e,l.on?l.on("message",t=>{t.cmd===this.#e&&e.logger.verbose(`${l.pid} Received message from parent process:`,t)}):e.logger.warn("IPC channel is not available. process.on is undefined."),l.send||e.logger.warn("IPC channel is not available. process.send is undefined."),r.actions?.forEach(t=>{if(t.config.templates===void 0)return;let i={};Object.entries(t.config.templates).forEach(([n,d])=>{try{i[n]=e.templating.compile(d)}catch(p){e.logger.error(`Error compiling template ${n} for action ${t.identifier}`,p)}}),t.config.parsedTemplates=i})}#e;#t;set callbackFunction(r){this.connectorSDK.receiver.registerCallback(this.#r(r))}get connectorSDK(){return this.#t}#r(r){return async e=>{let t=await this.#t.receiver.getActionConfig(e);return t?r(e,t):this.#t.receiver.responses.badRequest("Action not found")(e)}}};var A="mkg",E=3600,j="RowKey",K="sys_dat_wijzig",C=250,h="JSESSIONID",S=1800*1e3;var _=class o{constructor(r,e=[]){this.identifier=r.identifier,this.fields=r.fields,this.immediate=r.immediate!==!1,this.interval=r.interval??(this.fields.length>0?E:0),this.identifierField=r.identifierField??j,this.dateField=r.dateField??K,this.rows=r.rows??C,this.actions=e.map(t=>t.withParentTable(this))}cloneFromTableConfig(r){return r===!0||r.fields===void 0?this:new o({...this,fields:this.fields.filter(e=>r.fields?.includes(e))})}action(r){return this.actions.find(e=>e.identifier===r)}};var D=new _({identifier:"artg",fields:["artg_num","artg_rela","artg_cred","artg_oms","artg_inkoopofferte"]});var I=new _({identifier:"arti",interval:300,fields:["arti_parameter_2","arti_prijs_vast_man","arti_seriegrootte","arti_vrij_memo_1","arti_bestellen","arti_btw_aanpasbaar","arti_vrij_datum_1","arti_eenh_uitgifte","arti_eenh_prijs_inkoop","arti_partij_per_1","arti_partij","arti_voorraad_waarde_mach","arti_parameter_4","arti_eenh_ontvangst","arti_prijs_vast_mat","arti_verh_tijd_aantal_grp","arti_voorraad_aantal","arti_bestel_freq_eenh","arti_vrij_datum_4","arti_eenh_vrk","arti_trans_eenh","arti_kosten_artikel","arti_verh_tijd_aantal_vrd","arti_verh_volume_aantal_grp","arti_memo_verkoop_intern","arti_verh_volume_aantal_vrd","arti_vrij_memo_2","arti_zoeknaam","arti_blok_verkoop","arti_verh_aantal_aantal_vrd","arti_actief","arti_bestelcode","arti_locatie","arti_prijs_netto_mat","arti_prijs_vast","arti_vrij_veld_1","arti_parameter_1","arti_vrij_datum_2","arti_gewicht_per_m","arti_memo_inkoop_extern","arti_inkoopofferte","arti_prijs_gemiddeld_mat","arti_dienst_verkoop","arti_oms_2","arti_levertijd_inkoop","arti_verh_tijd_eenh_grp","arti_prijs_netto_uitb","arti_oppervlakte","arti_voorraadsysteem","arti_kostprijssysteem","arti_niet_autores","arti_wvp_obv_gvp","arti_vrij_memo_5","arti_prijs_inkoop","arti_levertijd_productie","arti_verh_gewicht_aantal_grp","arti_verh_gewicht_eenh_grp","arti_vrij_veld_2","arti_prijs_gemiddeld_mach","arti_lijst_3","arti_verh_gewicht_aantal_vrd","arti_parameter_3","arti_lijst_1","arti_prijs_vast_mach","arti_vrij_veld_5","arti_ict_fact_verkoop","arti_verh_lengte_aantal_vrd","arti_backflush","arti_vrij_datum_3","arti_vrd_aanvullen_tot","arti_inkoop_artikel","arti_verh_rest_aantal_grp","arti_eenh_vrd","arti_prijs_vast_uitb","arti_trans_gewicht","arti_memo_inkoop_intern","arti_vrij_memo_3","arti_prijs_netto","arti_mat_lengte","arti_bestelhoeveelheid","arti_eenh_bestelling","arti_verh_oppv_eenh_grp","arti_voorraad_artikel","arti_backflush_uitval","arti_lijst_9","arti_vrij_datum_5","arti_verh_oppv_aantal_grp","arti_prijs_gemiddeld_uitb","arti_prijs_verkoop_eenm","arti_oms_3","arti_oms_1"]});var R=new _({identifier:"bwrg",fields:["bwrg_inkoopofferte","bwrg_memo","bwrg_oms","bwrg_num","bwrg_cred","bwrg_rela"]});var y=new _({identifier:"bwrk",interval:60,fields:["bwrk_bwrf_instellen","bwrk_oms","bwrk_rela","bwrk_inkoopofferte","bwrk_reden_vroeg_laat","bwrk_tarief_netto_instel","bwrk_actief","bwrk_num","bwrk_grbk_direct_verantw","bwrk_actief_pauze","bwrk_memo","bwrk_aanloop_type","bwrk_medw_ovz","bwrk_grbk_indirect_kosten_mach","bwrk_niet_op_uren_pc","bwrk_memo_instel","bwrk_afloop_tijd","bwrk_magl_uit","bwrk_wachttijd_voor","bwrk_magl_in","bwrk_wegingsfactor_nc","bwrk_rsrc_instellen","bwrk_vspt_bew","bwrk_afloop_perc","bwrk_rsrc_bew","bwrk_afloop_type","bwrk_tarief_netto_mach","bwrk_memo_extern","bwrk_specificeren","bwrk_afbeelding","bwrk_wachttijd_na","bwrk_uitb_prijs","bwrk_man_per_machine","bwrk_aanloop_perc","bwrk_insteltijd","bwrk_tarief_calc_mach","bwrk_uitb_dagen","bwrk_grbk_direct_verantw_mach","bwrk_start_type","bwrk_volgorde","bwrk_grbk_indirect_kosten","bwrk_uitbesteding","bwrk_uitb_prijs_eenh","bwrk_eenmalig","bwrk_vspt_instel","bwrk_vspt_uitb","bwrk_sf_start_gereed","bwrk_tarief_calc_instel","bwrk_onbemand","bwrk_grbk_indirect_verantw","bwrk_grbk_indirect_verantw_mach","bwrk_aanloop_tijd"]});var G=new _({identifier:"clch",interval:60,fields:["clch_volgnummer","clch_op_dek_uit","clch_op_calc_mat","clch_vofh_verk_num","clch_op_calc_mach","clch_vofh_dat_antwoord","clch_kostprijs_methode_bew","clch_op_calc_man","clch_vofr_oms_1","clch_vofh_dat_levering","clch_lengte","clch_vofh_ref_onze","clch_calc_methode_mat","clch_op_calc_uit","clch_memo","clch_vofh_proj","clch_vofr_order_aantal","clch_calc_methode_bew","clch_op_dek_man","clch_op_dek_mach","clch_oms_1","clch_files","clch_num","clch_op_dek_mat","clch_vofh_rela","clch_vofh_num","clch_oms_3","clch_vofh_dat_aanvraag","clch_vofh_ref_uw","clch_vofr_arti","clch_oms_2","clch_boekjaar_afh","clch_vofr_eenh_order","clch_fase_planning"]});var L=new _({identifier:"debi",fields:["debi_actief","debi_email","debi_vrij_datum_4","debi_pkbh_verz_type","debi_vrij_memo_3","debi_vrij_memo_4","debi_zoeknaam","debi_bic","debi_kredietlimiet2","debi_deellev","debi_fcth_verz_type","debi_plaats_bank","debi_dat_btw_verificatie","debi_vrij_datum_1","debi_naam","debi_btw","debi_peppol_id","debi_kvk_num","debi_vrij_memo_2","debi_fact_naam_2","debi_docs","debi_bet_wijze","debi_blok","debi_vrij_datum_5","debi_bankcode","debi_memo_extern","debi_naam_2","debi_rekening","debi_aantal_fact","debi_num","debi_vrij_veld_2","debi_status_btw_verificatie","debi_deelfact","debi_comm_opslag","debi_naam_btw_verificatie","debi_vrij_veld_3","debi_vrij_veld_4","debi_incasso","debi_vrij_memo_1","debi_vrij_memo_5","debi_max_regels_pakb","debi_vrij_datum_3","debi_iban","debi_max_regels_fact","debi_toon_opslagen","debi_memo_kredietbewaking","debi_kredietlimiet","debi_debi_fact","debi_vrij_veld_5","debi_vrij_datum_2","debi_btw_num","debi_fact_naam","debi_vrij_veld_1","debi_memo_intern","debi_adres_btw_verificatie"]});var x=new _({identifier:"magl",fields:["magl_memo","magl_oms_3","magl_shopfloor","magl_niet_autores","magl_oms_2","magl_code","magl_blok","magl_oms_1"]});var $=new _({identifier:"magz",fields:["magz_memo","magz_oms_1","magz_oms_2","magz_code","magz_oms_3","magz_niet_autores","magz_blok"]});var B=new _({identifier:"medw",fields:["medw_pensioenpremie_werkn","medw_spaarloon_rek","medw_betaling_per_bank","medw_premiesparen_naam","medw_ziekengeld_aanm","medw_betaling_per_rek_2","medw_auto_vd_zaak","medw_vrij_datum_5","medw_or","medw_premiesparen","medw_telefoon","medw_aanwezigheids_reg","medw_betaling_per_bank_naam","medw_postcode","medw_premiesparen_batch","medw_verschuiven","medw_onkosten","medw_pensioenpremie_werkg","medw_arbodienst_aanm","medw_lid_persver","medw_laatste_bwrk","medw_memo_contract","medw_premiesparen_iban","medw_vrij_datum_3","medw_nummer_2","medw_voornaam","medw_ziekengeld_afm","medw_mdrc","medw_spaarloon_bic","medw_spaarloon","medw_betaling_per_bank_oms_3","medw_spaarloon_iban","medw_prod_gereed_melden","medw_spaarloon_batch","medw_betaling_per_iban_2","medw_roepnaam","medw_vutpremie_werkg","medw_betaling_per_rek","medw_uren_per_dag","medw_plaats","medw_telefoon_2","medw_or_functie","medw_pensioenfonds","medw_schoenmaat","medw_naam_2","medw_spaarloon_oms1","medw_vutpremie","medw_ehbo","medw_vrij_datum_4","medw_email","medw_vrij_memo_1","medw_soort_contract","medw_vakantie_uren","medw_reiskosten","medw_vrij_veld_4","medw_waohiaat_werkg","medw_vrij_datum_2","medw_premiesparen_oms1","medw_salaris","medw_vrij_veld_3","medw_spaarloon_oms3","medw_planning","medw_raadplegen_uren","medw_spaarloon_naam","medw_vrij_veld_5","medw_ziekenfonds_aanm","medw_betaling_per_bank_2_naam","medw_partime_salaris","medw_premiesparen_oms2","medw_bedrijfsvereniging_afm","medw_betaling_per_bank_2_oms1","medw_betaling_per_bank_2","medw_betaling_per_bank_plaats","medw_tussenvoegsel","medw_instellen","medw_pensioenfonds_afm","medw_functietitel","medw_straat_2","medw_premiesparen_plaats","medw_betaling_per_bic_2","medw_betaling_per_kas_2","medw_betaling_per_bank_2_oms3","medw_premiesparen_oms3","medw_straat","medw_premiesparen_oms4","medw_dagen_per_week","medw_telefax","medw_afbeelding","medw_op_uren_pc","medw_direct_gereed"]});var a=class o{#e;constructor(r){this.identifier=r.identifier,this.method=r.method,this.fields=r.fields,this.optionalFields=r.optionalFields??[],this.path=r.path??(()=>this.#e.identifier)}withParentTable(r){let e=new o(this);return e.#e=r,e}fieldSet(r){let e=new Map;return this.fields.forEach(t=>{let i=r[t];if(!i)throw new Error(`Missing required field '${t}' for action '${this.identifier}'`);e.set(t,i)}),this.optionalFields.forEach(t=>{let i=r[t];i&&e.set(t,i)}),Object.fromEntries(e.entries())}};var re=new a({identifier:"move",method:"PUT",fields:["admi_num","part_num","magl_code","t_doel_magl","t_doel_aantal","RowKey"],path:()=>"parl/0/Service/s_partij_verplaatsen"}),z=new _({identifier:"parl",fields:[]},[re]);var te=new a({identifier:"create",method:"POST",fields:["prdh_num","prdr_num","bwrk_num","plnb_dat_start","plnb_tijd_start"]}),P=new _({identifier:"plnb",interval:60,fields:["plnb_num","prdh_num","bwrk_num","rsrc_num","medw_num","plnb_dat_start","plnb_tijd_start","plnb_wk_start","plnb_dat_eind","plnb_tijd_eind","plnb_wk_eind","plnb_dat_gestart","plnb_tijd_gestart","plnb_wk_gestart","plnb_gestart","plnb_gereed","plnb_aantal","plnb_aantal_grd","plnb_aantal_per_uur","plnb_bijloop_aantal","plnb_uitb_aantal","plnb_volgorde"]},[te]);var _e=new a({identifier:"create.prdh_prdr",method:"POST",fields:["bwrk_num","prbv_tijd_per_stuk"],path:o=>{let r=o.prdh_num;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");let e=o.prdr_num;if(!e)throw new Error("Missing required field 'prdr_num' for action 'create'");return`prdr/1+${r}+${e}/prdr_prbv`}}),O=new _({identifier:"prbv",fields:[]},[_e]);var ie=new a({identifier:"create",method:"POST",fields:["prdh_oms_1"]}),F=new _({identifier:"prdh",interval:60,fields:["prdh_op_dek_mat","prdh_op_dek_uit","prdh_oms_1","prdh_wk_order","prdh_memo_extern","prdh_wk_gepland","prdh_files","prdh_op_vcnc_uit","prdh_oms_2","prdh_memo_intern","prdh_dat_order","prdh_op_vcnc_man","prdh_op_vcnc_mat","prdh_op_vcnc_mach","prdh_op_dek_man","prdh_fase_planning","prdh_wk_planning","prdh_kostprijs_methode_bew","prdh_calc_methode_mat","prdh_image","prdh_dat_gepland","prdh_calc_methode_bew","prdh_historisch","prdh_oms_3","prdh_op_dek_mach","prdh_dat_planning","prdh_forecast","prdh_num"]},[ie]);var ne=new a({identifier:"create.prdh",method:"POST",fields:["prdr_oms_1","prdr_tot_aantal","prdr_id"],path:o=>{let r=o.prdh_num;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");return`prdh/${r}/prdh_eindproduct/`}}),N=new _({identifier:"prdr",fields:[]},[ne]);var oe=new a({identifier:"create.prdh_prdr",method:"POST",fields:["prmv_oms_1","cred_num"],path:o=>{let r=o.prdh_num;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");let e=o.prdr_num;if(!e)throw new Error("Missing required field 'prdr_num' for action 'create'");return`prdr/1+${r}+${e}/prdr_prmv`}}),U=new _({identifier:"prmv",fields:[]},[oe]);var H=new _({identifier:"rela",fields:["rela_vrij_datum_4","rela_naam","rela_vrij_datum_3","rela_vrij_datum_2","rela_postcode","rela_www","rela_vrij_datum_5","rela_vrij_datum_1","rela_vrij_veld_1","rela_email","rela_telefoon","rela_plaats","rela_moeder","rela_vrij_veld_3","rela_vrij_veld_5","rela_vrij_veld_2","rela_vrij_veld_4","rela_vrij_memo_1","rela_num","rela_resr","rela_memo","rela_vrij_memo_5","rela_naam_2","rela_zoeknaam","rela_vrij_memo_2","rela_plaats_2","rela_vrij_memo_3","rela_vrij_memo_4","rela_afbeelding","rela_files","rela_fax","rela_info","rela_actief"]});var q=new _({identifier:"rgrs",interval:60,fields:["abnk_bizcuit_id","aant_vraag_oms","abnk_oms","adon_code","adon_oms","adop_code","arti_code","bwrg_oms","bwrk_oms","cert_code","gebr_code","kbdp_oms","kltn_code","kstg_oms","land_code","magw_code","medw_betaling_per_bank_2_naam","medw_betaling_per_bank_naam","medw_naam","medw_premiesparen_naam","medw_spaarloon_naam","rela_naam","reld_oms","rsrc_oms","rsrg_oms","spco_code","strd_oms","t_bwrk_num_oms","t_bwrk_oms","t_oms","t_omschrijving","aanr_datum","aanr_num","aans_num","aant_num","abnk_num","adma_num","admi_num","afdl_num","agtn_num","apia_num","bank_num","bwrf_num","bwrg_num","bwrk_num","clcb_num","clch_num","clch_vofh_num","clch_vofh_verk_num","clcm_num","clcr_num","clct_num","cred_num","debi_num","dgbk_num","fcth_num","geac_num","ifch_num","inkg_num","iofh_num"]});var J=new _({identifier:"rsrc",interval:300,fields:["rsrc_fcst_eindige_cap","rsrc_oms","rsrc_memo","rsrc_volgorde","rsrc_magl_in","rsrc_onbemand","rsrc_num","rsrc_calc_eindige_cap","rsrc_magl_uit","rsrc_aantal","rsrc_calc_bucket","rsrc_eindige_cap","rsrc_fcst_bucket","rsrc_bucket","rsrc_afbeelding"]});var X=new _({identifier:"rsrd",interval:300,fields:["rsrd_zo_p2_van","rsrd_za_p2_tot","rsrd_do_p1_tot","rsrd_di_p5_tot","rsrd_zo_p5_tot","rsrd_do_p3_tot","rsrd_ma_p4_tot","rsrd_wo_p3_van","rsrd_zo_p1_van","rsrd_fd_p1_van","rsrd_do_p5_van","rsrd_wo_p2_tot","rsrd_za_van","rsrd_vr_p3_van","rsrd_za_p4_van","rsrd_ma_p5_tot","rsrd_fd_p3_van","rsrd_wo_tot","rsrd_vr_tot","rsrd_ma_p1_tot","rsrd_wo_p1_tot","rsrd_zo_p4_tot","rsrd_di_p4_tot","rsrd_ma_p3_van","rsrd_ma_p5_van","rsrd_di_tot","rsrd_fd_p4_van","rsrd_vr_van","rsrd_za_p3_tot","rsrd_za_p1_van","rsrd_zo_p5_van","rsrd_fd_p2_tot","rsrd_vr_p5_van","rsrd_di_p4_van","rsrd_za_p5_tot","rsrd_di_p3_van","rsrd_ma_p2_tot","rsrd_di_van","rsrd_do_p1_van","rsrd_zo_p3_tot","rsrd_vr_p5_tot","rsrd_zo_p1_tot","rsrd_ma_van","rsrd_do_tot","rsrd_wo_p2_van","rsrd_vr_p3_tot","rsrd_di_p1_van","rsrd_za_p5_van","rsrd_fd_p5_van","rsrd_vr_p4_tot","rsrd_wo_p3_tot","rsrd_fd_p1_tot","rsrd_fd_p3_tot","rsrd_ma_p4_van","rsrd_di_p3_tot","rsrd_zo_p4_van","rsrd_do_p4_tot","rsrd_do_van","rsrd_do_p3_van","rsrd_wo_p1_van","rsrd_za_p4_tot","rsrd_zo_van","rsrd_do_p2_tot","rsrd_vr_p2_van","rsrd_vr_p2_tot","rsrd_vr_p1_tot","rsrd_do_p5_tot","rsrd_wo_van","rsrd_zo_tot","rsrd_za_p2_van","rsrd_oms","rsrd_zo_p3_van","rsrd_fd_p2_van","rsrd_do_p4_van","rsrd_di_p2_tot","rsrd_za_p3_van","rsrd_wo_p4_van","rsrd_vr_p4_van","rsrd_wo_p4_tot","rsrd_num","rsrd_ma_tot","rsrd_ma_p1_van","rsrd_di_p5_van","rsrd_fd_p5_tot","rsrd_vr_p1_van","rsrd_di_p2_van","rsrd_do_p2_van","rsrd_wo_p5_van","rsrd_za_tot","rsrd_ma_p3_tot"]});var W=new _({identifier:"rsrg",fields:["rsrg_num","rsrg_memo","rsrg_oms"]});var V=new _({identifier:"stlh",interval:600,fields:["arti_code","stlh_teken","stlh_rev_lengte","stlh_bron","stlh_volgnummer","stlh_oms_2","stlh_oms_1","stlh_memo","stlh_revisie","stlh_rev_preview","stlh_actief","stlh_lengte","stlh_num","stlh_oms_3","stlh_files","stlh_prefix"]});var Y=new _({identifier:"stlm",interval:600,fields:["arti_code","stlm_rest_min","stlm_eenh","stlm_netto_prijs_uitb","stlm_lijst_9","stlm_oms_1","stlm_gewicht_netto","stlm_lijst_2","stlm_volume","stlm_tot_nettoprijs","stlm_oms_3","stlm_toegeleverd","stlm_netto_prijs_mat","stlm_plaat_magw","stlm_rest_hl","stlm_lijst_5","stlm_oppervlakte","stlm_num","stlm_parameter_2","stlm_parameter_1","stlm_gewicht_bruto","stlm_zaaglengte","stlm_revisie","stlm_lijst_4","stlm_eenh_nettoprijs","stlm_plaat_b","stlm_tekening","stlm_opspanlengte_hl","stlm_eenmalig","stlm_opspanlengte_pl","stlm_lijst_7","stlm_memo_extern","stlm_factor","stlm_parameter_3","stlm_aantal","stlm_gewicht_per_m","stlm_plaat_a","stlm_plaat_dx","stlm_behoefte_obv","stlm_netto_prijs_fictief","stlm_opspanlengte_hlzl","stlm_memo","stlm_io_aanvragen","stlm_opspanlengte","stlm_aantal_lengtes","stlm_volgorde","stlm_zaagsnede_lengte","stlm_lijst_8","stlm_netto_prijs_mach","stlm_pos","stlm_oms_2","stlm_eenh_bestel","stlm_netto_prijs_man","stlm_handelslengte","stlm_eigen_spec","stlm_cad","stlm_zaagsnede","stlm_netto_prijs","stlm_bestel_gezaagd","stlm_prijs_methode","stlm_rest_zl","stlm_parameter_5","stlm_plaat_dy","stlm_lijst_6","stlm_bestel_handelslengte","stlm_lengte","stlm_lijst_3","stlm_spec_prijs","stlm_lijst_1","stlm_files","stlm_parameter_4","stlm_plaat_k"]});var Z=new _({identifier:"stlr",interval:600,fields:["stlr_cad","stlr_parent_aantal","stlr_aantal","stlr_verh_oppv_aantal_grp","stlr_verh_gewicht_eenh_grp","stlr_verh_tijd_aantal_grp","stlr_verh_volume_aantal_grp","stlr_memo","stlr_stlr_herkomst","stlr_verh_aantal_eenh_grp","stlr_verh_gewicht_aantal_vrd","stlr_verh_aantal_aantal_vrd","stlr_seriegrootte","stlr_inherit_tekening","stlr_uitval","stlr_volgorde","stlr_eenmalig","stlr_oms_3","stlr_verh_volume_aantal_vrd","stlr_verh_tijd_aantal_vrd","stlr_files","stlr_oms_1","stlr_pos","stlr_verh_gewicht_aantal_grp","stlr_eindproduct_num","stlr_stlm_certificaat","stlr_verh_rest_aantal_vrd","stlr_niveau","stlr_tekening","stlr_verh_lengte_eenh_grp","stlr_prod_fase","stlr_revisie","stlr_verh_lengte_aantal_vrd","stlr_verh_volume_eenh_grp","stlr_verh_rest_aantal_grp","stlr_verh_oppv_eenh_grp","stlr_num","stlr_verh_tijd_eenh_grp","stlr_verwijzing","stlr_afronden_aant","stlr_verh_aantal_aantal_grp","stlr_oms_2","stlr_parent","stlr_verh_lengte_aantal_grp","stlr_verh_rest_eenh_grp","stlr_verw_stlh","stlr_stlh_herkomst","stlr_cad_revisie","stlr_verh_oppv_aantal_vrd","stlr_handlingstijd","stlr_tot_aantal","stlr_prod_aantal"]});var Q=new _({identifier:"vrdg",fields:["vrdg_grbk_pv_grd_uitb","vrdg_grbk_hw_grd_uitb","vrdg_grbk_grd_mat","vrdg_grbk_hw_grd_mat","vrdg_grbk_hw_grd_man","vrdg_grbk_vrd_mat","vrdg_grbk_hw_grd_mach","vrdg_grbk_grd_mach","vrdg_num","vrdg_grbk_pv_grd_mat","vrdg_grbk_kst_mach","vrdg_grbk_kst_mat","vrdg_grbk_pv_grd_mach","vrdg_grbk_kst_man","vrdg_grbk_kst_uitb","vrdg_oms","vrdg_grbk_grd_uitb","vrdg_grbk_pv_grd_man","vrdg_grbk_pv_vrd_mat","vrdg_grbk_grd_man"]});var ae=[H,L,B,I,J,X,W,$,x,V,Z,Y,F,y,R,G,Q,q,P,D,N,U,O,z],w=ae.reduce((o,r)=>(o[r.identifier]=r,o),{});var k=class{#e;#t;constructor(r,e){this.#e=r,this.#t=e}get callbackFunctionChain(){return this.#r(this.#e.receiver.emitEventType(this.#e.receiver.responses.created()))}#r(r){return async(e,t)=>{try{this.#e.logger.debug(`[MKG] Apply templates on payload: ${JSON.stringify(e.payload)}, action: ${JSON.stringify(t)}`);let i=t.config.parsedTemplates,n=i.action({inputs:e.payload}).trim(),d=i.params({inputs:e.payload}).trim(),p=JSON.parse(d);this.#e.logger.debug(`[MKG] Parsed action: ${n}, params json: ${JSON.stringify(p)}`);let[s,...b]=n.split("."),c=b.join("."),T=w[s];if(!T)return this.#e.logger.warn(`[MKG] Unknown table identifier "${s}" in message ${e.eventId}`),this.#e.receiver.responses.badRequest(`[MKG] Unknown table identifier "${s}"`)(e);let f=T.action(c);if(!f){let m=`[MKG] Unknown action identifier "${c}" within table "${s}" in message ${e.eventId}`;return this.#e.logger.warn(m),this.#e.receiver.responses.badRequest(m)(e)}if(e.testRun)return this.#e.logger.info(`[MKG] Test run for ${e.eventId} with payload ${d} to action ${n}`),r(e);try{let m=await this.#t.request(f.method,`/web/v3/MKG/Documents/${f.path(p)}`,{...["POST","PUT"].includes(f.method)?{data:{request:{InputData:{[s]:[f.fieldSet(p)]}}}}:{}});this.#e.logger.debug(`[MKG] Got action "${c}" of table "${s}" response from MKG: ${JSON.stringify(m)}`)}catch(m){let M=`[MKG] Failed to perform action "${c}" of table "${s}": (${m?.status}) ${m?.error??m?.message}`;return this.#e.logger.error(M),this.#e.receiver.responses.unprocessableEntity(M)(e)}return r(e)}catch(i){return this.#e.receiver.responses.internalServerError(i instanceof Error?i.message:"Unknown error occurred")(e)}}}};function g(o){let{config:r}=o;return`https://${r.server}:${r.port??443}/${(r.path??"/mkg").replace(/^\/+/,"")}`}var u=class{#e;#t;#r;#_;#i;constructor(r,e,t,i){this.#e=r,this.#t=e,this.#r=t,this.#_=i,this.#i=i.fields.join(",")}get name(){return`mkg-extractor-${this.#r}`}async onRun(){try{let r=new Date,e=await this.#e.offsetStore.getOffset(`offset_${this.#r}`),t=await this.#n(e);t.length>0&&await this.#e.sender.documents(t,{keyField:this.#_.identifierField,collection:`${this.#e.config.datasourceIdentifier??A}_${this.#r}`}),this.#e.logger.debug(`[MKG] Processed ${t.length} records from ${this.#r}`),this.#e.offsetStore.setOffset({id:String(t[t.length-1]?.[this.#_.identifierField]??e.id),timestamp:r.getTime(),rawTimestamp:r.toISOString()},`offset_${this.#r}`)}catch(r){throw this.#e.logger.error("[MKG] Failed to retrieve and process data from OPC UA source service",{error:r}),r}}#n=async r=>{let e=new URLSearchParams;e.set("NumRows",String(this.#_.rows)),r.id!==0&&e.set("Filter",`${this.#_.dateField}>=${r.rawTimestamp}`),e.set("FieldList",`${this.#_.dateField},${this.#i}`);try{let t=`/web/v3/MKG/Documents/${this.#r}`;this.#e.logger.verbose(`[MKG] Fetching data from '${g(this.#e)}${t}'...`);let n=(await this.#t.get(`${t}?${e.toString()}`)).data?.response?.ResultData?.[0]?.[this.#r]??[];return this.#e.logger.verbose(`[MKG] Fetched ${n.length} records from '${g(this.#e)}${t}'`),n}catch(t){let i=`[MKG] Failed to fetch data from table "${this.#r}": (${t?.status}) ${t?.error??t?.message}`;this.#e.logger.error(i)}return[]}};var ee=class extends v{constructor(e,t){super(e,t);this.init=async()=>{let{config:e}=this.connectorSDK;await this.#n(e.username,e.password).catch(t=>{throw this.connectorSDK.logger.error("[MKG] Error retrieving initial session cookie:",t),new Error("Failed to initialize connector due to authentication error.")}),Object.entries(e.tables??{}).forEach(([t,i])=>{let n=w[t];if(!n){this.connectorSDK.logger.warn(`[MKG] Unknown table identifier "${t}", skipping configuration.`);return}if(!n.interval||n.interval<=0){this.connectorSDK.logger.verbose(`[MKG] Table "${t}" does not have a valid interval configured, skipping registration.`);return}this.connectorSDK.processing.registerInterval(n.interval,new u(this.connectorSDK,this.#t,t,n.cloneFromTableConfig(i)),{immediate:n.immediate})})};this.#i=async e=>{let{config:t}=this.connectorSDK,i=await this.#n(t.username,t.password).catch(n=>{throw this.connectorSDK.logger.error("[MKG] Error retrieving session cookie:",n),n});return this.connectorSDK.logger.verbose(`[MKG] Using api headers: ${h}=${i} | X-CustomerID=${"*".repeat(t.apiToken.length)}`),{...e,headers:{...e?.headers??{},Cookie:`${h}=${i}`,"X-CustomerID":t.apiToken}}};let i=g(this.connectorSDK);this.#r=this.connectorSDK.httpClient({baseUrl:i}),this.#t=this.connectorSDK.httpClient({baseUrl:i}).setRequestOptionsFormatter(this.#i),this.#e=new k(this.connectorSDK,this.#t),this.callbackFunction=this.#e.callbackFunctionChain}#e;#t;#r;#_;#i;async#n(e,t){let i=this.#_;if(i&&i.expiresAt>Date.now())return i.token;let n="/static/auth/j_spring_security_check";this.connectorSDK.logger.verbose(`[MKG] Retrieving session cookie from '${g(this.connectorSDK)}${n}' with 'j_username=${encodeURIComponent(e)}&j_password=${"*".repeat(t.length)}'`);let d=await this.#r.post(n,`j_username=${encodeURIComponent(e)}&j_password=${encodeURIComponent(t)}`,{headers:{Accept:"application/json","Content-Type":"application/x-www-form-urlencoded"}});if(!d)throw new Error("Failed to authenticate and retrieve session cookie");let s=(d.headers?.["set-cookie"]??d.headers?.["Set-Cookie"]??[]).find(c=>c.startsWith(`${h}=`));if(!s)throw new Error("Session cookie not found in authentication response");let b=s.split(";")[0]?.substring(`${h}=`.length);return this.#_={token:b,expiresAt:Date.now()+S-1e3},this.connectorSDK.logger.debug(`[MKG] Session cookie fetched successfully for user '${e}', expires at ${new Date(this.#_.expiresAt).toISOString()}`),b}};export{ee as ConnectorRunnerMkg};
1
+ import*as f from"node:process";var w=class{constructor(r,e){this.#e="connector-runtime";this.init=()=>Promise.resolve();this.start=()=>Promise.resolve();this.stop=()=>Promise.resolve();this.#t=e,f.on?f.on("message",t=>{t.cmd===this.#e&&e.logger.verbose(`${f.pid} Received message from parent process:`,t)}):e.logger.warn("IPC channel is not available. process.on is undefined."),f.send||e.logger.warn("IPC channel is not available. process.send is undefined."),r.actions?.forEach(t=>{if(t.config.templates===void 0)return;let o={};Object.entries(t.config.templates).forEach(([i,_])=>{try{o[i]=e.templating.compile(_)}catch(d){e.logger.error(`Error compiling template ${i} for action ${t.identifier}`,d)}}),t.config.parsedTemplates=o})}#e;#t;set callbackFunction(r){this.connectorSDK.receiver.registerCallback(this.#r(r))}get connectorSDK(){return this.#t}#r(r){return async e=>{let t=await this.#t.receiver.getActionConfig(e);return t?r(e,t):this.#t.receiver.responses.badRequest("Action not found")(e)}}};var M="mkg",R=3600,E="RowKey",y="sys_dat_wijzig",K=250,v="JSESSIONID",C=1800*1e3;var n=class s{constructor(r,e=[]){this.identifier=r.identifier,this.fields=r.fields,this.immediate=r.immediate!==!1,this.interval=r.interval??(this.fields.length>0?R:0),this.identifierField=r.identifierField??E,this.dateField=r.dateField??y,this.rows=r.rows??K,this.actions=e.map(t=>t.withParentTable(this))}cloneFromTableConfig(r){return r===!0||r.fields===void 0?this:new s({...this,fields:[...this.fields,...r.fields].filter((e,t,o)=>o.indexOf(e)===t)})}action(r){return this.actions.find(e=>e.identifier===r)}};var S=new n({identifier:"artg",fields:["artg_num","artg_rela","artg_cred","artg_oms","artg_inkoopofferte"]});var D=new n({identifier:"arti",interval:300,fields:["arti_actief","arti_code","arti_revisie","arti_oms_1","arti_tekening","arti_stlh_num","debi_num"]});var G=new n({identifier:"bwrg",fields:["bwrg_inkoopofferte","bwrg_memo","bwrg_oms","bwrg_num","bwrg_cred","bwrg_rela"]});var I=new n({identifier:"bwrk",interval:60,fields:["bwrk_actief","bwrk_oms","bwrk_num","bwrk_rsrc_instellen","bwrk_rsrc_bew","bwrk_onbemand"]});var L=new n({identifier:"clch",interval:60,fields:["arti_code","clch_num","clch_oms_1","prdt_num","clch_vofh_proj"]});var x=new n({identifier:"clcr",interval:60,fields:["arti_code","clch_num","clcr_oms_1","clcr_tekening","clcr_niveau","clcr_num","clcr_parent","stlh_num","clcr_revisie"]});var F=new n({identifier:"cprs",interval:300,fields:["cprs_actief","cprs_num","cprs_email","cprs_voornaam","cprs_voorletters","cprs_naam","cprs_telefoon","rela_num"]});var $=new n({identifier:"debi",fields:["debi_actief","debi_num","debi_kvk_num","debi_naam","rela_num","debi_btw_num"]});var B=new n({identifier:"magl",fields:["magl_memo","magl_oms_3","magl_shopfloor","magl_niet_autores","magl_oms_2","magl_code","magl_blok","magl_oms_1"]});var O=new n({identifier:"magz",fields:["magz_memo","magz_oms_1","magz_oms_2","magz_code","magz_oms_3","magz_niet_autores","magz_blok"]});var j=new n({identifier:"medw",fields:["medw_pensioenpremie_werkn","medw_spaarloon_rek","medw_betaling_per_bank","medw_premiesparen_naam","medw_ziekengeld_aanm","medw_betaling_per_rek_2","medw_auto_vd_zaak","medw_vrij_datum_5","medw_or","medw_premiesparen","medw_telefoon","medw_aanwezigheids_reg","medw_betaling_per_bank_naam","medw_postcode","medw_premiesparen_batch","medw_verschuiven","medw_onkosten","medw_pensioenpremie_werkg","medw_arbodienst_aanm","medw_lid_persver","medw_laatste_bwrk","medw_memo_contract","medw_premiesparen_iban","medw_vrij_datum_3","medw_nummer_2","medw_voornaam","medw_ziekengeld_afm","medw_mdrc","medw_spaarloon_bic","medw_spaarloon","medw_betaling_per_bank_oms_3","medw_spaarloon_iban","medw_prod_gereed_melden","medw_spaarloon_batch","medw_betaling_per_iban_2","medw_roepnaam","medw_vutpremie_werkg","medw_betaling_per_rek","medw_uren_per_dag","medw_plaats","medw_telefoon_2","medw_or_functie","medw_pensioenfonds","medw_schoenmaat","medw_naam_2","medw_spaarloon_oms1","medw_vutpremie","medw_ehbo","medw_vrij_datum_4","medw_email","medw_vrij_memo_1","medw_soort_contract","medw_vakantie_uren","medw_reiskosten","medw_vrij_veld_4","medw_waohiaat_werkg","medw_vrij_datum_2","medw_premiesparen_oms1","medw_salaris","medw_vrij_veld_3","medw_spaarloon_oms3","medw_planning","medw_raadplegen_uren","medw_spaarloon_naam","medw_vrij_veld_5","medw_ziekenfonds_aanm","medw_betaling_per_bank_2_naam","medw_partime_salaris","medw_premiesparen_oms2","medw_bedrijfsvereniging_afm","medw_betaling_per_bank_2_oms1","medw_betaling_per_bank_2","medw_betaling_per_bank_plaats","medw_tussenvoegsel","medw_instellen","medw_pensioenfonds_afm","medw_functietitel","medw_straat_2","medw_premiesparen_plaats","medw_betaling_per_bic_2","medw_betaling_per_kas_2","medw_betaling_per_bank_2_oms3","medw_premiesparen_oms3","medw_straat","medw_premiesparen_oms4","medw_dagen_per_week","medw_telefax","medw_afbeelding","medw_op_uren_pc","medw_direct_gereed"]});function P(s,r,e){let t=N(e,r),o={};for(let i of s.response.ResultData)for(let[_,d]of Object.entries(i)){let l=t[_];if(l)for(let m of d)for(let[c,g]of Object.entries(m))l.includes(c)&&(o[c]=g)}return o}function z(s,r,e){let t=N(e,r),o={};for(let[i,_]of Object.entries(s.ResultData)){let d=t[i];if(d)for(let l of _)for(let[m,c]of Object.entries(l))d.includes(m)&&(o[m]=c)}return o}function N(s,r){let e={};return s.forEach(t=>{let[o,i]=t.split(".");o&&i?(e[o]||(e[o]=[]),e[o].push(i)):o&&(e[r]||(e[r]=[]),e[r].push(o))}),e}var a=class s{#e;constructor(r){this.identifier=r.identifier,this.method=r.method,this.fields=r.fields,this.optionalFields=r.optionalFields??[],this.responseFields=r.responseFields??[],this.path=r.path??this.defaultPathFormatter,this.response=r.response??P}withParentTable(r){let e=new s(this);return e.#e=r,e}fieldSet(r){let e=new Map;return this.fields.forEach(t=>{let o=r[t];if(!o)throw new Error(`Missing required field '${t}' for action '${this.identifier}'`);e.set(t,o)}),this.optionalFields.forEach(t=>{let o=r[t];o&&e.set(t,o)}),Object.fromEntries(e.entries())}formatResponse(r){return this.response(r,this.#e.identifier,this.responseFields)}defaultPathFormatter(){return this.#e.identifier}};var de=new a({identifier:"move",method:"PUT",fields:["admi_num","part_num","magl_code","t_doel_magl","t_doel_aantal","RowKey"],path:()=>"parl/0/Service/s_partij_verplaatsen"}),U=new n({identifier:"parl",fields:[]},[de]);var me=new a({identifier:"create",method:"POST",fields:["prdh_num","prdr_num","bwrk_num","plnb_dat_start","plnb_tijd_start"]}),H=new n({identifier:"plnb",interval:60,fields:["plnb_num","prdh_num","bwrk_num","rsrc_num","medw_num","plnb_dat_start","plnb_tijd_start","plnb_wk_start","plnb_dat_eind","plnb_tijd_eind","plnb_wk_eind","plnb_dat_gestart","plnb_tijd_gestart","plnb_wk_gestart","plnb_gestart","plnb_gereed","plnb_aantal","plnb_aantal_grd","plnb_aantal_per_uur","plnb_bijloop_aantal","plnb_uitb_aantal","plnb_volgorde"]},[me]);var le=new a({identifier:"create.prdh_prdr",method:"POST",fields:["bwrk_num","prbv_tijd_per_stuk"],path:s=>{let r=s.prdh_num;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");let e=s.prdr_num;if(!e)throw new Error("Missing required field 'prdr_num' for action 'create'");return`prdr/1+${r}+${e}/prdr_prbv`}}),q=new n({identifier:"prbv",fields:[]},[le]);var pe=new a({identifier:"create",method:"POST",fields:[],optionalFields:["prdh_oms_1","proj_num","prdh_dat_order","prdh_dat_planning"],responseFields:["prdh_num"]}),J=new n({identifier:"prdh",interval:300,fields:["prdh_num","prdh_forecast","prdh_historisch","prdh_dat_planning","prdh_dat_order","t_klant","proj_num","prdh_oms_1"]},[pe]);var ce=new a({identifier:"create-prdh-eindproduct",method:"POST",fields:["prdr_aantal","arti_code"],responseFields:["prdh_num","prdr_num"],path:s=>{let{prdh_num:r}=s;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");return`prdh/${r}/prdh_eindproduct/`}}),V=new n({identifier:"prdr",interval:300,fields:["prdh_num","prdr_num","prdr_aantal","arti_code","t_status_oms"]},[ce]);var ge=new a({identifier:"create.prdh_prdr",method:"POST",fields:["prmv_oms_1","cred_num"],path:s=>{let r=s.prdh_num;if(!r)throw new Error("Missing required field 'prdh_num' for action 'create'");let e=s.prdr_num;if(!e)throw new Error("Missing required field 'prdr_num' for action 'create'");return`prdr/1+${r}+${e}/prdr_prmv`}}),X=new n({identifier:"prmv",fields:[]},[ge]);var W=new n({identifier:"proj",interval:300,fields:["admi_num","RowTime","proj_oms","proj_historisch","proj_prdh","RowKey","proj_num","proj_vorh","proj_zoeknaam"]});var Y=new n({identifier:"rela",fields:["rela_num","rela_naam","rela_zoeknaam","rela_email","rela_actief","rela_plaats","rela_postcode","rela_www","rela_telefoon"]});var Z=new n({identifier:"rgrs",interval:60,fields:["abnk_bizcuit_id","aant_vraag_oms","abnk_oms","adon_code","adon_oms","adop_code","arti_code","bwrg_oms","bwrk_oms","cert_code","gebr_code","kbdp_oms","kltn_code","kstg_oms","land_code","magw_code","medw_betaling_per_bank_2_naam","medw_betaling_per_bank_naam","medw_naam","medw_premiesparen_naam","medw_spaarloon_naam","rela_naam","reld_oms","rsrc_oms","rsrg_oms","spco_code","strd_oms","t_bwrk_num_oms","t_bwrk_oms","t_oms","t_omschrijving","aanr_datum","aanr_num","aans_num","aant_num","abnk_num","adma_num","admi_num","afdl_num","agtn_num","apia_num","bank_num","bwrf_num","bwrg_num","bwrk_num","clcb_num","clch_num","clch_vofh_num","clch_vofh_verk_num","clcm_num","clcr_num","clct_num","cred_num","debi_num","dgbk_num","fcth_num","geac_num","ifch_num","inkg_num","iofh_num"]});var Q=new n({identifier:"rsrc",interval:300,fields:["rsrc_fcst_eindige_cap","rsrc_oms","rsrc_memo","rsrc_volgorde","rsrc_magl_in","rsrc_onbemand","rsrc_num","rsrc_calc_eindige_cap","rsrc_magl_uit","rsrc_aantal","rsrc_calc_bucket","rsrc_eindige_cap","rsrc_fcst_bucket","rsrc_bucket","rsrc_afbeelding"]});var ee=new n({identifier:"rsrd",interval:300,fields:["rsrd_zo_p2_van","rsrd_za_p2_tot","rsrd_do_p1_tot","rsrd_di_p5_tot","rsrd_zo_p5_tot","rsrd_do_p3_tot","rsrd_ma_p4_tot","rsrd_wo_p3_van","rsrd_zo_p1_van","rsrd_fd_p1_van","rsrd_do_p5_van","rsrd_wo_p2_tot","rsrd_za_van","rsrd_vr_p3_van","rsrd_za_p4_van","rsrd_ma_p5_tot","rsrd_fd_p3_van","rsrd_wo_tot","rsrd_vr_tot","rsrd_ma_p1_tot","rsrd_wo_p1_tot","rsrd_zo_p4_tot","rsrd_di_p4_tot","rsrd_ma_p3_van","rsrd_ma_p5_van","rsrd_di_tot","rsrd_fd_p4_van","rsrd_vr_van","rsrd_za_p3_tot","rsrd_za_p1_van","rsrd_zo_p5_van","rsrd_fd_p2_tot","rsrd_vr_p5_van","rsrd_di_p4_van","rsrd_za_p5_tot","rsrd_di_p3_van","rsrd_ma_p2_tot","rsrd_di_van","rsrd_do_p1_van","rsrd_zo_p3_tot","rsrd_vr_p5_tot","rsrd_zo_p1_tot","rsrd_ma_van","rsrd_do_tot","rsrd_wo_p2_van","rsrd_vr_p3_tot","rsrd_di_p1_van","rsrd_za_p5_van","rsrd_fd_p5_van","rsrd_vr_p4_tot","rsrd_wo_p3_tot","rsrd_fd_p1_tot","rsrd_fd_p3_tot","rsrd_ma_p4_van","rsrd_di_p3_tot","rsrd_zo_p4_van","rsrd_do_p4_tot","rsrd_do_van","rsrd_do_p3_van","rsrd_wo_p1_van","rsrd_za_p4_tot","rsrd_zo_van","rsrd_do_p2_tot","rsrd_vr_p2_van","rsrd_vr_p2_tot","rsrd_vr_p1_tot","rsrd_do_p5_tot","rsrd_wo_van","rsrd_zo_tot","rsrd_za_p2_van","rsrd_oms","rsrd_zo_p3_van","rsrd_fd_p2_van","rsrd_do_p4_van","rsrd_di_p2_tot","rsrd_za_p3_van","rsrd_wo_p4_van","rsrd_vr_p4_van","rsrd_wo_p4_tot","rsrd_num","rsrd_ma_tot","rsrd_ma_p1_van","rsrd_di_p5_van","rsrd_fd_p5_tot","rsrd_vr_p1_van","rsrd_di_p2_van","rsrd_do_p2_van","rsrd_wo_p5_van","rsrd_za_tot","rsrd_ma_p3_tot"]});var re=new n({identifier:"rsrg",fields:["rsrg_num","rsrg_memo","rsrg_oms"]});var te=new n({identifier:"stlh",interval:300,fields:["stlh_actief","arti_code","stlh_oms_1","stlh_num"]});var ne=new n({identifier:"stlm",interval:600,fields:["arti_code","stlm_rest_min","stlm_eenh","stlm_netto_prijs_uitb","stlm_lijst_9","stlm_oms_1","stlm_gewicht_netto","stlm_lijst_2","stlm_volume","stlm_tot_nettoprijs","stlm_oms_3","stlm_toegeleverd","stlm_netto_prijs_mat","stlm_plaat_magw","stlm_rest_hl","stlm_lijst_5","stlm_oppervlakte","stlm_num","stlm_parameter_2","stlm_parameter_1","stlm_gewicht_bruto","stlm_zaaglengte","stlm_revisie","stlm_lijst_4","stlm_eenh_nettoprijs","stlm_plaat_b","stlm_tekening","stlm_opspanlengte_hl","stlm_eenmalig","stlm_opspanlengte_pl","stlm_lijst_7","stlm_memo_extern","stlm_factor","stlm_parameter_3","stlm_aantal","stlm_gewicht_per_m","stlm_plaat_a","stlm_plaat_dx","stlm_behoefte_obv","stlm_netto_prijs_fictief","stlm_opspanlengte_hlzl","stlm_memo","stlm_io_aanvragen","stlm_opspanlengte","stlm_aantal_lengtes","stlm_volgorde","stlm_zaagsnede_lengte","stlm_lijst_8","stlm_netto_prijs_mach","stlm_pos","stlm_oms_2","stlm_eenh_bestel","stlm_netto_prijs_man","stlm_handelslengte","stlm_eigen_spec","stlm_cad","stlm_zaagsnede","stlm_netto_prijs","stlm_bestel_gezaagd","stlm_prijs_methode","stlm_rest_zl","stlm_parameter_5","stlm_plaat_dy","stlm_lijst_6","stlm_bestel_handelslengte","stlm_lengte","stlm_lijst_3","stlm_spec_prijs","stlm_lijst_1","stlm_files","stlm_parameter_4","stlm_plaat_k"]});var oe=new n({identifier:"stlr",interval:600,fields:["stlr_cad","stlr_parent_aantal","stlr_aantal","stlr_verh_oppv_aantal_grp","stlr_verh_gewicht_eenh_grp","stlr_verh_tijd_aantal_grp","stlr_verh_volume_aantal_grp","stlr_memo","stlr_stlr_herkomst","stlr_verh_aantal_eenh_grp","stlr_verh_gewicht_aantal_vrd","stlr_verh_aantal_aantal_vrd","stlr_seriegrootte","stlr_inherit_tekening","stlr_uitval","stlr_volgorde","stlr_eenmalig","stlr_oms_3","stlr_verh_volume_aantal_vrd","stlr_verh_tijd_aantal_vrd","stlr_files","stlr_oms_1","stlr_pos","stlr_verh_gewicht_aantal_grp","stlr_eindproduct_num","stlr_stlm_certificaat","stlr_verh_rest_aantal_vrd","stlr_niveau","stlr_tekening","stlr_verh_lengte_eenh_grp","stlr_prod_fase","stlr_revisie","stlr_verh_lengte_aantal_vrd","stlr_verh_volume_eenh_grp","stlr_verh_rest_aantal_grp","stlr_verh_oppv_eenh_grp","stlr_num","stlr_verh_tijd_eenh_grp","stlr_verwijzing","stlr_afronden_aant","stlr_verh_aantal_aantal_grp","stlr_oms_2","stlr_parent","stlr_verh_lengte_aantal_grp","stlr_verh_rest_eenh_grp","stlr_verw_stlh","stlr_stlh_herkomst","stlr_cad_revisie","stlr_verh_oppv_aantal_vrd","stlr_handlingstijd","stlr_tot_aantal","stlr_prod_aantal"]});var fe=new a({identifier:"create",method:"POST",fields:["debi_num"],optionalFields:["rela_num","proj_num","vorh_dat_levering","vorh_dat_gewenst","vorh_dat_order","vorh_ref_onze","vorh_ref_uw","verk_num","valu_code"],responseFields:["vorh_num"]}),ie=new n({identifier:"vorh",interval:300,fields:["valu_code","debi_num","vorh_dat_levering","vorh_dat_gewenst","vorh_dat_order","vorh_bestelcode_extern","vorh_historisch","vorh_ref_onze","vorh_ref_uw","taal_code","rela_num","vorh_num","proj_num","verk_num"]},[fe]);var he=new a({identifier:"create-vorh-line",method:"POST",fields:["arti_code"],optionalFields:["vorr_dat_gewenst","vorr_oms_1","vorr_oms_2","vorr_order_aantal","vrdg_num","vrkg_num"],path:s=>{let{vorh_num:r}=s;if(!r)throw new Error("Missing required field 'vorh_num' for action 'create'");return`vorh/${r}/vorh_vorr/`},responseFields:["vorh_num","vorr_num"]}),ue=new a({identifier:"create-prdh",method:"PUT",fields:[],path:(s,r)=>{let{vorh_num:e,vorr_num:t}=s;if(!e)throw new Error("Missing required field 'vorh_num' for action 'create-prdh'");if(!t)throw new Error("Missing required field 'vorr_num' for action 'create-prdh'");return`vorr/${r.administration}+${e}+${t}/Service/s_createproductionorder`},responseFields:["prdr.prdh_num","prdr.prdr_num"],response:z}),ve=new a({identifier:"create-backflush",method:"PUT",fields:[],path:(s,r)=>{let{vorh_num:e,vorr_num:t}=s;if(!e)throw new Error("Missing required field 'vorh_num' for action 'create-backflush'");if(!t)throw new Error("Missing required field 'vorr_num' for action 'create-backflush'");return`vorr/${r.administration}+${e}+${t}/Service/s_createbackflush`}}),se=new n({identifier:"vorr",interval:300,fields:["vorh_num","vorr_num","arti_code","vorr_dat_gewenst","vorr_oms_1","vorr_oms_2","vorr_order_aantal","vrdg_num","vrkg_num"]},[he,ue,ve]);var _e=new n({identifier:"vrdg",fields:["vrdg_grbk_pv_grd_uitb","vrdg_grbk_hw_grd_uitb","vrdg_grbk_grd_mat","vrdg_grbk_hw_grd_mat","vrdg_grbk_hw_grd_man","vrdg_grbk_vrd_mat","vrdg_grbk_hw_grd_mach","vrdg_grbk_grd_mach","vrdg_num","vrdg_grbk_pv_grd_mat","vrdg_grbk_kst_mach","vrdg_grbk_kst_mat","vrdg_grbk_pv_grd_mach","vrdg_grbk_kst_man","vrdg_grbk_kst_uitb","vrdg_oms","vrdg_grbk_grd_uitb","vrdg_grbk_pv_grd_man","vrdg_grbk_pv_vrd_mat","vrdg_grbk_grd_man"]});var we=[Y,$,j,D,Q,ee,re,O,B,te,oe,ne,J,I,G,L,_e,Z,H,S,V,X,q,U,x,F,W,ie,se],b=we.reduce((s,r)=>(s[r.identifier]=r,s),{});var k=class{#e;#t;constructor(r,e){this.#e=r,this.#t=e}get callbackFunctionChain(){return this.#r(this.#e.receiver.emitEventType(this.#e.receiver.responses.ok()))}#r(r){return async(e,t)=>{try{this.#e.logger.debug(`[MKG] Apply templates on payload: ${JSON.stringify(e.payload)}, action: ${JSON.stringify(t)}`);let o={administration:this.#e.config.administration??"1"},i=e.payload.action,_=e.payload.data;if(typeof _=="string"&&(_=JSON.parse(_)),!i||!_){let p=`[MKG] Missing required action input parameters in message ${e.eventId}`;return this.#e.logger.warn(p),this.#e.receiver.responses.badRequest(p)(e)}this.#e.logger.debug(`[MKG] Parsed action: ${i}, params json: ${JSON.stringify(_)}`);let[d,...l]=i.split("."),m=l.join("."),c=b[d];if(!c)return this.#e.logger.warn(`[MKG] Unknown table identifier "${d}" in message ${e.eventId}`),this.#e.receiver.responses.badRequest(`[MKG] Unknown table identifier "${d}"`)(e);let g=c.action(m);if(!g){let p=`[MKG] Unknown action identifier "${m}" within table "${d}" in message ${e.eventId}`;return this.#e.logger.warn(p),this.#e.receiver.responses.badRequest(p)(e)}if(e.testRun)return this.#e.logger.info(`[MKG] Test run for ${e.eventId} to action ${i}`),r(e);try{let p=g.fieldSet(_),h=await this.#t.request(g.method,`/web/v3/MKG/Documents/${g.path(_,o)}`,{...["POST","PUT"].includes(g.method)&&Object.keys(p).length>0?{data:{request:{InputData:{[d]:[p]}}}}:{}});this.#e.logger.debug(`[MKG] Got action "${m}" of table "${d}" response from MKG: ${JSON.stringify(h)}`);let A=g.formatResponse(h.data);return this.#e.logger.verbose(`[MKG] Formatted action "${m}" of table "${d}" response to ${Object.keys(A).length} fields`),r({...e,payload:{status:h.status,data:A}})}catch(p){let h=`[MKG] Failed to perform action "${m}" of table "${d}": (${p?.status}) ${p?.error??p?.message}`;return this.#e.logger.error(h),this.#e.receiver.responses.unprocessableEntity(h)(e)}}catch(o){return this.#e.receiver.responses.internalServerError(o instanceof Error?o.message:"Unknown error occurred")(e)}}}};function u(s){let{config:r}=s;return`https://${r.server}:${r.port??443}/${(r.path??"/mkg").replace(/^\/+/,"")}`}var T=class{#e;#t;#r;#n;#o;constructor(r,e,t,o){this.#e=r,this.#t=e,this.#r=t,this.#n=o,this.#o=o.fields.join(",")}get name(){return`mkg-extractor-${this.#r}`}async onRun(){try{let r=new Date,e=await this.#e.offsetStore.getOffset(`offset_${this.#r}`),t=await this.#i(e);if(t.length===0){this.#e.logger.verbose(`[MKG] No new data found for ${this.#r}`);return}await this.#e.sender.documents(t,{keyField:this.#n.identifierField,collection:`${this.#e.config.datasourceIdentifier??M}_${this.#r}`}),this.#e.logger.debug(`[MKG] Processed ${t.length} records from ${this.#r}`),this.#e.offsetStore.setOffset({id:String(t[t.length-1]?.[this.#n.identifierField]??e.id),timestamp:r.getTime(),rawTimestamp:r.toISOString()},`offset_${this.#r}`)}catch(r){throw this.#e.logger.error("[MKG] Failed to retrieve and process data from OPC UA source service",{error:r}),r}}#i=async r=>{let e=new URLSearchParams;e.set("NumRows",String(this.#n.rows)),r.id!==0&&e.set("Filter",`${this.#n.dateField}>=${r.rawTimestamp}`),e.set("FieldList",`${this.#n.dateField},${this.#o}`);try{let t=`/web/v3/MKG/Documents/${this.#r}`;this.#e.logger.verbose(`[MKG] Fetching data from '${u(this.#e)}${t}'...`);let i=(await this.#t.get(`${t}?${e.toString()}`)).data?.response?.ResultData?.[0]?.[this.#r]??[];return this.#e.logger.verbose(`[MKG] Fetched ${i.length} records from '${u(this.#e)}${t}'`),i}catch(t){let o=`[MKG] Failed to fetch data from table "${this.#r}": (${t?.status}) ${t?.error??t?.message}`;this.#e.logger.error(o)}return[]}};var ae=class extends w{constructor(e,t){super(e,t);this.init=async()=>{let{config:e}=this.connectorSDK;await this.#i(e.username,e.password).catch(t=>{throw this.connectorSDK.logger.error("[MKG] Error retrieving initial session cookie:",t),new Error("Failed to initialize connector due to authentication error.")}),Object.entries(e.tables??{}).forEach(([t,o])=>{let i=b[t];if(!i){this.connectorSDK.logger.warn(`[MKG] Unknown table identifier "${t}", skipping configuration.`);return}if(!i.interval||i.interval<=0){this.connectorSDK.logger.verbose(`[MKG] Table "${t}" does not have a valid interval configured, skipping registration.`);return}this.connectorSDK.processing.registerInterval(i.interval,new T(this.connectorSDK,this.#t,t,i.cloneFromTableConfig(o)),{immediate:i.immediate})})};this.#o=async e=>{let{config:t}=this.connectorSDK,o=await this.#i(t.username,t.password).catch(i=>{throw this.connectorSDK.logger.error("[MKG] Error retrieving session cookie:",i),i});return{...e,headers:{...e?.headers??{},...this.#s(o)}}};let o=u(this.connectorSDK);this.#r=this.connectorSDK.httpClient({baseUrl:o}),this.#t=this.connectorSDK.httpClient({baseUrl:o}).setRequestOptionsFormatter(this.#o),this.#e=new k(this.connectorSDK,this.#t),this.callbackFunction=this.#e.callbackFunctionChain}#e;#t;#r;#n;#o;async#i(e,t){let o=this.#n;if(o&&o.expiresAt>Date.now())return o.token;let i="/static/auth/j_spring_security_check";this.connectorSDK.logger.verbose(`[MKG] Retrieving session cookie from '${u(this.connectorSDK)}${i}' with 'j_username=${encodeURIComponent(e)}&j_password=${"*".repeat(t.length)}'`);let _=await this.#r.post(i,`j_username=${encodeURIComponent(e)}&j_password=${encodeURIComponent(t)}`,{headers:{Accept:"application/json","Content-Type":"application/x-www-form-urlencoded"}});if(!_)throw new Error("Failed to authenticate and retrieve session cookie");let l=(_.headers?.["set-cookie"]??_.headers?.["Set-Cookie"]??[]).find(c=>c.startsWith(`${v}=`));if(!l)throw new Error("Session cookie not found in authentication response");let m=l.split(";")[0]?.substring(`${v}=`.length);return this.#n={token:m,expiresAt:Date.now()+C-1e3},this.connectorSDK.logger.debug(`[MKG] Session cookie fetched successfully for user '${e}', expires at ${new Date(this.#n.expiresAt).toISOString()}`),await this.#_(m),m}#s(e){let{config:t}=this.connectorSDK,{apiToken:o}=t;return this.connectorSDK.logger.verbose(`[MKG] Using api headers: ${v}=${"*".repeat(e.length)} & X-CustomerID=${"*".repeat(o.length)}`),{Cookie:`${v}=${e}`,"X-CustomerID":o}}async#_(e){let{config:t}=this.connectorSDK,{administration:o,fiscalYear:i,language:_}=t;if(!(o?.length||i?.length||_?.length)){this.connectorSDK.logger.verbose("[MKG] No administration settings to update.");return}let d="/web/v3/MKG/Settings",l=[];o&&l.push({t_name:"Administration",t_value:o}),i&&l.push({t_name:"FiscalYear",t_value:i}),_&&l.push({t_name:"Language",t_value:_}),this.connectorSDK.logger.verbose(`[MKG] Updating administration settings: ${JSON.stringify(l)}`),await this.#r.put(d,{request:{InputData:{t_setting:l}}},{headers:{Accept:"application/json","Content-Type":"application/json",...this.#s(e)}}).catch(m=>{throw this.connectorSDK.logger.error("[MKG] Error updating administration settings:",m),m}),this.connectorSDK.logger.debug("[MKG] Administration settings updated successfully.")}};export{ae as ConnectorRunnerMkg};
2
2
  //# sourceMappingURL=index.js.map