From b8b69622c502166e1dc1f5547a8287a5e49f67df Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Wed, 2 Aug 2023 07:05:37 +0000 Subject: [PATCH 01/13] Bugfix Returning Typenames The returning Typenames concat wit 'ret_' and abapname. If abapname is 30 characters, ret_abapname will be 34 and we get a Syntaxerror in the Interface --- src/utils/zcl_oapi_abap_name.clas.abap | 12 ++++++------ src/v2/zcl_oapi_generator_v2.clas.abap | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index e6e8fe77..fbeb4cd4 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -9,7 +9,7 @@ CLASS zcl_oapi_abap_name DEFINITION PUBLIC. RETURNING VALUE(rv_used) TYPE abap_bool. PROTECTED SECTION. PRIVATE SECTION. - TYPES ty_name TYPE c LENGTH 30. + TYPES ty_name TYPE c LENGTH 28. DATA mt_used TYPE STANDARD TABLE OF string WITH DEFAULT KEY. METHODS numbering IMPORTING iv_name TYPE string RETURNING VALUE(rv_name) TYPE ty_name. METHODS sanitize_name @@ -33,8 +33,8 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. DATA lv_number TYPE n LENGTH 2. DATA lv_offset TYPE i. lv_offset = strlen( iv_name ). - IF lv_offset > 28. - lv_offset = 28. + IF lv_offset > 26. + lv_offset = 26. ENDIF. DO 99 TIMES. lv_number = sy-index. @@ -72,8 +72,8 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. IF rv_name CO '0123456789'. rv_name = 'n' && rv_name. ENDIF. - IF strlen( rv_name ) > 30. - rv_name = rv_name(30). + IF strlen( rv_name ) > 28. + rv_name = rv_name(28). ENDIF. ENDMETHOD. @@ -91,4 +91,4 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. rv_used = abap_false. ENDMETHOD. -ENDCLASS. \ No newline at end of file +ENDCLASS. diff --git a/src/v2/zcl_oapi_generator_v2.clas.abap b/src/v2/zcl_oapi_generator_v2.clas.abap index c5eb20a9..3a55e20a 100644 --- a/src/v2/zcl_oapi_generator_v2.clas.abap +++ b/src/v2/zcl_oapi_generator_v2.clas.abap @@ -158,7 +158,7 @@ CLASS zcl_oapi_generator_v2 IMPLEMENTATION. ENDIF. ENDIF. - lv_typename = 'ret_' && ls_operation-abap_name. + lv_typename = 'r_' && ls_operation-abap_name. CLEAR lv_post. LOOP AT ls_operation-responses INTO ls_response. @@ -345,14 +345,14 @@ CLASS zcl_oapi_generator_v2 IMPLEMENTATION. METHOD find_returning_parameter. DATA ls_response LIKE LINE OF is_operation-responses. DATA ls_content LIKE LINE OF ls_response-content. - DATA lv_typename TYPE string. + DATA lv_typename TYPE seoclsname. DATA lo_response_name TYPE REF TO zcl_oapi_response_name. DATA lv_response_name TYPE string. DATA lv_returning_type TYPE string. CREATE OBJECT lo_response_name. - lv_typename = 'ret_' && is_operation-abap_name. + lv_typename = 'r_' && is_operation-abap_name. LOOP AT is_operation-responses INTO ls_response. LOOP AT ls_response-content INTO ls_content. @@ -382,4 +382,4 @@ CLASS zcl_oapi_generator_v2 IMPLEMENTATION. ENDLOOP. ENDLOOP. ENDMETHOD. -ENDCLASS. \ No newline at end of file +ENDCLASS. From e8c68e28eacd7efc7fcb1d590cc0cef55f958650 Mon Sep 17 00:00:00 2001 From: Fabian Date: Thu, 3 Aug 2023 11:07:39 +0200 Subject: [PATCH 02/13] Update zcl_oapi_generator_v2.clas.abap --- src/v2/zcl_oapi_generator_v2.clas.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/v2/zcl_oapi_generator_v2.clas.abap b/src/v2/zcl_oapi_generator_v2.clas.abap index 3a55e20a..78e2c873 100644 --- a/src/v2/zcl_oapi_generator_v2.clas.abap +++ b/src/v2/zcl_oapi_generator_v2.clas.abap @@ -345,7 +345,7 @@ CLASS zcl_oapi_generator_v2 IMPLEMENTATION. METHOD find_returning_parameter. DATA ls_response LIKE LINE OF is_operation-responses. DATA ls_content LIKE LINE OF ls_response-content. - DATA lv_typename TYPE seoclsname. + DATA lv_typename TYPE char30. DATA lo_response_name TYPE REF TO zcl_oapi_response_name. DATA lv_response_name TYPE string. DATA lv_returning_type TYPE string. From 8c4ff15e916227e228e3ecbf0897647ed0d34360 Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Thu, 3 Aug 2023 11:07:56 +0000 Subject: [PATCH 03/13] Unit Test --- src/utils/zcl_oapi_abap_name.clas.abap | 71 +++++++++++-------- .../zcl_oapi_abap_name.clas.testclasses.abap | 26 +++++++ src/utils/zcl_oapi_abap_name.clas.xml | 1 + 3 files changed, 68 insertions(+), 30 deletions(-) create mode 100644 src/utils/zcl_oapi_abap_name.clas.testclasses.abap diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index fbeb4cd4..28cc5ec2 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -1,12 +1,22 @@ -CLASS zcl_oapi_abap_name DEFINITION PUBLIC. - PUBLIC SECTION. - METHODS to_abap_name - IMPORTING iv_name TYPE string - RETURNING VALUE(rv_name) TYPE string. - METHODS add_used IMPORTING iv_name TYPE string. - METHODS is_used - IMPORTING iv_name TYPE string - RETURNING VALUE(rv_used) TYPE abap_bool. +class ZCL_OAPI_ABAP_NAME definition + public + create public . + +public section. + + methods TO_ABAP_NAME + importing + !IV_NAME type STRING + returning + value(RV_NAME) type STRING . + methods ADD_USED + importing + !IV_NAME type STRING . + methods IS_USED + importing + !IV_NAME type STRING + returning + value(RV_USED) type ABAP_BOOL . PROTECTED SECTION. PRIVATE SECTION. TYPES ty_name TYPE c LENGTH 28. @@ -19,7 +29,7 @@ ENDCLASS. -CLASS zcl_oapi_abap_name IMPLEMENTATION. +CLASS ZCL_OAPI_ABAP_NAME IMPLEMENTATION. METHOD add_used. @@ -29,6 +39,21 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. ENDMETHOD. + METHOD is_used. + DATA lv_name TYPE string. + IF iv_name IS INITIAL. + RETURN. + ENDIF. + lv_name = sanitize_name( iv_name ). + READ TABLE mt_used WITH KEY table_line = lv_name TRANSPORTING NO FIELDS. + IF sy-subrc = 0. + rv_used = abap_true. + RETURN. + ENDIF. + rv_used = abap_false. + ENDMETHOD. + + METHOD numbering. DATA lv_number TYPE n LENGTH 2. DATA lv_offset TYPE i. @@ -49,17 +74,6 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. ENDMETHOD. - METHOD to_abap_name. - IF iv_name IS INITIAL. - RETURN. - ENDIF. - rv_name = sanitize_name( iv_name ). - IF is_used( rv_name ) = abap_true. - rv_name = numbering( rv_name ). - ENDIF. - APPEND rv_name TO mt_used. - ENDMETHOD. - METHOD sanitize_name. rv_name = to_lower( iv_name ). REPLACE ALL OCCURRENCES OF '-' IN rv_name WITH '_'. @@ -77,18 +91,15 @@ CLASS zcl_oapi_abap_name IMPLEMENTATION. ENDIF. ENDMETHOD. - METHOD is_used. - DATA lv_name TYPE string. + + METHOD to_abap_name. IF iv_name IS INITIAL. RETURN. ENDIF. - lv_name = sanitize_name( iv_name ). - READ TABLE mt_used WITH KEY table_line = lv_name TRANSPORTING NO FIELDS. - IF sy-subrc = 0. - rv_used = abap_true. - RETURN. + rv_name = sanitize_name( iv_name ). + IF is_used( rv_name ) = abap_true. + rv_name = numbering( rv_name ). ENDIF. - rv_used = abap_false. + APPEND rv_name TO mt_used. ENDMETHOD. - ENDCLASS. diff --git a/src/utils/zcl_oapi_abap_name.clas.testclasses.abap b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap new file mode 100644 index 00000000..63c62b74 --- /dev/null +++ b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap @@ -0,0 +1,26 @@ +CLASS ltcl_abap_name DEFINITION FOR TESTING + DURATION SHORT + RISK LEVEL HARMLESS. + + PRIVATE SECTION. + METHODS max_abap_name_length FOR TESTING RAISING cx_static_check. +ENDCLASS. + + +CLASS ltcl_abap_name IMPLEMENTATION. + + METHOD max_abap_name_length. + DATA lo_abap_name TYPE REF TO zcl_oapi_abap_name. + + CREATE OBJECT lo_abap_name. + + DATA(lv_abap_name) = lo_abap_name->to_abap_name( iv_name = 'a_long_name_longer_then_28_Characters' ). + + cl_abap_unit_assert=>assert_number_between( + lower = 1 + upper = 28 + number = strlen( lv_abap_name ) ). + + ENDMETHOD. + +ENDCLASS. diff --git a/src/utils/zcl_oapi_abap_name.clas.xml b/src/utils/zcl_oapi_abap_name.clas.xml index e9a2fc73..a7a67444 100644 --- a/src/utils/zcl_oapi_abap_name.clas.xml +++ b/src/utils/zcl_oapi_abap_name.clas.xml @@ -10,6 +10,7 @@ X X X + X From d9e783706386e948952a347e0174b28ee8e4da3d Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Thu, 3 Aug 2023 11:10:17 +0000 Subject: [PATCH 04/13] Pretty Print --- src/utils/zcl_oapi_abap_name.clas.abap | 36 +++++++++++++------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index 28cc5ec2..b0260246 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -1,22 +1,22 @@ -class ZCL_OAPI_ABAP_NAME definition - public - create public . +CLASS zcl_oapi_abap_name DEFINITION + PUBLIC + CREATE PUBLIC . -public section. + PUBLIC SECTION. - methods TO_ABAP_NAME - importing - !IV_NAME type STRING - returning - value(RV_NAME) type STRING . - methods ADD_USED - importing - !IV_NAME type STRING . - methods IS_USED - importing - !IV_NAME type STRING - returning - value(RV_USED) type ABAP_BOOL . + METHODS to_abap_name + IMPORTING + !iv_name TYPE string + RETURNING + VALUE(rv_name) TYPE string . + METHODS add_used + IMPORTING + !iv_name TYPE string . + METHODS is_used + IMPORTING + !iv_name TYPE string + RETURNING + VALUE(rv_used) TYPE abap_bool . PROTECTED SECTION. PRIVATE SECTION. TYPES ty_name TYPE c LENGTH 28. @@ -29,7 +29,7 @@ ENDCLASS. -CLASS ZCL_OAPI_ABAP_NAME IMPLEMENTATION. +CLASS zcl_oapi_abap_name IMPLEMENTATION. METHOD add_used. From 550c3e6e0ba0390da5ca77fb2746bdd823be0215 Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Fri, 4 Aug 2023 06:25:49 +0000 Subject: [PATCH 05/13] Downport --- src/utils/zcl_oapi_abap_name.clas.testclasses.abap | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.testclasses.abap b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap index 63c62b74..9aee6bbd 100644 --- a/src/utils/zcl_oapi_abap_name.clas.testclasses.abap +++ b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap @@ -11,10 +11,11 @@ CLASS ltcl_abap_name IMPLEMENTATION. METHOD max_abap_name_length. DATA lo_abap_name TYPE REF TO zcl_oapi_abap_name. + DATA lv_abap_name TYPE string. CREATE OBJECT lo_abap_name. - DATA(lv_abap_name) = lo_abap_name->to_abap_name( iv_name = 'a_long_name_longer_then_28_Characters' ). + lv_abap_name = lo_abap_name->to_abap_name( iv_name = 'a_long_name_longer_then_28_Characters' ). cl_abap_unit_assert=>assert_number_between( lower = 1 From 5c70e0430dfcb3ab7356d7474cdc3ad1a4f73d75 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 4 Aug 2023 08:26:44 +0200 Subject: [PATCH 06/13] Update src/utils/zcl_oapi_abap_name.clas.testclasses.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> --- src/utils/zcl_oapi_abap_name.clas.testclasses.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.testclasses.abap b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap index 9aee6bbd..73ab068b 100644 --- a/src/utils/zcl_oapi_abap_name.clas.testclasses.abap +++ b/src/utils/zcl_oapi_abap_name.clas.testclasses.abap @@ -15,7 +15,7 @@ CLASS ltcl_abap_name IMPLEMENTATION. CREATE OBJECT lo_abap_name. - lv_abap_name = lo_abap_name->to_abap_name( iv_name = 'a_long_name_longer_then_28_Characters' ). + lv_abap_name = lo_abap_name->to_abap_name( 'a_long_name_longer_then_28_Characters' ). cl_abap_unit_assert=>assert_number_between( lower = 1 From d76e62f609ca4baafeac46e8c117753c774452a4 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 4 Aug 2023 08:27:10 +0200 Subject: [PATCH 07/13] Update src/utils/zcl_oapi_abap_name.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> --- src/utils/zcl_oapi_abap_name.clas.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index b0260246..c80b0cf9 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -1,6 +1,6 @@ CLASS zcl_oapi_abap_name DEFINITION PUBLIC - CREATE PUBLIC . + CREATE PUBLIC. PUBLIC SECTION. From 0d9f48ead1afafa68fe6daf728466e91a26aacc3 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 4 Aug 2023 08:27:56 +0200 Subject: [PATCH 08/13] Update src/utils/zcl_oapi_abap_name.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> --- src/utils/zcl_oapi_abap_name.clas.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index c80b0cf9..53a49015 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -8,7 +8,7 @@ CLASS zcl_oapi_abap_name DEFINITION IMPORTING !iv_name TYPE string RETURNING - VALUE(rv_name) TYPE string . + VALUE(rv_name) TYPE string. METHODS add_used IMPORTING !iv_name TYPE string . From 391d3341bf01a1a272841844711d894ba4ab97ec Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 4 Aug 2023 08:28:33 +0200 Subject: [PATCH 09/13] Update src/utils/zcl_oapi_abap_name.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> --- src/utils/zcl_oapi_abap_name.clas.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index 53a49015..7b5a7a7c 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -11,7 +11,7 @@ CLASS zcl_oapi_abap_name DEFINITION VALUE(rv_name) TYPE string. METHODS add_used IMPORTING - !iv_name TYPE string . + !iv_name TYPE string. METHODS is_used IMPORTING !iv_name TYPE string From 8211b5a6c76ac5d973578b54ea8ed6a9c5d70e63 Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Fri, 4 Aug 2023 06:30:51 +0000 Subject: [PATCH 10/13] Linter Fixes --- src/utils/zcl_oapi_abap_name.clas.abap | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index 7b5a7a7c..dfca4060 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -1,6 +1,6 @@ CLASS zcl_oapi_abap_name DEFINITION PUBLIC - CREATE PUBLIC. + CREATE PUBLIC . PUBLIC SECTION. @@ -16,7 +16,7 @@ CLASS zcl_oapi_abap_name DEFINITION IMPORTING !iv_name TYPE string RETURNING - VALUE(rv_used) TYPE abap_bool . + VALUE(rv_used) TYPE abap_bool. PROTECTED SECTION. PRIVATE SECTION. TYPES ty_name TYPE c LENGTH 28. From c0648b8ecc934453a4d68a54d5772e4291c7df65 Mon Sep 17 00:00:00 2001 From: Fabian Schmidt Date: Fri, 4 Aug 2023 06:31:48 +0000 Subject: [PATCH 11/13] Lint2 --- src/utils/zcl_oapi_abap_name.clas.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_abap_name.clas.abap b/src/utils/zcl_oapi_abap_name.clas.abap index dfca4060..3146c708 100644 --- a/src/utils/zcl_oapi_abap_name.clas.abap +++ b/src/utils/zcl_oapi_abap_name.clas.abap @@ -1,6 +1,6 @@ CLASS zcl_oapi_abap_name DEFINITION PUBLIC - CREATE PUBLIC . + CREATE PUBLIC. PUBLIC SECTION. From 5fe0c2411bffd674539513bf657eba7a6fa2471c Mon Sep 17 00:00:00 2001 From: Lars Hvam Date: Mon, 7 Aug 2023 18:19:17 +0200 Subject: [PATCH 12/13] add missing space (#117) --- src/utils/zcl_oapi_json.clas.locals_imp.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/zcl_oapi_json.clas.locals_imp.abap b/src/utils/zcl_oapi_json.clas.locals_imp.abap index 045804fa..9ae000bc 100644 --- a/src/utils/zcl_oapi_json.clas.locals_imp.abap +++ b/src/utils/zcl_oapi_json.clas.locals_imp.abap @@ -21,7 +21,7 @@ CLASS lcl_stack IMPLEMENTATION. METHOD push. DATA ls_data LIKE LINE OF mt_data. ls_data-name = iv_name. - ls_data-is_array = boolc( iv_type = 'array'). + ls_data-is_array = boolc( iv_type = 'array' ). APPEND ls_data TO mt_data. ENDMETHOD. From 2fae08ff206b3385d72cf1979331f6372ae6c936 Mon Sep 17 00:00:00 2001 From: Lars Hvam Date: Tue, 8 Aug 2023 17:27:23 +0200 Subject: [PATCH 13/13] update dependencies and web (#113) --- package-lock.json | 42 +++---- package.json | 6 +- web/package-lock.json | 258 +++++++++++++++++++++--------------------- web/package.json | 20 ++-- web/webpack.config.js | 3 +- 5 files changed, 165 insertions(+), 164 deletions(-) diff --git a/package-lock.json b/package-lock.json index ae1e3f15..7baeca69 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,16 +9,16 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@abaplint/cli": "^2.101.8", - "@abaplint/runtime": "^2.7.20", - "@abaplint/transpiler-cli": "^2.7.20", + "@abaplint/cli": "^2.102.17", + "@abaplint/runtime": "^2.7.70", + "@abaplint/transpiler-cli": "^2.7.70", "rimraf": "^5.0.1" } }, "node_modules/@abaplint/cli": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/cli/-/cli-2.101.8.tgz", - "integrity": "sha512-Rn1BtEci/FOz4CjO3LuTBiOelqq+BrRwM7xFkAPOdHDFiEC2S6amDNmLrJvRg3JsqmlRnxBQ4Xm3ETpwkF3RfA==", + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/cli/-/cli-2.102.17.tgz", + "integrity": "sha512-mEwivTL1J6Y2lbwcMMHKTA2DwDtIwqDbykjLBEShbDBZNVUuYFNwxEKeMBZMf0WJb54LU6FGgobjZDTlq30GBQ==", "bin": { "abaplint": "abaplint" }, @@ -30,9 +30,9 @@ } }, "node_modules/@abaplint/runtime": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.20.tgz", - "integrity": "sha512-Gpx5bDP97mBTdEPY6dZIXQW9vtpty1SQGtJSdBfuQK24ClCIJsMLQfcFzvI2GO37Wtxvqy11xFj0NMBNPclxXg==", + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.70.tgz", + "integrity": "sha512-cVxVpeqG5WAnpQNpzPBnOz3mVOIafp7kFIpL4LfI3mKMgP/rddmL3OPrRKieP3LB90Zh4YzHiipWU5u5+fbdTg==", "dependencies": { "temporal-polyfill": "^0.1.1" }, @@ -41,9 +41,9 @@ } }, "node_modules/@abaplint/transpiler-cli": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/transpiler-cli/-/transpiler-cli-2.7.20.tgz", - "integrity": "sha512-57aM2G70whZxssTFnBSfGy9+AETx6AMQWawm3c3dIgKlSiULp6emB813SIS8t/bgDvAQyYXF/D3rl696OKLHWw==", + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/transpiler-cli/-/transpiler-cli-2.7.70.tgz", + "integrity": "sha512-71ko7Zk+bzYQXLe1ujKc5hXLuMJQw7qa4hdD+ntC12vmwzA6r9KGPesXxRyhHaL9dKguH6hllqAIs1X5DCu9nw==", "bin": { "abap_transpile": "abap_transpile" }, @@ -518,22 +518,22 @@ }, "dependencies": { "@abaplint/cli": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/cli/-/cli-2.101.8.tgz", - "integrity": "sha512-Rn1BtEci/FOz4CjO3LuTBiOelqq+BrRwM7xFkAPOdHDFiEC2S6amDNmLrJvRg3JsqmlRnxBQ4Xm3ETpwkF3RfA==" + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/cli/-/cli-2.102.17.tgz", + "integrity": "sha512-mEwivTL1J6Y2lbwcMMHKTA2DwDtIwqDbykjLBEShbDBZNVUuYFNwxEKeMBZMf0WJb54LU6FGgobjZDTlq30GBQ==" }, "@abaplint/runtime": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.20.tgz", - "integrity": "sha512-Gpx5bDP97mBTdEPY6dZIXQW9vtpty1SQGtJSdBfuQK24ClCIJsMLQfcFzvI2GO37Wtxvqy11xFj0NMBNPclxXg==", + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.70.tgz", + "integrity": "sha512-cVxVpeqG5WAnpQNpzPBnOz3mVOIafp7kFIpL4LfI3mKMgP/rddmL3OPrRKieP3LB90Zh4YzHiipWU5u5+fbdTg==", "requires": { "temporal-polyfill": "^0.1.1" } }, "@abaplint/transpiler-cli": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/transpiler-cli/-/transpiler-cli-2.7.20.tgz", - "integrity": "sha512-57aM2G70whZxssTFnBSfGy9+AETx6AMQWawm3c3dIgKlSiULp6emB813SIS8t/bgDvAQyYXF/D3rl696OKLHWw==" + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/transpiler-cli/-/transpiler-cli-2.7.70.tgz", + "integrity": "sha512-71ko7Zk+bzYQXLe1ujKc5hXLuMJQw7qa4hdD+ntC12vmwzA6r9KGPesXxRyhHaL9dKguH6hllqAIs1X5DCu9nw==" }, "@isaacs/cliui": { "version": "8.0.2", diff --git a/package.json b/package.json index 90a78976..c7dcd958 100644 --- a/package.json +++ b/package.json @@ -25,9 +25,9 @@ }, "homepage": "https://github.com/abap-openapi/abap-openapi-client#readme", "dependencies": { - "@abaplint/cli": "^2.101.8", - "@abaplint/runtime": "^2.7.20", - "@abaplint/transpiler-cli": "^2.7.20", + "@abaplint/cli": "^2.102.17", + "@abaplint/runtime": "^2.7.70", + "@abaplint/transpiler-cli": "^2.7.70", "rimraf": "^5.0.1" } } diff --git a/web/package-lock.json b/web/package-lock.json index c95614ea..f868a64f 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -12,34 +12,34 @@ "web-encoding": "^1.1.5" }, "devDependencies": { - "@abaplint/core": "^2.101.8", - "@abaplint/monaco": "^2.101.8", - "@abaplint/runtime": "^2.7.20", + "@abaplint/core": "^2.102.17", + "@abaplint/monaco": "^2.102.17", + "@abaplint/runtime": "^2.7.70", "buffer": "^6.0.3", "crypto-browserify": "^3.12.0", "css-loader": "^6.8.1", "file-loader": "^6.2.0", - "html-webpack-plugin": "^5.5.1", - "monaco-editor": "^0.38.0", + "html-webpack-plugin": "^5.5.3", + "monaco-editor": "=0.40.0", "path-browserify": "^1.0.1", "split-grid": "^1.0.11", "stream-browserify": "^3.0.0", "string_decoder": "^1.3.0", "style-loader": "^3.3.3", - "ts-loader": "^9.4.3", - "typescript": "^5.0.4", - "webpack": "^5.84.1", - "webpack-cli": "^5.1.1", - "webpack-dev-server": "^4.15.0" + "ts-loader": "^9.4.4", + "typescript": "^5.1.6", + "webpack": "^5.88.2", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1" } }, "node_modules/@abaplint/core": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/core/-/core-2.101.8.tgz", - "integrity": "sha512-nQWE/MtaCQBGkMVI2/6UJw91K5dASqJr3lgco4dD6qmM2sJmIeW/P9uyyE2IlfklGu+wfk74F40HzKTvJgFG4g==", + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/core/-/core-2.102.17.tgz", + "integrity": "sha512-rpSPsQsUJrFgEb/ooPEQuu1Musw6JRiZNSywUi65lEYA3I1qDFiTS5GNpy7ntYQhjVLX4pPxhy+GXaw4hqLv5g==", "dev": true, "dependencies": { - "fast-xml-parser": "^4.2.2", + "fast-xml-parser": "^4.2.7", "json5": "^2.2.3", "vscode-languageserver-types": "^3.17.3" }, @@ -51,21 +51,21 @@ } }, "node_modules/@abaplint/monaco": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/monaco/-/monaco-2.101.8.tgz", - "integrity": "sha512-BEa63nTkpeQLJja8iAavfGfKYf/kb6fy7r4K1ypzsx3QqZicX9Cbh0LbrDaImhm+e1ErTwHijcZc5T2ebZq5qA==", + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/monaco/-/monaco-2.102.17.tgz", + "integrity": "sha512-SrWWvjMZwFnUE9v/4TSwiiS5/cwERaRCAtcgOYMyy8VtzQEyK/gqRQ6jpKp1iWNvK9LHFDuYLXIRKAXt8aSowA==", "dev": true, "dependencies": { - "@abaplint/core": "^2.101.8" + "@abaplint/core": "^2.102.17" }, "funding": { "url": "https://github.com/sponsors/larshp" } }, "node_modules/@abaplint/runtime": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.20.tgz", - "integrity": "sha512-Gpx5bDP97mBTdEPY6dZIXQW9vtpty1SQGtJSdBfuQK24ClCIJsMLQfcFzvI2GO37Wtxvqy11xFj0NMBNPclxXg==", + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.70.tgz", + "integrity": "sha512-cVxVpeqG5WAnpQNpzPBnOz3mVOIafp7kFIpL4LfI3mKMgP/rddmL3OPrRKieP3LB90Zh4YzHiipWU5u5+fbdTg==", "dev": true, "dependencies": { "temporal-polyfill": "^0.1.1" @@ -314,9 +314,9 @@ } }, "node_modules/@types/ws": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.1.tgz", - "integrity": "sha512-UxlLOfkuQnT2YSBCNq0x86SGOUxas6gAySFeDe2DcnEnA8655UIPoCDorWZCugcvKIL8IUI4oueUfJ1hhZSE2A==", + "version": "8.5.5", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.5.tgz", + "integrity": "sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==", "dev": true, "dependencies": { "@types/node": "*" @@ -469,9 +469,9 @@ } }, "node_modules/@webpack-cli/configtest": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.0.tgz", - "integrity": "sha512-K/vuv72vpfSEZoo5KIU0a2FsEoYdW0DUMtMpB5X3LlUwshetMZRZRxB7sCsVji/lFaSxtQQ3aM9O4eMolXkU9w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", "dev": true, "engines": { "node": ">=14.15.0" @@ -482,9 +482,9 @@ } }, "node_modules/@webpack-cli/info": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz", - "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", "dev": true, "engines": { "node": ">=14.15.0" @@ -495,9 +495,9 @@ } }, "node_modules/@webpack-cli/serve": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.4.tgz", - "integrity": "sha512-0xRgjgDLdz6G7+vvDLlaRpFatJaJ69uTalZLRSMX5B3VUrDmXcrVA3+6fXXQgmYz7bY9AAgs348XQdmtLsK41A==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", "dev": true, "engines": { "node": ">=14.15.0" @@ -1666,9 +1666,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.14.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.1.tgz", - "integrity": "sha512-Vklwq2vDKtl0y/vtwjSesgJ5MYS7Etuk5txS8VdKL4AOS1aUlD96zqIfsOSLQsdv3xgMRbtkWM8eG9XDfKUPow==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -1961,9 +1961,9 @@ "dev": true }, "node_modules/fast-xml-parser": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.2.tgz", - "integrity": "sha512-DLzIPtQqmvmdq3VUKR7T6omPK/VCRNqgFlGtbESfyhcH2R4I8EzK1/K6E8PkRCK2EabWrUHK32NjYRbEFnnz0Q==", + "version": "4.2.7", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.7.tgz", + "integrity": "sha512-J8r6BriSLO1uj2miOk1NW0YVm8AGOOu3Si2HQp/cSmo6EA4m3fcwu2WKjJ4RK9wMLBtg69y1kS8baDiQBR41Ig==", "dev": true, "funding": [ { @@ -2435,9 +2435,9 @@ } }, "node_modules/html-webpack-plugin": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.1.tgz", - "integrity": "sha512-cTUzZ1+NqjGEKjmVgZKLMdiFg3m9MdRXkZW2OEe69WYVi5ONLMmlnSZdXzGGMOq0C8jGDrL6EWyEDDUioHO/pA==", + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz", + "integrity": "sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==", "dev": true, "dependencies": { "@types/html-minifier-terser": "^6.0.0", @@ -3287,9 +3287,9 @@ } }, "node_modules/monaco-editor": { - "version": "0.38.0", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.38.0.tgz", - "integrity": "sha512-11Fkh6yzEmwx7O0YoLxeae0qEGFwmyPRlVxpg7oF9czOOCB/iCjdJrG5I67da5WiXK3YJCxoz9TJFE8Tfq/v9A==", + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.40.0.tgz", + "integrity": "sha512-1wymccLEuFSMBvCk/jT1YDW/GuxMLYwnFwF9CDyYCxoTw2Pt379J3FUhwy9c43j51JdcxVPjwk0jm0EVDsBS2g==", "dev": true }, "node_modules/ms": { @@ -4134,9 +4134,9 @@ "dev": true }, "node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.8", @@ -4739,9 +4739,9 @@ } }, "node_modules/ts-loader": { - "version": "9.4.3", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.3.tgz", - "integrity": "sha512-n3hBnm6ozJYzwiwt5YRiJZkzktftRpMiBApHaJPoWLA+qetQBAXkHqCLM6nwSdRDimqVtA5ocIkcTRLMTt7yzA==", + "version": "9.4.4", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz", + "integrity": "sha512-MLukxDHBl8OJ5Dk3y69IsKVFRA/6MwzEqBgh+OXMPB/OD01KQuWPFd1WAQP8a5PeSCAxfnkhiuWqfmFJzJQt9w==", "dev": true, "dependencies": { "chalk": "^4.1.0", @@ -4777,16 +4777,16 @@ } }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" } }, "node_modules/unbox-primitive": { @@ -4913,9 +4913,9 @@ } }, "node_modules/webpack": { - "version": "5.84.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.84.1.tgz", - "integrity": "sha512-ZP4qaZ7vVn/K8WN/p990SGATmrL1qg4heP/MrVneczYtpDGJWlrgZv55vxaV2ul885Kz+25MP2kSXkPe3LZfmg==", + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", @@ -4927,7 +4927,7 @@ "acorn-import-assertions": "^1.9.0", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.14.1", + "enhanced-resolve": "^5.15.0", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -4937,7 +4937,7 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.3.7", "watchpack": "^2.4.0", @@ -4960,15 +4960,15 @@ } }, "node_modules/webpack-cli": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.1.tgz", - "integrity": "sha512-OLJwVMoXnXYH2ncNGU8gxVpUtm3ybvdioiTvHgUyBuyMLKiVvWy+QObzBsMtp5pH7qQoEuWgeEUQ/sU3ZJFzAw==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, "dependencies": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.0", - "@webpack-cli/info": "^2.0.1", - "@webpack-cli/serve": "^2.0.4", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", "colorette": "^2.0.14", "commander": "^10.0.1", "cross-spawn": "^7.0.3", @@ -5102,9 +5102,9 @@ } }, "node_modules/webpack-dev-server": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.0.tgz", - "integrity": "sha512-HmNB5QeSl1KpulTBQ8UT4FPrByYyaLxpJoQ0+s7EvUrMc16m0ZS1sgb1XGqzmgCPk0c9y+aaXxn11tbLzuM7NQ==", + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", "dev": true, "dependencies": { "@types/bonjour": "^3.5.9", @@ -5113,7 +5113,7 @@ "@types/serve-index": "^1.9.1", "@types/serve-static": "^1.13.10", "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", + "@types/ws": "^8.5.5", "ansi-html-community": "^0.0.8", "bonjour-service": "^1.0.11", "chokidar": "^3.5.3", @@ -5364,29 +5364,29 @@ }, "dependencies": { "@abaplint/core": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/core/-/core-2.101.8.tgz", - "integrity": "sha512-nQWE/MtaCQBGkMVI2/6UJw91K5dASqJr3lgco4dD6qmM2sJmIeW/P9uyyE2IlfklGu+wfk74F40HzKTvJgFG4g==", + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/core/-/core-2.102.17.tgz", + "integrity": "sha512-rpSPsQsUJrFgEb/ooPEQuu1Musw6JRiZNSywUi65lEYA3I1qDFiTS5GNpy7ntYQhjVLX4pPxhy+GXaw4hqLv5g==", "dev": true, "requires": { - "fast-xml-parser": "^4.2.2", + "fast-xml-parser": "^4.2.7", "json5": "^2.2.3", "vscode-languageserver-types": "^3.17.3" } }, "@abaplint/monaco": { - "version": "2.101.8", - "resolved": "https://registry.npmjs.org/@abaplint/monaco/-/monaco-2.101.8.tgz", - "integrity": "sha512-BEa63nTkpeQLJja8iAavfGfKYf/kb6fy7r4K1ypzsx3QqZicX9Cbh0LbrDaImhm+e1ErTwHijcZc5T2ebZq5qA==", + "version": "2.102.17", + "resolved": "https://registry.npmjs.org/@abaplint/monaco/-/monaco-2.102.17.tgz", + "integrity": "sha512-SrWWvjMZwFnUE9v/4TSwiiS5/cwERaRCAtcgOYMyy8VtzQEyK/gqRQ6jpKp1iWNvK9LHFDuYLXIRKAXt8aSowA==", "dev": true, "requires": { - "@abaplint/core": "^2.101.8" + "@abaplint/core": "^2.102.17" } }, "@abaplint/runtime": { - "version": "2.7.20", - "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.20.tgz", - "integrity": "sha512-Gpx5bDP97mBTdEPY6dZIXQW9vtpty1SQGtJSdBfuQK24ClCIJsMLQfcFzvI2GO37Wtxvqy11xFj0NMBNPclxXg==", + "version": "2.7.70", + "resolved": "https://registry.npmjs.org/@abaplint/runtime/-/runtime-2.7.70.tgz", + "integrity": "sha512-cVxVpeqG5WAnpQNpzPBnOz3mVOIafp7kFIpL4LfI3mKMgP/rddmL3OPrRKieP3LB90Zh4YzHiipWU5u5+fbdTg==", "dev": true, "requires": { "temporal-polyfill": "^0.1.1" @@ -5620,9 +5620,9 @@ } }, "@types/ws": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.1.tgz", - "integrity": "sha512-UxlLOfkuQnT2YSBCNq0x86SGOUxas6gAySFeDe2DcnEnA8655UIPoCDorWZCugcvKIL8IUI4oueUfJ1hhZSE2A==", + "version": "8.5.5", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.5.tgz", + "integrity": "sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==", "dev": true, "requires": { "@types/node": "*" @@ -5775,23 +5775,23 @@ } }, "@webpack-cli/configtest": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.0.tgz", - "integrity": "sha512-K/vuv72vpfSEZoo5KIU0a2FsEoYdW0DUMtMpB5X3LlUwshetMZRZRxB7sCsVji/lFaSxtQQ3aM9O4eMolXkU9w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", "dev": true, "requires": {} }, "@webpack-cli/info": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz", - "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", "dev": true, "requires": {} }, "@webpack-cli/serve": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.4.tgz", - "integrity": "sha512-0xRgjgDLdz6G7+vvDLlaRpFatJaJ69uTalZLRSMX5B3VUrDmXcrVA3+6fXXQgmYz7bY9AAgs348XQdmtLsK41A==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", "dev": true, "requires": {} }, @@ -6711,9 +6711,9 @@ "dev": true }, "enhanced-resolve": { - "version": "5.14.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.1.tgz", - "integrity": "sha512-Vklwq2vDKtl0y/vtwjSesgJ5MYS7Etuk5txS8VdKL4AOS1aUlD96zqIfsOSLQsdv3xgMRbtkWM8eG9XDfKUPow==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -6950,9 +6950,9 @@ "dev": true }, "fast-xml-parser": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.2.tgz", - "integrity": "sha512-DLzIPtQqmvmdq3VUKR7T6omPK/VCRNqgFlGtbESfyhcH2R4I8EzK1/K6E8PkRCK2EabWrUHK32NjYRbEFnnz0Q==", + "version": "4.2.7", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.7.tgz", + "integrity": "sha512-J8r6BriSLO1uj2miOk1NW0YVm8AGOOu3Si2HQp/cSmo6EA4m3fcwu2WKjJ4RK9wMLBtg69y1kS8baDiQBR41Ig==", "dev": true, "requires": { "strnum": "^1.0.5" @@ -7291,9 +7291,9 @@ } }, "html-webpack-plugin": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.1.tgz", - "integrity": "sha512-cTUzZ1+NqjGEKjmVgZKLMdiFg3m9MdRXkZW2OEe69WYVi5ONLMmlnSZdXzGGMOq0C8jGDrL6EWyEDDUioHO/pA==", + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz", + "integrity": "sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==", "dev": true, "requires": { "@types/html-minifier-terser": "^6.0.0", @@ -7886,9 +7886,9 @@ } }, "monaco-editor": { - "version": "0.38.0", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.38.0.tgz", - "integrity": "sha512-11Fkh6yzEmwx7O0YoLxeae0qEGFwmyPRlVxpg7oF9czOOCB/iCjdJrG5I67da5WiXK3YJCxoz9TJFE8Tfq/v9A==", + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.40.0.tgz", + "integrity": "sha512-1wymccLEuFSMBvCk/jT1YDW/GuxMLYwnFwF9CDyYCxoTw2Pt379J3FUhwy9c43j51JdcxVPjwk0jm0EVDsBS2g==", "dev": true }, "ms": { @@ -8522,9 +8522,9 @@ "dev": true }, "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "requires": { "@types/json-schema": "^7.0.8", @@ -9003,9 +9003,9 @@ "dev": true }, "ts-loader": { - "version": "9.4.3", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.3.tgz", - "integrity": "sha512-n3hBnm6ozJYzwiwt5YRiJZkzktftRpMiBApHaJPoWLA+qetQBAXkHqCLM6nwSdRDimqVtA5ocIkcTRLMTt7yzA==", + "version": "9.4.4", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz", + "integrity": "sha512-MLukxDHBl8OJ5Dk3y69IsKVFRA/6MwzEqBgh+OXMPB/OD01KQuWPFd1WAQP8a5PeSCAxfnkhiuWqfmFJzJQt9w==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -9031,9 +9031,9 @@ } }, "typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", "dev": true }, "unbox-primitive": { @@ -9140,9 +9140,9 @@ } }, "webpack": { - "version": "5.84.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.84.1.tgz", - "integrity": "sha512-ZP4qaZ7vVn/K8WN/p990SGATmrL1qg4heP/MrVneczYtpDGJWlrgZv55vxaV2ul885Kz+25MP2kSXkPe3LZfmg==", + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.3", @@ -9154,7 +9154,7 @@ "acorn-import-assertions": "^1.9.0", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.14.1", + "enhanced-resolve": "^5.15.0", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -9164,7 +9164,7 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.3.7", "watchpack": "^2.4.0", @@ -9172,15 +9172,15 @@ } }, "webpack-cli": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.1.tgz", - "integrity": "sha512-OLJwVMoXnXYH2ncNGU8gxVpUtm3ybvdioiTvHgUyBuyMLKiVvWy+QObzBsMtp5pH7qQoEuWgeEUQ/sU3ZJFzAw==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.0", - "@webpack-cli/info": "^2.0.1", - "@webpack-cli/serve": "^2.0.4", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", "colorette": "^2.0.14", "commander": "^10.0.1", "cross-spawn": "^7.0.3", @@ -9267,9 +9267,9 @@ } }, "webpack-dev-server": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.0.tgz", - "integrity": "sha512-HmNB5QeSl1KpulTBQ8UT4FPrByYyaLxpJoQ0+s7EvUrMc16m0ZS1sgb1XGqzmgCPk0c9y+aaXxn11tbLzuM7NQ==", + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", "dev": true, "requires": { "@types/bonjour": "^3.5.9", @@ -9278,7 +9278,7 @@ "@types/serve-index": "^1.9.1", "@types/serve-static": "^1.13.10", "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", + "@types/ws": "^8.5.5", "ansi-html-community": "^0.0.8", "bonjour-service": "^1.0.11", "chokidar": "^3.5.3", diff --git a/web/package.json b/web/package.json index 3eab2669..eb438624 100644 --- a/web/package.json +++ b/web/package.json @@ -11,25 +11,25 @@ "author": "", "license": "MIT", "devDependencies": { - "@abaplint/core": "^2.101.8", - "@abaplint/monaco": "^2.101.8", - "@abaplint/runtime": "^2.7.20", + "@abaplint/core": "^2.102.17", + "@abaplint/monaco": "^2.102.17", + "@abaplint/runtime": "^2.7.70", "buffer": "^6.0.3", "crypto-browserify": "^3.12.0", "css-loader": "^6.8.1", "file-loader": "^6.2.0", - "html-webpack-plugin": "^5.5.1", - "monaco-editor": "^0.38.0", + "html-webpack-plugin": "^5.5.3", + "monaco-editor": "=0.40.0", "path-browserify": "^1.0.1", "split-grid": "^1.0.11", "stream-browserify": "^3.0.0", "string_decoder": "^1.3.0", "style-loader": "^3.3.3", - "ts-loader": "^9.4.3", - "typescript": "^5.0.4", - "webpack": "^5.84.1", - "webpack-cli": "^5.1.1", - "webpack-dev-server": "^4.15.0" + "ts-loader": "^9.4.4", + "typescript": "^5.1.6", + "webpack": "^5.88.2", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1" }, "dependencies": { "web-encoding": "^1.1.5" diff --git a/web/webpack.config.js b/web/webpack.config.js index 11c14c87..94917972 100644 --- a/web/webpack.config.js +++ b/web/webpack.config.js @@ -24,10 +24,11 @@ module.exports = { fallback: { "./%23ui2%23cl_json.clas.mjs": false, "buffer": require.resolve("buffer/"), - "crypto": require.resolve("crypto-browserify"), + "crypto": false, "fs": false, "http": false, "https": false, + "process": false, "net": false, "path": require.resolve("path-browserify"), "stream": require.resolve("stream-browserify"),