@mavogel/cdk-vscode-server 0.0.2
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/.jsii +4351 -0
- package/API.md +367 -0
- package/CONTRIBUTING.md +59 -0
- package/LICENSE +202 -0
- package/README.md +183 -0
- package/assets/installer/installer.lambda/index.js +112 -0
- package/assets/secret-retriever/secret-retriever.lambda/index.js +57 -0
- package/docs/img/vscode-server-ui-login-min.png +0 -0
- package/docs/img/vscode-server-ui-min.png +0 -0
- package/docs/img/vscode-server.drawio +108 -0
- package/docs/img/vscode-server.drawio-min.png +0 -0
- package/integ-tests/code-server login.html +48 -0
- package/integ-tests/functions/login-handler.ts +63 -0
- package/integ-tests/integ.al2023.ts +69 -0
- package/integ-tests/integ.al2023.ts.snapshot/IntegSetupVSCodeOnAl2023DefaultTestDeployAssert74D8F645.assets.json +32 -0
- package/integ-tests/integ.al2023.ts.snapshot/IntegSetupVSCodeOnAl2023DefaultTestDeployAssert74D8F645.template.json +337 -0
- package/integ-tests/integ.al2023.ts.snapshot/IntegTestStackAl2023.assets.json +110 -0
- package/integ-tests/integ.al2023.ts.snapshot/IntegTestStackAl2023.template.json +2459 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.23732f3d1982f7fb0da3bd6638a8107337bb767fea165b45eae12000a1dd67ce/index.js +6169 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.2819175352ad1ce0dae768e83fc328fb70fb5f10b4a8ff0ccbcb791f02b0716d/index.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/cfn-response.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/consts.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/framework.js +3 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/outbound.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/util.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.512cf155ada4793b37a885c1aa6d9bb8f534e88bac6f63c69672d4d73df2decf.lambda/index.js +112 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.781ab0ab74634cdaf61539ab208ab777829ef07097ac21f95b9e15a3b1eedc1b.lambda/index.js +57 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.c504585dae89ce8e394d7744ccae054318e7d1aff14afb545438d173d51dc97d.bundle/index.js +30572 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.ce2f3595a340d6c519a65888ef97e3b9b64f053f83608e32cc28162e22d7d99a/index.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.ee7de53d64cc9d6248fa6aa550f92358f6c907b5efd6f3298aeab1b5e7ea358a/__entrypoint__.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/asset.ee7de53d64cc9d6248fa6aa550f92358f6c907b5efd6f3298aeab1b5e7ea358a/index.js +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/cdk.out +1 -0
- package/integ-tests/integ.al2023.ts.snapshot/integ.json +22 -0
- package/integ-tests/integ.al2023.ts.snapshot/manifest.json +510 -0
- package/integ-tests/integ.al2023.ts.snapshot/tree.json +2944 -0
- package/integ-tests/integ.ubuntu.ts +66 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/IntegSetupVSCodeOnUbuntuDefaultTestDeployAssertFF8DF2C5.assets.json +32 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/IntegSetupVSCodeOnUbuntuDefaultTestDeployAssertFF8DF2C5.template.json +337 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/IntegTestStackUbuntu22.assets.json +110 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/IntegTestStackUbuntu22.template.json +2477 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.23732f3d1982f7fb0da3bd6638a8107337bb767fea165b45eae12000a1dd67ce/index.js +6169 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.2819175352ad1ce0dae768e83fc328fb70fb5f10b4a8ff0ccbcb791f02b0716d/index.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/cfn-response.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/consts.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/framework.js +3 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/outbound.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.4dc48ffba382f93077a1e6824599bbd4ceb6f91eb3d9442eca3b85bdb1a20b1e/util.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.512cf155ada4793b37a885c1aa6d9bb8f534e88bac6f63c69672d4d73df2decf.lambda/index.js +112 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.781ab0ab74634cdaf61539ab208ab777829ef07097ac21f95b9e15a3b1eedc1b.lambda/index.js +57 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.c504585dae89ce8e394d7744ccae054318e7d1aff14afb545438d173d51dc97d.bundle/index.js +30572 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.ce2f3595a340d6c519a65888ef97e3b9b64f053f83608e32cc28162e22d7d99a/index.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.ee7de53d64cc9d6248fa6aa550f92358f6c907b5efd6f3298aeab1b5e7ea358a/__entrypoint__.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/asset.ee7de53d64cc9d6248fa6aa550f92358f6c907b5efd6f3298aeab1b5e7ea358a/index.js +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/cdk.out +1 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/integ.json +22 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/manifest.json +510 -0
- package/integ-tests/integ.ubuntu.ts.snapshot/tree.json +2962 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +18 -0
- package/lib/installer/installer-function.d.ts +13 -0
- package/lib/installer/installer-function.js +23 -0
- package/lib/installer/installer.d.ts +64 -0
- package/lib/installer/installer.js +707 -0
- package/lib/installer/installer.lambda.d.ts +3 -0
- package/lib/installer/installer.lambda.js +94 -0
- package/lib/mappings.d.ts +2 -0
- package/lib/mappings.js +25 -0
- package/lib/prefixlist-retriever/prefixlist-retriever.d.ts +16 -0
- package/lib/prefixlist-retriever/prefixlist-retriever.js +56 -0
- package/lib/secret-retriever/secret-retriever-function.d.ts +13 -0
- package/lib/secret-retriever/secret-retriever-function.js +23 -0
- package/lib/secret-retriever/secret-retriever.d.ts +33 -0
- package/lib/secret-retriever/secret-retriever.js +72 -0
- package/lib/secret-retriever/secret-retriever.lambda.d.ts +2 -0
- package/lib/secret-retriever/secret-retriever.lambda.js +36 -0
- package/lib/vscode-server.d.ts +97 -0
- package/lib/vscode-server.js +417 -0
- package/node_modules/boolbase/README.md +10 -0
- package/node_modules/boolbase/index.js +8 -0
- package/node_modules/boolbase/package.json +23 -0
- package/node_modules/css-select/LICENSE +11 -0
- package/node_modules/css-select/README.md +264 -0
- package/node_modules/css-select/lib/attributes.d.ts +7 -0
- package/node_modules/css-select/lib/attributes.d.ts.map +1 -0
- package/node_modules/css-select/lib/attributes.js +236 -0
- package/node_modules/css-select/lib/attributes.js.map +1 -0
- package/node_modules/css-select/lib/compile.d.ts +13 -0
- package/node_modules/css-select/lib/compile.d.ts.map +1 -0
- package/node_modules/css-select/lib/compile.js +151 -0
- package/node_modules/css-select/lib/compile.js.map +1 -0
- package/node_modules/css-select/lib/esm/attributes.d.ts +7 -0
- package/node_modules/css-select/lib/esm/attributes.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/attributes.js +222 -0
- package/node_modules/css-select/lib/esm/attributes.js.map +1 -0
- package/node_modules/css-select/lib/esm/compile.d.ts +13 -0
- package/node_modules/css-select/lib/esm/compile.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/compile.js +115 -0
- package/node_modules/css-select/lib/esm/compile.js.map +1 -0
- package/node_modules/css-select/lib/esm/general.d.ts +3 -0
- package/node_modules/css-select/lib/esm/general.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/general.js +144 -0
- package/node_modules/css-select/lib/esm/general.js.map +1 -0
- package/node_modules/css-select/lib/esm/index.d.ts +50 -0
- package/node_modules/css-select/lib/esm/index.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/index.js +115 -0
- package/node_modules/css-select/lib/esm/index.js.map +1 -0
- package/node_modules/css-select/lib/esm/package.json +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts +5 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js +35 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts +4 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/filters.js +143 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/filters.js.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts +8 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/index.js +40 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/index.js.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts +6 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js +79 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts +9 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js +94 -0
- package/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js.map +1 -0
- package/node_modules/css-select/lib/esm/sort.d.ts +12 -0
- package/node_modules/css-select/lib/esm/sort.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/sort.js +79 -0
- package/node_modules/css-select/lib/esm/sort.js.map +1 -0
- package/node_modules/css-select/lib/esm/types.d.ts +167 -0
- package/node_modules/css-select/lib/esm/types.d.ts.map +1 -0
- package/node_modules/css-select/lib/esm/types.js +2 -0
- package/node_modules/css-select/lib/esm/types.js.map +1 -0
- package/node_modules/css-select/lib/general.d.ts +3 -0
- package/node_modules/css-select/lib/general.d.ts.map +1 -0
- package/node_modules/css-select/lib/general.js +148 -0
- package/node_modules/css-select/lib/general.js.map +1 -0
- package/node_modules/css-select/lib/index.d.ts +50 -0
- package/node_modules/css-select/lib/index.d.ts.map +1 -0
- package/node_modules/css-select/lib/index.js +154 -0
- package/node_modules/css-select/lib/index.js.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/aliases.d.ts +5 -0
- package/node_modules/css-select/lib/pseudo-selectors/aliases.d.ts.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/aliases.js +34 -0
- package/node_modules/css-select/lib/pseudo-selectors/aliases.js.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/filters.d.ts +4 -0
- package/node_modules/css-select/lib/pseudo-selectors/filters.d.ts.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/filters.js +157 -0
- package/node_modules/css-select/lib/pseudo-selectors/filters.js.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/index.d.ts +8 -0
- package/node_modules/css-select/lib/pseudo-selectors/index.d.ts.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/index.js +46 -0
- package/node_modules/css-select/lib/pseudo-selectors/index.js.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/pseudos.d.ts +6 -0
- package/node_modules/css-select/lib/pseudo-selectors/pseudos.d.ts.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/pseudos.js +93 -0
- package/node_modules/css-select/lib/pseudo-selectors/pseudos.js.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/subselects.d.ts +9 -0
- package/node_modules/css-select/lib/pseudo-selectors/subselects.d.ts.map +1 -0
- package/node_modules/css-select/lib/pseudo-selectors/subselects.js +112 -0
- package/node_modules/css-select/lib/pseudo-selectors/subselects.js.map +1 -0
- package/node_modules/css-select/lib/sort.d.ts +12 -0
- package/node_modules/css-select/lib/sort.d.ts.map +1 -0
- package/node_modules/css-select/lib/sort.js +84 -0
- package/node_modules/css-select/lib/sort.js.map +1 -0
- package/node_modules/css-select/lib/types.d.ts +167 -0
- package/node_modules/css-select/lib/types.d.ts.map +1 -0
- package/node_modules/css-select/lib/types.js +3 -0
- package/node_modules/css-select/lib/types.js.map +1 -0
- package/node_modules/css-select/package.json +81 -0
- package/node_modules/css-what/LICENSE +11 -0
- package/node_modules/css-what/lib/commonjs/index.d.ts +4 -0
- package/node_modules/css-what/lib/commonjs/index.d.ts.map +1 -0
- package/node_modules/css-what/lib/commonjs/index.js +23 -0
- package/node_modules/css-what/lib/commonjs/parse.d.ts +20 -0
- package/node_modules/css-what/lib/commonjs/parse.d.ts.map +1 -0
- package/node_modules/css-what/lib/commonjs/parse.js +425 -0
- package/node_modules/css-what/lib/commonjs/stringify.d.ts +8 -0
- package/node_modules/css-what/lib/commonjs/stringify.d.ts.map +1 -0
- package/node_modules/css-what/lib/commonjs/stringify.js +138 -0
- package/node_modules/css-what/lib/commonjs/types.d.ts +70 -0
- package/node_modules/css-what/lib/commonjs/types.d.ts.map +1 -0
- package/node_modules/css-what/lib/commonjs/types.js +42 -0
- package/node_modules/css-what/lib/es/index.d.ts +4 -0
- package/node_modules/css-what/lib/es/index.d.ts.map +1 -0
- package/node_modules/css-what/lib/es/index.js +3 -0
- package/node_modules/css-what/lib/es/parse.d.ts +20 -0
- package/node_modules/css-what/lib/es/parse.d.ts.map +1 -0
- package/node_modules/css-what/lib/es/parse.js +420 -0
- package/node_modules/css-what/lib/es/stringify.d.ts +8 -0
- package/node_modules/css-what/lib/es/stringify.d.ts.map +1 -0
- package/node_modules/css-what/lib/es/stringify.js +126 -0
- package/node_modules/css-what/lib/es/types.d.ts +70 -0
- package/node_modules/css-what/lib/es/types.d.ts.map +1 -0
- package/node_modules/css-what/lib/es/types.js +39 -0
- package/node_modules/css-what/package.json +59 -0
- package/node_modules/css-what/readme.md +69 -0
- package/node_modules/dom-serializer/LICENSE +11 -0
- package/node_modules/dom-serializer/README.md +109 -0
- package/node_modules/dom-serializer/lib/esm/foreignNames.d.ts +3 -0
- package/node_modules/dom-serializer/lib/esm/foreignNames.d.ts.map +1 -0
- package/node_modules/dom-serializer/lib/esm/foreignNames.js +100 -0
- package/node_modules/dom-serializer/lib/esm/index.d.ts +52 -0
- package/node_modules/dom-serializer/lib/esm/index.d.ts.map +1 -0
- package/node_modules/dom-serializer/lib/esm/index.js +190 -0
- package/node_modules/dom-serializer/lib/esm/package.json +1 -0
- package/node_modules/dom-serializer/lib/foreignNames.d.ts +3 -0
- package/node_modules/dom-serializer/lib/foreignNames.d.ts.map +1 -0
- package/node_modules/dom-serializer/lib/foreignNames.js +103 -0
- package/node_modules/dom-serializer/lib/index.d.ts +52 -0
- package/node_modules/dom-serializer/lib/index.d.ts.map +1 -0
- package/node_modules/dom-serializer/lib/index.js +229 -0
- package/node_modules/dom-serializer/package.json +69 -0
- package/node_modules/domelementtype/LICENSE +11 -0
- package/node_modules/domelementtype/lib/esm/index.d.ts +48 -0
- package/node_modules/domelementtype/lib/esm/index.d.ts.map +1 -0
- package/node_modules/domelementtype/lib/esm/index.js +51 -0
- package/node_modules/domelementtype/lib/esm/package.json +1 -0
- package/node_modules/domelementtype/lib/index.d.ts +48 -0
- package/node_modules/domelementtype/lib/index.d.ts.map +1 -0
- package/node_modules/domelementtype/lib/index.js +55 -0
- package/node_modules/domelementtype/package.json +54 -0
- package/node_modules/domelementtype/readme.md +1 -0
- package/node_modules/domhandler/LICENSE +11 -0
- package/node_modules/domhandler/lib/esm/index.d.ts +76 -0
- package/node_modules/domhandler/lib/esm/index.d.ts.map +1 -0
- package/node_modules/domhandler/lib/esm/index.js +146 -0
- package/node_modules/domhandler/lib/esm/node.d.ts +245 -0
- package/node_modules/domhandler/lib/esm/node.d.ts.map +1 -0
- package/node_modules/domhandler/lib/esm/node.js +338 -0
- package/node_modules/domhandler/lib/esm/package.json +1 -0
- package/node_modules/domhandler/lib/index.d.ts +76 -0
- package/node_modules/domhandler/lib/index.d.ts.map +1 -0
- package/node_modules/domhandler/lib/index.js +165 -0
- package/node_modules/domhandler/lib/node.d.ts +245 -0
- package/node_modules/domhandler/lib/node.d.ts.map +1 -0
- package/node_modules/domhandler/lib/node.js +474 -0
- package/node_modules/domhandler/package.json +73 -0
- package/node_modules/domhandler/readme.md +92 -0
- package/node_modules/domutils/LICENSE +11 -0
- package/node_modules/domutils/lib/esm/feeds.d.ts +71 -0
- package/node_modules/domutils/lib/esm/feeds.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/feeds.js +183 -0
- package/node_modules/domutils/lib/esm/feeds.js.map +1 -0
- package/node_modules/domutils/lib/esm/helpers.d.ts +59 -0
- package/node_modules/domutils/lib/esm/helpers.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/helpers.js +136 -0
- package/node_modules/domutils/lib/esm/helpers.js.map +1 -0
- package/node_modules/domutils/lib/esm/index.d.ts +10 -0
- package/node_modules/domutils/lib/esm/index.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/index.js +10 -0
- package/node_modules/domutils/lib/esm/index.js.map +1 -0
- package/node_modules/domutils/lib/esm/legacy.d.ts +79 -0
- package/node_modules/domutils/lib/esm/legacy.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/legacy.js +152 -0
- package/node_modules/domutils/lib/esm/legacy.js.map +1 -0
- package/node_modules/domutils/lib/esm/manipulation.d.ts +49 -0
- package/node_modules/domutils/lib/esm/manipulation.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/manipulation.js +134 -0
- package/node_modules/domutils/lib/esm/manipulation.js.map +1 -0
- package/node_modules/domutils/lib/esm/package.json +1 -0
- package/node_modules/domutils/lib/esm/querying.d.ts +64 -0
- package/node_modules/domutils/lib/esm/querying.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/querying.js +142 -0
- package/node_modules/domutils/lib/esm/querying.js.map +1 -0
- package/node_modules/domutils/lib/esm/stringify.d.ts +46 -0
- package/node_modules/domutils/lib/esm/stringify.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/stringify.js +81 -0
- package/node_modules/domutils/lib/esm/stringify.js.map +1 -0
- package/node_modules/domutils/lib/esm/traversal.d.ts +67 -0
- package/node_modules/domutils/lib/esm/traversal.d.ts.map +1 -0
- package/node_modules/domutils/lib/esm/traversal.js +112 -0
- package/node_modules/domutils/lib/esm/traversal.js.map +1 -0
- package/node_modules/domutils/lib/feeds.d.ts +71 -0
- package/node_modules/domutils/lib/feeds.d.ts.map +1 -0
- package/node_modules/domutils/lib/feeds.js +190 -0
- package/node_modules/domutils/lib/feeds.js.map +1 -0
- package/node_modules/domutils/lib/helpers.d.ts +59 -0
- package/node_modules/domutils/lib/helpers.d.ts.map +1 -0
- package/node_modules/domutils/lib/helpers.js +142 -0
- package/node_modules/domutils/lib/helpers.js.map +1 -0
- package/node_modules/domutils/lib/index.d.ts +10 -0
- package/node_modules/domutils/lib/index.d.ts.map +1 -0
- package/node_modules/domutils/lib/index.js +33 -0
- package/node_modules/domutils/lib/index.js.map +1 -0
- package/node_modules/domutils/lib/legacy.d.ts +79 -0
- package/node_modules/domutils/lib/legacy.d.ts.map +1 -0
- package/node_modules/domutils/lib/legacy.js +168 -0
- package/node_modules/domutils/lib/legacy.js.map +1 -0
- package/node_modules/domutils/lib/manipulation.d.ts +49 -0
- package/node_modules/domutils/lib/manipulation.d.ts.map +1 -0
- package/node_modules/domutils/lib/manipulation.js +142 -0
- package/node_modules/domutils/lib/manipulation.js.map +1 -0
- package/node_modules/domutils/lib/querying.d.ts +64 -0
- package/node_modules/domutils/lib/querying.d.ts.map +1 -0
- package/node_modules/domutils/lib/querying.js +155 -0
- package/node_modules/domutils/lib/querying.js.map +1 -0
- package/node_modules/domutils/lib/stringify.d.ts +46 -0
- package/node_modules/domutils/lib/stringify.d.ts.map +1 -0
- package/node_modules/domutils/lib/stringify.js +91 -0
- package/node_modules/domutils/lib/stringify.js.map +1 -0
- package/node_modules/domutils/lib/traversal.d.ts +67 -0
- package/node_modules/domutils/lib/traversal.d.ts.map +1 -0
- package/node_modules/domutils/lib/traversal.js +125 -0
- package/node_modules/domutils/lib/traversal.js.map +1 -0
- package/node_modules/domutils/package.json +79 -0
- package/node_modules/domutils/readme.md +31 -0
- package/node_modules/entities/LICENSE +11 -0
- package/node_modules/entities/lib/decode.d.ts +211 -0
- package/node_modules/entities/lib/decode.d.ts.map +1 -0
- package/node_modules/entities/lib/decode.js +536 -0
- package/node_modules/entities/lib/decode.js.map +1 -0
- package/node_modules/entities/lib/decode_codepoint.d.ts +19 -0
- package/node_modules/entities/lib/decode_codepoint.d.ts.map +1 -0
- package/node_modules/entities/lib/decode_codepoint.js +76 -0
- package/node_modules/entities/lib/decode_codepoint.js.map +1 -0
- package/node_modules/entities/lib/encode.d.ts +22 -0
- package/node_modules/entities/lib/encode.d.ts.map +1 -0
- package/node_modules/entities/lib/encode.js +77 -0
- package/node_modules/entities/lib/encode.js.map +1 -0
- package/node_modules/entities/lib/escape.d.ts +43 -0
- package/node_modules/entities/lib/escape.d.ts.map +1 -0
- package/node_modules/entities/lib/escape.js +122 -0
- package/node_modules/entities/lib/escape.js.map +1 -0
- package/node_modules/entities/lib/esm/decode.d.ts +211 -0
- package/node_modules/entities/lib/esm/decode.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/decode.js +496 -0
- package/node_modules/entities/lib/esm/decode.js.map +1 -0
- package/node_modules/entities/lib/esm/decode_codepoint.d.ts +19 -0
- package/node_modules/entities/lib/esm/decode_codepoint.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/decode_codepoint.js +71 -0
- package/node_modules/entities/lib/esm/decode_codepoint.js.map +1 -0
- package/node_modules/entities/lib/esm/encode.d.ts +22 -0
- package/node_modules/entities/lib/esm/encode.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/encode.js +69 -0
- package/node_modules/entities/lib/esm/encode.js.map +1 -0
- package/node_modules/entities/lib/esm/escape.d.ts +43 -0
- package/node_modules/entities/lib/esm/escape.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/escape.js +116 -0
- package/node_modules/entities/lib/esm/escape.js.map +1 -0
- package/node_modules/entities/lib/esm/generated/decode-data-html.d.ts +3 -0
- package/node_modules/entities/lib/esm/generated/decode-data-html.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/generated/decode-data-html.js +7 -0
- package/node_modules/entities/lib/esm/generated/decode-data-html.js.map +1 -0
- package/node_modules/entities/lib/esm/generated/decode-data-xml.d.ts +3 -0
- package/node_modules/entities/lib/esm/generated/decode-data-xml.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/generated/decode-data-xml.js +7 -0
- package/node_modules/entities/lib/esm/generated/decode-data-xml.js.map +1 -0
- package/node_modules/entities/lib/esm/generated/encode-html.d.ts +8 -0
- package/node_modules/entities/lib/esm/generated/encode-html.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/generated/encode-html.js +10 -0
- package/node_modules/entities/lib/esm/generated/encode-html.js.map +1 -0
- package/node_modules/entities/lib/esm/index.d.ts +96 -0
- package/node_modules/entities/lib/esm/index.d.ts.map +1 -0
- package/node_modules/entities/lib/esm/index.js +99 -0
- package/node_modules/entities/lib/esm/index.js.map +1 -0
- package/node_modules/entities/lib/esm/package.json +1 -0
- package/node_modules/entities/lib/generated/decode-data-html.d.ts +3 -0
- package/node_modules/entities/lib/generated/decode-data-html.d.ts.map +1 -0
- package/node_modules/entities/lib/generated/decode-data-html.js +9 -0
- package/node_modules/entities/lib/generated/decode-data-html.js.map +1 -0
- package/node_modules/entities/lib/generated/decode-data-xml.d.ts +3 -0
- package/node_modules/entities/lib/generated/decode-data-xml.d.ts.map +1 -0
- package/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
- package/node_modules/entities/lib/generated/decode-data-xml.js.map +1 -0
- package/node_modules/entities/lib/generated/encode-html.d.ts +8 -0
- package/node_modules/entities/lib/generated/encode-html.d.ts.map +1 -0
- package/node_modules/entities/lib/generated/encode-html.js +12 -0
- package/node_modules/entities/lib/generated/encode-html.js.map +1 -0
- package/node_modules/entities/lib/index.d.ts +96 -0
- package/node_modules/entities/lib/index.d.ts.map +1 -0
- package/node_modules/entities/lib/index.js +126 -0
- package/node_modules/entities/lib/index.js.map +1 -0
- package/node_modules/entities/package.json +90 -0
- package/node_modules/entities/readme.md +122 -0
- package/node_modules/he/LICENSE-MIT.txt +20 -0
- package/node_modules/he/README.md +379 -0
- package/node_modules/he/bin/he +148 -0
- package/node_modules/he/he.js +345 -0
- package/node_modules/he/man/he.1 +78 -0
- package/node_modules/he/package.json +58 -0
- package/node_modules/node-html-parser/CHANGELOG.md +137 -0
- package/node_modules/node-html-parser/LICENSE +7 -0
- package/node_modules/node-html-parser/README.md +365 -0
- package/node_modules/node-html-parser/dist/back.d.ts +1 -0
- package/node_modules/node-html-parser/dist/back.js +6 -0
- package/node_modules/node-html-parser/dist/index.d.ts +20 -0
- package/node_modules/node-html-parser/dist/index.js +32 -0
- package/node_modules/node-html-parser/dist/main.js +1646 -0
- package/node_modules/node-html-parser/dist/matcher.d.ts +6 -0
- package/node_modules/node-html-parser/dist/matcher.js +106 -0
- package/node_modules/node-html-parser/dist/nodes/comment.d.ts +20 -0
- package/node_modules/node-html-parser/dist/nodes/comment.js +57 -0
- package/node_modules/node-html-parser/dist/nodes/html.d.ts +240 -0
- package/node_modules/node-html-parser/dist/nodes/html.js +1218 -0
- package/node_modules/node-html-parser/dist/nodes/node.d.ts +24 -0
- package/node_modules/node-html-parser/dist/nodes/node.js +52 -0
- package/node_modules/node-html-parser/dist/nodes/text.d.ts +44 -0
- package/node_modules/node-html-parser/dist/nodes/text.js +144 -0
- package/node_modules/node-html-parser/dist/nodes/type.d.ts +6 -0
- package/node_modules/node-html-parser/dist/nodes/type.js +9 -0
- package/node_modules/node-html-parser/dist/parse.d.ts +1 -0
- package/node_modules/node-html-parser/dist/parse.js +5 -0
- package/node_modules/node-html-parser/dist/valid.d.ts +6 -0
- package/node_modules/node-html-parser/dist/valid.js +13 -0
- package/node_modules/node-html-parser/dist/void-tag.d.ts +7 -0
- package/node_modules/node-html-parser/dist/void-tag.js +29 -0
- package/node_modules/node-html-parser/package.json +114 -0
- package/node_modules/nth-check/LICENSE +11 -0
- package/node_modules/nth-check/README.md +136 -0
- package/node_modules/nth-check/lib/compile.d.ts +55 -0
- package/node_modules/nth-check/lib/compile.d.ts.map +1 -0
- package/node_modules/nth-check/lib/compile.js +121 -0
- package/node_modules/nth-check/lib/compile.js.map +1 -0
- package/node_modules/nth-check/lib/esm/compile.d.ts +55 -0
- package/node_modules/nth-check/lib/esm/compile.d.ts.map +1 -0
- package/node_modules/nth-check/lib/esm/compile.js +113 -0
- package/node_modules/nth-check/lib/esm/compile.js.map +1 -0
- package/node_modules/nth-check/lib/esm/index.d.ts +59 -0
- package/node_modules/nth-check/lib/esm/index.d.ts.map +1 -0
- package/node_modules/nth-check/lib/esm/index.js +63 -0
- package/node_modules/nth-check/lib/esm/index.js.map +1 -0
- package/node_modules/nth-check/lib/esm/package.json +1 -0
- package/node_modules/nth-check/lib/esm/parse.d.ts +9 -0
- package/node_modules/nth-check/lib/esm/parse.d.ts.map +1 -0
- package/node_modules/nth-check/lib/esm/parse.js +73 -0
- package/node_modules/nth-check/lib/esm/parse.js.map +1 -0
- package/node_modules/nth-check/lib/index.d.ts +59 -0
- package/node_modules/nth-check/lib/index.d.ts.map +1 -0
- package/node_modules/nth-check/lib/index.js +70 -0
- package/node_modules/nth-check/lib/index.js.map +1 -0
- package/node_modules/nth-check/lib/parse.d.ts +9 -0
- package/node_modules/nth-check/lib/parse.d.ts.map +1 -0
- package/node_modules/nth-check/lib/parse.js +77 -0
- package/node_modules/nth-check/lib/parse.js.map +1 -0
- package/node_modules/nth-check/package.json +78 -0
- package/package.json +154 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Element, AnyNode, ParentNode } from "domhandler";
|
|
2
|
+
/**
|
|
3
|
+
* Search a node and its children for nodes passing a test function. If `node` is not an array, it will be wrapped in one.
|
|
4
|
+
*
|
|
5
|
+
* @category Querying
|
|
6
|
+
* @param test Function to test nodes on.
|
|
7
|
+
* @param node Node to search. Will be included in the result set if it matches.
|
|
8
|
+
* @param recurse Also consider child nodes.
|
|
9
|
+
* @param limit Maximum number of nodes to return.
|
|
10
|
+
* @returns All nodes passing `test`.
|
|
11
|
+
*/
|
|
12
|
+
export declare function filter(test: (elem: AnyNode) => boolean, node: AnyNode | AnyNode[], recurse?: boolean, limit?: number): AnyNode[];
|
|
13
|
+
/**
|
|
14
|
+
* Search an array of nodes and their children for nodes passing a test function.
|
|
15
|
+
*
|
|
16
|
+
* @category Querying
|
|
17
|
+
* @param test Function to test nodes on.
|
|
18
|
+
* @param nodes Array of nodes to search.
|
|
19
|
+
* @param recurse Also consider child nodes.
|
|
20
|
+
* @param limit Maximum number of nodes to return.
|
|
21
|
+
* @returns All nodes passing `test`.
|
|
22
|
+
*/
|
|
23
|
+
export declare function find(test: (elem: AnyNode) => boolean, nodes: AnyNode[] | ParentNode, recurse: boolean, limit: number): AnyNode[];
|
|
24
|
+
/**
|
|
25
|
+
* Finds the first element inside of an array that matches a test function. This is an alias for `Array.prototype.find`.
|
|
26
|
+
*
|
|
27
|
+
* @category Querying
|
|
28
|
+
* @param test Function to test nodes on.
|
|
29
|
+
* @param nodes Array of nodes to search.
|
|
30
|
+
* @returns The first node in the array that passes `test`.
|
|
31
|
+
* @deprecated Use `Array.prototype.find` directly.
|
|
32
|
+
*/
|
|
33
|
+
export declare function findOneChild<T>(test: (elem: T) => boolean, nodes: T[]): T | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Finds one element in a tree that passes a test.
|
|
36
|
+
*
|
|
37
|
+
* @category Querying
|
|
38
|
+
* @param test Function to test nodes on.
|
|
39
|
+
* @param nodes Node or array of nodes to search.
|
|
40
|
+
* @param recurse Also consider child nodes.
|
|
41
|
+
* @returns The first node that passes `test`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function findOne(test: (elem: Element) => boolean, nodes: AnyNode[] | ParentNode, recurse?: boolean): Element | null;
|
|
44
|
+
/**
|
|
45
|
+
* Checks if a tree of nodes contains at least one node passing a test.
|
|
46
|
+
*
|
|
47
|
+
* @category Querying
|
|
48
|
+
* @param test Function to test nodes on.
|
|
49
|
+
* @param nodes Array of nodes to search.
|
|
50
|
+
* @returns Whether a tree of nodes contains at least one node passing the test.
|
|
51
|
+
*/
|
|
52
|
+
export declare function existsOne(test: (elem: Element) => boolean, nodes: AnyNode[] | ParentNode): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Search an array of nodes and their children for elements passing a test function.
|
|
55
|
+
*
|
|
56
|
+
* Same as `find`, but limited to elements and with less options, leading to reduced complexity.
|
|
57
|
+
*
|
|
58
|
+
* @category Querying
|
|
59
|
+
* @param test Function to test nodes on.
|
|
60
|
+
* @param nodes Array of nodes to search.
|
|
61
|
+
* @returns All nodes passing `test`.
|
|
62
|
+
*/
|
|
63
|
+
export declare function findAll(test: (elem: Element) => boolean, nodes: AnyNode[] | ParentNode): Element[];
|
|
64
|
+
//# sourceMappingURL=querying.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"querying.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["querying.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE9E;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAClB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,EACzB,OAAO,UAAO,EACd,KAAK,GAAE,MAAiB,GACzB,OAAO,EAAE,CAEX;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAChB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GAAG,UAAU,EAC7B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GACd,OAAO,EAAE,CAuCX;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,EAC1B,KAAK,EAAE,CAAC,EAAE,GACX,CAAC,GAAG,SAAS,CAEf;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GAAG,UAAU,EAC7B,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAchB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GAAG,UAAU,GAC9B,OAAO,CAMT;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GAAG,UAAU,GAC9B,OAAO,EAAE,CA4BX"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.filter = filter;
|
|
4
|
+
exports.find = find;
|
|
5
|
+
exports.findOneChild = findOneChild;
|
|
6
|
+
exports.findOne = findOne;
|
|
7
|
+
exports.existsOne = existsOne;
|
|
8
|
+
exports.findAll = findAll;
|
|
9
|
+
var domhandler_1 = require("domhandler");
|
|
10
|
+
/**
|
|
11
|
+
* Search a node and its children for nodes passing a test function. If `node` is not an array, it will be wrapped in one.
|
|
12
|
+
*
|
|
13
|
+
* @category Querying
|
|
14
|
+
* @param test Function to test nodes on.
|
|
15
|
+
* @param node Node to search. Will be included in the result set if it matches.
|
|
16
|
+
* @param recurse Also consider child nodes.
|
|
17
|
+
* @param limit Maximum number of nodes to return.
|
|
18
|
+
* @returns All nodes passing `test`.
|
|
19
|
+
*/
|
|
20
|
+
function filter(test, node, recurse, limit) {
|
|
21
|
+
if (recurse === void 0) { recurse = true; }
|
|
22
|
+
if (limit === void 0) { limit = Infinity; }
|
|
23
|
+
return find(test, Array.isArray(node) ? node : [node], recurse, limit);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Search an array of nodes and their children for nodes passing a test function.
|
|
27
|
+
*
|
|
28
|
+
* @category Querying
|
|
29
|
+
* @param test Function to test nodes on.
|
|
30
|
+
* @param nodes Array of nodes to search.
|
|
31
|
+
* @param recurse Also consider child nodes.
|
|
32
|
+
* @param limit Maximum number of nodes to return.
|
|
33
|
+
* @returns All nodes passing `test`.
|
|
34
|
+
*/
|
|
35
|
+
function find(test, nodes, recurse, limit) {
|
|
36
|
+
var result = [];
|
|
37
|
+
/** Stack of the arrays we are looking at. */
|
|
38
|
+
var nodeStack = [Array.isArray(nodes) ? nodes : [nodes]];
|
|
39
|
+
/** Stack of the indices within the arrays. */
|
|
40
|
+
var indexStack = [0];
|
|
41
|
+
for (;;) {
|
|
42
|
+
// First, check if the current array has any more elements to look at.
|
|
43
|
+
if (indexStack[0] >= nodeStack[0].length) {
|
|
44
|
+
// If we have no more arrays to look at, we are done.
|
|
45
|
+
if (indexStack.length === 1) {
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
// Otherwise, remove the current array from the stack.
|
|
49
|
+
nodeStack.shift();
|
|
50
|
+
indexStack.shift();
|
|
51
|
+
// Loop back to the start to continue with the next array.
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
var elem = nodeStack[0][indexStack[0]++];
|
|
55
|
+
if (test(elem)) {
|
|
56
|
+
result.push(elem);
|
|
57
|
+
if (--limit <= 0)
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
if (recurse && (0, domhandler_1.hasChildren)(elem) && elem.children.length > 0) {
|
|
61
|
+
/*
|
|
62
|
+
* Add the children to the stack. We are depth-first, so this is
|
|
63
|
+
* the next array we look at.
|
|
64
|
+
*/
|
|
65
|
+
indexStack.unshift(0);
|
|
66
|
+
nodeStack.unshift(elem.children);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Finds the first element inside of an array that matches a test function. This is an alias for `Array.prototype.find`.
|
|
72
|
+
*
|
|
73
|
+
* @category Querying
|
|
74
|
+
* @param test Function to test nodes on.
|
|
75
|
+
* @param nodes Array of nodes to search.
|
|
76
|
+
* @returns The first node in the array that passes `test`.
|
|
77
|
+
* @deprecated Use `Array.prototype.find` directly.
|
|
78
|
+
*/
|
|
79
|
+
function findOneChild(test, nodes) {
|
|
80
|
+
return nodes.find(test);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Finds one element in a tree that passes a test.
|
|
84
|
+
*
|
|
85
|
+
* @category Querying
|
|
86
|
+
* @param test Function to test nodes on.
|
|
87
|
+
* @param nodes Node or array of nodes to search.
|
|
88
|
+
* @param recurse Also consider child nodes.
|
|
89
|
+
* @returns The first node that passes `test`.
|
|
90
|
+
*/
|
|
91
|
+
function findOne(test, nodes, recurse) {
|
|
92
|
+
if (recurse === void 0) { recurse = true; }
|
|
93
|
+
var searchedNodes = Array.isArray(nodes) ? nodes : [nodes];
|
|
94
|
+
for (var i = 0; i < searchedNodes.length; i++) {
|
|
95
|
+
var node = searchedNodes[i];
|
|
96
|
+
if ((0, domhandler_1.isTag)(node) && test(node)) {
|
|
97
|
+
return node;
|
|
98
|
+
}
|
|
99
|
+
if (recurse && (0, domhandler_1.hasChildren)(node) && node.children.length > 0) {
|
|
100
|
+
var found = findOne(test, node.children, true);
|
|
101
|
+
if (found)
|
|
102
|
+
return found;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Checks if a tree of nodes contains at least one node passing a test.
|
|
109
|
+
*
|
|
110
|
+
* @category Querying
|
|
111
|
+
* @param test Function to test nodes on.
|
|
112
|
+
* @param nodes Array of nodes to search.
|
|
113
|
+
* @returns Whether a tree of nodes contains at least one node passing the test.
|
|
114
|
+
*/
|
|
115
|
+
function existsOne(test, nodes) {
|
|
116
|
+
return (Array.isArray(nodes) ? nodes : [nodes]).some(function (node) {
|
|
117
|
+
return ((0, domhandler_1.isTag)(node) && test(node)) ||
|
|
118
|
+
((0, domhandler_1.hasChildren)(node) && existsOne(test, node.children));
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Search an array of nodes and their children for elements passing a test function.
|
|
123
|
+
*
|
|
124
|
+
* Same as `find`, but limited to elements and with less options, leading to reduced complexity.
|
|
125
|
+
*
|
|
126
|
+
* @category Querying
|
|
127
|
+
* @param test Function to test nodes on.
|
|
128
|
+
* @param nodes Array of nodes to search.
|
|
129
|
+
* @returns All nodes passing `test`.
|
|
130
|
+
*/
|
|
131
|
+
function findAll(test, nodes) {
|
|
132
|
+
var result = [];
|
|
133
|
+
var nodeStack = [Array.isArray(nodes) ? nodes : [nodes]];
|
|
134
|
+
var indexStack = [0];
|
|
135
|
+
for (;;) {
|
|
136
|
+
if (indexStack[0] >= nodeStack[0].length) {
|
|
137
|
+
if (nodeStack.length === 1) {
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
// Otherwise, remove the current array from the stack.
|
|
141
|
+
nodeStack.shift();
|
|
142
|
+
indexStack.shift();
|
|
143
|
+
// Loop back to the start to continue with the next array.
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
var elem = nodeStack[0][indexStack[0]++];
|
|
147
|
+
if ((0, domhandler_1.isTag)(elem) && test(elem))
|
|
148
|
+
result.push(elem);
|
|
149
|
+
if ((0, domhandler_1.hasChildren)(elem) && elem.children.length > 0) {
|
|
150
|
+
indexStack.unshift(0);
|
|
151
|
+
nodeStack.unshift(elem.children);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=querying.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"querying.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["querying.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AnyNode } from "domhandler";
|
|
2
|
+
import { DomSerializerOptions } from "dom-serializer";
|
|
3
|
+
/**
|
|
4
|
+
* @category Stringify
|
|
5
|
+
* @deprecated Use the `dom-serializer` module directly.
|
|
6
|
+
* @param node Node to get the outer HTML of.
|
|
7
|
+
* @param options Options for serialization.
|
|
8
|
+
* @returns `node`'s outer HTML.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getOuterHTML(node: AnyNode | ArrayLike<AnyNode>, options?: DomSerializerOptions): string;
|
|
11
|
+
/**
|
|
12
|
+
* @category Stringify
|
|
13
|
+
* @deprecated Use the `dom-serializer` module directly.
|
|
14
|
+
* @param node Node to get the inner HTML of.
|
|
15
|
+
* @param options Options for serialization.
|
|
16
|
+
* @returns `node`'s inner HTML.
|
|
17
|
+
*/
|
|
18
|
+
export declare function getInnerHTML(node: AnyNode, options?: DomSerializerOptions): string;
|
|
19
|
+
/**
|
|
20
|
+
* Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags. Ignores comments.
|
|
21
|
+
*
|
|
22
|
+
* @category Stringify
|
|
23
|
+
* @deprecated Use `textContent` instead.
|
|
24
|
+
* @param node Node to get the inner text of.
|
|
25
|
+
* @returns `node`'s inner text.
|
|
26
|
+
*/
|
|
27
|
+
export declare function getText(node: AnyNode | AnyNode[]): string;
|
|
28
|
+
/**
|
|
29
|
+
* Get a node's text content. Ignores comments.
|
|
30
|
+
*
|
|
31
|
+
* @category Stringify
|
|
32
|
+
* @param node Node to get the text content of.
|
|
33
|
+
* @returns `node`'s text content.
|
|
34
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent}
|
|
35
|
+
*/
|
|
36
|
+
export declare function textContent(node: AnyNode | AnyNode[]): string;
|
|
37
|
+
/**
|
|
38
|
+
* Get a node's inner text, ignoring `<script>` and `<style>` tags. Ignores comments.
|
|
39
|
+
*
|
|
40
|
+
* @category Stringify
|
|
41
|
+
* @param node Node to get the inner text of.
|
|
42
|
+
* @returns `node`'s inner text.
|
|
43
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/innerText}
|
|
44
|
+
*/
|
|
45
|
+
export declare function innerText(node: AnyNode | AnyNode[]): string;
|
|
46
|
+
//# sourceMappingURL=stringify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,OAAO,EAEV,MAAM,YAAY,CAAC;AACpB,OAAmB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAIR;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAMzD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO7D;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO3D"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getOuterHTML = getOuterHTML;
|
|
7
|
+
exports.getInnerHTML = getInnerHTML;
|
|
8
|
+
exports.getText = getText;
|
|
9
|
+
exports.textContent = textContent;
|
|
10
|
+
exports.innerText = innerText;
|
|
11
|
+
var domhandler_1 = require("domhandler");
|
|
12
|
+
var dom_serializer_1 = __importDefault(require("dom-serializer"));
|
|
13
|
+
var domelementtype_1 = require("domelementtype");
|
|
14
|
+
/**
|
|
15
|
+
* @category Stringify
|
|
16
|
+
* @deprecated Use the `dom-serializer` module directly.
|
|
17
|
+
* @param node Node to get the outer HTML of.
|
|
18
|
+
* @param options Options for serialization.
|
|
19
|
+
* @returns `node`'s outer HTML.
|
|
20
|
+
*/
|
|
21
|
+
function getOuterHTML(node, options) {
|
|
22
|
+
return (0, dom_serializer_1.default)(node, options);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @category Stringify
|
|
26
|
+
* @deprecated Use the `dom-serializer` module directly.
|
|
27
|
+
* @param node Node to get the inner HTML of.
|
|
28
|
+
* @param options Options for serialization.
|
|
29
|
+
* @returns `node`'s inner HTML.
|
|
30
|
+
*/
|
|
31
|
+
function getInnerHTML(node, options) {
|
|
32
|
+
return (0, domhandler_1.hasChildren)(node)
|
|
33
|
+
? node.children.map(function (node) { return getOuterHTML(node, options); }).join("")
|
|
34
|
+
: "";
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags. Ignores comments.
|
|
38
|
+
*
|
|
39
|
+
* @category Stringify
|
|
40
|
+
* @deprecated Use `textContent` instead.
|
|
41
|
+
* @param node Node to get the inner text of.
|
|
42
|
+
* @returns `node`'s inner text.
|
|
43
|
+
*/
|
|
44
|
+
function getText(node) {
|
|
45
|
+
if (Array.isArray(node))
|
|
46
|
+
return node.map(getText).join("");
|
|
47
|
+
if ((0, domhandler_1.isTag)(node))
|
|
48
|
+
return node.name === "br" ? "\n" : getText(node.children);
|
|
49
|
+
if ((0, domhandler_1.isCDATA)(node))
|
|
50
|
+
return getText(node.children);
|
|
51
|
+
if ((0, domhandler_1.isText)(node))
|
|
52
|
+
return node.data;
|
|
53
|
+
return "";
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get a node's text content. Ignores comments.
|
|
57
|
+
*
|
|
58
|
+
* @category Stringify
|
|
59
|
+
* @param node Node to get the text content of.
|
|
60
|
+
* @returns `node`'s text content.
|
|
61
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent}
|
|
62
|
+
*/
|
|
63
|
+
function textContent(node) {
|
|
64
|
+
if (Array.isArray(node))
|
|
65
|
+
return node.map(textContent).join("");
|
|
66
|
+
if ((0, domhandler_1.hasChildren)(node) && !(0, domhandler_1.isComment)(node)) {
|
|
67
|
+
return textContent(node.children);
|
|
68
|
+
}
|
|
69
|
+
if ((0, domhandler_1.isText)(node))
|
|
70
|
+
return node.data;
|
|
71
|
+
return "";
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get a node's inner text, ignoring `<script>` and `<style>` tags. Ignores comments.
|
|
75
|
+
*
|
|
76
|
+
* @category Stringify
|
|
77
|
+
* @param node Node to get the inner text of.
|
|
78
|
+
* @returns `node`'s inner text.
|
|
79
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/innerText}
|
|
80
|
+
*/
|
|
81
|
+
function innerText(node) {
|
|
82
|
+
if (Array.isArray(node))
|
|
83
|
+
return node.map(innerText).join("");
|
|
84
|
+
if ((0, domhandler_1.hasChildren)(node) && (node.type === domelementtype_1.ElementType.Tag || (0, domhandler_1.isCDATA)(node))) {
|
|
85
|
+
return innerText(node.children);
|
|
86
|
+
}
|
|
87
|
+
if ((0, domhandler_1.isText)(node))
|
|
88
|
+
return node.data;
|
|
89
|
+
return "";
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=stringify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["stringify.ts"],"names":[],"mappings":";;;;;AAkBA,oCAKC;AASD,oCAOC;AAUD,0BAMC;AAUD,kCAOC;AAUD,8BAOC;AAzFD,yCAOoB;AACpB,kEAAkE;AAClE,iDAA6C;AAE7C;;;;;;GAMG;AACH,SAAgB,YAAY,CACxB,IAAkC,EAClC,OAA8B;IAE9B,OAAO,IAAA,wBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CACxB,IAAa,EACb,OAA8B;IAE9B,OAAO,IAAA,wBAAW,EAAC,IAAI,CAAC;QACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,EAA3B,CAA2B,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,OAAO,CAAC,IAAyB;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3E,IAAI,IAAA,oBAAO,EAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAyB;IACjD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAA,wBAAW,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAyB;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7D,IAAI,IAAA,wBAAW,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,4BAAW,CAAC,GAAG,IAAI,IAAA,oBAAO,EAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACxE,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { AnyNode, ChildNode, Element, ParentNode } from "domhandler";
|
|
2
|
+
/**
|
|
3
|
+
* Get a node's children.
|
|
4
|
+
*
|
|
5
|
+
* @category Traversal
|
|
6
|
+
* @param elem Node to get the children of.
|
|
7
|
+
* @returns `elem`'s children, or an empty array.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getChildren(elem: AnyNode): ChildNode[];
|
|
10
|
+
export declare function getParent(elem: AnyNode): ParentNode | null;
|
|
11
|
+
/**
|
|
12
|
+
* Gets an elements siblings, including the element itself.
|
|
13
|
+
*
|
|
14
|
+
* Attempts to get the children through the element's parent first. If we don't
|
|
15
|
+
* have a parent (the element is a root node), we walk the element's `prev` &
|
|
16
|
+
* `next` to get all remaining nodes.
|
|
17
|
+
*
|
|
18
|
+
* @category Traversal
|
|
19
|
+
* @param elem Element to get the siblings of.
|
|
20
|
+
* @returns `elem`'s siblings, including `elem`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function getSiblings(elem: AnyNode): AnyNode[];
|
|
23
|
+
/**
|
|
24
|
+
* Gets an attribute from an element.
|
|
25
|
+
*
|
|
26
|
+
* @category Traversal
|
|
27
|
+
* @param elem Element to check.
|
|
28
|
+
* @param name Attribute name to retrieve.
|
|
29
|
+
* @returns The element's attribute value, or `undefined`.
|
|
30
|
+
*/
|
|
31
|
+
export declare function getAttributeValue(elem: Element, name: string): string | undefined;
|
|
32
|
+
/**
|
|
33
|
+
* Checks whether an element has an attribute.
|
|
34
|
+
*
|
|
35
|
+
* @category Traversal
|
|
36
|
+
* @param elem Element to check.
|
|
37
|
+
* @param name Attribute name to look for.
|
|
38
|
+
* @returns Returns whether `elem` has the attribute `name`.
|
|
39
|
+
*/
|
|
40
|
+
export declare function hasAttrib(elem: Element, name: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Get the tag name of an element.
|
|
43
|
+
*
|
|
44
|
+
* @category Traversal
|
|
45
|
+
* @param elem The element to get the name for.
|
|
46
|
+
* @returns The tag name of `elem`.
|
|
47
|
+
*/
|
|
48
|
+
export declare function getName(elem: Element): string;
|
|
49
|
+
/**
|
|
50
|
+
* Returns the next element sibling of a node.
|
|
51
|
+
*
|
|
52
|
+
* @category Traversal
|
|
53
|
+
* @param elem The element to get the next sibling of.
|
|
54
|
+
* @returns `elem`'s next sibling that is a tag, or `null` if there is no next
|
|
55
|
+
* sibling.
|
|
56
|
+
*/
|
|
57
|
+
export declare function nextElementSibling(elem: AnyNode): Element | null;
|
|
58
|
+
/**
|
|
59
|
+
* Returns the previous element sibling of a node.
|
|
60
|
+
*
|
|
61
|
+
* @category Traversal
|
|
62
|
+
* @param elem The element to get the previous sibling of.
|
|
63
|
+
* @returns `elem`'s previous sibling that is a tag, or `null` if there is no
|
|
64
|
+
* previous sibling.
|
|
65
|
+
*/
|
|
66
|
+
export declare function prevElementSibling(elem: AnyNode): Element | null;
|
|
67
|
+
//# sourceMappingURL=traversal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traversal.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EACP,SAAS,EACT,OAAO,EACP,UAAU,EAEb,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAEtD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;AAY5D;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAepD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChildren = getChildren;
|
|
4
|
+
exports.getParent = getParent;
|
|
5
|
+
exports.getSiblings = getSiblings;
|
|
6
|
+
exports.getAttributeValue = getAttributeValue;
|
|
7
|
+
exports.hasAttrib = hasAttrib;
|
|
8
|
+
exports.getName = getName;
|
|
9
|
+
exports.nextElementSibling = nextElementSibling;
|
|
10
|
+
exports.prevElementSibling = prevElementSibling;
|
|
11
|
+
var domhandler_1 = require("domhandler");
|
|
12
|
+
/**
|
|
13
|
+
* Get a node's children.
|
|
14
|
+
*
|
|
15
|
+
* @category Traversal
|
|
16
|
+
* @param elem Node to get the children of.
|
|
17
|
+
* @returns `elem`'s children, or an empty array.
|
|
18
|
+
*/
|
|
19
|
+
function getChildren(elem) {
|
|
20
|
+
return (0, domhandler_1.hasChildren)(elem) ? elem.children : [];
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Get a node's parent.
|
|
24
|
+
*
|
|
25
|
+
* @category Traversal
|
|
26
|
+
* @param elem Node to get the parent of.
|
|
27
|
+
* @returns `elem`'s parent node, or `null` if `elem` is a root node.
|
|
28
|
+
*/
|
|
29
|
+
function getParent(elem) {
|
|
30
|
+
return elem.parent || null;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Gets an elements siblings, including the element itself.
|
|
34
|
+
*
|
|
35
|
+
* Attempts to get the children through the element's parent first. If we don't
|
|
36
|
+
* have a parent (the element is a root node), we walk the element's `prev` &
|
|
37
|
+
* `next` to get all remaining nodes.
|
|
38
|
+
*
|
|
39
|
+
* @category Traversal
|
|
40
|
+
* @param elem Element to get the siblings of.
|
|
41
|
+
* @returns `elem`'s siblings, including `elem`.
|
|
42
|
+
*/
|
|
43
|
+
function getSiblings(elem) {
|
|
44
|
+
var _a, _b;
|
|
45
|
+
var parent = getParent(elem);
|
|
46
|
+
if (parent != null)
|
|
47
|
+
return getChildren(parent);
|
|
48
|
+
var siblings = [elem];
|
|
49
|
+
var prev = elem.prev, next = elem.next;
|
|
50
|
+
while (prev != null) {
|
|
51
|
+
siblings.unshift(prev);
|
|
52
|
+
(_a = prev, prev = _a.prev);
|
|
53
|
+
}
|
|
54
|
+
while (next != null) {
|
|
55
|
+
siblings.push(next);
|
|
56
|
+
(_b = next, next = _b.next);
|
|
57
|
+
}
|
|
58
|
+
return siblings;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Gets an attribute from an element.
|
|
62
|
+
*
|
|
63
|
+
* @category Traversal
|
|
64
|
+
* @param elem Element to check.
|
|
65
|
+
* @param name Attribute name to retrieve.
|
|
66
|
+
* @returns The element's attribute value, or `undefined`.
|
|
67
|
+
*/
|
|
68
|
+
function getAttributeValue(elem, name) {
|
|
69
|
+
var _a;
|
|
70
|
+
return (_a = elem.attribs) === null || _a === void 0 ? void 0 : _a[name];
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Checks whether an element has an attribute.
|
|
74
|
+
*
|
|
75
|
+
* @category Traversal
|
|
76
|
+
* @param elem Element to check.
|
|
77
|
+
* @param name Attribute name to look for.
|
|
78
|
+
* @returns Returns whether `elem` has the attribute `name`.
|
|
79
|
+
*/
|
|
80
|
+
function hasAttrib(elem, name) {
|
|
81
|
+
return (elem.attribs != null &&
|
|
82
|
+
Object.prototype.hasOwnProperty.call(elem.attribs, name) &&
|
|
83
|
+
elem.attribs[name] != null);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Get the tag name of an element.
|
|
87
|
+
*
|
|
88
|
+
* @category Traversal
|
|
89
|
+
* @param elem The element to get the name for.
|
|
90
|
+
* @returns The tag name of `elem`.
|
|
91
|
+
*/
|
|
92
|
+
function getName(elem) {
|
|
93
|
+
return elem.name;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Returns the next element sibling of a node.
|
|
97
|
+
*
|
|
98
|
+
* @category Traversal
|
|
99
|
+
* @param elem The element to get the next sibling of.
|
|
100
|
+
* @returns `elem`'s next sibling that is a tag, or `null` if there is no next
|
|
101
|
+
* sibling.
|
|
102
|
+
*/
|
|
103
|
+
function nextElementSibling(elem) {
|
|
104
|
+
var _a;
|
|
105
|
+
var next = elem.next;
|
|
106
|
+
while (next !== null && !(0, domhandler_1.isTag)(next))
|
|
107
|
+
(_a = next, next = _a.next);
|
|
108
|
+
return next;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Returns the previous element sibling of a node.
|
|
112
|
+
*
|
|
113
|
+
* @category Traversal
|
|
114
|
+
* @param elem The element to get the previous sibling of.
|
|
115
|
+
* @returns `elem`'s previous sibling that is a tag, or `null` if there is no
|
|
116
|
+
* previous sibling.
|
|
117
|
+
*/
|
|
118
|
+
function prevElementSibling(elem) {
|
|
119
|
+
var _a;
|
|
120
|
+
var prev = elem.prev;
|
|
121
|
+
while (prev !== null && !(0, domhandler_1.isTag)(prev))
|
|
122
|
+
(_a = prev, prev = _a.prev);
|
|
123
|
+
return prev;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=traversal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traversal.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/0ab8bcf1ecfc70dfc93291a4cb2496578ac25e9c/src/","sources":["traversal.ts"],"names":[],"mappings":";;AAgBA,kCAEC;AAUD,8BAEC;AAaD,kCAeC;AAUD,8CAKC;AAUD,8BAMC;AASD,0BAEC;AAUD,gDAIC;AAUD,gDAIC;AAhID,yCAOoB;AAEpB;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAO,IAAA,wBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC;AAGD;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,IAAa;IACnC,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,WAAW,CAAC,IAAa;;IACrC,IAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;IAE/C,IAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC;IAClB,IAAA,IAAI,GAAW,IAAI,KAAf,EAAE,IAAI,GAAK,IAAI,KAAT,CAAU;IAC1B,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC;QAClB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACtB,CAAC;IACD,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACtB,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAC7B,IAAa,EACb,IAAY;;IAEZ,OAAO,MAAA,IAAI,CAAC,OAAO,0CAAG,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAa,EAAE,IAAY;IACjD,OAAO,CACH,IAAI,CAAC,OAAO,IAAI,IAAI;QACpB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAC7B,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,IAAa;;IACtC,IAAA,IAAI,GAAK,IAAI,KAAT,CAAU;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,IAAa;;IACtC,IAAA,IAAI,GAAK,IAAI,KAAT,CAAU;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "domutils",
|
|
3
|
+
"version": "3.2.2",
|
|
4
|
+
"description": "Utilities for working with htmlparser2's dom",
|
|
5
|
+
"author": "Felix Boehm <me@feedic.com>",
|
|
6
|
+
"funding": {
|
|
7
|
+
"url": "https://github.com/fb55/domutils?sponsor=1"
|
|
8
|
+
},
|
|
9
|
+
"license": "BSD-2-Clause",
|
|
10
|
+
"sideEffects": false,
|
|
11
|
+
"main": "lib/index.js",
|
|
12
|
+
"types": "lib/index.d.ts",
|
|
13
|
+
"module": "lib/esm/index.js",
|
|
14
|
+
"exports": {
|
|
15
|
+
"require": "./lib/index.js",
|
|
16
|
+
"import": "./lib/esm/index.js"
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"lib/**/*"
|
|
20
|
+
],
|
|
21
|
+
"scripts": {
|
|
22
|
+
"test": "npm run test:jest && npm run lint",
|
|
23
|
+
"test:jest": "jest",
|
|
24
|
+
"lint": "npm run lint:es && npm run lint:prettier",
|
|
25
|
+
"lint:es": "eslint --ignore-path .gitignore .",
|
|
26
|
+
"lint:prettier": "npm run prettier -- --check",
|
|
27
|
+
"format": "npm run format:es && npm run format:prettier",
|
|
28
|
+
"format:es": "npm run lint:es -- --fix",
|
|
29
|
+
"format:prettier": "npm run prettier -- --write",
|
|
30
|
+
"prettier": "prettier \"**/*.{ts,md,json,yml}\" --ignore-path .gitignore",
|
|
31
|
+
"build": "npm run build:cjs && npm run build:esm",
|
|
32
|
+
"build:cjs": "tsc --sourceRoot https://raw.githubusercontent.com/fb55/domutils/$(git rev-parse HEAD)/src/",
|
|
33
|
+
"build:esm": "npm run build:cjs -- --module esnext --target es2019 --outDir lib/esm && echo '{\"type\":\"module\"}' > lib/esm/package.json",
|
|
34
|
+
"build:docs": "typedoc src",
|
|
35
|
+
"prepare": "npm run build"
|
|
36
|
+
},
|
|
37
|
+
"repository": {
|
|
38
|
+
"type": "git",
|
|
39
|
+
"url": "git://github.com/fb55/domutils.git"
|
|
40
|
+
},
|
|
41
|
+
"keywords": [
|
|
42
|
+
"dom",
|
|
43
|
+
"htmlparser2"
|
|
44
|
+
],
|
|
45
|
+
"dependencies": {
|
|
46
|
+
"dom-serializer": "^2.0.0",
|
|
47
|
+
"domelementtype": "^2.3.0",
|
|
48
|
+
"domhandler": "^5.0.3"
|
|
49
|
+
},
|
|
50
|
+
"devDependencies": {
|
|
51
|
+
"@types/jest": "^29.5.14",
|
|
52
|
+
"@types/node": "^22.10.5",
|
|
53
|
+
"@typescript-eslint/eslint-plugin": "^8.19.0",
|
|
54
|
+
"@typescript-eslint/parser": "^8.19.0",
|
|
55
|
+
"eslint": "^8.57.1",
|
|
56
|
+
"eslint-config-prettier": "^9.1.0",
|
|
57
|
+
"eslint-plugin-jsdoc": "^50.6.1",
|
|
58
|
+
"htmlparser2": "~9.1.0",
|
|
59
|
+
"jest": "^29.7.0",
|
|
60
|
+
"prettier": "^3.4.2",
|
|
61
|
+
"ts-jest": "^29.2.5",
|
|
62
|
+
"typedoc": "^0.27.6",
|
|
63
|
+
"typescript": "^5.7.2"
|
|
64
|
+
},
|
|
65
|
+
"jest": {
|
|
66
|
+
"preset": "ts-jest",
|
|
67
|
+
"testEnvironment": "node",
|
|
68
|
+
"coverageProvider": "v8",
|
|
69
|
+
"moduleNameMapper": {
|
|
70
|
+
"^(.*)\\.js$": [
|
|
71
|
+
"$1.js",
|
|
72
|
+
"$1"
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"prettier": {
|
|
77
|
+
"tabWidth": 4
|
|
78
|
+
}
|
|
79
|
+
}
|