{"version":3,"file":"database_operation_templates.ts-D_9F7fQz.js","sources":["../../../../../app/javascript/entries/controllers/database_operation_templates.ts"],"sourcesContent":["// @ts-nocheck\nimport jquery from \"jquery\";\nwindow.$ = jquery;\n\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n // 戻るボタン経由の場合にはページをリロード\n if (location.href.match(/database_operation_templates\\/new/)) {\n const perfEntry = performance.getEntriesByType(\"navigation\")[0];\n if (perfEntry !== undefined && perfEntry.type === \"back_forward\") {\n location.reload();\n }\n }\n\n // アウトプット追加ボタンの表示・非表示を制御\n hideOutputAddButton();\n\n $(document).on(\"click\", \".js-add_output_btn\", function () {\n hideOutputAddButton();\n });\n\n $(document).on(\"click\", \".js-remove_output_btn\", function () {\n $(\".js-add_output_btn\").show();\n });\n\n $(document).on(\"change\", \".js-database_operation_output_name\", function () {\n const selectedOption = this.options[this.selectedIndex];\n this.dataset.dataType = selectedOption.dataset.dataType;\n this.dataset.columnName = selectedOption.dataset.columnName;\n const result_data = document.querySelector(\".js-data-test-result\").dataset.testResult;\n if (result_data) {\n setOutputValueFromTestResult(this, JSON.parse(result_data));\n }\n });\n\n // アウトプット追加ボタンの表示・非表示を制御\n function hideOutputAddButton() {\n const output_filed_length = $(\".js-output-field\").length;\n if (output_filed_length >= 100) {\n $(\".js-add_output_btn\").hide();\n }\n }\n\n // アウトプットテスト値補完\n function setOutputValueFromTestResult(select_box, data = []) {\n const target_column_index = select_box.selectedIndex - 1;\n const target_test_value_field = $(select_box)\n .closest(\".js-output-field\")\n .find(\".js-database_operation_output_test_value\");\n const target_test_value_field_readonly = $(select_box)\n .closest(\".js-output-field\")\n .find(\".js-database_operation_output_test_value_readonly\");\n\n if (target_column_index >= 0) {\n const dataType = data[0][target_column_index].data_type;\n let test_values = data.map((value) => value[target_column_index].value).filter(Boolean);\n let readonly_test_value;\n let test_value;\n\n if ([\"pulldown\", \"check_box\"].includes(dataType)) {\n test_values = test_values.flatMap((subArray) => subArray.map((item) => item.value));\n } else if (dataType === \"file\") {\n const thisSelectBoxIndex = $(\".js-database_operation_output_name\")\n .filter((i, element) => element.dataset.columnName === select_box.dataset.columnName)\n .index(select_box);\n readonly_test_value = test_value = test_values.flat()[thisSelectBoxIndex] || \"\";\n }\n\n if (dataType !== \"file\") {\n readonly_test_value = test_values.join(\",\");\n test_value = test_values.join(\"[,]\");\n }\n\n $(target_test_value_field_readonly).val(readonly_test_value);\n $(target_test_value_field).val(test_value);\n } else {\n $(target_test_value_field_readonly).val(\"\");\n $(target_test_value_field).val(\"\");\n }\n }\n});\n"],"names":["jquery","perfEntry","hideOutputAddButton","selectedOption","result_data","setOutputValueFromTestResult","select_box","data","target_column_index","target_test_value_field","target_test_value_field_readonly","dataType","test_values","value","readonly_test_value","test_value","subArray","item","thisSelectBoxIndex","i","element"],"mappings":"4GAEA,OAAO,EAAIA,EAEX,SAAS,iBAAiB,mBAAoB,UAAY,CAExD,GAAI,SAAS,KAAK,MAAM,mCAAmC,EAAG,CAC5D,MAAMC,EAAY,YAAY,iBAAiB,YAAY,EAAE,CAAC,EAC1DA,IAAc,QAAaA,EAAU,OAAS,gBAChD,SAAS,OAAO,CAClB,CAIkBC,EAAA,EAEpB,EAAE,QAAQ,EAAE,GAAG,QAAS,qBAAsB,UAAY,CACpCA,EAAA,CAAA,CACrB,EAED,EAAE,QAAQ,EAAE,GAAG,QAAS,wBAAyB,UAAY,CACzD,EAAA,oBAAoB,EAAE,KAAK,CAAA,CAC9B,EAED,EAAE,QAAQ,EAAE,GAAG,SAAU,qCAAsC,UAAY,CACzE,MAAMC,EAAiB,KAAK,QAAQ,KAAK,aAAa,EACjD,KAAA,QAAQ,SAAWA,EAAe,QAAQ,SAC1C,KAAA,QAAQ,WAAaA,EAAe,QAAQ,WACjD,MAAMC,EAAc,SAAS,cAAc,sBAAsB,EAAE,QAAQ,WACvEA,GACFC,EAA6B,KAAM,KAAK,MAAMD,CAAW,CAAC,CAC5D,CACD,EAGD,SAASF,GAAsB,CACD,EAAE,kBAAkB,EAAE,QACvB,KACvB,EAAA,oBAAoB,EAAE,KAAK,CAC/B,CAIF,SAASG,EAA6BC,EAAYC,EAAO,GAAI,CACrD,MAAAC,EAAsBF,EAAW,cAAgB,EACjDG,EAA0B,EAAEH,CAAU,EACzC,QAAQ,kBAAkB,EAC1B,KAAK,0CAA0C,EAC5CI,EAAmC,EAAEJ,CAAU,EAClD,QAAQ,kBAAkB,EAC1B,KAAK,mDAAmD,EAE3D,GAAIE,GAAuB,EAAG,CAC5B,MAAMG,EAAWJ,EAAK,CAAC,EAAEC,CAAmB,EAAE,UAC1C,IAAAI,EAAcL,EAAK,IAAKM,GAAUA,EAAML,CAAmB,EAAE,KAAK,EAAE,OAAO,OAAO,EAClFM,EACAC,EAEJ,GAAI,CAAC,WAAY,WAAW,EAAE,SAASJ,CAAQ,EAC/BC,EAAAA,EAAY,QAASI,GAAaA,EAAS,IAAKC,GAASA,EAAK,KAAK,CAAC,UACzEN,IAAa,OAAQ,CAC9B,MAAMO,EAAqB,EAAE,oCAAoC,EAC9D,OAAO,CAACC,EAAGC,IAAYA,EAAQ,QAAQ,aAAed,EAAW,QAAQ,UAAU,EACnF,MAAMA,CAAU,EACnBQ,EAAsBC,EAAaH,EAAY,KAAK,EAAEM,CAAkB,GAAK,EAAA,CAG3EP,IAAa,SACOG,EAAAF,EAAY,KAAK,GAAG,EAC7BG,EAAAH,EAAY,KAAK,KAAK,GAGnC,EAAAF,CAAgC,EAAE,IAAII,CAAmB,EACzD,EAAAL,CAAuB,EAAE,IAAIM,CAAU,CAAA,MAEvC,EAAAL,CAAgC,EAAE,IAAI,EAAE,EACxC,EAAAD,CAAuB,EAAE,IAAI,EAAE,CACnC,CAEJ,CAAC"}