@lcap/nasl 3.3.3-beta.8 → 3.3.5-beta.1
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/.nyc_output/{78804420-ead6-486f-b682-ab54ccd95dc9.json → b920244d-8d01-4e76-be5a-95132217c5a1.json} +1 -1
- package/.nyc_output/processinfo/b920244d-8d01-4e76-be5a-95132217c5a1.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/coverage/index.html +113 -128
- package/coverage/src/automate/engine/index.html +1 -1
- package/coverage/src/automate/engine/utils.js.html +26 -26
- package/coverage/src/bak/index.html +15 -15
- package/coverage/src/bak/translator.js.html +63 -390
- package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +1 -1
- package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +1 -1
- package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1 -1
- package/coverage/src/breakpoint/generator/CallbackNode.ts.html +1 -1
- package/coverage/src/breakpoint/generator/index.html +1 -1
- package/coverage/src/breakpoint/generator/index.ts.html +1 -1
- package/coverage/src/breakpoint/index.html +1 -1
- package/coverage/src/breakpoint/index.ts.html +1 -1
- package/coverage/src/breakpoint/shared/constants.ts.html +1 -1
- package/coverage/src/breakpoint/shared/index.html +1 -1
- package/coverage/src/breakpoint/shared/index.ts.html +1 -1
- package/coverage/src/breakpoint/shared/operations.ts.html +2 -2
- package/coverage/src/breakpoint/shared/socket.ts.html +1 -1
- package/coverage/src/breakpoint/shared/utils.ts.html +1 -1
- package/coverage/src/breakpoint/store/core.ts.html +3 -3
- package/coverage/src/breakpoint/store/dock.ts.html +1 -1
- package/coverage/src/breakpoint/store/index.html +1 -1
- package/coverage/src/breakpoint/store/index.ts.html +1 -1
- package/coverage/src/common/BaseNode.ts.html +370 -592
- package/coverage/src/common/Command.ts.html +1 -1
- package/coverage/src/common/EventEmitter.ts.html +34 -31
- package/coverage/src/common/Messager.ts.html +1 -1
- package/coverage/src/common/asyncFuncMap.ts.html +1 -1
- package/coverage/src/common/index.html +23 -38
- package/coverage/src/common/index.ts.html +4 -7
- package/coverage/src/concepts/Abort__.ts.html +9 -36
- package/coverage/src/concepts/Anchor__.ts.html +22 -58
- package/coverage/src/concepts/AnonymousFunction__.ts.html +77 -107
- package/coverage/src/concepts/App__.ts.html +253 -907
- package/coverage/src/concepts/Argument__.ts.html +54 -195
- package/coverage/src/concepts/Assignee__.ts.html +70 -79
- package/coverage/src/concepts/AssignmentLine__.ts.html +21 -33
- package/coverage/src/concepts/Assignment__.ts.html +49 -130
- package/coverage/src/concepts/Attribute__.ts.html +179 -20
- package/coverage/src/concepts/AuthInterface__.ts.html +1 -1
- package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +161 -98
- package/coverage/src/concepts/AuthLogic__.ts.html +1 -1
- package/coverage/src/concepts/BackendVariable__.ts.html +226 -139
- package/coverage/src/concepts/Backend__.ts.html +35 -86
- package/coverage/src/concepts/BatchAssignment__.ts.html +65 -95
- package/coverage/src/concepts/BinaryExpression__.ts.html +89 -218
- package/coverage/src/concepts/BindAttribute__.ts.html +125 -440
- package/coverage/src/concepts/BindDirective__.ts.html +40 -64
- package/coverage/src/concepts/BindEvent__.ts.html +71 -86
- package/coverage/src/concepts/BindStyle__.ts.html +34 -58
- package/coverage/src/concepts/BooleanLiteral__.ts.html +8 -32
- package/coverage/src/concepts/CallAuthInterface__.ts.html +57 -87
- package/coverage/src/concepts/CallConnector__.ts.html +35 -59
- package/coverage/src/concepts/CallFunction__.ts.html +145 -247
- package/coverage/src/concepts/CallInterface__.ts.html +77 -53
- package/coverage/src/concepts/CallLogic__.ts.html +181 -244
- package/coverage/src/concepts/CallQueryComponent__.ts.html +181 -103
- package/coverage/src/concepts/Comment__.ts.html +10 -40
- package/coverage/src/concepts/CompletionProperty__.ts.html +17 -23
- package/coverage/src/concepts/ConfigGroup__.ts.html +27 -27
- package/coverage/src/concepts/ConfigPropertyValue__.ts.html +1 -1
- package/coverage/src/concepts/ConfigProperty__.ts.html +36 -66
- package/coverage/src/concepts/Configuration__.ts.html +27 -27
- package/coverage/src/concepts/Connection__.ts.html +29 -77
- package/coverage/src/concepts/ConnectorTrigger__.ts.html +1 -1
- package/coverage/src/concepts/Connector__.ts.html +92 -80
- package/coverage/src/concepts/Constant__.ts.html +222 -72
- package/coverage/src/concepts/DataSource__.ts.html +32 -59
- package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +1 -1
- package/coverage/src/{utils/time-slicing/controller.ts.html → concepts/DefaultValue__.ts.html} +294 -459
- package/coverage/src/concepts/Destination__.ts.html +67 -79
- package/coverage/src/concepts/End__.ts.html +21 -48
- package/coverage/src/concepts/EntityIndex__.ts.html +17 -35
- package/coverage/src/concepts/EntityProperty__.ts.html +208 -118
- package/coverage/src/concepts/Entity__.ts.html +123 -81
- package/coverage/src/concepts/EnumItem__.ts.html +10 -37
- package/coverage/src/concepts/Enum__.ts.html +32 -65
- package/coverage/src/concepts/Event__.ts.html +21 -21
- package/coverage/src/concepts/ExternalDestination__.ts.html +30 -57
- package/coverage/src/concepts/ForEachStatement__.ts.html +89 -98
- package/coverage/src/concepts/FrontendLibrary__.ts.html +35 -35
- package/coverage/src/concepts/FrontendVariable__.ts.html +1 -1
- package/coverage/src/concepts/Frontend__.ts.html +93 -132
- package/coverage/src/concepts/Function__.ts.html +98 -131
- package/coverage/src/concepts/Identifier__.ts.html +67 -103
- package/coverage/src/concepts/IfStatement__.ts.html +67 -88
- package/coverage/src/concepts/Integration__.ts.html +31 -37
- package/coverage/src/concepts/InterfaceParam__.ts.html +179 -65
- package/coverage/src/concepts/Interface__.ts.html +74 -107
- package/coverage/src/concepts/JSBlock__.ts.html +11 -212
- package/coverage/src/concepts/JavaLogic__.ts.html +9 -39
- package/coverage/src/concepts/LogicItem__.ts.html +17 -44
- package/coverage/src/concepts/Logic__.ts.html +503 -263
- package/coverage/src/concepts/MatchCase__.ts.html +87 -126
- package/coverage/src/concepts/Match__.ts.html +56 -74
- package/coverage/src/concepts/MemberExpression__.ts.html +59 -95
- package/coverage/src/concepts/MicroApp__.ts.html +1 -1
- package/coverage/src/concepts/Module__.ts.html +136 -625
- package/coverage/src/concepts/MsgTriggerEvent__.ts.html +21 -21
- package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +21 -21
- package/coverage/src/concepts/Namespace__.ts.html +178 -166
- package/coverage/src/concepts/NewComposite__.ts.html +178 -295
- package/coverage/src/concepts/NewList__.ts.html +75 -129
- package/coverage/src/concepts/NewMap__.ts.html +139 -100
- package/coverage/src/concepts/New__.ts.html +9 -39
- package/coverage/src/concepts/NullLiteral__.ts.html +5 -29
- package/coverage/src/concepts/NumericLiteral__.ts.html +29 -65
- package/coverage/src/concepts/OqlQueryComponent__.ts.html +39 -69
- package/coverage/src/concepts/OverriddenLogic__.ts.html +264 -234
- package/coverage/src/concepts/Param__.ts.html +154 -196
- package/coverage/src/concepts/Point__.ts.html +1 -1
- package/coverage/src/concepts/ProcessComponent__.ts.html +36 -36
- package/coverage/src/concepts/ProcessElement__.ts.html +285 -183
- package/coverage/src/concepts/ProcessOutcome__.ts.html +13 -82
- package/coverage/src/concepts/ProcessOutcomes__.ts.html +20 -80
- package/coverage/src/concepts/Process__.ts.html +284 -122
- package/coverage/src/concepts/QueryAggregateExpression__.ts.html +20 -50
- package/coverage/src/concepts/QueryFieldExpression__.ts.html +11 -38
- package/coverage/src/concepts/QueryFromExpression__.ts.html +29 -62
- package/coverage/src/concepts/QueryGroupByExpression__.ts.html +23 -53
- package/coverage/src/concepts/QueryJoinExpression__.ts.html +41 -62
- package/coverage/src/concepts/QueryLimitExpression__.ts.html +29 -59
- package/coverage/src/concepts/QueryOrderByExpression__.ts.html +29 -62
- package/coverage/src/concepts/QuerySelectExpression__.ts.html +22 -22
- package/coverage/src/concepts/Rect__.ts.html +1 -1
- package/coverage/src/concepts/Return__.ts.html +187 -148
- package/coverage/src/concepts/Role__.ts.html +15 -42
- package/coverage/src/concepts/SelectMembers__.ts.html +31 -55
- package/coverage/src/concepts/Slot__.ts.html +17 -23
- package/coverage/src/concepts/SqlQueryComponent__.ts.html +28 -67
- package/coverage/src/concepts/Start__.ts.html +5 -29
- package/coverage/src/concepts/StringInterpolation__.ts.html +31 -79
- package/coverage/src/concepts/StringLiteral__.ts.html +26 -53
- package/coverage/src/concepts/StructureProperty__.ts.html +175 -64
- package/coverage/src/concepts/Structure__.ts.html +73 -67
- package/coverage/src/concepts/SwitchCase__.ts.html +45 -66
- package/coverage/src/concepts/SwitchStatement__.ts.html +28 -58
- package/coverage/src/concepts/Theme__.ts.html +7 -7
- package/coverage/src/concepts/Transactional__.ts.html +1 -1
- package/coverage/src/concepts/TriggerEvent__.ts.html +21 -21
- package/coverage/src/concepts/TriggerLauncher__.ts.html +13 -43
- package/coverage/src/concepts/TypeAnnotation__.ts.html +106 -223
- package/coverage/src/concepts/TypeParam__.ts.html +11 -38
- package/coverage/src/concepts/UnaryExpression__.ts.html +28 -73
- package/coverage/src/concepts/Unparsed__.ts.html +6 -27
- package/coverage/src/concepts/UseComponent__.ts.html +1 -1
- package/coverage/src/concepts/ValidationRule__.ts.html +57 -60
- package/coverage/src/concepts/Variable__.ts.html +238 -142
- package/coverage/src/concepts/ViewBlock__.ts.html +1 -1
- package/coverage/src/concepts/ViewComponent__.ts.html +80 -8
- package/coverage/src/concepts/ViewElement__.ts.html +238 -463
- package/coverage/src/concepts/View__.ts.html +296 -251
- package/coverage/src/concepts/WhileStatement__.ts.html +54 -75
- package/coverage/src/concepts/basics/stdlib/index.html +8 -8
- package/coverage/src/concepts/basics/stdlib/index.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +130 -19
- package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +1 -1
- package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +1 -1
- package/coverage/src/concepts/basics/types/coreTypeList.ts.html +1 -1
- package/coverage/src/concepts/basics/types/index.html +1 -1
- package/coverage/src/concepts/basics/types/index.ts.html +1 -1
- package/coverage/src/concepts/index.html +858 -858
- package/coverage/src/concepts/index.ts.html +1 -1
- package/coverage/src/concepts/index__.ts.html +2 -2
- package/coverage/src/config.ts.html +1 -1
- package/coverage/src/decorators/index.html +16 -16
- package/coverage/src/decorators/index.ts.html +40 -31
- package/coverage/src/decorators/promise.ts.html +10 -10
- package/coverage/src/eventBus.ts.html +1 -1
- package/coverage/src/generator/compileComponent.ts.html +4 -4
- package/coverage/src/generator/genBundleFiles.ts.html +23 -17
- package/coverage/src/generator/genHash.ts.html +3 -3
- package/coverage/src/generator/genMetaData.ts.html +31 -76
- package/coverage/src/generator/genReleaseBody.ts.html +4 -4
- package/coverage/src/generator/icestark.ts.html +4 -10
- package/coverage/src/generator/index.html +20 -20
- package/coverage/src/generator/index.ts.html +1 -1
- package/coverage/src/generator/microApp.ts.html +1 -1
- package/coverage/src/generator/permission.ts.html +20 -92
- package/coverage/src/generator/qiankun.ts.html +3 -9
- package/coverage/src/generator/styleReplacer.ts.html +1 -1
- package/coverage/src/index.html +1 -1
- package/coverage/src/index.ts.html +7 -4
- package/coverage/src/manager/diagnostic.ts.html +14 -11
- package/coverage/src/manager/index.html +13 -13
- package/coverage/src/manager/stepRecorder.ts.html +1 -1
- package/coverage/src/natural/genNaturalTS.ts.html +1 -1
- package/coverage/src/natural/index.html +1 -1
- package/coverage/src/natural/index.ts.html +1 -1
- package/coverage/src/natural/naslStdlibMap.ts.html +1 -1
- package/coverage/src/natural/transformTSCode.ts.html +1 -1
- package/coverage/src/sentry/index.html +14 -14
- package/coverage/src/sentry/index.ts.html +32 -38
- package/coverage/src/server/createUiTs.ts.html +1 -1
- package/coverage/src/server/entity2LogicNamespace.ts.html +1 -1
- package/coverage/src/server/event.js.html +1 -1
- package/coverage/src/server/extendBaseNode.ts.html +4 -7
- package/coverage/src/server/formatTsUtils.ts.html +2 -2
- package/coverage/src/server/getConnector.ts.html +1 -1
- package/coverage/src/server/getExtensionModules.ts.html +1 -1
- package/coverage/src/server/getFunctions.ts.html +4 -4
- package/coverage/src/server/getInterfaces.ts.html +1 -1
- package/coverage/src/server/getLogging.ts.html +2 -2
- package/coverage/src/server/getLogics.ts.html +1 -1
- package/coverage/src/server/getMemberIdentifier.ts.html +128 -131
- package/coverage/src/server/getProcessComponents.ts.html +3 -3
- package/coverage/src/server/getProcesses.ts.html +1 -1
- package/coverage/src/server/getValidates.ts.html +4 -4
- package/coverage/src/server/index.html +26 -26
- package/coverage/src/server/index.ts.html +1 -1
- package/coverage/src/server/naslServer.ts.html +880 -1177
- package/coverage/src/server/naslStdlibMap.ts.html +1 -1
- package/coverage/src/server/process2LogicNamespace.ts.html +52 -52
- package/coverage/src/server/translator.ts.html +14 -50
- package/coverage/src/service/creator/add.configs.js.html +2 -2
- package/coverage/src/service/creator/errHandles.js.html +1 -1
- package/coverage/src/service/creator/index.html +1 -1
- package/coverage/src/service/creator/index.js.html +1 -1
- package/coverage/src/service/datasource/api.js.html +1 -1
- package/coverage/src/service/datasource/index.html +1 -1
- package/coverage/src/service/datasource/index.js.html +1 -1
- package/coverage/src/service/logic/api.js.html +1 -1
- package/coverage/src/service/logic/index.html +1 -1
- package/coverage/src/service/logic/index.js.html +1 -1
- package/coverage/src/service/storage/api.js.html +1 -1
- package/coverage/src/service/storage/index.html +27 -27
- package/coverage/src/service/storage/index.ts.html +1 -1
- package/coverage/src/service/storage/init.ts.html +137 -110
- package/coverage/src/service/storage/jsoner.ts.html +13 -76
- package/coverage/src/service/storage/map.ts.html +3 -3
- package/coverage/src/service/storage/service.ts.html +1 -1
- package/coverage/src/service/storage/storagePoint.ts.html +1 -1
- package/coverage/src/templator/genCallComponentLogic.ts.html +1 -1
- package/coverage/src/templator/genCreateBlock.ts.html +56 -47
- package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +31 -49
- package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +89 -80
- package/coverage/src/templator/genEditTableBlock.ts.html +9 -12
- package/coverage/src/templator/genEnumSelectBlock.ts.html +1 -1
- package/coverage/src/templator/genGetBlock.ts.html +1 -1
- package/coverage/src/templator/genGridViewBlock.ts.html +1 -1
- package/coverage/src/templator/genListViewBlock.ts.html +1 -1
- package/coverage/src/templator/genQueryComponent.ts.html +1 -1
- package/coverage/src/templator/genSelectBlock.ts.html +1 -1
- package/coverage/src/templator/genTableBlock.ts.html +1 -1
- package/coverage/src/templator/genUpdateBlock.ts.html +36 -48
- package/coverage/src/templator/index.html +39 -39
- package/coverage/src/templator/index.ts.html +1 -1
- package/coverage/src/templator/utils.ts.html +11 -77
- package/coverage/src/translator/constant.ts.html +1 -1
- package/coverage/src/translator/index.html +21 -21
- package/coverage/src/translator/index.ts.html +1 -1
- package/coverage/src/translator/utils.ts.html +68 -389
- package/coverage/src/utils/cookie.ts.html +4 -4
- package/coverage/src/utils/env.ts.html +1 -1
- package/coverage/src/utils/index.html +41 -26
- package/coverage/src/utils/index.ts.html +9 -63
- package/coverage/src/utils/logger.ts.html +13 -13
- package/coverage/src/utils/sortTsString.ts.html +10 -25
- package/coverage/src/utils/string.ts.html +8 -110
- package/coverage/src/utils/time-slicing.ts.html +1 -1
- package/coverage/src/utils/traverse.ts.html +1 -1
- package/coverage/src/utils/window.ts.html +1 -1
- package/out/common/Command.js +1 -1
- package/out/common/Command.js.map +1 -1
- package/out/concepts/Match__.js +1 -1
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/View__.js +2 -2
- package/out/concepts/View__.js.map +1 -1
- package/package.json +1 -1
- package/src/common/Command.ts +1 -1
- package/src/concepts/Match__.ts +1 -1
- package/src/concepts/View__.ts +5 -5
- package/.nyc_output/processinfo/78804420-ead6-486f-b682-ab54ccd95dc9.json +0 -1
- package/coverage/cobertura-coverage.xml +0 -71878
- package/coverage/src/automate/engine/index.js.html +0 -1471
- package/coverage/src/automate/engine/operators.js.html +0 -862
- package/coverage/src/automate/engine/uniqueName.js.html +0 -412
- package/coverage/src/automate/engine/viewCache.js.html +0 -214
- package/coverage/src/automate/template/index.html +0 -116
- package/coverage/src/automate/template/myProcess.js.html +0 -34645
- package/coverage/src/common/utils.ts.html +0 -136
- package/coverage/src/concepts/DataElement__.ts.html +0 -118
- package/coverage/src/concepts/MetadataType__.ts.html +0 -2053
- package/coverage/src/utils/time-slicing/constant.ts.html +0 -196
- package/coverage/src/utils/time-slicing/index.html +0 -236
- package/coverage/src/utils/time-slicing/index.ts.html +0 -103
- package/coverage/src/utils/time-slicing/page-state.ts.html +0 -121
- package/coverage/src/utils/time-slicing/performance.ts.html +0 -253
- package/coverage/src/utils/time-slicing/runner.ts.html +0 -247
- package/coverage/src/utils/time-slicing/tool.ts.html +0 -220
- package/coverage/src/utils/time-slicing/utils.ts.html +0 -355
- package/coverage/src/utils/time-slicing/wrapper.ts.html +0 -259
- package/coverage/src/utils/time.ts.html +0 -118
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">20.38% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>21/
|
|
28
|
+
<span class='fraction'>21/103</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/48</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">18.81% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>19/
|
|
49
|
+
<span class='fraction'>19/101</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -416,17 +416,46 @@
|
|
|
416
416
|
<a name='L351'></a><a href='#L351'>351</a>
|
|
417
417
|
<a name='L352'></a><a href='#L352'>352</a>
|
|
418
418
|
<a name='L353'></a><a href='#L353'>353</a>
|
|
419
|
-
<a name='L354'></a><a href='#L354'>354</a
|
|
419
|
+
<a name='L354'></a><a href='#L354'>354</a>
|
|
420
|
+
<a name='L355'></a><a href='#L355'>355</a>
|
|
421
|
+
<a name='L356'></a><a href='#L356'>356</a>
|
|
422
|
+
<a name='L357'></a><a href='#L357'>357</a>
|
|
423
|
+
<a name='L358'></a><a href='#L358'>358</a>
|
|
424
|
+
<a name='L359'></a><a href='#L359'>359</a>
|
|
425
|
+
<a name='L360'></a><a href='#L360'>360</a>
|
|
426
|
+
<a name='L361'></a><a href='#L361'>361</a>
|
|
427
|
+
<a name='L362'></a><a href='#L362'>362</a>
|
|
428
|
+
<a name='L363'></a><a href='#L363'>363</a>
|
|
429
|
+
<a name='L364'></a><a href='#L364'>364</a>
|
|
430
|
+
<a name='L365'></a><a href='#L365'>365</a>
|
|
431
|
+
<a name='L366'></a><a href='#L366'>366</a>
|
|
432
|
+
<a name='L367'></a><a href='#L367'>367</a>
|
|
433
|
+
<a name='L368'></a><a href='#L368'>368</a>
|
|
434
|
+
<a name='L369'></a><a href='#L369'>369</a>
|
|
435
|
+
<a name='L370'></a><a href='#L370'>370</a>
|
|
436
|
+
<a name='L371'></a><a href='#L371'>371</a>
|
|
437
|
+
<a name='L372'></a><a href='#L372'>372</a>
|
|
438
|
+
<a name='L373'></a><a href='#L373'>373</a>
|
|
439
|
+
<a name='L374'></a><a href='#L374'>374</a>
|
|
440
|
+
<a name='L375'></a><a href='#L375'>375</a>
|
|
441
|
+
<a name='L376'></a><a href='#L376'>376</a>
|
|
442
|
+
<a name='L377'></a><a href='#L377'>377</a>
|
|
443
|
+
<a name='L378'></a><a href='#L378'>378</a>
|
|
444
|
+
<a name='L379'></a><a href='#L379'>379</a>
|
|
445
|
+
<a name='L380'></a><a href='#L380'>380</a>
|
|
446
|
+
<a name='L381'></a><a href='#L381'>381</a>
|
|
447
|
+
<a name='L382'></a><a href='#L382'>382</a>
|
|
448
|
+
<a name='L383'></a><a href='#L383'>383</a>
|
|
449
|
+
<a name='L384'></a><a href='#L384'>384</a>
|
|
450
|
+
<a name='L385'></a><a href='#L385'>385</a>
|
|
451
|
+
<a name='L386'></a><a href='#L386'>386</a>
|
|
452
|
+
<a name='L387'></a><a href='#L387'>387</a>
|
|
453
|
+
<a name='L388'></a><a href='#L388'>388</a>
|
|
454
|
+
<a name='L389'></a><a href='#L389'>389</a>
|
|
455
|
+
<a name='L390'></a><a href='#L390'>390</a>
|
|
456
|
+
<a name='L391'></a><a href='#L391'>391</a>
|
|
457
|
+
<a name='L392'></a><a href='#L392'>392</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
420
458
|
<span class="cline-any cline-yes">1x</span>
|
|
421
|
-
<span class="cline-any cline-yes">1x</span>
|
|
422
|
-
<span class="cline-any cline-neutral"> </span>
|
|
423
|
-
<span class="cline-any cline-neutral"> </span>
|
|
424
|
-
<span class="cline-any cline-neutral"> </span>
|
|
425
|
-
<span class="cline-any cline-neutral"> </span>
|
|
426
|
-
<span class="cline-any cline-neutral"> </span>
|
|
427
|
-
<span class="cline-any cline-neutral"> </span>
|
|
428
|
-
<span class="cline-any cline-neutral"> </span>
|
|
429
|
-
<span class="cline-any cline-neutral"> </span>
|
|
430
459
|
<span class="cline-any cline-neutral"> </span>
|
|
431
460
|
<span class="cline-any cline-neutral"> </span>
|
|
432
461
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -457,6 +486,7 @@
|
|
|
457
486
|
<span class="cline-any cline-neutral"> </span>
|
|
458
487
|
<span class="cline-any cline-neutral"> </span>
|
|
459
488
|
<span class="cline-any cline-neutral"> </span>
|
|
489
|
+
<span class="cline-any cline-neutral"> </span>
|
|
460
490
|
<span class="cline-any cline-yes">1x</span>
|
|
461
491
|
<span class="cline-any cline-neutral"> </span>
|
|
462
492
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -487,6 +517,8 @@
|
|
|
487
517
|
<span class="cline-any cline-neutral"> </span>
|
|
488
518
|
<span class="cline-any cline-neutral"> </span>
|
|
489
519
|
<span class="cline-any cline-neutral"> </span>
|
|
520
|
+
<span class="cline-any cline-neutral"> </span>
|
|
521
|
+
<span class="cline-any cline-neutral"> </span>
|
|
490
522
|
<span class="cline-any cline-yes">1x</span>
|
|
491
523
|
<span class="cline-any cline-neutral"> </span>
|
|
492
524
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -508,6 +540,8 @@
|
|
|
508
540
|
<span class="cline-any cline-neutral"> </span>
|
|
509
541
|
<span class="cline-any cline-neutral"> </span>
|
|
510
542
|
<span class="cline-any cline-neutral"> </span>
|
|
543
|
+
<span class="cline-any cline-neutral"> </span>
|
|
544
|
+
<span class="cline-any cline-neutral"> </span>
|
|
511
545
|
<span class="cline-any cline-yes">1x</span>
|
|
512
546
|
<span class="cline-any cline-neutral"> </span>
|
|
513
547
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -636,12 +670,52 @@
|
|
|
636
670
|
<span class="cline-any cline-neutral"> </span>
|
|
637
671
|
<span class="cline-any cline-neutral"> </span>
|
|
638
672
|
<span class="cline-any cline-neutral"> </span>
|
|
673
|
+
<span class="cline-any cline-neutral"> </span>
|
|
674
|
+
<span class="cline-any cline-neutral"> </span>
|
|
675
|
+
<span class="cline-any cline-neutral"> </span>
|
|
676
|
+
<span class="cline-any cline-neutral"> </span>
|
|
677
|
+
<span class="cline-any cline-neutral"> </span>
|
|
678
|
+
<span class="cline-any cline-neutral"> </span>
|
|
679
|
+
<span class="cline-any cline-neutral"> </span>
|
|
680
|
+
<span class="cline-any cline-neutral"> </span>
|
|
681
|
+
<span class="cline-any cline-neutral"> </span>
|
|
682
|
+
<span class="cline-any cline-neutral"> </span>
|
|
683
|
+
<span class="cline-any cline-no"> </span>
|
|
684
|
+
<span class="cline-any cline-no"> </span>
|
|
685
|
+
<span class="cline-any cline-no"> </span>
|
|
686
|
+
<span class="cline-any cline-no"> </span>
|
|
687
|
+
<span class="cline-any cline-neutral"> </span>
|
|
688
|
+
<span class="cline-any cline-neutral"> </span>
|
|
689
|
+
<span class="cline-any cline-no"> </span>
|
|
690
|
+
<span class="cline-any cline-neutral"> </span>
|
|
691
|
+
<span class="cline-any cline-no"> </span>
|
|
692
|
+
<span class="cline-any cline-neutral"> </span>
|
|
693
|
+
<span class="cline-any cline-neutral"> </span>
|
|
694
|
+
<span class="cline-any cline-neutral"> </span>
|
|
695
|
+
<span class="cline-any cline-no"> </span>
|
|
696
|
+
<span class="cline-any cline-no"> </span>
|
|
697
|
+
<span class="cline-any cline-neutral"> </span>
|
|
698
|
+
<span class="cline-any cline-neutral"> </span>
|
|
699
|
+
<span class="cline-any cline-neutral"> </span>
|
|
700
|
+
<span class="cline-any cline-neutral"> </span>
|
|
701
|
+
<span class="cline-any cline-neutral"> </span>
|
|
702
|
+
<span class="cline-any cline-neutral"> </span>
|
|
703
|
+
<span class="cline-any cline-no"> </span>
|
|
639
704
|
<span class="cline-any cline-no"> </span>
|
|
640
705
|
<span class="cline-any cline-neutral"> </span>
|
|
706
|
+
<span class="cline-any cline-no"> </span>
|
|
641
707
|
<span class="cline-any cline-neutral"> </span>
|
|
642
708
|
<span class="cline-any cline-no"> </span>
|
|
709
|
+
<span class="cline-any cline-no"> </span>
|
|
710
|
+
<span class="cline-any cline-no"> </span>
|
|
711
|
+
<span class="cline-any cline-no"> </span>
|
|
712
|
+
<span class="cline-any cline-no"> </span>
|
|
713
|
+
<span class="cline-any cline-no"> </span>
|
|
714
|
+
<span class="cline-any cline-no"> </span>
|
|
715
|
+
<span class="cline-any cline-no"> </span>
|
|
643
716
|
<span class="cline-any cline-neutral"> </span>
|
|
644
717
|
<span class="cline-any cline-neutral"> </span>
|
|
718
|
+
<span class="cline-any cline-no"> </span>
|
|
645
719
|
<span class="cline-any cline-neutral"> </span>
|
|
646
720
|
<span class="cline-any cline-neutral"> </span>
|
|
647
721
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -685,18 +759,14 @@
|
|
|
685
759
|
<span class="cline-any cline-neutral"> </span>
|
|
686
760
|
<span class="cline-any cline-no"> </span>
|
|
687
761
|
<span class="cline-any cline-no"> </span>
|
|
688
|
-
<span class="cline-any cline-neutral"> </span>
|
|
689
|
-
<span class="cline-any cline-no"> </span>
|
|
690
762
|
<span class="cline-any cline-no"> </span>
|
|
691
763
|
<span class="cline-any cline-no"> </span>
|
|
692
|
-
<span class="cline-any cline-neutral"> </span>
|
|
693
764
|
<span class="cline-any cline-no"> </span>
|
|
694
765
|
<span class="cline-any cline-no"> </span>
|
|
695
766
|
<span class="cline-any cline-no"> </span>
|
|
696
767
|
<span class="cline-any cline-no"> </span>
|
|
697
768
|
<span class="cline-any cline-neutral"> </span>
|
|
698
769
|
<span class="cline-any cline-neutral"> </span>
|
|
699
|
-
<span class="cline-any cline-neutral"> </span>
|
|
700
770
|
<span class="cline-any cline-no"> </span>
|
|
701
771
|
<span class="cline-any cline-neutral"> </span>
|
|
702
772
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -745,15 +815,21 @@
|
|
|
745
815
|
<span class="cline-any cline-no"> </span>
|
|
746
816
|
<span class="cline-any cline-no"> </span>
|
|
747
817
|
<span class="cline-any cline-no"> </span>
|
|
748
|
-
<span class="cline-any cline-no"> </span>
|
|
749
818
|
<span class="cline-any cline-neutral"> </span>
|
|
750
819
|
<span class="cline-any cline-no"> </span>
|
|
751
820
|
<span class="cline-any cline-no"> </span>
|
|
752
821
|
<span class="cline-any cline-no"> </span>
|
|
753
822
|
<span class="cline-any cline-neutral"> </span>
|
|
823
|
+
<span class="cline-any cline-no"> </span>
|
|
754
824
|
<span class="cline-any cline-neutral"> </span>
|
|
755
825
|
<span class="cline-any cline-neutral"> </span>
|
|
756
826
|
<span class="cline-any cline-neutral"> </span>
|
|
827
|
+
<span class="cline-any cline-no"> </span>
|
|
828
|
+
<span class="cline-any cline-no"> </span>
|
|
829
|
+
<span class="cline-any cline-neutral"> </span>
|
|
830
|
+
<span class="cline-any cline-no"> </span>
|
|
831
|
+
<span class="cline-any cline-no"> </span>
|
|
832
|
+
<span class="cline-any cline-neutral"> </span>
|
|
757
833
|
<span class="cline-any cline-neutral"> </span>
|
|
758
834
|
<span class="cline-any cline-no"> </span>
|
|
759
835
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -769,17 +845,8 @@
|
|
|
769
845
|
<span class="cline-any cline-neutral"> </span>
|
|
770
846
|
<span class="cline-any cline-neutral"> </span>
|
|
771
847
|
<span class="cline-any cline-neutral"> </span>
|
|
772
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {
|
|
773
|
-
import {
|
|
774
|
-
import {
|
|
775
|
-
TranslatorState,
|
|
776
|
-
shiftState,
|
|
777
|
-
withSourceMap,
|
|
778
|
-
withSourceMapGenerator,
|
|
779
|
-
withGenerator,
|
|
780
|
-
TranslatorGenerator,
|
|
781
|
-
createCompilerState,
|
|
782
|
-
} from '../translator';
|
|
848
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { dataTypesMap } from './basics/types';
|
|
849
|
+
import { TranslatorState, shiftState, withSourceMap } from '../translator';
|
|
783
850
|
import StructureProperty from './StructureProperty__';
|
|
784
851
|
import Structure from './Structure__';
|
|
785
852
|
import { getNodeByNodeCallee, getNaslNodeByNodeCallee } from '../automate/engine/utils';
|
|
@@ -795,6 +862,7 @@ import * as utils from '../utils';
|
|
|
795
862
|
import { v4 as uuidv4 } from 'uuid';
|
|
796
863
|
import BaseNode from '../common/BaseNode';
|
|
797
864
|
import TypeAnnotation from './TypeAnnotation__';
|
|
865
|
+
import DefaultValue from './DefaultValue__';
|
|
798
866
|
import Interface from './Interface__';
|
|
799
867
|
import Module from './Module__';
|
|
800
868
|
import App from './App__';
|
|
@@ -838,7 +906,9 @@ export class InterfaceParam extends BaseNode {
|
|
|
838
906
|
/**
|
|
839
907
|
* 类型
|
|
840
908
|
*/
|
|
841
|
-
@property(
|
|
909
|
+
@property({
|
|
910
|
+
objectRef: 'TypeAnnotation',
|
|
911
|
+
})
|
|
842
912
|
// @ts-ignore
|
|
843
913
|
typeAnnotation!: TypeAnnotation;
|
|
844
914
|
|
|
@@ -859,9 +929,11 @@ export class InterfaceParam extends BaseNode {
|
|
|
859
929
|
/**
|
|
860
930
|
* 默认值
|
|
861
931
|
*/
|
|
862
|
-
@property(
|
|
932
|
+
@property({
|
|
933
|
+
objectRef: 'DefaultValue',
|
|
934
|
+
})
|
|
863
935
|
// @ts-ignore
|
|
864
|
-
defaultValue!:
|
|
936
|
+
defaultValue!: DefaultValue;
|
|
865
937
|
|
|
866
938
|
/**
|
|
867
939
|
* 祖先 Interface
|
|
@@ -984,18 +1056,6 @@ export class InterfaceParam extends BaseNode {
|
|
|
984
1056
|
...object,
|
|
985
1057
|
});
|
|
986
1058
|
}
|
|
987
|
-
|
|
988
|
-
/**
|
|
989
|
-
* 设置默认值
|
|
990
|
-
*/
|
|
991
|
-
<span class="fstat-no" title="function not covered" > setDefaultValue(</span>defaultValue: string) {
|
|
992
|
-
const object = <span class="cstat-no" title="statement not covered" >{</span>
|
|
993
|
-
defaultValue,
|
|
994
|
-
};
|
|
995
|
-
<span class="cstat-no" title="statement not covered" > this.update({</span>
|
|
996
|
-
...object,
|
|
997
|
-
});
|
|
998
|
-
}
|
|
999
1059
|
|
|
1000
1060
|
/**
|
|
1001
1061
|
* 删除类型标注
|
|
@@ -1038,16 +1098,64 @@ export class InterfaceParam extends BaseNode {
|
|
|
1038
1098
|
// @ts-ignore
|
|
1039
1099
|
const n = <span class="cstat-no" title="statement not covered" >typeAnnotation.__v_raw || typeAnnotation;</span>
|
|
1040
1100
|
<span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
|
|
1041
|
-
|
|
1042
|
-
const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex(<span class="fstat-no" title="function not covered" >(e</span>l) => <span class="cstat-no" title="statement not covered" >(el.__v_raw || el) === n)</span>;</span>
|
|
1101
|
+
const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].indexOf(n);</span>
|
|
1043
1102
|
<span class="cstat-no" title="statement not covered" > ~index && (this as any)[parentKey].splice(index, 1);</span>
|
|
1044
1103
|
<span class="cstat-no" title="statement not covered" > params.index = index;</span>
|
|
1045
|
-
} else {
|
|
1046
|
-
|
|
1047
|
-
<span class="cstat-no" title="statement not covered" >
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1104
|
+
} else <span class="cstat-no" title="statement not covered" >if ((t as any)[parentKey] === n) {</span>
|
|
1105
|
+
<span class="cstat-no" title="statement not covered" > params.index = 0;</span>
|
|
1106
|
+
(<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
|
|
1107
|
+
}
|
|
1108
|
+
}
|
|
1109
|
+
<span class="cstat-no" title="statement not covered" > return params;</span>
|
|
1110
|
+
}
|
|
1111
|
+
|
|
1112
|
+
/**
|
|
1113
|
+
* 删除默认值
|
|
1114
|
+
* @param name 默认值名称
|
|
1115
|
+
*/
|
|
1116
|
+
removeDefaultValue(name: string): void;
|
|
1117
|
+
|
|
1118
|
+
/**
|
|
1119
|
+
* 删除默认值
|
|
1120
|
+
* @param defaultValue 已有的默认值实例
|
|
1121
|
+
*/
|
|
1122
|
+
removeDefaultValue(defaultValue: DefaultValue): void;
|
|
1123
|
+
|
|
1124
|
+
<span class="fstat-no" title="function not covered" > removeDefaultValue(</span>options: string | DefaultValue) {
|
|
1125
|
+
let defaultValue: DefaultValue;
|
|
1126
|
+
<span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
|
|
1127
|
+
<span class="cstat-no" title="statement not covered" > defaultValue = this.defaultValue;</span>
|
|
1128
|
+
<span class="cstat-no" title="statement not covered" > if (!defaultValue) {</span>
|
|
1129
|
+
<span class="cstat-no" title="statement not covered" > throw new Error('找不到默认值 ' + options);</span>
|
|
1130
|
+
}
|
|
1131
|
+
} else {
|
|
1132
|
+
<span class="cstat-no" title="statement not covered" > defaultValue = options;</span>
|
|
1133
|
+
}
|
|
1134
|
+
<span class="cstat-no" title="statement not covered" > return defaultValue.delete();</span>
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1137
|
+
<span class="fstat-no" title="function not covered" > __removeDefaultValue(</span>defaultValue: DefaultValue) {
|
|
1138
|
+
const parentKey = <span class="cstat-no" title="statement not covered" >defaultValue.parentKey;</span>
|
|
1139
|
+
const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
|
|
1140
|
+
parentNode: this,
|
|
1141
|
+
parentKey,
|
|
1142
|
+
index: -1,
|
|
1143
|
+
object: null,
|
|
1144
|
+
oldObject: defaultValue,
|
|
1145
|
+
};
|
|
1146
|
+
<span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
|
|
1147
|
+
<span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
|
|
1148
|
+
// @ts-ignore
|
|
1149
|
+
const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
|
|
1150
|
+
// @ts-ignore
|
|
1151
|
+
const n = <span class="cstat-no" title="statement not covered" >defaultValue.__v_raw || defaultValue;</span>
|
|
1152
|
+
<span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
|
|
1153
|
+
const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].indexOf(n);</span>
|
|
1154
|
+
<span class="cstat-no" title="statement not covered" > ~index && (this as any)[parentKey].splice(index, 1);</span>
|
|
1155
|
+
<span class="cstat-no" title="statement not covered" > params.index = index;</span>
|
|
1156
|
+
} else <span class="cstat-no" title="statement not covered" >if ((t as any)[parentKey] === n) {</span>
|
|
1157
|
+
<span class="cstat-no" title="statement not covered" > params.index = 0;</span>
|
|
1158
|
+
(<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
|
|
1051
1159
|
}
|
|
1052
1160
|
}
|
|
1053
1161
|
<span class="cstat-no" title="statement not covered" > return params;</span>
|
|
@@ -1093,21 +1201,27 @@ export class InterfaceParam extends BaseNode {
|
|
|
1093
1201
|
<span class="cstat-no" title="statement not covered" > return !!this.module;</span>
|
|
1094
1202
|
}
|
|
1095
1203
|
|
|
1096
|
-
@
|
|
1097
|
-
<span class="fstat-no" title="function not covered" >
|
|
1098
|
-
|
|
1099
|
-
let code = <span class="cstat-no" title="statement not covered" >self.tsName;</span>
|
|
1204
|
+
@withSourceMap()
|
|
1205
|
+
<span class="fstat-no" title="function not covered" > toEmbeddedTS(</span>state?: TranslatorState, isOptionalParameter?: boolean): string {
|
|
1206
|
+
let code = <span class="cstat-no" title="statement not covered" >this.tsName;</span>
|
|
1100
1207
|
<span class="cstat-no" title="statement not covered" > if (isOptionalParameter) {</span>
|
|
1101
1208
|
<span class="cstat-no" title="statement not covered" > code += '?';</span>
|
|
1102
1209
|
}
|
|
1103
|
-
<span class="cstat-no" title="statement not covered" > if (
|
|
1210
|
+
<span class="cstat-no" title="statement not covered" > if (this.typeAnnotation) {</span>
|
|
1104
1211
|
<span class="cstat-no" title="statement not covered" > code += ': ';</span>
|
|
1105
|
-
<span class="cstat-no" title="statement not covered" > code +=
|
|
1212
|
+
<span class="cstat-no" title="statement not covered" > code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code));</span>
|
|
1213
|
+
}
|
|
1214
|
+
<span class="cstat-no" title="statement not covered" > if (</span>
|
|
1215
|
+
this.defaultValue?.expression &&
|
|
1216
|
+
!['__IDENTIFIER__', '__IDENTIFIER__()'].includes(this.defaultValue?.expression?.toEmbeddedTS())
|
|
1217
|
+
) {
|
|
1218
|
+
<span class="cstat-no" title="statement not covered" > if (['nasl.core.DateTime', 'nasl.core.Time', 'nasl.core.Date'].includes(this.typeAnnotation?.typeKey)) {</span>
|
|
1219
|
+
<span class="cstat-no" title="statement not covered" > code += this.defaultValue.toEmbeddedTS(shiftState(state, code), true);</span>
|
|
1220
|
+
} else {
|
|
1221
|
+
<span class="cstat-no" title="statement not covered" > code += ` = `;</span>
|
|
1222
|
+
<span class="cstat-no" title="statement not covered" > code += this.defaultValue.toEmbeddedTS(shiftState(state, code));</span>
|
|
1223
|
+
}
|
|
1106
1224
|
}
|
|
1107
|
-
// toTS暂时不需要默认值
|
|
1108
|
-
// if (this.defaultValue) {
|
|
1109
|
-
// code += ` = ${this.defaultValue}`;
|
|
1110
|
-
// }
|
|
1111
1225
|
<span class="cstat-no" title="statement not covered" > return code;</span>
|
|
1112
1226
|
}
|
|
1113
1227
|
|
|
@@ -1129,7 +1243,7 @@ export default InterfaceParam;
|
|
|
1129
1243
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1130
1244
|
Code coverage generated by
|
|
1131
1245
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1132
|
-
at 2023-
|
|
1246
|
+
at 2023-10-27T11:50:55.546Z
|
|
1133
1247
|
</div>
|
|
1134
1248
|
<script src="../../prettify.js"></script>
|
|
1135
1249
|
<script>
|