You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ta...@apache.org on 2023/02/28 13:54:38 UTC

[myfaces] branch main updated: MYFACES-4575, MYFACES-4567 (#539)

This is an automated email from the ASF dual-hosted git repository.

tandraschko pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/myfaces.git


The following commit(s) were added to refs/heads/main by this push:
     new c12d892d4 MYFACES-4575, MYFACES-4567 (#539)
c12d892d4 is described below

commit c12d892d4ce157591e3115a29e033c9c94893b7a
Author: Werner Punz <we...@apache.org>
AuthorDate: Tue Feb 28 14:54:33 2023 +0100

    MYFACES-4575, MYFACES-4567 (#539)
    
    * https://issues.apache.org/jira/browse/MYFACES-4567:
    fixing tsdoc generation and improving the tsdocs
    
    * https://issues.apache.org/jira/browse/MYFACES-4575:
    Fixing the test.
    Updating the client side dependencies!
    Fixing a few tsdoc errors!
    
    * MYFACES-4572:
    got lost with the latest merge, backporting it back to jsf_ts and updating the RC number!
---
 api/src/client/package-lock.json                   | 363 +++++++++++++++++----
 api/src/client/package.json                        |   8 +-
 api/src/client/typescript/faces/api/_api.ts        |  52 ++-
 api/src/client/typescript/faces/impl/AjaxImpl.ts   |   2 +-
 .../_ext/monadish/DomQueryTest.spec.ts             |   6 +-
 .../frameworkBase/_ext/shared/StandardInits.ts     |  35 ++
 .../renderkit/html/HtmlCommandScriptRenderer.java  |   2 +-
 7 files changed, 387 insertions(+), 81 deletions(-)

diff --git a/api/src/client/package-lock.json b/api/src/client/package-lock.json
index 75ff25271..db5bb2b28 100644
--- a/api/src/client/package-lock.json
+++ b/api/src/client/package-lock.json
@@ -12,7 +12,7 @@
         "@types/chai": "^4.3.4",
         "@types/fs-extra": "^11.0.1",
         "@types/mocha": "^10.0.1",
-        "@types/node": "^18.13.0",
+        "@types/node": "^18.14.2",
         "@types/sinon": "^10.0.13",
         "babel-plugin-syntax-dynamic-import": "^6.18.0",
         "chai": "^4.3.7",
@@ -22,9 +22,9 @@
         "html-webpack-plugin": "^5.5.0",
         "jsdom": "^21.1.0",
         "jsdom-global": "^3.0.2",
-        "jsf.js_next_gen": "4.0.0-RC.35",
+        "jsf.js_next_gen": "4.0.0-RC.37",
         "mocha": "^10.2.0",
-        "npm-check-updates": "^16.7.4",
+        "npm-check-updates": "^16.7.10",
         "nyc": "^15.1.0",
         "replace-in-file": "^6.3.5",
         "rxjs": "^7.8.0",
@@ -32,7 +32,7 @@
         "terser-webpack-plugin": "^5.3.6",
         "ts-loader": "^9.4.2",
         "ts-node": "^10.9.1",
-        "typedoc": "^0.23.25",
+        "typedoc": "^0.23.26",
         "typescript": "^4.9.5",
         "webpack": "^5.75.0",
         "webpack-cli": "^5.0.1",
@@ -770,9 +770,9 @@
       }
     },
     "node_modules/@npmcli/installed-package-contents": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz",
-      "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==",
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz",
+      "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==",
       "dev": true,
       "dependencies": {
         "npm-bundled": "^3.0.0",
@@ -1150,9 +1150,9 @@
       "dev": true
     },
     "node_modules/@types/node": {
-      "version": "18.13.0",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz",
-      "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==",
+      "version": "18.14.2",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.2.tgz",
+      "integrity": "sha512-1uEQxww3DaghA0RxqHx0O0ppVlo43pJhepY51OxuQIKHpjbnYLA7vcdwioNPzIqmC2u3I/dmylcqjlh0e7AyUA==",
       "dev": true
     },
     "node_modules/@types/qs": {
@@ -4998,9 +4998,9 @@
       }
     },
     "node_modules/jsf.js_next_gen": {
-      "version": "4.0.0-RC.35",
-      "resolved": "https://registry.npmjs.org/jsf.js_next_gen/-/jsf.js_next_gen-4.0.0-RC.35.tgz",
-      "integrity": "sha512-jey9OKPiFLdVTesIaQwuMI/9hJX+BNj3fPop2cz3df4/fVMnXmg9EVNziS0H/2rlklmHBym2TRMgvJxBKMCS3w==",
+      "version": "4.0.0-RC.37",
+      "resolved": "https://registry.npmjs.org/jsf.js_next_gen/-/jsf.js_next_gen-4.0.0-RC.37.tgz",
+      "integrity": "sha512-bkTcKkn13IH1j+ru3lj1YuqKUhnrvVuEUWGtGMRJ1QX3yOfAb6ViIyXD+om5FNew4yLcsdImuRDgYBLgmzTQgw==",
       "dev": true,
       "dependencies": {
         "mona-dish": "^0.26.0"
@@ -5638,9 +5638,9 @@
       }
     },
     "node_modules/minipass": {
-      "version": "4.0.3",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.3.tgz",
-      "integrity": "sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==",
+      "version": "4.2.4",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz",
+      "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==",
       "dev": true,
       "engines": {
         "node": ">=8"
@@ -6102,9 +6102,9 @@
       }
     },
     "node_modules/npm-check-updates": {
-      "version": "16.7.4",
-      "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.7.4.tgz",
-      "integrity": "sha512-joYzlwYN4I3QDOOcAoaFS4qo/Vq1fZN86b14pjyiJw82NxerY+Zk1MzMHKAsKypKlSANjFO4CibdkDVlKQ7IKg==",
+      "version": "16.7.10",
+      "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.7.10.tgz",
+      "integrity": "sha512-sLDgYD8ebkH9Jd6mPIq7UDGLr3DAxkHl6ZuJrEF4rauLv6DqHBxtnF16MHUPN+/eBt5QbH4GL/+nxfSAFm3TfQ==",
       "dev": true,
       "dependencies": {
         "chalk": "^5.2.0",
@@ -6120,9 +6120,9 @@
         "json-parse-helpfulerror": "^1.0.3",
         "jsonlines": "^0.1.1",
         "lodash": "^4.17.21",
-        "minimatch": "^6.1.6",
+        "minimatch": "^7.0.1",
         "p-map": "^4.0.0",
-        "pacote": "15.0.8",
+        "pacote": "15.1.1",
         "parse-github-url": "^1.0.2",
         "progress": "^2.0.3",
         "prompts-ncu": "^2.5.1",
@@ -6168,9 +6168,9 @@
       }
     },
     "node_modules/npm-check-updates/node_modules/minimatch": {
-      "version": "6.2.0",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
-      "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+      "version": "7.3.0",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.3.0.tgz",
+      "integrity": "sha512-WaMDuhKa7a6zKiwplR1AOz+zGvJba24k5VU1Cy6NhEguavT2YRlHxuINUgTas4wiS6fwBpYq4TcA1XIECSntyw==",
       "dev": true,
       "dependencies": {
         "brace-expansion": "^2.0.1"
@@ -6774,9 +6774,9 @@
       }
     },
     "node_modules/pacote": {
-      "version": "15.0.8",
-      "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz",
-      "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==",
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz",
+      "integrity": "sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==",
       "dev": true,
       "dependencies": {
         "@npmcli/git": "^4.0.0",
@@ -6794,6 +6794,7 @@
         "promise-retry": "^2.0.1",
         "read-package-json": "^6.0.0",
         "read-package-json-fast": "^3.0.0",
+        "sigstore": "^1.0.0",
         "ssri": "^10.0.0",
         "tar": "^6.1.11"
       },
@@ -8025,6 +8026,65 @@
       "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
       "dev": true
     },
+    "node_modules/sigstore": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz",
+      "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==",
+      "dev": true,
+      "dependencies": {
+        "make-fetch-happen": "^11.0.1",
+        "tuf-js": "^1.0.0"
+      },
+      "bin": {
+        "sigstore": "bin/sigstore.js"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      }
+    },
+    "node_modules/sigstore/node_modules/make-fetch-happen": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
+      "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+      "dev": true,
+      "dependencies": {
+        "agentkeepalive": "^4.2.1",
+        "cacache": "^17.0.0",
+        "http-cache-semantics": "^4.1.1",
+        "http-proxy-agent": "^5.0.0",
+        "https-proxy-agent": "^5.0.0",
+        "is-lambda": "^1.0.1",
+        "lru-cache": "^7.7.1",
+        "minipass": "^4.0.0",
+        "minipass-fetch": "^3.0.0",
+        "minipass-flush": "^1.0.5",
+        "minipass-pipeline": "^1.2.4",
+        "negotiator": "^0.6.3",
+        "promise-retry": "^2.0.1",
+        "socks-proxy-agent": "^7.0.0",
+        "ssri": "^10.0.0"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      }
+    },
+    "node_modules/sigstore/node_modules/minipass-fetch": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
+      "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+      "dev": true,
+      "dependencies": {
+        "minipass": "^4.0.0",
+        "minipass-sized": "^1.0.3",
+        "minizlib": "^2.1.2"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      },
+      "optionalDependencies": {
+        "encoding": "^0.1.13"
+      }
+    },
     "node_modules/sinon": {
       "version": "15.0.1",
       "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz",
@@ -8711,6 +8771,77 @@
       "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==",
       "dev": true
     },
+    "node_modules/tuf-js": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz",
+      "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==",
+      "dev": true,
+      "dependencies": {
+        "make-fetch-happen": "^11.0.1",
+        "minimatch": "^6.1.0"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      }
+    },
+    "node_modules/tuf-js/node_modules/make-fetch-happen": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
+      "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+      "dev": true,
+      "dependencies": {
+        "agentkeepalive": "^4.2.1",
+        "cacache": "^17.0.0",
+        "http-cache-semantics": "^4.1.1",
+        "http-proxy-agent": "^5.0.0",
+        "https-proxy-agent": "^5.0.0",
+        "is-lambda": "^1.0.1",
+        "lru-cache": "^7.7.1",
+        "minipass": "^4.0.0",
+        "minipass-fetch": "^3.0.0",
+        "minipass-flush": "^1.0.5",
+        "minipass-pipeline": "^1.2.4",
+        "negotiator": "^0.6.3",
+        "promise-retry": "^2.0.1",
+        "socks-proxy-agent": "^7.0.0",
+        "ssri": "^10.0.0"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      }
+    },
+    "node_modules/tuf-js/node_modules/minimatch": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
+      "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/tuf-js/node_modules/minipass-fetch": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
+      "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+      "dev": true,
+      "dependencies": {
+        "minipass": "^4.0.0",
+        "minipass-sized": "^1.0.3",
+        "minizlib": "^2.1.2"
+      },
+      "engines": {
+        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+      },
+      "optionalDependencies": {
+        "encoding": "^0.1.13"
+      }
+    },
     "node_modules/type-check": {
       "version": "0.3.2",
       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
@@ -8764,14 +8895,14 @@
       }
     },
     "node_modules/typedoc": {
-      "version": "0.23.25",
-      "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.25.tgz",
-      "integrity": "sha512-O1he153qVyoCgJYSvIyY3bPP1wAJTegZfa6tL3APinSZhJOf8CSd8F/21M6ex8pUY/fuY6n0jAsT4fIuMGA6sA==",
+      "version": "0.23.26",
+      "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.26.tgz",
+      "integrity": "sha512-5m4KwR5tOLnk0OtMaRn9IdbeRM32uPemN9kur7YK9wFqx8U0CYrvO9aVq6ysdZSV1c824BTm+BuQl2Ze/k1HtA==",
       "dev": true,
       "dependencies": {
         "lunr": "^2.3.9",
         "marked": "^4.2.12",
-        "minimatch": "^6.1.6",
+        "minimatch": "^7.1.3",
         "shiki": "^0.14.1"
       },
       "bin": {
@@ -8785,9 +8916,9 @@
       }
     },
     "node_modules/typedoc/node_modules/minimatch": {
-      "version": "6.2.0",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
-      "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+      "version": "7.3.0",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.3.0.tgz",
+      "integrity": "sha512-WaMDuhKa7a6zKiwplR1AOz+zGvJba24k5VU1Cy6NhEguavT2YRlHxuINUgTas4wiS6fwBpYq4TcA1XIECSntyw==",
       "dev": true,
       "dependencies": {
         "brace-expansion": "^2.0.1"
@@ -10374,9 +10505,9 @@
       }
     },
     "@npmcli/installed-package-contents": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz",
-      "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==",
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz",
+      "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==",
       "dev": true,
       "requires": {
         "npm-bundled": "^3.0.0",
@@ -10705,9 +10836,9 @@
       "dev": true
     },
     "@types/node": {
-      "version": "18.13.0",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz",
-      "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==",
+      "version": "18.14.2",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.2.tgz",
+      "integrity": "sha512-1uEQxww3DaghA0RxqHx0O0ppVlo43pJhepY51OxuQIKHpjbnYLA7vcdwioNPzIqmC2u3I/dmylcqjlh0e7AyUA==",
       "dev": true
     },
     "@types/qs": {
@@ -13630,9 +13761,9 @@
       "dev": true
     },
     "jsf.js_next_gen": {
-      "version": "4.0.0-RC.35",
-      "resolved": "https://registry.npmjs.org/jsf.js_next_gen/-/jsf.js_next_gen-4.0.0-RC.35.tgz",
-      "integrity": "sha512-jey9OKPiFLdVTesIaQwuMI/9hJX+BNj3fPop2cz3df4/fVMnXmg9EVNziS0H/2rlklmHBym2TRMgvJxBKMCS3w==",
+      "version": "4.0.0-RC.37",
+      "resolved": "https://registry.npmjs.org/jsf.js_next_gen/-/jsf.js_next_gen-4.0.0-RC.37.tgz",
+      "integrity": "sha512-bkTcKkn13IH1j+ru3lj1YuqKUhnrvVuEUWGtGMRJ1QX3yOfAb6ViIyXD+om5FNew4yLcsdImuRDgYBLgmzTQgw==",
       "dev": true,
       "requires": {
         "mona-dish": "^0.26.0"
@@ -14121,9 +14252,9 @@
       "dev": true
     },
     "minipass": {
-      "version": "4.0.3",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.3.tgz",
-      "integrity": "sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==",
+      "version": "4.2.4",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz",
+      "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==",
       "dev": true
     },
     "minipass-collect": {
@@ -14490,9 +14621,9 @@
       }
     },
     "npm-check-updates": {
-      "version": "16.7.4",
-      "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.7.4.tgz",
-      "integrity": "sha512-joYzlwYN4I3QDOOcAoaFS4qo/Vq1fZN86b14pjyiJw82NxerY+Zk1MzMHKAsKypKlSANjFO4CibdkDVlKQ7IKg==",
+      "version": "16.7.10",
+      "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.7.10.tgz",
+      "integrity": "sha512-sLDgYD8ebkH9Jd6mPIq7UDGLr3DAxkHl6ZuJrEF4rauLv6DqHBxtnF16MHUPN+/eBt5QbH4GL/+nxfSAFm3TfQ==",
       "dev": true,
       "requires": {
         "chalk": "^5.2.0",
@@ -14508,9 +14639,9 @@
         "json-parse-helpfulerror": "^1.0.3",
         "jsonlines": "^0.1.1",
         "lodash": "^4.17.21",
-        "minimatch": "^6.1.6",
+        "minimatch": "^7.0.1",
         "p-map": "^4.0.0",
-        "pacote": "15.0.8",
+        "pacote": "15.1.1",
         "parse-github-url": "^1.0.2",
         "progress": "^2.0.3",
         "prompts-ncu": "^2.5.1",
@@ -14540,9 +14671,9 @@
           "dev": true
         },
         "minimatch": {
-          "version": "6.2.0",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
-          "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+          "version": "7.3.0",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.3.0.tgz",
+          "integrity": "sha512-WaMDuhKa7a6zKiwplR1AOz+zGvJba24k5VU1Cy6NhEguavT2YRlHxuINUgTas4wiS6fwBpYq4TcA1XIECSntyw==",
           "dev": true,
           "requires": {
             "brace-expansion": "^2.0.1"
@@ -15004,9 +15135,9 @@
       }
     },
     "pacote": {
-      "version": "15.0.8",
-      "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz",
-      "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==",
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz",
+      "integrity": "sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==",
       "dev": true,
       "requires": {
         "@npmcli/git": "^4.0.0",
@@ -15024,6 +15155,7 @@
         "promise-retry": "^2.0.1",
         "read-package-json": "^6.0.0",
         "read-package-json-fast": "^3.0.0",
+        "sigstore": "^1.0.0",
         "ssri": "^10.0.0",
         "tar": "^6.1.11"
       }
@@ -15955,6 +16087,53 @@
       "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
       "dev": true
     },
+    "sigstore": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz",
+      "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==",
+      "dev": true,
+      "requires": {
+        "make-fetch-happen": "^11.0.1",
+        "tuf-js": "^1.0.0"
+      },
+      "dependencies": {
+        "make-fetch-happen": {
+          "version": "11.0.3",
+          "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
+          "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+          "dev": true,
+          "requires": {
+            "agentkeepalive": "^4.2.1",
+            "cacache": "^17.0.0",
+            "http-cache-semantics": "^4.1.1",
+            "http-proxy-agent": "^5.0.0",
+            "https-proxy-agent": "^5.0.0",
+            "is-lambda": "^1.0.1",
+            "lru-cache": "^7.7.1",
+            "minipass": "^4.0.0",
+            "minipass-fetch": "^3.0.0",
+            "minipass-flush": "^1.0.5",
+            "minipass-pipeline": "^1.2.4",
+            "negotiator": "^0.6.3",
+            "promise-retry": "^2.0.1",
+            "socks-proxy-agent": "^7.0.0",
+            "ssri": "^10.0.0"
+          }
+        },
+        "minipass-fetch": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
+          "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+          "dev": true,
+          "requires": {
+            "encoding": "^0.1.13",
+            "minipass": "^4.0.0",
+            "minipass-sized": "^1.0.3",
+            "minizlib": "^2.1.2"
+          }
+        }
+      }
+    },
     "sinon": {
       "version": "15.0.1",
       "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz",
@@ -16476,6 +16655,62 @@
       "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==",
       "dev": true
     },
+    "tuf-js": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz",
+      "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==",
+      "dev": true,
+      "requires": {
+        "make-fetch-happen": "^11.0.1",
+        "minimatch": "^6.1.0"
+      },
+      "dependencies": {
+        "make-fetch-happen": {
+          "version": "11.0.3",
+          "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
+          "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+          "dev": true,
+          "requires": {
+            "agentkeepalive": "^4.2.1",
+            "cacache": "^17.0.0",
+            "http-cache-semantics": "^4.1.1",
+            "http-proxy-agent": "^5.0.0",
+            "https-proxy-agent": "^5.0.0",
+            "is-lambda": "^1.0.1",
+            "lru-cache": "^7.7.1",
+            "minipass": "^4.0.0",
+            "minipass-fetch": "^3.0.0",
+            "minipass-flush": "^1.0.5",
+            "minipass-pipeline": "^1.2.4",
+            "negotiator": "^0.6.3",
+            "promise-retry": "^2.0.1",
+            "socks-proxy-agent": "^7.0.0",
+            "ssri": "^10.0.0"
+          }
+        },
+        "minimatch": {
+          "version": "6.2.0",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
+          "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "^2.0.1"
+          }
+        },
+        "minipass-fetch": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
+          "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+          "dev": true,
+          "requires": {
+            "encoding": "^0.1.13",
+            "minipass": "^4.0.0",
+            "minipass-sized": "^1.0.3",
+            "minizlib": "^2.1.2"
+          }
+        }
+      }
+    },
     "type-check": {
       "version": "0.3.2",
       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
@@ -16517,21 +16752,21 @@
       }
     },
     "typedoc": {
-      "version": "0.23.25",
-      "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.25.tgz",
-      "integrity": "sha512-O1he153qVyoCgJYSvIyY3bPP1wAJTegZfa6tL3APinSZhJOf8CSd8F/21M6ex8pUY/fuY6n0jAsT4fIuMGA6sA==",
+      "version": "0.23.26",
+      "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.26.tgz",
+      "integrity": "sha512-5m4KwR5tOLnk0OtMaRn9IdbeRM32uPemN9kur7YK9wFqx8U0CYrvO9aVq6ysdZSV1c824BTm+BuQl2Ze/k1HtA==",
       "dev": true,
       "requires": {
         "lunr": "^2.3.9",
         "marked": "^4.2.12",
-        "minimatch": "^6.1.6",
+        "minimatch": "^7.1.3",
         "shiki": "^0.14.1"
       },
       "dependencies": {
         "minimatch": {
-          "version": "6.2.0",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
-          "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+          "version": "7.3.0",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.3.0.tgz",
+          "integrity": "sha512-WaMDuhKa7a6zKiwplR1AOz+zGvJba24k5VU1Cy6NhEguavT2YRlHxuINUgTas4wiS6fwBpYq4TcA1XIECSntyw==",
           "dev": true,
           "requires": {
             "brace-expansion": "^2.0.1"
diff --git a/api/src/client/package.json b/api/src/client/package.json
index 13fee2ebf..fe364205c 100644
--- a/api/src/client/package.json
+++ b/api/src/client/package.json
@@ -14,7 +14,7 @@
     "@types/chai": "^4.3.4",
     "@types/fs-extra": "^11.0.1",
     "@types/mocha": "^10.0.1",
-    "@types/node": "^18.13.0",
+    "@types/node": "^18.14.2",
     "@types/sinon": "^10.0.13",
     "babel-plugin-syntax-dynamic-import": "^6.18.0",
     "chai": "^4.3.7",
@@ -24,9 +24,9 @@
     "html-webpack-plugin": "^5.5.0",
     "jsdom": "^21.1.0",
     "jsdom-global": "^3.0.2",
-    "jsf.js_next_gen": "4.0.0-RC.35",
+    "jsf.js_next_gen": "4.0.0-RC.37",
     "mocha": "^10.2.0",
-    "npm-check-updates": "^16.7.4",
+    "npm-check-updates": "^16.7.10",
     "nyc": "^15.1.0",
     "replace-in-file": "^6.3.5",
     "rxjs": "^7.8.0",
@@ -34,7 +34,7 @@
     "terser-webpack-plugin": "^5.3.6",
     "ts-loader": "^9.4.2",
     "ts-node": "^10.9.1",
-    "typedoc": "^0.23.25",
+    "typedoc": "^0.23.26",
     "typescript": "^4.9.5",
     "webpack": "^5.75.0",
     "webpack-cli": "^5.0.1",
diff --git a/api/src/client/typescript/faces/api/_api.ts b/api/src/client/typescript/faces/api/_api.ts
index d957a3c63..57ab1f8d3 100644
--- a/api/src/client/typescript/faces/api/_api.ts
+++ b/api/src/client/typescript/faces/api/_api.ts
@@ -99,7 +99,7 @@ export module faces {
         return Implementation.getClientWindow(rootNode);
     }
 
-    //private helper functions
+    // private helper functions
     function getSeparatorChar(): string {
         const sep = '#{facesContext.namingContainerSeparatorChar}';
         //We now enable standalone mode, the separator char was not mapped we make a fallback to 2.3 behavior
@@ -158,7 +158,7 @@ export module faces {
          *     <li> eventData.responseXML: the request response xml </li>
          * </ul>
          *
-         * @param errorListener error handler must be of the format <i>function errorListener(&lt;errorData&gt;)</i>
+         * @param errorFunc error handler must be of the format <i>function errorListener(&lt;errorData&gt;)</i>
          */
         export function addOnError(errorFunc: (data: ErrorData) => void): void {
             Implementation.addOnError(<any>errorFunc);
@@ -168,7 +168,7 @@ export module faces {
          * Adds a global event listener to the ajax event queue. The event listener must be a function
          * of following format: <i>function eventListener(&lt;eventData&gt;)</i>
          *
-         * @param eventListener event must be of the format <i>function eventListener(&lt;eventData&gt;)</i>
+         * @param eventFunc event must be of the format <i>function eventListener(&lt;eventData&gt;)</i>
          */
         export function addOnEvent(eventFunc: (data: EventData) => void): void {
             Implementation.addOnEvent(<any>eventFunc);
@@ -183,7 +183,7 @@ export module faces {
          * if any of the code returns false, the execution
          * is terminated prematurely skipping the rest of the code!
          *
-         * @param {DomNode} source, the callee object
+         * @param {HTMLElement | String} source, the callee object
          * @param {Event} event, the event object of the callee event triggering this function
          * @param funcs ... arbitrary array of functions or strings
          * @returns true if the chain has succeeded false otherwise
@@ -219,7 +219,7 @@ export module faces {
 
         /**
          * Open the web socket on the given channel.
-         * @param  channel The name of the web socket channel.
+         * @param  socketClientId The name of the web socket channel.
          * @throws  Error is thrown, if the channel is unknown.
          */
         export function open(socketClientId: string): void {
@@ -228,7 +228,7 @@ export module faces {
 
         /**
          * Close the web socket on the given channel.
-         * @param  channel The name of the web socket channel.
+         * @param  socketClientId The id of the web socket client.
          * @throws  Error is thrown, if the channel is unknown.
          */
         export function close(socketClientId: string): void {
@@ -248,8 +248,8 @@ export module myfaces {
      * @param event the event
      * @param eventName event name for java.jakarta.faces.behavior.evemnt
      * @param execute execute list as passed down in faces.ajax.request
-     * @param render
-     * @param options
+     * @param render the render list as string
+     * @param options the options which need to be mered in
      */
     export function ab(source: Element, event: Event, eventName: string, execute: string, render: string, options: Options = {}): void {
         if (eventName) {
@@ -266,6 +266,42 @@ export module myfaces {
         (window?.faces ?? window.jsf).ajax.request(source, event, options);
     }
 
+
+    const onReadyChain: Array<() => void> = [];
+    let readyStateListener = null;
+    // noinspection JSUnusedGlobalSymbols
+    /**
+     * Helper function in the myfaces namespace to handle document ready properly for the load case
+     * the ajax case, does not need proper treatment, since it is deferred anyway.
+     * Used by command script as helper function!
+     *
+     * @param executionFunc the function to be executed upon ready
+     */
+    export function onOnDomReady(executionFunc: () => void) {
+        if(document.readyState !== "complete") {
+            onReadyChain.push(executionFunc);
+            if(!readyStateListener) {
+                readyStateListener = () => {
+                    window.removeEventListener("DOMContentLoaded", readyStateListener);
+                    readyStateListener = null;
+                    try {
+                        onReadyChain.forEach(func => func());
+                    } finally {
+                        //done we clear now the ready chain
+                        onReadyChain.length = 0;
+                    }
+                };
+                window.addEventListener("DOMContentLoaded", readyStateListener);
+            }
+        } else {
+            if(readyStateListener) {
+                readyStateListener();
+            }
+            executionFunc();
+        }
+
+    }
+
     /**
      * legacy oam functions
      */
diff --git a/api/src/client/typescript/faces/impl/AjaxImpl.ts b/api/src/client/typescript/faces/impl/AjaxImpl.ts
index d765d4292..61767c759 100644
--- a/api/src/client/typescript/faces/impl/AjaxImpl.ts
+++ b/api/src/client/typescript/faces/impl/AjaxImpl.ts
@@ -503,7 +503,7 @@ export module Implementation {
          * or non-existent. If they exist all of them must be the same
          */
 
-        let formWindowId: Optional<string> = searchRoot.stream.map<string>(getValue).reduce(differenceCheck, INIT);
+        let formWindowId: Optional<string> = searchRoot.stream.map(getValue).reduce(differenceCheck, INIT);
 
 
         //if the resulting window id is set on altered then we have an unresolvable problem
diff --git a/api/src/client/typescript/faces/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts b/api/src/client/typescript/faces/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts
index 093e9d8a4..f21317d33 100644
--- a/api/src/client/typescript/faces/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts
+++ b/api/src/client/typescript/faces/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts
@@ -376,7 +376,7 @@ describe('DOMQuery tests', function () {
         expect(length2 == 8).to.be.true;
 
         let count = DomQuery.byId("embed1").elements
-            .stream.map<number>(item => item.disabled ? 1 : 0)
+            .stream.map(item => item.disabled ? 1 : 0)
             .reduce((val1, val2) => val1 + val2, 0);
         expect(count.value).to.eq(1);
 
@@ -385,12 +385,12 @@ describe('DOMQuery tests', function () {
             .each(item => item.disabled = false);
 
         count = DomQuery.byId("embed1").elements
-            .stream.map<number>(item => item.disabled ? 1 : 0)
+            .stream.map(item => item.disabled ? 1 : 0)
             .reduce((val1, val2) => val1 + val2, 0);
         expect(count.value).to.eq(0);
 
         count = DomQuery.byId("embed1").elements
-            .stream.map<number>(item => item.attr("checked").isPresent() ? 1 : 0)
+            .stream.map(item => item.attr("checked").isPresent() ? 1 : 0)
             .reduce((val1, val2) => val1 + val2, 0);
         expect(count.value).to.eq(1);
 
diff --git a/api/src/client/typescript/faces/test/frameworkBase/_ext/shared/StandardInits.ts b/api/src/client/typescript/faces/test/frameworkBase/_ext/shared/StandardInits.ts
index 906d9a2c9..79ef5f3eb 100644
--- a/api/src/client/typescript/faces/test/frameworkBase/_ext/shared/StandardInits.ts
+++ b/api/src/client/typescript/faces/test/frameworkBase/_ext/shared/StandardInits.ts
@@ -111,6 +111,38 @@ export module StandardInits {
 </html>`;
 
 
+    /**
+     * a page based on Tobago for a file upload
+     */
+    const HTML_TOBAGO_FILE_FORM = `<!DOCTYPE html>
+<html lang='de'>
+ <head>
+  <meta charset='UTF-8'>
+  <meta name='viewport' content='width=device-width, initial-scale=1.0'>
+  <title>Test</title>
+ </head>
+ <body>
+  <tobago-page locale='de' class='container-fluid' id='page' focus-on-error='true' wait-overlay-delay-full='1000' wait-overlay-delay-ajax='1000'>
+   <form action='/content/100-upload/File_Upload.xhtml' id='page::form' method='post' enctype='multipart/form-data' accept-charset='UTF-8' data-tobago-context-path=''>
+    <input type='hidden' name='javax.faces.source' id='javax.faces.source' disabled='disabled'>
+    <tobago-focus id='page::lastFocusId'>
+     <input type='hidden' name='page::lastFocusId' id='page::lastFocusId::field'>
+    </tobago-focus>
+    <input type='hidden' name='org.apache.myfaces.tobago.webapp.Secret' id='org.apache.myfaces.tobago.webapp.Secret' value='secretValue'>
+    <tobago-file id='page:fileAjax' class='tobago-auto-spacing'>
+     <div class='input-group'>
+      <input type='file' tabindex='-1' id='page:fileAjax::field' class='form-control' name='page:fileAjax'>
+      <tobago-behavior event='change' client-id='page:fileAjax' field-id='page:fileAjax::field' execute='page:fileAjax'></tobago-behavior>
+      <label class='input-group-text' for='page:fileAjax::field'><span><i class='bi-folder2-open'></i></span></label>
+     </div>
+    </tobago-file>
+    <div class='tobago-page-menuStore'>
+    </div>
+    <span id='page::jsf-state-container'><input type='hidden' name='javax.faces.ViewState' id='j_id__v_0:javax.faces.ViewState:1' value='viewStateValue' autocomplete='off'><input type='hidden' name='javax.faces.RenderKitId' value='tobago'><input type='hidden' id='j_id__v_0:javax.faces.ClientWindow:1' name='javax.faces.ClientWindow' value='clientWindowValue'></span>
+   </form>
+  </tobago-page>
+ </body>
+</html>`;
 
     /**
      * a page simulating basically a simple faces form
@@ -350,6 +382,9 @@ export module StandardInits {
     export function defaultFileForm(withJsf = true): Promise<() => void> {
         return init(HTML_FILE_FORM_DEFAULT, withJsf);
     }
+    export function tobagoFileForm(withJsf = true): Promise<() => void> {
+        return init(HTML_TOBAGO_FILE_FORM, withJsf);
+    }
     export function defaultFileForm_23(withJsf = true): Promise<() => void> {
         return init(HTML_FILE_FORM_DEFAULT.replace(/jakarta/gi, "javax"), withJsf, false);
     }
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlCommandScriptRenderer.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlCommandScriptRenderer.java
index 1e3c0713d..07b2a55a3 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlCommandScriptRenderer.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlCommandScriptRenderer.java
@@ -108,7 +108,7 @@ public class HtmlCommandScriptRenderer extends HtmlRenderer
         if (commandScript.isAutorun())
         {
             script.append(";");
-            script.append("myfaces._impl.core._Runtime.addOnLoad(window,");
+            script.append("myfaces.onOnDomReady(");
             script.append(name);
             script.append(");");
         }