@cdklabs/cdk-ssm-documents 0.0.70 → 0.0.71
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 +25 -25
- package/lib/construct/synth-utils.js +1 -1
- package/lib/document/automation-document.js +1 -1
- package/lib/document/command-document.js +1 -1
- package/lib/document/document-builder.js +2 -2
- package/lib/document/ssm-document.js +1 -1
- package/lib/domain/aws-service.js +1 -1
- package/lib/domain/choice.js +1 -1
- package/lib/domain/data-type.js +1 -1
- package/lib/domain/enum/install-action.js +2 -2
- package/lib/domain/enum/install-uninstall-repair.js +2 -2
- package/lib/domain/enum/installation-type.js +2 -2
- package/lib/domain/enum/package-name.js +2 -2
- package/lib/domain/input.js +1 -1
- package/lib/domain/operation.js +1 -1
- package/lib/domain/platform.js +1 -1
- package/lib/domain/precondition.js +1 -1
- package/lib/incident-response/incident-response.js +3 -3
- package/lib/interface/approve-hook.js +2 -2
- package/lib/interface/auth-method.js +3 -3
- package/lib/interface/aws-invoker.js +2 -2
- package/lib/interface/downloadable-content.js +8 -8
- package/lib/interface/environment.js +3 -3
- package/lib/interface/execute-automation-hook/api-execute-automation-hook.js +1 -1
- package/lib/interface/observer.js +1 -1
- package/lib/interface/on-failure.js +6 -6
- package/lib/interface/pause-hook.js +2 -2
- package/lib/interface/run-command-hook/api-run-command-hook.js +1 -1
- package/lib/interface/run-document-location.js +2 -2
- package/lib/interface/sleep-hook.js +2 -2
- package/lib/interface/step-ref.js +1 -1
- package/lib/interface/variables/boolean-variable.js +2 -2
- package/lib/interface/variables/map-list-variable.js +2 -2
- package/lib/interface/variables/number-variable.js +2 -2
- package/lib/interface/variables/secure-string-variable.js +4 -4
- package/lib/interface/variables/string-list-variable.js +2 -2
- package/lib/interface/variables/string-map-variable.js +2 -2
- package/lib/interface/variables/string-variable.js +4 -4
- package/lib/interface/variables/variable.js +2 -2
- package/lib/interface/webhook.js +1 -1
- package/lib/parent-steps/automation/approve-step.js +1 -1
- package/lib/parent-steps/automation/assert-aws-resource-step.js +1 -1
- package/lib/parent-steps/automation/aws-api-step.js +1 -1
- package/lib/parent-steps/automation/branch-step.js +1 -1
- package/lib/parent-steps/automation/change-instance-state-step.js +3 -3
- package/lib/parent-steps/automation/copy-image-step.js +1 -1
- package/lib/parent-steps/automation/create-image-step.js +1 -1
- package/lib/parent-steps/automation/create-stack-step.js +3 -3
- package/lib/parent-steps/automation/create-tags-step.js +3 -3
- package/lib/parent-steps/automation/delete-image-step.js +1 -1
- package/lib/parent-steps/automation/delete-stack-step.js +1 -1
- package/lib/parent-steps/automation/execute-automation-step.js +1 -1
- package/lib/parent-steps/automation/execute-script-step.js +5 -5
- package/lib/parent-steps/automation/execute-state-machine-step.js +1 -1
- package/lib/parent-steps/automation/invoke-lambda-function-step.js +1 -1
- package/lib/parent-steps/automation/invoke-webhook-step.js +1 -1
- package/lib/parent-steps/automation/pause-step.js +1 -1
- package/lib/parent-steps/automation/run-command-step.js +3 -3
- package/lib/parent-steps/automation/run-instance-step.js +1 -1
- package/lib/parent-steps/automation/sleep-step.js +1 -1
- package/lib/parent-steps/automation/update-variable.js +1 -1
- package/lib/parent-steps/automation/wait-for-resource-step.js +1 -1
- package/lib/parent-steps/automation-step.js +1 -1
- package/lib/parent-steps/command/applications-step.js +1 -1
- package/lib/parent-steps/command/configure-docker-step.js +1 -1
- package/lib/parent-steps/command/configure-package-step.js +1 -1
- package/lib/parent-steps/command/domain-join-step.js +1 -1
- package/lib/parent-steps/command/download-content-step.js +1 -1
- package/lib/parent-steps/command/ps-module-step.js +1 -1
- package/lib/parent-steps/command/run-docker-action-step.js +1 -1
- package/lib/parent-steps/command/run-document-step.js +1 -1
- package/lib/parent-steps/command/run-powershell-script-step.js +1 -1
- package/lib/parent-steps/command/run-shell-script-step.js +1 -1
- package/lib/parent-steps/command/software-inventory-step.js +1 -1
- package/lib/parent-steps/command/update-agent-step.js +1 -1
- package/lib/parent-steps/command/update-ssm-agent-step.js +1 -1
- package/lib/parent-steps/command-step.js +1 -1
- package/lib/parent-steps/step.js +1 -1
- package/lib/patterns/automation/composite-step.js +2 -2
- package/lib/patterns/automation/reboot-instance-and-wait.js +1 -1
- package/lib/patterns/automation/string-step.js +1 -1
- package/lib/patterns/document/string-document.js +1 -1
- package/lib/patterns/document/timed-document.js +1 -1
- package/lib/samples/hello-world.js +1 -1
- package/lib/simulation/automation/approve-simulation.js +1 -1
- package/lib/simulation/automation/assert-aws-resource-simulation.js +4 -5
- package/lib/simulation/automation/automation-simulation-base.js +1 -1
- package/lib/simulation/automation/aws-api-simulation.js +1 -1
- package/lib/simulation/automation/branch-simulation.js +1 -1
- package/lib/simulation/automation/change-instance-state-simulation.js +1 -1
- package/lib/simulation/automation/copy-image-simulation.js +1 -1
- package/lib/simulation/automation/create-image-simulation.js +1 -1
- package/lib/simulation/automation/create-stack-simulation.js +1 -1
- package/lib/simulation/automation/create-tags-simulation.js +1 -1
- package/lib/simulation/automation/delete-image-simulation.js +1 -1
- package/lib/simulation/automation/delete-stack-simulation.js +1 -1
- package/lib/simulation/automation/execute-script-simulation.js +1 -1
- package/lib/simulation/automation/execute-state-machine-simulation.js +1 -1
- package/lib/simulation/automation/invoke-lambda-function-simulation.js +1 -1
- package/lib/simulation/automation/invoke-webhook-simulation.js +1 -1
- package/lib/simulation/automation/pause-simulation.js +1 -1
- package/lib/simulation/automation/run-command-simulation.js +1 -1
- package/lib/simulation/automation/run-instance-simulation.js +1 -1
- package/lib/simulation/automation/sleep-simulation.js +1 -1
- package/lib/simulation/automation/update-variable-simulation.js +1 -1
- package/lib/simulation/automation/wait-for-resource-simulation.js +1 -1
- package/lib/simulation/automation-step-simulation.js +4 -5
- package/lib/simulation/command/command-simulation-base.js +1 -1
- package/lib/simulation/command/ps-module-simulation.js +1 -1
- package/lib/simulation/command/run-powershell-script-simulation.js +1 -1
- package/lib/simulation/command/run-shell-script-simulation.js +1 -1
- package/lib/simulation/command-step-simulation.js +1 -1
- package/lib/simulation/document/automation-simulation.js +1 -1
- package/lib/simulation/document/command-simulation.js +1 -1
- package/lib/simulation/simulation.js +1 -1
- package/node_modules/@jsep-plugin/assignment/LICENSE +20 -0
- package/node_modules/@jsep-plugin/assignment/README.md +37 -0
- package/node_modules/@jsep-plugin/assignment/dist/cjs/index.cjs.js +95 -0
- package/node_modules/@jsep-plugin/assignment/dist/cjs/index.cjs.js.map +1 -0
- package/node_modules/@jsep-plugin/assignment/dist/cjs/index.cjs.min.js +2 -0
- package/node_modules/@jsep-plugin/assignment/dist/cjs/index.cjs.min.js.map +1 -0
- package/node_modules/@jsep-plugin/assignment/dist/cjs/package.json +3 -0
- package/node_modules/@jsep-plugin/assignment/dist/iife/index.iife.js +98 -0
- package/node_modules/@jsep-plugin/assignment/dist/iife/index.iife.js.map +1 -0
- package/node_modules/@jsep-plugin/assignment/dist/iife/index.iife.min.js +2 -0
- package/node_modules/@jsep-plugin/assignment/dist/iife/index.iife.min.js.map +1 -0
- package/node_modules/@jsep-plugin/assignment/dist/index.js +92 -0
- package/node_modules/@jsep-plugin/assignment/dist/index.min.js +2 -0
- package/node_modules/@jsep-plugin/assignment/dist/index.min.js.map +1 -0
- package/node_modules/@jsep-plugin/assignment/package.json +39 -0
- package/node_modules/@jsep-plugin/assignment/types/tsd.d.ts +39 -0
- package/node_modules/@jsep-plugin/regex/LICENSE +20 -0
- package/node_modules/@jsep-plugin/regex/README.md +36 -0
- package/node_modules/@jsep-plugin/regex/dist/cjs/index.cjs.js +66 -0
- package/node_modules/@jsep-plugin/regex/dist/cjs/index.cjs.js.map +1 -0
- package/node_modules/@jsep-plugin/regex/dist/cjs/index.cjs.min.js +2 -0
- package/node_modules/@jsep-plugin/regex/dist/cjs/index.cjs.min.js.map +1 -0
- package/node_modules/@jsep-plugin/regex/dist/cjs/package.json +3 -0
- package/node_modules/@jsep-plugin/regex/dist/iife/index.iife.js +69 -0
- package/node_modules/@jsep-plugin/regex/dist/iife/index.iife.js.map +1 -0
- package/node_modules/@jsep-plugin/regex/dist/iife/index.iife.min.js +2 -0
- package/node_modules/@jsep-plugin/regex/dist/iife/index.iife.min.js.map +1 -0
- package/node_modules/@jsep-plugin/regex/dist/index.js +63 -0
- package/node_modules/@jsep-plugin/regex/dist/index.min.js +2 -0
- package/node_modules/@jsep-plugin/regex/dist/index.min.js.map +1 -0
- package/node_modules/@jsep-plugin/regex/package.json +39 -0
- package/node_modules/@jsep-plugin/regex/types/tsd.d.ts +7 -0
- package/node_modules/jsep/LICENSE +20 -0
- package/node_modules/jsep/README.md +208 -0
- package/node_modules/jsep/dist/cjs/jsep.cjs.js +1129 -0
- package/node_modules/jsep/dist/cjs/jsep.cjs.js.map +1 -0
- package/node_modules/jsep/dist/cjs/jsep.cjs.min.js +2 -0
- package/node_modules/jsep/dist/cjs/jsep.cjs.min.js.map +1 -0
- package/node_modules/jsep/dist/cjs/package.json +3 -0
- package/node_modules/jsep/dist/iife/jsep.iife.js +1132 -0
- package/node_modules/jsep/dist/iife/jsep.iife.js.map +1 -0
- package/node_modules/jsep/dist/iife/jsep.iife.min.js +2 -0
- package/node_modules/jsep/dist/iife/jsep.iife.min.js.map +1 -0
- package/node_modules/jsep/dist/jsep.js +1126 -0
- package/node_modules/jsep/dist/jsep.min.js +2 -0
- package/node_modules/jsep/dist/jsep.min.js.map +1 -0
- package/node_modules/jsep/package.json +153 -0
- package/node_modules/jsep/typings/tsd.d.ts +180 -0
- package/node_modules/jsonpath-plus/.claude/settings.local.json +9 -0
- package/node_modules/jsonpath-plus/CHANGES.md +453 -0
- package/node_modules/jsonpath-plus/LICENSE +22 -0
- package/node_modules/jsonpath-plus/README.md +412 -0
- package/node_modules/jsonpath-plus/SECURITY.md +38 -0
- package/node_modules/jsonpath-plus/bin/jsonpath-cli.js +36 -0
- package/node_modules/jsonpath-plus/dist/index-browser-esm.js +2164 -0
- package/node_modules/jsonpath-plus/dist/index-browser-esm.min.js +2 -0
- package/node_modules/jsonpath-plus/dist/index-browser-esm.min.js.map +1 -0
- package/node_modules/jsonpath-plus/dist/index-browser-umd.cjs +2172 -0
- package/node_modules/jsonpath-plus/dist/index-browser-umd.min.cjs +2 -0
- package/node_modules/jsonpath-plus/dist/index-browser-umd.min.cjs.map +1 -0
- package/node_modules/jsonpath-plus/dist/index-node-cjs.cjs +2076 -0
- package/node_modules/jsonpath-plus/dist/index-node-esm.js +2074 -0
- package/node_modules/jsonpath-plus/package.json +141 -0
- package/node_modules/jsonpath-plus/pnpm-workspace.yaml +2 -0
- package/node_modules/jsonpath-plus/src/Safe-Script.js +208 -0
- package/node_modules/jsonpath-plus/src/jsonpath-browser.js +102 -0
- package/node_modules/jsonpath-plus/src/jsonpath-node.js +8 -0
- package/node_modules/jsonpath-plus/src/jsonpath.d.ts +226 -0
- package/node_modules/jsonpath-plus/src/jsonpath.js +784 -0
- package/package.json +3 -3
- package/node_modules/escodegen/LICENSE.BSD +0 -21
- package/node_modules/escodegen/README.md +0 -84
- package/node_modules/escodegen/bin/escodegen.js +0 -77
- package/node_modules/escodegen/bin/esgenerate.js +0 -64
- package/node_modules/escodegen/escodegen.js +0 -2667
- package/node_modules/escodegen/package.json +0 -63
- package/node_modules/esprima/LICENSE.BSD +0 -21
- package/node_modules/esprima/README.md +0 -46
- package/node_modules/esprima/bin/esparse.js +0 -139
- package/node_modules/esprima/bin/esvalidate.js +0 -236
- package/node_modules/esprima/dist/esprima.js +0 -6709
- package/node_modules/esprima/package.json +0 -112
- package/node_modules/estraverse/.jshintrc +0 -16
- package/node_modules/estraverse/LICENSE.BSD +0 -19
- package/node_modules/estraverse/README.md +0 -153
- package/node_modules/estraverse/estraverse.js +0 -805
- package/node_modules/estraverse/gulpfile.js +0 -70
- package/node_modules/estraverse/package.json +0 -40
- package/node_modules/esutils/LICENSE.BSD +0 -19
- package/node_modules/esutils/README.md +0 -174
- package/node_modules/esutils/lib/ast.js +0 -144
- package/node_modules/esutils/lib/code.js +0 -135
- package/node_modules/esutils/lib/keyword.js +0 -165
- package/node_modules/esutils/lib/utils.js +0 -33
- package/node_modules/esutils/package.json +0 -44
- package/node_modules/jsonpath/.jscsrc +0 -60
- package/node_modules/jsonpath/.jshintrc +0 -9
- package/node_modules/jsonpath/.travis.yml +0 -3
- package/node_modules/jsonpath/Dockerfile +0 -1
- package/node_modules/jsonpath/Gruntfile.js +0 -83
- package/node_modules/jsonpath/LICENSE +0 -7
- package/node_modules/jsonpath/README.md +0 -216
- package/node_modules/jsonpath/bin/generate_parser.js +0 -8
- package/node_modules/jsonpath/fig.yml +0 -5
- package/node_modules/jsonpath/generated/parser.js +0 -721
- package/node_modules/jsonpath/include/action.js +0 -4
- package/node_modules/jsonpath/include/module.js +0 -34
- package/node_modules/jsonpath/index.js +0 -1
- package/node_modules/jsonpath/jsonpath.js +0 -7093
- package/node_modules/jsonpath/jsonpath.min.js +0 -4
- package/node_modules/jsonpath/lib/aesprim.js +0 -18
- package/node_modules/jsonpath/lib/dict.js +0 -6
- package/node_modules/jsonpath/lib/grammar.js +0 -106
- package/node_modules/jsonpath/lib/handlers.js +0 -409
- package/node_modules/jsonpath/lib/index.js +0 -304
- package/node_modules/jsonpath/lib/parser.js +0 -21
- package/node_modules/jsonpath/lib/slice.js +0 -41
- package/node_modules/jsonpath/node_modules/esprima/LICENSE.BSD +0 -19
- package/node_modules/jsonpath/node_modules/esprima/README.md +0 -24
- package/node_modules/jsonpath/node_modules/esprima/bin/esparse.js +0 -127
- package/node_modules/jsonpath/node_modules/esprima/bin/esvalidate.js +0 -199
- package/node_modules/jsonpath/node_modules/esprima/esprima.js +0 -3772
- package/node_modules/jsonpath/node_modules/esprima/package.json +0 -83
- package/node_modules/jsonpath/node_modules/esprima/test/compat.js +0 -241
- package/node_modules/jsonpath/node_modules/esprima/test/reflect.js +0 -422
- package/node_modules/jsonpath/node_modules/esprima/test/run.js +0 -67
- package/node_modules/jsonpath/node_modules/esprima/test/runner.js +0 -495
- package/node_modules/jsonpath/node_modules/esprima/test/test.js +0 -25593
- package/node_modules/jsonpath/package.json +0 -45
- package/node_modules/jsonpath/test/data/store.json +0 -31
- package/node_modules/jsonpath/test/lessons.js +0 -38
- package/node_modules/jsonpath/test/parse.js +0 -164
- package/node_modules/jsonpath/test/query.js +0 -359
- package/node_modules/jsonpath/test/security.js +0 -238
- package/node_modules/jsonpath/test/slice.js +0 -57
- package/node_modules/jsonpath/test/stringify.js +0 -54
- package/node_modules/jsonpath/test/sugar.js +0 -72
- package/node_modules/source-map/LICENSE +0 -28
- package/node_modules/source-map/README.md +0 -742
- package/node_modules/source-map/dist/source-map.debug.js +0 -3234
- package/node_modules/source-map/dist/source-map.js +0 -3233
- package/node_modules/source-map/dist/source-map.min.js +0 -2
- package/node_modules/source-map/dist/source-map.min.js.map +0 -1
- package/node_modules/source-map/lib/array-set.js +0 -121
- package/node_modules/source-map/lib/base64-vlq.js +0 -140
- package/node_modules/source-map/lib/base64.js +0 -67
- package/node_modules/source-map/lib/binary-search.js +0 -111
- package/node_modules/source-map/lib/mapping-list.js +0 -79
- package/node_modules/source-map/lib/quick-sort.js +0 -114
- package/node_modules/source-map/lib/source-map-consumer.js +0 -1145
- package/node_modules/source-map/lib/source-map-generator.js +0 -425
- package/node_modules/source-map/lib/source-node.js +0 -413
- package/node_modules/source-map/lib/util.js +0 -488
- package/node_modules/source-map/package.json +0 -73
- package/node_modules/source-map/source-map.d.ts +0 -98
- package/node_modules/source-map/source-map.js +0 -8
- package/node_modules/static-eval/.travis.yml +0 -18
- package/node_modules/static-eval/CHANGELOG.md +0 -21
- package/node_modules/static-eval/LICENSE +0 -20
- package/node_modules/static-eval/example/eval.js +0 -7
- package/node_modules/static-eval/example/vars.js +0 -11
- package/node_modules/static-eval/index.js +0 -209
- package/node_modules/static-eval/package.json +0 -54
- package/node_modules/static-eval/readme.markdown +0 -87
- package/node_modules/static-eval/security.md +0 -15
- package/node_modules/static-eval/test/eval.js +0 -177
- package/node_modules/static-eval/test/prop.js +0 -16
- package/node_modules/static-eval/test/template-strings.js +0 -33
- package/node_modules/underscore/LICENSE +0 -22
- package/node_modules/underscore/README.md +0 -34
- package/node_modules/underscore/amd/_baseCreate.js +0 -21
- package/node_modules/underscore/amd/_baseIteratee.js +0 -15
- package/node_modules/underscore/amd/_cb.js +0 -12
- package/node_modules/underscore/amd/_chainResult.js +0 -10
- package/node_modules/underscore/amd/_collectNonEnumProps.js +0 -42
- package/node_modules/underscore/amd/_createAssigner.js +0 -24
- package/node_modules/underscore/amd/_createEscaper.js +0 -21
- package/node_modules/underscore/amd/_createIndexFinder.js +0 -30
- package/node_modules/underscore/amd/_createPredicateIndexFinder.js +0 -18
- package/node_modules/underscore/amd/_createReduce.js +0 -30
- package/node_modules/underscore/amd/_createSizePropertyCheck.js +0 -13
- package/node_modules/underscore/amd/_deepGet.js +0 -15
- package/node_modules/underscore/amd/_escapeMap.js +0 -15
- package/node_modules/underscore/amd/_executeBound.js +0 -16
- package/node_modules/underscore/amd/_flatten.js +0 -32
- package/node_modules/underscore/amd/_getByteLength.js +0 -8
- package/node_modules/underscore/amd/_getLength.js +0 -8
- package/node_modules/underscore/amd/_group.js +0 -18
- package/node_modules/underscore/amd/_has.js +0 -10
- package/node_modules/underscore/amd/_hasObjectTag.js +0 -7
- package/node_modules/underscore/amd/_isArrayLike.js +0 -11
- package/node_modules/underscore/amd/_isBufferLike.js +0 -9
- package/node_modules/underscore/amd/_keyInObj.js +0 -11
- package/node_modules/underscore/amd/_methodFingerprint.js +0 -44
- package/node_modules/underscore/amd/_optimizeCb.js +0 -27
- package/node_modules/underscore/amd/_set.js +0 -21
- package/node_modules/underscore/amd/_setup.js +0 -70
- package/node_modules/underscore/amd/_shallowProperty.js +0 -12
- package/node_modules/underscore/amd/_stringTagBug.js +0 -16
- package/node_modules/underscore/amd/_tagTester.js +0 -13
- package/node_modules/underscore/amd/_toBufferView.js +0 -15
- package/node_modules/underscore/amd/_toPath.js +0 -11
- package/node_modules/underscore/amd/_unescapeMap.js +0 -8
- package/node_modules/underscore/amd/after.js +0 -14
- package/node_modules/underscore/amd/allKeys.js +0 -15
- package/node_modules/underscore/amd/before.js +0 -18
- package/node_modules/underscore/amd/bind.js +0 -15
- package/node_modules/underscore/amd/bindAll.js +0 -19
- package/node_modules/underscore/amd/chain.js +0 -12
- package/node_modules/underscore/amd/chunk.js +0 -17
- package/node_modules/underscore/amd/clone.js +0 -11
- package/node_modules/underscore/amd/compact.js +0 -10
- package/node_modules/underscore/amd/compose.js +0 -18
- package/node_modules/underscore/amd/constant.js +0 -12
- package/node_modules/underscore/amd/contains.js +0 -12
- package/node_modules/underscore/amd/countBy.js +0 -12
- package/node_modules/underscore/amd/create.js +0 -14
- package/node_modules/underscore/amd/debounce.js +0 -43
- package/node_modules/underscore/amd/defaults.js +0 -8
- package/node_modules/underscore/amd/defer.js +0 -9
- package/node_modules/underscore/amd/delay.js +0 -13
- package/node_modules/underscore/amd/difference.js +0 -14
- package/node_modules/underscore/amd/each.js +0 -25
- package/node_modules/underscore/amd/escape.js +0 -8
- package/node_modules/underscore/amd/every.js +0 -17
- package/node_modules/underscore/amd/extend.js +0 -8
- package/node_modules/underscore/amd/extendOwn.js +0 -10
- package/node_modules/underscore/amd/filter.js +0 -15
- package/node_modules/underscore/amd/find.js +0 -12
- package/node_modules/underscore/amd/findIndex.js +0 -8
- package/node_modules/underscore/amd/findKey.js +0 -15
- package/node_modules/underscore/amd/findLastIndex.js +0 -8
- package/node_modules/underscore/amd/findWhere.js +0 -11
- package/node_modules/underscore/amd/first.js +0 -13
- package/node_modules/underscore/amd/flatten.js +0 -11
- package/node_modules/underscore/amd/functions.js +0 -14
- package/node_modules/underscore/amd/get.js +0 -14
- package/node_modules/underscore/amd/groupBy.js +0 -11
- package/node_modules/underscore/amd/has.js +0 -19
- package/node_modules/underscore/amd/identity.js +0 -10
- package/node_modules/underscore/amd/index-default.js +0 -12
- package/node_modules/underscore/amd/index.js +0 -154
- package/node_modules/underscore/amd/indexBy.js +0 -11
- package/node_modules/underscore/amd/indexOf.js +0 -11
- package/node_modules/underscore/amd/initial.js +0 -12
- package/node_modules/underscore/amd/intersection.js +0 -22
- package/node_modules/underscore/amd/invert.js +0 -15
- package/node_modules/underscore/amd/invoke.js +0 -28
- package/node_modules/underscore/amd/isArguments.js +0 -19
- package/node_modules/underscore/amd/isArray.js +0 -9
- package/node_modules/underscore/amd/isArrayBuffer.js +0 -7
- package/node_modules/underscore/amd/isBoolean.js +0 -10
- package/node_modules/underscore/amd/isDataView.js +0 -15
- package/node_modules/underscore/amd/isDate.js +0 -7
- package/node_modules/underscore/amd/isElement.js +0 -10
- package/node_modules/underscore/amd/isEmpty.js +0 -18
- package/node_modules/underscore/amd/isEqual.js +0 -133
- package/node_modules/underscore/amd/isError.js +0 -7
- package/node_modules/underscore/amd/isFinite.js +0 -10
- package/node_modules/underscore/amd/isFunction.js +0 -18
- package/node_modules/underscore/amd/isMap.js +0 -7
- package/node_modules/underscore/amd/isMatch.js +0 -17
- package/node_modules/underscore/amd/isNaN.js +0 -10
- package/node_modules/underscore/amd/isNull.js +0 -10
- package/node_modules/underscore/amd/isNumber.js +0 -7
- package/node_modules/underscore/amd/isObject.js +0 -11
- package/node_modules/underscore/amd/isRegExp.js +0 -7
- package/node_modules/underscore/amd/isSet.js +0 -7
- package/node_modules/underscore/amd/isString.js +0 -7
- package/node_modules/underscore/amd/isSymbol.js +0 -7
- package/node_modules/underscore/amd/isTypedArray.js +0 -16
- package/node_modules/underscore/amd/isUndefined.js +0 -10
- package/node_modules/underscore/amd/isWeakMap.js +0 -7
- package/node_modules/underscore/amd/isWeakSet.js +0 -7
- package/node_modules/underscore/amd/iteratee.js +0 -13
- package/node_modules/underscore/amd/keys.js +0 -17
- package/node_modules/underscore/amd/last.js +0 -13
- package/node_modules/underscore/amd/lastIndexOf.js +0 -9
- package/node_modules/underscore/amd/map.js +0 -18
- package/node_modules/underscore/amd/mapObject.js +0 -19
- package/node_modules/underscore/amd/matcher.js +0 -14
- package/node_modules/underscore/amd/max.js +0 -30
- package/node_modules/underscore/amd/memoize.js +0 -17
- package/node_modules/underscore/amd/min.js +0 -30
- package/node_modules/underscore/amd/mixin.js +0 -18
- package/node_modules/underscore/amd/negate.js +0 -12
- package/node_modules/underscore/amd/noop.js +0 -8
- package/node_modules/underscore/amd/now.js +0 -10
- package/node_modules/underscore/amd/object.js +0 -20
- package/node_modules/underscore/amd/omit.js +0 -20
- package/node_modules/underscore/amd/once.js +0 -9
- package/node_modules/underscore/amd/pairs.js +0 -17
- package/node_modules/underscore/amd/partial.js +0 -25
- package/node_modules/underscore/amd/partition.js +0 -11
- package/node_modules/underscore/amd/pick.js +0 -25
- package/node_modules/underscore/amd/pluck.js +0 -10
- package/node_modules/underscore/amd/property.js +0 -14
- package/node_modules/underscore/amd/propertyOf.js +0 -13
- package/node_modules/underscore/amd/random.js +0 -14
- package/node_modules/underscore/amd/range.js +0 -27
- package/node_modules/underscore/amd/reduce.js +0 -9
- package/node_modules/underscore/amd/reduceRight.js +0 -8
- package/node_modules/underscore/amd/reject.js +0 -10
- package/node_modules/underscore/amd/rest.js +0 -12
- package/node_modules/underscore/amd/restArguments.js +0 -33
- package/node_modules/underscore/amd/result.js +0 -25
- package/node_modules/underscore/amd/sample.js +0 -27
- package/node_modules/underscore/amd/set.js +0 -15
- package/node_modules/underscore/amd/shuffle.js +0 -10
- package/node_modules/underscore/amd/size.js +0 -11
- package/node_modules/underscore/amd/some.js +0 -17
- package/node_modules/underscore/amd/sortBy.js +0 -26
- package/node_modules/underscore/amd/sortedIndex.js +0 -18
- package/node_modules/underscore/amd/tap.js +0 -13
- package/node_modules/underscore/amd/template.js +0 -103
- package/node_modules/underscore/amd/templateSettings.js +0 -13
- package/node_modules/underscore/amd/throttle.js +0 -51
- package/node_modules/underscore/amd/times.js +0 -13
- package/node_modules/underscore/amd/toArray.js +0 -18
- package/node_modules/underscore/amd/toPath.js +0 -12
- package/node_modules/underscore/amd/underscore-array-methods.js +0 -30
- package/node_modules/underscore/amd/underscore.js +0 -29
- package/node_modules/underscore/amd/unescape.js +0 -8
- package/node_modules/underscore/amd/union.js +0 -11
- package/node_modules/underscore/amd/uniq.js +0 -37
- package/node_modules/underscore/amd/uniqueId.js +0 -13
- package/node_modules/underscore/amd/unzip.js +0 -17
- package/node_modules/underscore/amd/values.js +0 -16
- package/node_modules/underscore/amd/where.js +0 -11
- package/node_modules/underscore/amd/without.js +0 -10
- package/node_modules/underscore/amd/wrap.js +0 -12
- package/node_modules/underscore/amd/zip.js +0 -9
- package/node_modules/underscore/cjs/_baseCreate.js +0 -20
- package/node_modules/underscore/cjs/_baseIteratee.js +0 -19
- package/node_modules/underscore/cjs/_cb.js +0 -12
- package/node_modules/underscore/cjs/_chainResult.js +0 -8
- package/node_modules/underscore/cjs/_collectNonEnumProps.js +0 -42
- package/node_modules/underscore/cjs/_createAssigner.js +0 -20
- package/node_modules/underscore/cjs/_createEscaper.js +0 -19
- package/node_modules/underscore/cjs/_createIndexFinder.js +0 -30
- package/node_modules/underscore/cjs/_createPredicateIndexFinder.js +0 -17
- package/node_modules/underscore/cjs/_createReduce.js +0 -30
- package/node_modules/underscore/cjs/_createSizePropertyCheck.js +0 -11
- package/node_modules/underscore/cjs/_deepGet.js +0 -11
- package/node_modules/underscore/cjs/_escapeMap.js +0 -11
- package/node_modules/underscore/cjs/_executeBound.js +0 -15
- package/node_modules/underscore/cjs/_flatten.js +0 -33
- package/node_modules/underscore/cjs/_getByteLength.js +0 -6
- package/node_modules/underscore/cjs/_getLength.js +0 -6
- package/node_modules/underscore/cjs/_group.js +0 -17
- package/node_modules/underscore/cjs/_has.js +0 -8
- package/node_modules/underscore/cjs/_hasObjectTag.js +0 -5
- package/node_modules/underscore/cjs/_isArrayLike.js +0 -10
- package/node_modules/underscore/cjs/_isBufferLike.js +0 -8
- package/node_modules/underscore/cjs/_keyInObj.js +0 -7
- package/node_modules/underscore/cjs/_methodFingerprint.js +0 -44
- package/node_modules/underscore/cjs/_optimizeCb.js +0 -23
- package/node_modules/underscore/cjs/_set.js +0 -21
- package/node_modules/underscore/cjs/_setup.js +0 -66
- package/node_modules/underscore/cjs/_shallowProperty.js +0 -8
- package/node_modules/underscore/cjs/_stringTagBug.js +0 -15
- package/node_modules/underscore/cjs/_tagTester.js +0 -11
- package/node_modules/underscore/cjs/_toBufferView.js +0 -13
- package/node_modules/underscore/cjs/_toPath.js +0 -10
- package/node_modules/underscore/cjs/_unescapeMap.js +0 -7
- package/node_modules/underscore/cjs/after.js +0 -10
- package/node_modules/underscore/cjs/allKeys.js +0 -15
- package/node_modules/underscore/cjs/before.js +0 -14
- package/node_modules/underscore/cjs/bind.js +0 -15
- package/node_modules/underscore/cjs/bindAll.js +0 -19
- package/node_modules/underscore/cjs/chain.js +0 -10
- package/node_modules/underscore/cjs/chunk.js +0 -15
- package/node_modules/underscore/cjs/clone.js +0 -11
- package/node_modules/underscore/cjs/compact.js +0 -8
- package/node_modules/underscore/cjs/compose.js +0 -14
- package/node_modules/underscore/cjs/constant.js +0 -8
- package/node_modules/underscore/cjs/contains.js +0 -12
- package/node_modules/underscore/cjs/countBy.js +0 -11
- package/node_modules/underscore/cjs/create.js +0 -13
- package/node_modules/underscore/cjs/debounce.js +0 -42
- package/node_modules/underscore/cjs/defaults.js +0 -7
- package/node_modules/underscore/cjs/defer.js +0 -9
- package/node_modules/underscore/cjs/delay.js +0 -11
- package/node_modules/underscore/cjs/difference.js +0 -15
- package/node_modules/underscore/cjs/each.js +0 -25
- package/node_modules/underscore/cjs/escape.js +0 -7
- package/node_modules/underscore/cjs/every.js +0 -17
- package/node_modules/underscore/cjs/extend.js +0 -7
- package/node_modules/underscore/cjs/extendOwn.js +0 -9
- package/node_modules/underscore/cjs/filter.js +0 -14
- package/node_modules/underscore/cjs/find.js +0 -12
- package/node_modules/underscore/cjs/findIndex.js +0 -6
- package/node_modules/underscore/cjs/findKey.js +0 -14
- package/node_modules/underscore/cjs/findLastIndex.js +0 -6
- package/node_modules/underscore/cjs/findWhere.js +0 -10
- package/node_modules/underscore/cjs/first.js +0 -11
- package/node_modules/underscore/cjs/flatten.js +0 -9
- package/node_modules/underscore/cjs/functions.js +0 -12
- package/node_modules/underscore/cjs/get.js +0 -14
- package/node_modules/underscore/cjs/groupBy.js +0 -10
- package/node_modules/underscore/cjs/has.js +0 -18
- package/node_modules/underscore/cjs/identity.js +0 -6
- package/node_modules/underscore/cjs/index-default.js +0 -11
- package/node_modules/underscore/cjs/index.js +0 -278
- package/node_modules/underscore/cjs/indexBy.js +0 -9
- package/node_modules/underscore/cjs/indexOf.js +0 -11
- package/node_modules/underscore/cjs/initial.js +0 -10
- package/node_modules/underscore/cjs/intersection.js +0 -21
- package/node_modules/underscore/cjs/invert.js +0 -13
- package/node_modules/underscore/cjs/invoke.js +0 -30
- package/node_modules/underscore/cjs/isArguments.js +0 -18
- package/node_modules/underscore/cjs/isArray.js +0 -8
- package/node_modules/underscore/cjs/isArrayBuffer.js +0 -5
- package/node_modules/underscore/cjs/isBoolean.js +0 -8
- package/node_modules/underscore/cjs/isDataView.js +0 -16
- package/node_modules/underscore/cjs/isDate.js +0 -5
- package/node_modules/underscore/cjs/isElement.js +0 -6
- package/node_modules/underscore/cjs/isEmpty.js +0 -20
- package/node_modules/underscore/cjs/isEqual.js +0 -140
- package/node_modules/underscore/cjs/isError.js +0 -5
- package/node_modules/underscore/cjs/isFinite.js +0 -9
- package/node_modules/underscore/cjs/isFunction.js +0 -17
- package/node_modules/underscore/cjs/isMap.js +0 -7
- package/node_modules/underscore/cjs/isMatch.js +0 -15
- package/node_modules/underscore/cjs/isNaN.js +0 -9
- package/node_modules/underscore/cjs/isNull.js +0 -6
- package/node_modules/underscore/cjs/isNumber.js +0 -5
- package/node_modules/underscore/cjs/isObject.js +0 -7
- package/node_modules/underscore/cjs/isRegExp.js +0 -5
- package/node_modules/underscore/cjs/isSet.js +0 -7
- package/node_modules/underscore/cjs/isString.js +0 -5
- package/node_modules/underscore/cjs/isSymbol.js +0 -5
- package/node_modules/underscore/cjs/isTypedArray.js +0 -17
- package/node_modules/underscore/cjs/isUndefined.js +0 -6
- package/node_modules/underscore/cjs/isWeakMap.js +0 -7
- package/node_modules/underscore/cjs/isWeakSet.js +0 -5
- package/node_modules/underscore/cjs/iteratee.js +0 -12
- package/node_modules/underscore/cjs/keys.js +0 -18
- package/node_modules/underscore/cjs/last.js +0 -11
- package/node_modules/underscore/cjs/lastIndexOf.js +0 -8
- package/node_modules/underscore/cjs/map.js +0 -18
- package/node_modules/underscore/cjs/mapObject.js +0 -18
- package/node_modules/underscore/cjs/matcher.js +0 -13
- package/node_modules/underscore/cjs/max.js +0 -31
- package/node_modules/underscore/cjs/memoize.js +0 -15
- package/node_modules/underscore/cjs/min.js +0 -31
- package/node_modules/underscore/cjs/mixin.js +0 -20
- package/node_modules/underscore/cjs/negate.js +0 -8
- package/node_modules/underscore/cjs/noop.js +0 -4
- package/node_modules/underscore/cjs/now.js +0 -6
- package/node_modules/underscore/cjs/object.js +0 -18
- package/node_modules/underscore/cjs/omit.js +0 -24
- package/node_modules/underscore/cjs/once.js +0 -8
- package/node_modules/underscore/cjs/pairs.js +0 -15
- package/node_modules/underscore/cjs/partial.js +0 -25
- package/node_modules/underscore/cjs/partition.js +0 -9
- package/node_modules/underscore/cjs/pick.js +0 -28
- package/node_modules/underscore/cjs/pluck.js +0 -9
- package/node_modules/underscore/cjs/property.js +0 -13
- package/node_modules/underscore/cjs/propertyOf.js +0 -12
- package/node_modules/underscore/cjs/random.js +0 -10
- package/node_modules/underscore/cjs/range.js +0 -23
- package/node_modules/underscore/cjs/reduce.js +0 -7
- package/node_modules/underscore/cjs/reduceRight.js +0 -6
- package/node_modules/underscore/cjs/reject.js +0 -10
- package/node_modules/underscore/cjs/rest.js +0 -10
- package/node_modules/underscore/cjs/restArguments.js +0 -29
- package/node_modules/underscore/cjs/result.js +0 -24
- package/node_modules/underscore/cjs/sample.js +0 -29
- package/node_modules/underscore/cjs/set.js +0 -15
- package/node_modules/underscore/cjs/shuffle.js +0 -8
- package/node_modules/underscore/cjs/size.js +0 -10
- package/node_modules/underscore/cjs/some.js +0 -17
- package/node_modules/underscore/cjs/sortBy.js +0 -26
- package/node_modules/underscore/cjs/sortedIndex.js +0 -17
- package/node_modules/underscore/cjs/tap.js +0 -9
- package/node_modules/underscore/cjs/template.js +0 -103
- package/node_modules/underscore/cjs/templateSettings.js +0 -11
- package/node_modules/underscore/cjs/throttle.js +0 -49
- package/node_modules/underscore/cjs/times.js +0 -11
- package/node_modules/underscore/cjs/toArray.js +0 -22
- package/node_modules/underscore/cjs/toPath.js +0 -11
- package/node_modules/underscore/cjs/underscore-array-methods.js +0 -31
- package/node_modules/underscore/cjs/underscore.js +0 -27
- package/node_modules/underscore/cjs/unescape.js +0 -7
- package/node_modules/underscore/cjs/union.js +0 -11
- package/node_modules/underscore/cjs/uniq.js +0 -38
- package/node_modules/underscore/cjs/uniqueId.js +0 -9
- package/node_modules/underscore/cjs/unzip.js +0 -17
- package/node_modules/underscore/cjs/values.js +0 -14
- package/node_modules/underscore/cjs/where.js +0 -10
- package/node_modules/underscore/cjs/without.js +0 -9
- package/node_modules/underscore/cjs/wrap.js +0 -10
- package/node_modules/underscore/cjs/zip.js +0 -8
- package/node_modules/underscore/modules/.eslintrc +0 -21
- package/node_modules/underscore/modules/_baseCreate.js +0 -18
- package/node_modules/underscore/modules/_baseIteratee.js +0 -17
- package/node_modules/underscore/modules/_cb.js +0 -10
- package/node_modules/underscore/modules/_chainResult.js +0 -6
- package/node_modules/underscore/modules/_collectNonEnumProps.js +0 -40
- package/node_modules/underscore/modules/_createAssigner.js +0 -18
- package/node_modules/underscore/modules/_createEscaper.js +0 -17
- package/node_modules/underscore/modules/_createIndexFinder.js +0 -28
- package/node_modules/underscore/modules/_createPredicateIndexFinder.js +0 -15
- package/node_modules/underscore/modules/_createReduce.js +0 -28
- package/node_modules/underscore/modules/_createSizePropertyCheck.js +0 -9
- package/node_modules/underscore/modules/_deepGet.js +0 -9
- package/node_modules/underscore/modules/_escapeMap.js +0 -9
- package/node_modules/underscore/modules/_executeBound.js +0 -13
- package/node_modules/underscore/modules/_flatten.js +0 -31
- package/node_modules/underscore/modules/_getByteLength.js +0 -4
- package/node_modules/underscore/modules/_getLength.js +0 -4
- package/node_modules/underscore/modules/_group.js +0 -15
- package/node_modules/underscore/modules/_has.js +0 -6
- package/node_modules/underscore/modules/_hasObjectTag.js +0 -3
- package/node_modules/underscore/modules/_isArrayLike.js +0 -8
- package/node_modules/underscore/modules/_isBufferLike.js +0 -6
- package/node_modules/underscore/modules/_keyInObj.js +0 -5
- package/node_modules/underscore/modules/_methodFingerprint.js +0 -37
- package/node_modules/underscore/modules/_optimizeCb.js +0 -21
- package/node_modules/underscore/modules/_setup.js +0 -43
- package/node_modules/underscore/modules/_shallowProperty.js +0 -6
- package/node_modules/underscore/modules/_stringTagBug.js +0 -10
- package/node_modules/underscore/modules/_tagTester.js +0 -9
- package/node_modules/underscore/modules/_toBufferView.js +0 -11
- package/node_modules/underscore/modules/_toPath.js +0 -8
- package/node_modules/underscore/modules/_unescapeMap.js +0 -5
- package/node_modules/underscore/modules/after.js +0 -8
- package/node_modules/underscore/modules/allKeys.js +0 -13
- package/node_modules/underscore/modules/before.js +0 -12
- package/node_modules/underscore/modules/bind.js +0 -13
- package/node_modules/underscore/modules/bindAll.js +0 -17
- package/node_modules/underscore/modules/chain.js +0 -8
- package/node_modules/underscore/modules/chunk.js +0 -13
- package/node_modules/underscore/modules/clone.js +0 -9
- package/node_modules/underscore/modules/compact.js +0 -6
- package/node_modules/underscore/modules/compose.js +0 -12
- package/node_modules/underscore/modules/constant.js +0 -6
- package/node_modules/underscore/modules/contains.js +0 -10
- package/node_modules/underscore/modules/countBy.js +0 -9
- package/node_modules/underscore/modules/create.js +0 -11
- package/node_modules/underscore/modules/debounce.js +0 -40
- package/node_modules/underscore/modules/defaults.js +0 -5
- package/node_modules/underscore/modules/defer.js +0 -7
- package/node_modules/underscore/modules/delay.js +0 -9
- package/node_modules/underscore/modules/difference.js +0 -13
- package/node_modules/underscore/modules/each.js +0 -23
- package/node_modules/underscore/modules/escape.js +0 -5
- package/node_modules/underscore/modules/every.js +0 -15
- package/node_modules/underscore/modules/extend.js +0 -5
- package/node_modules/underscore/modules/extendOwn.js +0 -7
- package/node_modules/underscore/modules/filter.js +0 -12
- package/node_modules/underscore/modules/find.js +0 -10
- package/node_modules/underscore/modules/findIndex.js +0 -4
- package/node_modules/underscore/modules/findKey.js +0 -12
- package/node_modules/underscore/modules/findLastIndex.js +0 -4
- package/node_modules/underscore/modules/findWhere.js +0 -8
- package/node_modules/underscore/modules/first.js +0 -9
- package/node_modules/underscore/modules/flatten.js +0 -7
- package/node_modules/underscore/modules/functions.js +0 -10
- package/node_modules/underscore/modules/get.js +0 -12
- package/node_modules/underscore/modules/groupBy.js +0 -8
- package/node_modules/underscore/modules/has.js +0 -16
- package/node_modules/underscore/modules/identity.js +0 -4
- package/node_modules/underscore/modules/index-all.js +0 -18
- package/node_modules/underscore/modules/index-default.js +0 -27
- package/node_modules/underscore/modules/index.js +0 -200
- package/node_modules/underscore/modules/indexBy.js +0 -7
- package/node_modules/underscore/modules/indexOf.js +0 -9
- package/node_modules/underscore/modules/initial.js +0 -8
- package/node_modules/underscore/modules/intersection.js +0 -19
- package/node_modules/underscore/modules/invert.js +0 -11
- package/node_modules/underscore/modules/invoke.js +0 -28
- package/node_modules/underscore/modules/isArguments.js +0 -16
- package/node_modules/underscore/modules/isArray.js +0 -6
- package/node_modules/underscore/modules/isArrayBuffer.js +0 -3
- package/node_modules/underscore/modules/isBoolean.js +0 -6
- package/node_modules/underscore/modules/isDataView.js +0 -14
- package/node_modules/underscore/modules/isDate.js +0 -3
- package/node_modules/underscore/modules/isElement.js +0 -4
- package/node_modules/underscore/modules/isEmpty.js +0 -18
- package/node_modules/underscore/modules/isEqual.js +0 -138
- package/node_modules/underscore/modules/isError.js +0 -3
- package/node_modules/underscore/modules/isFinite.js +0 -7
- package/node_modules/underscore/modules/isFunction.js +0 -15
- package/node_modules/underscore/modules/isMap.js +0 -5
- package/node_modules/underscore/modules/isMatch.js +0 -13
- package/node_modules/underscore/modules/isNaN.js +0 -7
- package/node_modules/underscore/modules/isNull.js +0 -4
- package/node_modules/underscore/modules/isNumber.js +0 -3
- package/node_modules/underscore/modules/isObject.js +0 -5
- package/node_modules/underscore/modules/isRegExp.js +0 -3
- package/node_modules/underscore/modules/isSet.js +0 -5
- package/node_modules/underscore/modules/isString.js +0 -3
- package/node_modules/underscore/modules/isSymbol.js +0 -3
- package/node_modules/underscore/modules/isTypedArray.js +0 -15
- package/node_modules/underscore/modules/isUndefined.js +0 -4
- package/node_modules/underscore/modules/isWeakMap.js +0 -5
- package/node_modules/underscore/modules/isWeakSet.js +0 -3
- package/node_modules/underscore/modules/iteratee.js +0 -10
- package/node_modules/underscore/modules/keys.js +0 -16
- package/node_modules/underscore/modules/last.js +0 -9
- package/node_modules/underscore/modules/lastIndexOf.js +0 -6
- package/node_modules/underscore/modules/map.js +0 -16
- package/node_modules/underscore/modules/mapObject.js +0 -16
- package/node_modules/underscore/modules/matcher.js +0 -11
- package/node_modules/underscore/modules/max.js +0 -29
- package/node_modules/underscore/modules/memoize.js +0 -13
- package/node_modules/underscore/modules/min.js +0 -29
- package/node_modules/underscore/modules/mixin.js +0 -18
- package/node_modules/underscore/modules/negate.js +0 -6
- package/node_modules/underscore/modules/noop.js +0 -2
- package/node_modules/underscore/modules/now.js +0 -4
- package/node_modules/underscore/modules/object.js +0 -16
- package/node_modules/underscore/modules/omit.js +0 -22
- package/node_modules/underscore/modules/once.js +0 -6
- package/node_modules/underscore/modules/package.json +0 -1
- package/node_modules/underscore/modules/pairs.js +0 -13
- package/node_modules/underscore/modules/partial.js +0 -24
- package/node_modules/underscore/modules/partition.js +0 -7
- package/node_modules/underscore/modules/pick.js +0 -26
- package/node_modules/underscore/modules/pluck.js +0 -7
- package/node_modules/underscore/modules/property.js +0 -11
- package/node_modules/underscore/modules/propertyOf.js +0 -10
- package/node_modules/underscore/modules/random.js +0 -8
- package/node_modules/underscore/modules/range.js +0 -21
- package/node_modules/underscore/modules/reduce.js +0 -5
- package/node_modules/underscore/modules/reduceRight.js +0 -4
- package/node_modules/underscore/modules/reject.js +0 -8
- package/node_modules/underscore/modules/rest.js +0 -8
- package/node_modules/underscore/modules/restArguments.js +0 -27
- package/node_modules/underscore/modules/result.js +0 -22
- package/node_modules/underscore/modules/sample.js +0 -27
- package/node_modules/underscore/modules/shuffle.js +0 -6
- package/node_modules/underscore/modules/size.js +0 -8
- package/node_modules/underscore/modules/some.js +0 -15
- package/node_modules/underscore/modules/sortBy.js +0 -24
- package/node_modules/underscore/modules/sortedIndex.js +0 -15
- package/node_modules/underscore/modules/tap.js +0 -7
- package/node_modules/underscore/modules/template.js +0 -101
- package/node_modules/underscore/modules/templateSettings.js +0 -9
- package/node_modules/underscore/modules/throttle.js +0 -47
- package/node_modules/underscore/modules/times.js +0 -9
- package/node_modules/underscore/modules/toArray.js +0 -20
- package/node_modules/underscore/modules/toPath.js +0 -9
- package/node_modules/underscore/modules/underscore-array-methods.js +0 -31
- package/node_modules/underscore/modules/underscore.js +0 -25
- package/node_modules/underscore/modules/unescape.js +0 -5
- package/node_modules/underscore/modules/union.js +0 -9
- package/node_modules/underscore/modules/uniq.js +0 -36
- package/node_modules/underscore/modules/uniqueId.js +0 -7
- package/node_modules/underscore/modules/unzip.js +0 -15
- package/node_modules/underscore/modules/values.js +0 -12
- package/node_modules/underscore/modules/where.js +0 -8
- package/node_modules/underscore/modules/without.js +0 -7
- package/node_modules/underscore/modules/wrap.js +0 -8
- package/node_modules/underscore/modules/zip.js +0 -6
- package/node_modules/underscore/package.json +0 -124
- package/node_modules/underscore/underscore-esm-min.js +0 -5
- package/node_modules/underscore/underscore-esm-min.js.map +0 -1
- package/node_modules/underscore/underscore-esm.js +0 -2034
- package/node_modules/underscore/underscore-esm.js.map +0 -1
- package/node_modules/underscore/underscore-min.js +0 -6
- package/node_modules/underscore/underscore-min.js.map +0 -1
- package/node_modules/underscore/underscore-node-f.cjs +0 -2158
- package/node_modules/underscore/underscore-node-f.cjs.map +0 -1
- package/node_modules/underscore/underscore-node.cjs +0 -11
- package/node_modules/underscore/underscore-node.cjs.map +0 -1
- package/node_modules/underscore/underscore-node.mjs +0 -7
- package/node_modules/underscore/underscore-node.mjs.map +0 -1
- package/node_modules/underscore/underscore-umd-min.js +0 -6
- package/node_modules/underscore/underscore-umd-min.js.map +0 -1
- package/node_modules/underscore/underscore-umd.js +0 -2042
- package/node_modules/underscore/underscore-umd.js.map +0 -1
- package/node_modules/underscore/underscore.js +0 -2042
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
class e{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+e.version}static addUnaryOp(t){return e.max_unop_len=Math.max(t.length,e.max_unop_len),e.unary_ops[t]=1,e}static addBinaryOp(t,r,i){return e.max_binop_len=Math.max(t.length,e.max_binop_len),e.binary_ops[t]=r,i?e.right_associative.add(t):e.right_associative.delete(t),e}static addIdentifierChar(t){return e.additional_identifier_chars.add(t),e}static addLiteral(t,r){return e.literals[t]=r,e}static removeUnaryOp(t){return delete e.unary_ops[t],t.length===e.max_unop_len&&(e.max_unop_len=e.getMaxKeyLen(e.unary_ops)),e}static removeAllUnaryOps(){return e.unary_ops={},e.max_unop_len=0,e}static removeIdentifierChar(t){return e.additional_identifier_chars.delete(t),e}static removeBinaryOp(t){return delete e.binary_ops[t],t.length===e.max_binop_len&&(e.max_binop_len=e.getMaxKeyLen(e.binary_ops)),e.right_associative.delete(t),e}static removeAllBinaryOps(){return e.binary_ops={},e.max_binop_len=0,e}static removeLiteral(t){return delete e.literals[t],e}static removeAllLiterals(){return e.literals={},e}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(t){return new e(t).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map((e=>e.length)))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(t){return e.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}throwError(e){const t=new Error(e+" at character "+this.index);throw t.index=this.index,t.description=e,t}runHook(t,r){if(e.hooks[t]){const i={context:this,node:r};return e.hooks.run(t,i),i.node}return r}searchHook(t){if(e.hooks[t]){const r={context:this};return e.hooks[t].find((function(e){return e.call(r.context,r),r.node})),r.node}}gobbleSpaces(){let t=this.code;for(;t===e.SPACE_CODE||t===e.TAB_CODE||t===e.LF_CODE||t===e.CR_CODE;)t=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");const t=this.gobbleExpressions(),r=1===t.length?t[0]:{type:e.COMPOUND,body:t};return this.runHook("after-all",r)}gobbleExpressions(t){let r,i,s=[];for(;this.index<this.expr.length;)if(r=this.code,r===e.SEMCOL_CODE||r===e.COMMA_CODE)this.index++;else if(i=this.gobbleExpression())s.push(i);else if(this.index<this.expr.length){if(r===t)break;this.throwError('Unexpected "'+this.char+'"')}return s}gobbleExpression(){const e=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",e)}gobbleBinaryOp(){this.gobbleSpaces();let t=this.expr.substr(this.index,e.max_binop_len),r=t.length;for(;r>0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.length<this.expr.length&&!e.isIdentifierPart(this.expr.charCodeAt(this.index+t.length))))return this.index+=r,t;t=t.substr(0,--r)}return!1}gobbleBinaryExpression(){let t,r,i,s,n,o,h,a,l;if(o=this.gobbleToken(),!o)return o;if(r=this.gobbleBinaryOp(),!r)return o;for(n={value:r,prec:e.binaryPrecedence(r),right_a:e.right_associative.has(r)},h=this.gobbleToken(),h||this.throwError("Expected expression after "+r),s=[o,n,h];r=this.gobbleBinaryOp();){if(i=e.binaryPrecedence(r),0===i){this.index-=r.length;break}n={value:r,prec:i,right_a:e.right_associative.has(r)},l=r;const a=e=>n.right_a&&e.right_a?i>e.prec:i<=e.prec;for(;s.length>2&&a(s[s.length-2]);)h=s.pop(),r=s.pop().value,o=s.pop(),t={type:e.BINARY_EXP,operator:r,left:o,right:h},s.push(t);t=this.gobbleToken(),t||this.throwError("Expected expression after "+l),s.push(n,t)}for(a=s.length-1,t=s[a];a>1;)t={type:e.BINARY_EXP,operator:s[a-1].value,left:s[a-2],right:t},a-=2;return t}gobbleToken(){let t,r,i,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,e.max_unop_len),i=r.length;i>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length<this.expr.length&&!e.isIdentifierPart(this.expr.charCodeAt(this.index+r.length)))){this.index+=i;const t=this.gobbleToken();return t||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:e.UNARY_EXP,operator:r,argument:t,prefix:!0})}r=r.substr(0,--i)}e.isIdentifierStart(t)?(s=this.gobbleIdentifier(),e.literals.hasOwnProperty(s.name)?s={type:e.LITERAL,value:e.literals[s.name],raw:s.name}:s.name===e.this_str&&(s={type:e.THIS_EXP})):t===e.OPAREN_CODE&&(s=this.gobbleGroup())}return s?(s=this.gobbleTokenProperty(s),this.runHook("after-token",s)):this.runHook("after-token",!1)}gobbleTokenProperty(t){this.gobbleSpaces();let r=this.code;for(;r===e.PERIOD_CODE||r===e.OBRACK_CODE||r===e.OPAREN_CODE||r===e.QUMARK_CODE;){let i;if(r===e.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==e.PERIOD_CODE)break;i=!0,this.index+=2,this.gobbleSpaces(),r=this.code}this.index++,r===e.OBRACK_CODE?((t={type:e.MEMBER_EXP,computed:!0,object:t,property:this.gobbleExpression()}).property||this.throwError('Unexpected "'+this.char+'"'),this.gobbleSpaces(),r=this.code,r!==e.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):r===e.OPAREN_CODE?t={type:e.CALL_EXP,arguments:this.gobbleArguments(e.CPAREN_CODE),callee:t}:(r===e.PERIOD_CODE||i)&&(i&&this.index--,this.gobbleSpaces(),t={type:e.MEMBER_EXP,computed:!1,object:t,property:this.gobbleIdentifier()}),i&&(t.optional=!0),this.gobbleSpaces(),r=this.code}return t}gobbleNumericLiteral(){let t,r,i="";for(;e.isDecimalDigit(this.code);)i+=this.expr.charAt(this.index++);if(this.code===e.PERIOD_CODE)for(i+=this.expr.charAt(this.index++);e.isDecimalDigit(this.code);)i+=this.expr.charAt(this.index++);if(t=this.char,"e"===t||"E"===t){for(i+=this.expr.charAt(this.index++),t=this.char,"+"!==t&&"-"!==t||(i+=this.expr.charAt(this.index++));e.isDecimalDigit(this.code);)i+=this.expr.charAt(this.index++);e.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+i+this.char+")")}return r=this.code,e.isIdentifierStart(r)?this.throwError("Variable names cannot start with a number ("+i+this.char+")"):(r===e.PERIOD_CODE||1===i.length&&i.charCodeAt(0)===e.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:e.LITERAL,value:parseFloat(i),raw:i}}gobbleStringLiteral(){let t="";const r=this.index,i=this.expr.charAt(this.index++);let s=!1;for(;this.index<this.expr.length;){let e=this.expr.charAt(this.index++);if(e===i){s=!0;break}if("\\"===e)switch(e=this.expr.charAt(this.index++),e){case"n":t+="\n";break;case"r":t+="\r";break;case"t":t+="\t";break;case"b":t+="\b";break;case"f":t+="\f";break;case"v":t+="\v";break;default:t+=e}else t+=e}return s||this.throwError('Unclosed quote after "'+t+'"'),{type:e.LITERAL,value:t,raw:this.expr.substring(r,this.index)}}gobbleIdentifier(){let t=this.code,r=this.index;for(e.isIdentifierStart(t)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(t=this.code,e.isIdentifierPart(t));)this.index++;return{type:e.IDENTIFIER,name:this.expr.slice(r,this.index)}}gobbleArguments(t){const r=[];let i=!1,s=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let n=this.code;if(n===t){i=!0,this.index++,t===e.CPAREN_CODE&&s&&s>=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}if(n===e.COMMA_CODE){if(this.index++,s++,s!==r.length)if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(let e=r.length;e<s;e++)r.push(null)}else if(r.length!==s&&0!==s)this.throwError("Expected comma");else{const t=this.gobbleExpression();t&&t.type!==e.COMPOUND||this.throwError("Expected comma"),r.push(t)}}return i||this.throwError("Expected "+String.fromCharCode(t)),r}gobbleGroup(){this.index++;let t=this.gobbleExpressions(e.CPAREN_CODE);if(this.code===e.CPAREN_CODE)return this.index++,1===t.length?t[0]:!!t.length&&{type:e.SEQUENCE_EXP,expressions:t};this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:e.ARRAY_EXP,elements:this.gobbleArguments(e.CBRACK_CODE)}}}const t=new class{add(e,t,r){if("string"!=typeof arguments[0])for(let e in arguments[0])this.add(e,arguments[0][e],arguments[1]);else(Array.isArray(e)?e:[e]).forEach((function(e){this[e]=this[e]||[],t&&this[e][r?"unshift":"push"](t)}),this)}run(e,t){this[e]=this[e]||[],this[e].forEach((function(e){e.call(t&&t.context?t.context:t,t)}))}};Object.assign(e,{hooks:t,plugins:new class{constructor(e){this.jsep=e,this.registered={}}register(...e){e.forEach((e=>{if("object"!=typeof e||!e.name||!e.init)throw new Error("Invalid JSEP plugin format");this.registered[e.name]||(e.init(this.jsep),this.registered[e.name]=e)}))}}(e),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"??":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),e.max_unop_len=e.getMaxKeyLen(e.unary_ops),e.max_binop_len=e.getMaxKeyLen(e.binary_ops);const r=t=>new e(t).parse(),i=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(e).filter((e=>!i.includes(e)&&void 0===r[e])).forEach((t=>{r[t]=e[t]})),r.Jsep=e;var s={name:"ternary",init(e){e.hooks.add("after-expression",(function(t){if(t.node&&this.code===e.QUMARK_CODE){this.index++;const r=t.node,i=this.gobbleExpression();if(i||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;const s=this.gobbleExpression();if(s||this.throwError("Expected expression"),t.node={type:"ConditionalExpression",test:r,consequent:i,alternate:s},r.operator&&e.binary_ops[r.operator]<=.9){let i=r;for(;i.right.operator&&e.binary_ops[i.right.operator]<=.9;)i=i.right;t.node.test=i.right,i.right=t.node,t.node=r}}else this.throwError("Expected :")}}))}};r.plugins.register(s);export{e as Jsep,r as default};
|
|
2
|
+
//# sourceMappingURL=jsep.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsep.min.js","sources":["../src/jsep.js","../src/hooks.js","../src/plugins.js","../packages/ternary/src/index.js","../src/index.js"],"sourcesContent":["// JavaScript Expression Parser (JSEP) <%= version %>\n// JSEP may be freely distributed under the MIT License\n// https://ericsmekens.github.io/jsep/\nimport Hooks from './hooks.js';\nimport Plugins from './plugins.js';\n\nexport class Jsep {\n\t/**\n\t * @returns {string}\n\t */\n\tstatic get version() {\n\t\t// To be filled in by the template\n\t\treturn '<%= version %>';\n\t}\n\n\t/**\n\t * @returns {string}\n\t */\n\tstatic toString() {\n\t\treturn 'JavaScript Expression Parser (JSEP) v' + Jsep.version;\n\t};\n\n\t// ==================== CONFIG ================================\n\t/**\n\t * @method addUnaryOp\n\t * @param {string} op_name The name of the unary op to add\n\t * @returns {Jsep}\n\t */\n\tstatic addUnaryOp(op_name) {\n\t\tJsep.max_unop_len = Math.max(op_name.length, Jsep.max_unop_len);\n\t\tJsep.unary_ops[op_name] = 1;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method jsep.addBinaryOp\n\t * @param {string} op_name The name of the binary op to add\n\t * @param {number} precedence The precedence of the binary op (can be a float). Higher number = higher precedence\n\t * @param {boolean} [isRightAssociative=false] whether operator is right-associative\n\t * @returns {Jsep}\n\t */\n\tstatic addBinaryOp(op_name, precedence, isRightAssociative) {\n\t\tJsep.max_binop_len = Math.max(op_name.length, Jsep.max_binop_len);\n\t\tJsep.binary_ops[op_name] = precedence;\n\t\tif (isRightAssociative) {\n\t\t\tJsep.right_associative.add(op_name);\n\t\t}\n\t\telse {\n\t\t\tJsep.right_associative.delete(op_name);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addIdentifierChar\n\t * @param {string} char The additional character to treat as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic addIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.add(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addLiteral\n\t * @param {string} literal_name The name of the literal to add\n\t * @param {*} literal_value The value of the literal\n\t * @returns {Jsep}\n\t */\n\tstatic addLiteral(literal_name, literal_value) {\n\t\tJsep.literals[literal_name] = literal_value;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeUnaryOp\n\t * @param {string} op_name The name of the unary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeUnaryOp(op_name) {\n\t\tdelete Jsep.unary_ops[op_name];\n\t\tif (op_name.length === Jsep.max_unop_len) {\n\t\t\tJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllUnaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllUnaryOps() {\n\t\tJsep.unary_ops = {};\n\t\tJsep.max_unop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeIdentifierChar\n\t * @param {string} char The additional character to stop treating as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic removeIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.delete(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeBinaryOp\n\t * @param {string} op_name The name of the binary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeBinaryOp(op_name) {\n\t\tdelete Jsep.binary_ops[op_name];\n\n\t\tif (op_name.length === Jsep.max_binop_len) {\n\t\t\tJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\t\t}\n\t\tJsep.right_associative.delete(op_name);\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllBinaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllBinaryOps() {\n\t\tJsep.binary_ops = {};\n\t\tJsep.max_binop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeLiteral\n\t * @param {string} literal_name The name of the literal to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeLiteral(literal_name) {\n\t\tdelete Jsep.literals[literal_name];\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllLiterals\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllLiterals() {\n\t\tJsep.literals = {};\n\n\t\treturn Jsep;\n\t}\n\t// ==================== END CONFIG ============================\n\n\n\t/**\n\t * @returns {string}\n\t */\n\tget char() {\n\t\treturn this.expr.charAt(this.index);\n\t}\n\n\t/**\n\t * @returns {number}\n\t */\n\tget code() {\n\t\treturn this.expr.charCodeAt(this.index);\n\t};\n\n\n\t/**\n\t * @param {string} expr a string with the passed in express\n\t * @returns Jsep\n\t */\n\tconstructor(expr) {\n\t\t// `index` stores the character number we are currently at\n\t\t// All of the gobbles below will modify `index` as we move along\n\t\tthis.expr = expr;\n\t\tthis.index = 0;\n\t}\n\n\t/**\n\t * static top-level parser\n\t * @returns {jsep.Expression}\n\t */\n\tstatic parse(expr) {\n\t\treturn (new Jsep(expr)).parse();\n\t}\n\n\t/**\n\t * Get the longest key length of any object\n\t * @param {object} obj\n\t * @returns {number}\n\t */\n\tstatic getMaxKeyLen(obj) {\n\t\treturn Math.max(0, ...Object.keys(obj).map(k => k.length));\n\t}\n\n\t/**\n\t * `ch` is a character code in the next three functions\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isDecimalDigit(ch) {\n\t\treturn (ch >= 48 && ch <= 57); // 0...9\n\t}\n\n\t/**\n\t * Returns the precedence of a binary operator or `0` if it isn't a binary operator. Can be float.\n\t * @param {string} op_val\n\t * @returns {number}\n\t */\n\tstatic binaryPrecedence(op_val) {\n\t\treturn Jsep.binary_ops[op_val] || 0;\n\t}\n\n\t/**\n\t * Looks for start of identifier\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierStart(ch) {\n\t\treturn (ch >= 65 && ch <= 90) || // A...Z\n\t\t\t(ch >= 97 && ch <= 122) || // a...z\n\t\t\t(ch >= 128 && !Jsep.binary_ops[String.fromCharCode(ch)]) || // any non-ASCII that is not an operator\n\t\t\t(Jsep.additional_identifier_chars.has(String.fromCharCode(ch))); // additional characters\n\t}\n\n\t/**\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierPart(ch) {\n\t\treturn Jsep.isIdentifierStart(ch) || Jsep.isDecimalDigit(ch);\n\t}\n\n\t/**\n\t * throw error at index of the expression\n\t * @param {string} message\n\t * @throws\n\t */\n\tthrowError(message) {\n\t\tconst error = new Error(message + ' at character ' + this.index);\n\t\terror.index = this.index;\n\t\terror.description = message;\n\t\tthrow error;\n\t}\n\n\t/**\n\t * Run a given hook\n\t * @param {string} name\n\t * @param {jsep.Expression|false} [node]\n\t * @returns {?jsep.Expression}\n\t */\n\trunHook(name, node) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this, node };\n\t\t\tJsep.hooks.run(name, env);\n\t\t\treturn env.node;\n\t\t}\n\t\treturn node;\n\t}\n\n\t/**\n\t * Runs a given hook until one returns a node\n\t * @param {string} name\n\t * @returns {?jsep.Expression}\n\t */\n\tsearchHook(name) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this };\n\t\t\tJsep.hooks[name].find(function (callback) {\n\t\t\t\tcallback.call(env.context, env);\n\t\t\t\treturn env.node;\n\t\t\t});\n\t\t\treturn env.node;\n\t\t}\n\t}\n\n\t/**\n\t * Push `index` up to the next non-space character\n\t */\n\tgobbleSpaces() {\n\t\tlet ch = this.code;\n\t\t// Whitespace\n\t\twhile (ch === Jsep.SPACE_CODE\n\t\t|| ch === Jsep.TAB_CODE\n\t\t|| ch === Jsep.LF_CODE\n\t\t|| ch === Jsep.CR_CODE) {\n\t\t\tch = this.expr.charCodeAt(++this.index);\n\t\t}\n\t\tthis.runHook('gobble-spaces');\n\t}\n\n\t/**\n\t * Top-level method to parse all expressions and returns compound or single node\n\t * @returns {jsep.Expression}\n\t */\n\tparse() {\n\t\tthis.runHook('before-all');\n\t\tconst nodes = this.gobbleExpressions();\n\n\t\t// If there's only one expression just try returning the expression\n\t\tconst node = nodes.length === 1\n\t\t ? nodes[0]\n\t\t\t: {\n\t\t\t\ttype: Jsep.COMPOUND,\n\t\t\t\tbody: nodes\n\t\t\t};\n\t\treturn this.runHook('after-all', node);\n\t}\n\n\t/**\n\t * top-level parser (but can be reused within as well)\n\t * @param {number} [untilICode]\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleExpressions(untilICode) {\n\t\tlet nodes = [], ch_i, node;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch_i = this.code;\n\n\t\t\t// Expressions can be separated by semicolons, commas, or just inferred without any\n\t\t\t// separators\n\t\t\tif (ch_i === Jsep.SEMCOL_CODE || ch_i === Jsep.COMMA_CODE) {\n\t\t\t\tthis.index++; // ignore separators\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Try to gobble each expression individually\n\t\t\t\tif (node = this.gobbleExpression()) {\n\t\t\t\t\tnodes.push(node);\n\t\t\t\t\t// If we weren't able to find a binary expression and are out of room, then\n\t\t\t\t\t// the expression passed in probably has too much\n\t\t\t\t}\n\t\t\t\telse if (this.index < this.expr.length) {\n\t\t\t\t\tif (ch_i === untilICode) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn nodes;\n\t}\n\n\t/**\n\t * The main parsing function.\n\t * @returns {?jsep.Expression}\n\t */\n\tgobbleExpression() {\n\t\tconst node = this.searchHook('gobble-expression') || this.gobbleBinaryExpression();\n\t\tthis.gobbleSpaces();\n\n\t\treturn this.runHook('after-expression', node);\n\t}\n\n\t/**\n\t * Search for the operation portion of the string (e.g. `+`, `===`)\n\t * Start by taking the longest possible binary operations (3 characters: `===`, `!==`, `>>>`)\n\t * and move down from 3 to 2 to 1 character until a matching binary operation is found\n\t * then, return that binary operation\n\t * @returns {string|boolean}\n\t */\n\tgobbleBinaryOp() {\n\t\tthis.gobbleSpaces();\n\t\tlet to_check = this.expr.substr(this.index, Jsep.max_binop_len);\n\t\tlet tc_len = to_check.length;\n\n\t\twhile (tc_len > 0) {\n\t\t\t// Don't accept a binary op when it is an identifier.\n\t\t\t// Binary ops that start with a identifier-valid character must be followed\n\t\t\t// by a non identifier-part valid character\n\t\t\tif (Jsep.binary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t)) {\n\t\t\t\tthis.index += tc_len;\n\t\t\t\treturn to_check;\n\t\t\t}\n\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * This function is responsible for gobbling an individual expression,\n\t * e.g. `1`, `1+2`, `a+(b*2)-Math.sqrt(2)`\n\t * @returns {?jsep.BinaryExpression}\n\t */\n\tgobbleBinaryExpression() {\n\t\tlet node, biop, prec, stack, biop_info, left, right, i, cur_biop;\n\n\t\t// First, try to get the leftmost thing\n\t\t// Then, check to see if there's a binary operator operating on that leftmost thing\n\t\t// Don't gobbleBinaryOp without a left-hand-side\n\t\tleft = this.gobbleToken();\n\t\tif (!left) {\n\t\t\treturn left;\n\t\t}\n\t\tbiop = this.gobbleBinaryOp();\n\n\t\t// If there wasn't a binary operator, just return the leftmost node\n\t\tif (!biop) {\n\t\t\treturn left;\n\t\t}\n\n\t\t// Otherwise, we need to start a stack to properly place the binary operations in their\n\t\t// precedence structure\n\t\tbiop_info = { value: biop, prec: Jsep.binaryPrecedence(biop), right_a: Jsep.right_associative.has(biop) };\n\n\t\tright = this.gobbleToken();\n\n\t\tif (!right) {\n\t\t\tthis.throwError(\"Expected expression after \" + biop);\n\t\t}\n\n\t\tstack = [left, biop_info, right];\n\n\t\t// Properly deal with precedence using [recursive descent](http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm)\n\t\twhile ((biop = this.gobbleBinaryOp())) {\n\t\t\tprec = Jsep.binaryPrecedence(biop);\n\n\t\t\tif (prec === 0) {\n\t\t\t\tthis.index -= biop.length;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbiop_info = { value: biop, prec, right_a: Jsep.right_associative.has(biop) };\n\n\t\t\tcur_biop = biop;\n\n\t\t\t// Reduce: make a binary expression from the three topmost entries.\n\t\t\tconst comparePrev = prev => biop_info.right_a && prev.right_a\n\t\t\t\t? prec > prev.prec\n\t\t\t\t: prec <= prev.prec;\n\t\t\twhile ((stack.length > 2) && comparePrev(stack[stack.length - 2])) {\n\t\t\t\tright = stack.pop();\n\t\t\t\tbiop = stack.pop().value;\n\t\t\t\tleft = stack.pop();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\t\toperator: biop,\n\t\t\t\t\tleft,\n\t\t\t\t\tright\n\t\t\t\t};\n\t\t\t\tstack.push(node);\n\t\t\t}\n\n\t\t\tnode = this.gobbleToken();\n\n\t\t\tif (!node) {\n\t\t\t\tthis.throwError(\"Expected expression after \" + cur_biop);\n\t\t\t}\n\n\t\t\tstack.push(biop_info, node);\n\t\t}\n\n\t\ti = stack.length - 1;\n\t\tnode = stack[i];\n\n\t\twhile (i > 1) {\n\t\t\tnode = {\n\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\toperator: stack[i - 1].value,\n\t\t\t\tleft: stack[i - 2],\n\t\t\t\tright: node\n\t\t\t};\n\t\t\ti -= 2;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * An individual part of a binary expression:\n\t * e.g. `foo.bar(baz)`, `1`, `\"abc\"`, `(a % 2)` (because it's in parenthesis)\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleToken() {\n\t\tlet ch, to_check, tc_len, node;\n\n\t\tthis.gobbleSpaces();\n\t\tnode = this.searchHook('gobble-token');\n\t\tif (node) {\n\t\t\treturn this.runHook('after-token', node);\n\t\t}\n\n\t\tch = this.code;\n\n\t\tif (Jsep.isDecimalDigit(ch) || ch === Jsep.PERIOD_CODE) {\n\t\t\t// Char code 46 is a dot `.` which can start off a numeric literal\n\t\t\treturn this.gobbleNumericLiteral();\n\t\t}\n\n\t\tif (ch === Jsep.SQUOTE_CODE || ch === Jsep.DQUOTE_CODE) {\n\t\t\t// Single or double quotes\n\t\t\tnode = this.gobbleStringLiteral();\n\t\t}\n\t\telse if (ch === Jsep.OBRACK_CODE) {\n\t\t\tnode = this.gobbleArray();\n\t\t}\n\t\telse {\n\t\t\tto_check = this.expr.substr(this.index, Jsep.max_unop_len);\n\t\t\ttc_len = to_check.length;\n\n\t\t\twhile (tc_len > 0) {\n\t\t\t\t// Don't accept an unary op when it is an identifier.\n\t\t\t\t// Unary ops that start with a identifier-valid character must be followed\n\t\t\t\t// by a non identifier-part valid character\n\t\t\t\tif (Jsep.unary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t\t)) {\n\t\t\t\t\tthis.index += tc_len;\n\t\t\t\t\tconst argument = this.gobbleToken();\n\t\t\t\t\tif (!argument) {\n\t\t\t\t\t\tthis.throwError('missing unaryOp argument');\n\t\t\t\t\t}\n\t\t\t\t\treturn this.runHook('after-token', {\n\t\t\t\t\t\ttype: Jsep.UNARY_EXP,\n\t\t\t\t\t\toperator: to_check,\n\t\t\t\t\t\targument,\n\t\t\t\t\t\tprefix: true\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t\t}\n\n\t\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\t\tnode = this.gobbleIdentifier();\n\t\t\t\tif (Jsep.literals.hasOwnProperty(node.name)) {\n\t\t\t\t\tnode = {\n\t\t\t\t\t\ttype: Jsep.LITERAL,\n\t\t\t\t\t\tvalue: Jsep.literals[node.name],\n\t\t\t\t\t\traw: node.name,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (node.name === Jsep.this_str) {\n\t\t\t\t\tnode = { type: Jsep.THIS_EXP };\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) { // open parenthesis\n\t\t\t\tnode = this.gobbleGroup();\n\t\t\t}\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn this.runHook('after-token', false);\n\t\t}\n\n\t\tnode = this.gobbleTokenProperty(node);\n\t\treturn this.runHook('after-token', node);\n\t}\n\n\t/**\n\t * Gobble properties of of identifiers/strings/arrays/groups.\n\t * e.g. `foo`, `bar.baz`, `foo['bar'].baz`\n\t * It also gobbles function calls:\n\t * e.g. `Math.acos(obj.angle)`\n\t * @param {jsep.Expression} node\n\t * @returns {jsep.Expression}\n\t */\n\tgobbleTokenProperty(node) {\n\t\tthis.gobbleSpaces();\n\n\t\tlet ch = this.code;\n\t\twhile (ch === Jsep.PERIOD_CODE || ch === Jsep.OBRACK_CODE || ch === Jsep.OPAREN_CODE || ch === Jsep.QUMARK_CODE) {\n\t\t\tlet optional;\n\t\t\tif (ch === Jsep.QUMARK_CODE) {\n\t\t\t\tif (this.expr.charCodeAt(this.index + 1) !== Jsep.PERIOD_CODE) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toptional = true;\n\t\t\t\tthis.index += 2;\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t}\n\t\t\tthis.index++;\n\n\t\t\tif (ch === Jsep.OBRACK_CODE) {\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: true,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleExpression()\n\t\t\t\t};\n\t\t\t\tif (!node.property) {\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t\tif (ch !== Jsep.CBRACK_CODE) {\n\t\t\t\t\tthis.throwError('Unclosed [');\n\t\t\t\t}\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) {\n\t\t\t\t// A function call is being made; gobble all the arguments\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.CALL_EXP,\n\t\t\t\t\t'arguments': this.gobbleArguments(Jsep.CPAREN_CODE),\n\t\t\t\t\tcallee: node\n\t\t\t\t};\n\t\t\t}\n\t\t\telse if (ch === Jsep.PERIOD_CODE || optional) {\n\t\t\t\tif (optional) {\n\t\t\t\t\tthis.index--;\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: false,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleIdentifier(),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (optional) {\n\t\t\t\tnode.optional = true;\n\t\t\t} // else leave undefined for compatibility with esprima\n\n\t\t\tthis.gobbleSpaces();\n\t\t\tch = this.code;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * Parse simple numeric literals: `12`, `3.4`, `.5`. Do this by using a string to\n\t * keep track of everything in the numeric literal and then calling `parseFloat` on that string\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleNumericLiteral() {\n\t\tlet number = '', ch, chCode;\n\n\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t}\n\n\t\tif (this.code === Jsep.PERIOD_CODE) { // can start with a decimal marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\t\t}\n\n\t\tch = this.char;\n\n\t\tif (ch === 'e' || ch === 'E') { // exponent marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\tch = this.char;\n\n\t\t\tif (ch === '+' || ch === '-') { // exponent sign\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) { // exponent itself\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\tif (!Jsep.isDecimalDigit(this.expr.charCodeAt(this.index - 1)) ) {\n\t\t\t\tthis.throwError('Expected exponent (' + number + this.char + ')');\n\t\t\t}\n\t\t}\n\n\t\tchCode = this.code;\n\n\t\t// Check to make sure this isn't a variable name that start with a number (123abc)\n\t\tif (Jsep.isIdentifierStart(chCode)) {\n\t\t\tthis.throwError('Variable names cannot start with a number (' +\n\t\t\t\tnumber + this.char + ')');\n\t\t}\n\t\telse if (chCode === Jsep.PERIOD_CODE || (number.length === 1 && number.charCodeAt(0) === Jsep.PERIOD_CODE)) {\n\t\t\tthis.throwError('Unexpected period');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: parseFloat(number),\n\t\t\traw: number\n\t\t};\n\t}\n\n\t/**\n\t * Parses a string literal, staring with single or double quotes with basic support for escape codes\n\t * e.g. `\"hello world\"`, `'this is\\nJSEP'`\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleStringLiteral() {\n\t\tlet str = '';\n\t\tconst startIndex = this.index;\n\t\tconst quote = this.expr.charAt(this.index++);\n\t\tlet closed = false;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tlet ch = this.expr.charAt(this.index++);\n\n\t\t\tif (ch === quote) {\n\t\t\t\tclosed = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch === '\\\\') {\n\t\t\t\t// Check for all of the common escape codes\n\t\t\t\tch = this.expr.charAt(this.index++);\n\n\t\t\t\tswitch (ch) {\n\t\t\t\t\tcase 'n': str += '\\n'; break;\n\t\t\t\t\tcase 'r': str += '\\r'; break;\n\t\t\t\t\tcase 't': str += '\\t'; break;\n\t\t\t\t\tcase 'b': str += '\\b'; break;\n\t\t\t\t\tcase 'f': str += '\\f'; break;\n\t\t\t\t\tcase 'v': str += '\\x0B'; break;\n\t\t\t\t\tdefault : str += ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Unclosed quote after \"' + str + '\"');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: str,\n\t\t\traw: this.expr.substring(startIndex, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles only identifiers\n\t * e.g.: `foo`, `_value`, `$x1`\n\t * Also, this function checks if that identifier is a literal:\n\t * (e.g. `true`, `false`, `null`) or `this`\n\t * @returns {jsep.Identifier}\n\t */\n\tgobbleIdentifier() {\n\t\tlet ch = this.code, start = this.index;\n\n\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\tthis.index++;\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unexpected ' + this.char);\n\t\t}\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch = this.code;\n\n\t\t\tif (Jsep.isIdentifierPart(ch)) {\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\ttype: Jsep.IDENTIFIER,\n\t\t\tname: this.expr.slice(start, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles a list of arguments within the context of a function call\n\t * or array literal. This function also assumes that the opening character\n\t * `(` or `[` has already been gobbled, and gobbles expressions and commas\n\t * until the terminator character `)` or `]` is encountered.\n\t * e.g. `foo(bar, baz)`, `my_func()`, or `[bar, baz]`\n\t * @param {number} termination\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleArguments(termination) {\n\t\tconst args = [];\n\t\tlet closed = false;\n\t\tlet separator_count = 0;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tthis.gobbleSpaces();\n\t\t\tlet ch_i = this.code;\n\n\t\t\tif (ch_i === termination) { // done parsing\n\t\t\t\tclosed = true;\n\t\t\t\tthis.index++;\n\n\t\t\t\tif (termination === Jsep.CPAREN_CODE && separator_count && separator_count >= args.length){\n\t\t\t\t\tthis.throwError('Unexpected token ' + String.fromCharCode(termination));\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch_i === Jsep.COMMA_CODE) { // between expressions\n\t\t\t\tthis.index++;\n\t\t\t\tseparator_count++;\n\n\t\t\t\tif (separator_count !== args.length) { // missing argument\n\t\t\t\t\tif (termination === Jsep.CPAREN_CODE) {\n\t\t\t\t\t\tthis.throwError('Unexpected token ,');\n\t\t\t\t\t}\n\t\t\t\t\telse if (termination === Jsep.CBRACK_CODE) {\n\t\t\t\t\t\tfor (let arg = args.length; arg < separator_count; arg++) {\n\t\t\t\t\t\t\targs.push(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (args.length !== separator_count && separator_count !== 0) {\n\t\t\t\t// NOTE: `&& separator_count !== 0` allows for either all commas, or all spaces as arguments\n\t\t\t\tthis.throwError('Expected comma');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst node = this.gobbleExpression();\n\n\t\t\t\tif (!node || node.type === Jsep.COMPOUND) {\n\t\t\t\t\tthis.throwError('Expected comma');\n\t\t\t\t}\n\n\t\t\t\targs.push(node);\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Expected ' + String.fromCharCode(termination));\n\t\t}\n\n\t\treturn args;\n\t}\n\n\t/**\n\t * Responsible for parsing a group of things within parentheses `()`\n\t * that have no identifier in front (so not a function call)\n\t * This function assumes that it needs to gobble the opening parenthesis\n\t * and then tries to gobble everything within that parenthesis, assuming\n\t * that the next thing it should see is the close parenthesis. If not,\n\t * then the expression probably doesn't have a `)`\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleGroup() {\n\t\tthis.index++;\n\t\tlet nodes = this.gobbleExpressions(Jsep.CPAREN_CODE);\n\t\tif (this.code === Jsep.CPAREN_CODE) {\n\t\t\tthis.index++;\n\t\t\tif (nodes.length === 1) {\n\t\t\t\treturn nodes[0];\n\t\t\t}\n\t\t\telse if (!nodes.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn {\n\t\t\t\t\ttype: Jsep.SEQUENCE_EXP,\n\t\t\t\t\texpressions: nodes,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unclosed (');\n\t\t}\n\t}\n\n\t/**\n\t * Responsible for parsing Array literals `[1, 2, 3]`\n\t * This function assumes that it needs to gobble the opening bracket\n\t * and then tries to gobble the expressions as arguments.\n\t * @returns {jsep.ArrayExpression}\n\t */\n\tgobbleArray() {\n\t\tthis.index++;\n\n\t\treturn {\n\t\t\ttype: Jsep.ARRAY_EXP,\n\t\t\telements: this.gobbleArguments(Jsep.CBRACK_CODE)\n\t\t};\n\t}\n}\n\n// Static fields:\nconst hooks = new Hooks();\nObject.assign(Jsep, {\n\thooks,\n\tplugins: new Plugins(Jsep),\n\n\t// Node Types\n\t// ----------\n\t// This is the full set of types that any JSEP node can be.\n\t// Store them here to save space when minified\n\tCOMPOUND: 'Compound',\n\tSEQUENCE_EXP: 'SequenceExpression',\n\tIDENTIFIER: 'Identifier',\n\tMEMBER_EXP: 'MemberExpression',\n\tLITERAL: 'Literal',\n\tTHIS_EXP: 'ThisExpression',\n\tCALL_EXP: 'CallExpression',\n\tUNARY_EXP: 'UnaryExpression',\n\tBINARY_EXP: 'BinaryExpression',\n\tARRAY_EXP: 'ArrayExpression',\n\n\tTAB_CODE: 9,\n\tLF_CODE: 10,\n\tCR_CODE: 13,\n\tSPACE_CODE: 32,\n\tPERIOD_CODE: 46, // '.'\n\tCOMMA_CODE: 44, // ','\n\tSQUOTE_CODE: 39, // single quote\n\tDQUOTE_CODE: 34, // double quotes\n\tOPAREN_CODE: 40, // (\n\tCPAREN_CODE: 41, // )\n\tOBRACK_CODE: 91, // [\n\tCBRACK_CODE: 93, // ]\n\tQUMARK_CODE: 63, // ?\n\tSEMCOL_CODE: 59, // ;\n\tCOLON_CODE: 58, // :\n\n\n\t// Operations\n\t// ----------\n\t// Use a quickly-accessible map to store all of the unary operators\n\t// Values are set to `1` (it really doesn't matter)\n\tunary_ops: {\n\t\t'-': 1,\n\t\t'!': 1,\n\t\t'~': 1,\n\t\t'+': 1\n\t},\n\n\t// Also use a map for the binary operations but set their values to their\n\t// binary precedence for quick reference (higher number = higher precedence)\n\t// see [Order of operations](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)\n\tbinary_ops: {\n\t\t'||': 1, '??': 1,\n\t\t'&&': 2, '|': 3, '^': 4, '&': 5,\n\t\t'==': 6, '!=': 6, '===': 6, '!==': 6,\n\t\t'<': 7, '>': 7, '<=': 7, '>=': 7,\n\t\t'<<': 8, '>>': 8, '>>>': 8,\n\t\t'+': 9, '-': 9,\n\t\t'*': 10, '/': 10, '%': 10,\n\t\t'**': 11,\n\t},\n\n\t// sets specific binary_ops as right-associative\n\tright_associative: new Set(['**']),\n\n\t// Additional valid identifier chars, apart from a-z, A-Z and 0-9 (except on the starting char)\n\tadditional_identifier_chars: new Set(['$', '_']),\n\n\t// Literals\n\t// ----------\n\t// Store the values to return for the various literals we may encounter\n\tliterals: {\n\t\t'true': true,\n\t\t'false': false,\n\t\t'null': null\n\t},\n\n\t// Except for `this`, which is special. This could be changed to something like `'self'` as well\n\tthis_str: 'this',\n});\nJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\nJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\n// Backward Compatibility:\nconst jsep = expr => (new Jsep(expr)).parse();\nconst stdClassProps = Object.getOwnPropertyNames(class Test{});\nObject.getOwnPropertyNames(Jsep)\n\t.filter(prop => !stdClassProps.includes(prop) && jsep[prop] === undefined)\n\t.forEach((m) => {\n\t\tjsep[m] = Jsep[m];\n\t});\njsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep');\nexport default jsep;\n\n","/**\n * @implements {IHooks}\n */\nexport default class Hooks {\n\t/**\n\t * @callback HookCallback\n\t * @this {*|Jsep} this\n\t * @param {Jsep} env\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given callback to the list of callbacks for the given hook.\n\t *\n\t * The callback will be invoked when the hook it is registered for is run.\n\t *\n\t * One callback function can be registered to multiple hooks and the same hook multiple times.\n\t *\n\t * @param {string|object} name The name of the hook, or an object of callbacks keyed by name\n\t * @param {HookCallback|boolean} callback The callback function which is given environment variables.\n\t * @param {?boolean} [first=false] Will add the hook to the top of the list (defaults to the bottom)\n\t * @public\n\t */\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != 'string') {\n\t\t\t// Multiple hook callbacks, keyed by name\n\t\t\tfor (let name in arguments[0]) {\n\t\t\t\tthis.add(name, arguments[0][name], arguments[1]);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t(Array.isArray(name) ? name : [name]).forEach(function (name) {\n\t\t\t\tthis[name] = this[name] || [];\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tthis[name][first ? 'unshift' : 'push'](callback);\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\t/**\n\t * Runs a hook invoking all registered callbacks with the given environment variables.\n\t *\n\t * Callbacks will be invoked synchronously and in the order in which they were registered.\n\t *\n\t * @param {string} name The name of the hook.\n\t * @param {Object<string, any>} env The environment variables of the hook passed to all callbacks registered.\n\t * @public\n\t */\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function (callback) {\n\t\t\tcallback.call(env && env.context ? env.context : env, env);\n\t\t});\n\t}\n}\n","/**\n * @implements {IPlugins}\n */\nexport default class Plugins {\n\tconstructor(jsep) {\n\t\tthis.jsep = jsep;\n\t\tthis.registered = {};\n\t}\n\n\t/**\n\t * @callback PluginSetup\n\t * @this {Jsep} jsep\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given plugin(s) to the registry\n\t *\n\t * @param {object} plugins\n\t * @param {string} plugins.name The name of the plugin\n\t * @param {PluginSetup} plugins.init The init function\n\t * @public\n\t */\n\tregister(...plugins) {\n\t\tplugins.forEach((plugin) => {\n\t\t\tif (typeof plugin !== 'object' || !plugin.name || !plugin.init) {\n\t\t\t\tthrow new Error('Invalid JSEP plugin format');\n\t\t\t}\n\t\t\tif (this.registered[plugin.name]) {\n\t\t\t\t// already registered. Ignore.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tplugin.init(this.jsep);\n\t\t\tthis.registered[plugin.name] = plugin;\n\t\t});\n\t}\n}\n","const CONDITIONAL_EXP = 'ConditionalExpression';\n\nexport default {\n\tname: 'ternary',\n\n\tinit(jsep) {\n\t\t// Ternary expression: test ? consequent : alternate\n\t\tjsep.hooks.add('after-expression', function gobbleTernary(env) {\n\t\t\tif (env.node && this.code === jsep.QUMARK_CODE) {\n\t\t\t\tthis.index++;\n\t\t\t\tconst test = env.node;\n\t\t\t\tconst consequent = this.gobbleExpression();\n\n\t\t\t\tif (!consequent) {\n\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t}\n\n\t\t\t\tthis.gobbleSpaces();\n\n\t\t\t\tif (this.code === jsep.COLON_CODE) {\n\t\t\t\t\tthis.index++;\n\t\t\t\t\tconst alternate = this.gobbleExpression();\n\n\t\t\t\t\tif (!alternate) {\n\t\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t\t}\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: CONDITIONAL_EXP,\n\t\t\t\t\t\ttest,\n\t\t\t\t\t\tconsequent,\n\t\t\t\t\t\talternate,\n\t\t\t\t\t};\n\n\t\t\t\t\t// check for operators of higher priority than ternary (i.e. assignment)\n\t\t\t\t\t// jsep sets || at 1, and assignment at 0.9, and conditional should be between them\n\t\t\t\t\tif (test.operator && jsep.binary_ops[test.operator] <= 0.9) {\n\t\t\t\t\t\tlet newTest = test;\n\t\t\t\t\t\twhile (newTest.right.operator && jsep.binary_ops[newTest.right.operator] <= 0.9) {\n\t\t\t\t\t\t\tnewTest = newTest.right;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tenv.node.test = newTest.right;\n\t\t\t\t\t\tnewTest.right = env.node;\n\t\t\t\t\t\tenv.node = test;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.throwError('Expected :');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n};\n","// Add default plugins:\nimport jsep from './jsep.js';\nimport ternary from '../packages/ternary/src/index.js';\n\njsep.plugins.register(ternary);\n\nexport * from './jsep.js';\nexport default jsep;\n"],"names":["Jsep","version","toString","addUnaryOp","op_name","max_unop_len","Math","max","length","unary_ops","addBinaryOp","precedence","isRightAssociative","max_binop_len","binary_ops","right_associative","add","delete","addIdentifierChar","char","additional_identifier_chars","addLiteral","literal_name","literal_value","literals","removeUnaryOp","getMaxKeyLen","removeAllUnaryOps","removeIdentifierChar","removeBinaryOp","removeAllBinaryOps","removeLiteral","removeAllLiterals","this","expr","charAt","index","code","charCodeAt","constructor","parse","obj","Object","keys","map","k","isDecimalDigit","ch","binaryPrecedence","op_val","isIdentifierStart","String","fromCharCode","has","isIdentifierPart","throwError","message","error","Error","description","runHook","name","node","hooks","env","context","run","searchHook","find","callback","call","gobbleSpaces","SPACE_CODE","TAB_CODE","LF_CODE","CR_CODE","nodes","gobbleExpressions","type","COMPOUND","body","untilICode","ch_i","SEMCOL_CODE","COMMA_CODE","gobbleExpression","push","gobbleBinaryExpression","gobbleBinaryOp","to_check","substr","tc_len","hasOwnProperty","biop","prec","stack","biop_info","left","right","i","cur_biop","gobbleToken","value","right_a","comparePrev","prev","pop","BINARY_EXP","operator","PERIOD_CODE","gobbleNumericLiteral","SQUOTE_CODE","DQUOTE_CODE","gobbleStringLiteral","OBRACK_CODE","gobbleArray","argument","UNARY_EXP","prefix","gobbleIdentifier","LITERAL","raw","this_str","THIS_EXP","OPAREN_CODE","gobbleGroup","gobbleTokenProperty","QUMARK_CODE","optional","MEMBER_EXP","computed","object","property","CBRACK_CODE","CALL_EXP","arguments","gobbleArguments","CPAREN_CODE","callee","chCode","number","parseFloat","str","startIndex","quote","closed","substring","start","IDENTIFIER","slice","termination","args","separator_count","arg","SEQUENCE_EXP","expressions","ARRAY_EXP","elements","first","Array","isArray","forEach","assign","plugins","jsep","registered","register","plugin","init","COLON_CODE","Set","true","false","null","stdClassProps","getOwnPropertyNames","filter","prop","includes","undefined","m","test","consequent","alternate","newTest","ternary"],"mappings":"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"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "jsep",
|
|
3
|
+
"version": "1.4.0",
|
|
4
|
+
"description": "a tiny JavaScript expression parser",
|
|
5
|
+
"author": "Stephen Oney <swloney@gmail.com> (http://from.so/)",
|
|
6
|
+
"maintainers": [
|
|
7
|
+
"Eric Smekens (https://github.com/EricSmekens)",
|
|
8
|
+
"Lea Verou (https://github.com/LeaVerou)"
|
|
9
|
+
],
|
|
10
|
+
"homepage": "https://ericsmekens.github.io/jsep/",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/EricSmekens/jsep.git"
|
|
15
|
+
},
|
|
16
|
+
"type": "module",
|
|
17
|
+
"main": "./dist/cjs/jsep.cjs.js",
|
|
18
|
+
"module": "./dist/jsep.js",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"types": "./typings/tsd.d.ts",
|
|
22
|
+
"require": "./dist/cjs/jsep.cjs.js",
|
|
23
|
+
"default": "./dist/jsep.js"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"typings": "typings/tsd.d.ts",
|
|
27
|
+
"private": false,
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@commitlint/cli": "^13.1.0",
|
|
30
|
+
"@commitlint/config-angular": "^13.1.0",
|
|
31
|
+
"@rollup/plugin-replace": "^2.4.2",
|
|
32
|
+
"@semantic-release/changelog": "^5.0.1",
|
|
33
|
+
"@semantic-release/exec": "^6.0.3",
|
|
34
|
+
"@semantic-release/git": "^9.0.0",
|
|
35
|
+
"benchmark": "^2.1.4",
|
|
36
|
+
"docco": "^0.9.1",
|
|
37
|
+
"eslint": "^7.23.0",
|
|
38
|
+
"http-server": "^14.1.1",
|
|
39
|
+
"husky": "^7.0.0",
|
|
40
|
+
"node-qunit-puppeteer": "^2.1.2",
|
|
41
|
+
"puppeteer": "^19.9.0",
|
|
42
|
+
"rollup": "^2.44.0",
|
|
43
|
+
"rollup-plugin-delete": "^2.0.0",
|
|
44
|
+
"rollup-plugin-terser": "^7.0.2",
|
|
45
|
+
"semantic-release-monorepo": "^7.0.5",
|
|
46
|
+
"semantic-release-plus": "^18.4.1"
|
|
47
|
+
},
|
|
48
|
+
"engines": {
|
|
49
|
+
"node": ">= 10.16.0"
|
|
50
|
+
},
|
|
51
|
+
"directories": {
|
|
52
|
+
"test": "test"
|
|
53
|
+
},
|
|
54
|
+
"release": {
|
|
55
|
+
"commitPaths": [
|
|
56
|
+
"src/",
|
|
57
|
+
"packages/ternary/src/",
|
|
58
|
+
"types",
|
|
59
|
+
"typings/",
|
|
60
|
+
".npmignore",
|
|
61
|
+
"package*.json",
|
|
62
|
+
"rollup*.js"
|
|
63
|
+
],
|
|
64
|
+
"branches": [
|
|
65
|
+
"master",
|
|
66
|
+
{
|
|
67
|
+
"name": "alpha",
|
|
68
|
+
"prerelease": true
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"name": "beta",
|
|
72
|
+
"prerelease": true
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
"plugins": [
|
|
76
|
+
[
|
|
77
|
+
"@semantic-release/commit-analyzer",
|
|
78
|
+
{
|
|
79
|
+
"preset": "angular",
|
|
80
|
+
"parserOpts": {
|
|
81
|
+
"noteKeywords": [
|
|
82
|
+
"BREAKING CHANGE",
|
|
83
|
+
"BREAKING CHANGES",
|
|
84
|
+
"BREAKING"
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
[
|
|
90
|
+
"@semantic-release/release-notes-generator",
|
|
91
|
+
{
|
|
92
|
+
"preset": "angular",
|
|
93
|
+
"parserOpts": {
|
|
94
|
+
"noteKeywords": [
|
|
95
|
+
"BREAKING CHANGE",
|
|
96
|
+
"BREAKING CHANGES",
|
|
97
|
+
"BREAKING"
|
|
98
|
+
]
|
|
99
|
+
},
|
|
100
|
+
"writerOpts": {
|
|
101
|
+
"commitsSort": [
|
|
102
|
+
"scope",
|
|
103
|
+
"subject"
|
|
104
|
+
]
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
"@semantic-release/changelog",
|
|
109
|
+
[
|
|
110
|
+
"@semantic-release/exec",
|
|
111
|
+
{
|
|
112
|
+
"prepareCmd": "NEXT_VERSION=${nextRelease.version} pnpm run build"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
[
|
|
116
|
+
"@semantic-release/npm",
|
|
117
|
+
{
|
|
118
|
+
"tarballDir": "./"
|
|
119
|
+
}
|
|
120
|
+
],
|
|
121
|
+
[
|
|
122
|
+
"@semantic-release/git",
|
|
123
|
+
{
|
|
124
|
+
"message": "build: ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
|
125
|
+
}
|
|
126
|
+
],
|
|
127
|
+
[
|
|
128
|
+
"@semantic-release/github",
|
|
129
|
+
{
|
|
130
|
+
"assets": [
|
|
131
|
+
{
|
|
132
|
+
"path": "./*.tgz",
|
|
133
|
+
"label": "build"
|
|
134
|
+
}
|
|
135
|
+
]
|
|
136
|
+
}
|
|
137
|
+
]
|
|
138
|
+
]
|
|
139
|
+
},
|
|
140
|
+
"scripts": {
|
|
141
|
+
"default": "npm run lint && npm run build:all && npm run test:all && npm run docco",
|
|
142
|
+
"build": "npx rollup -c && cp package-cjs.json dist/cjs/package.json",
|
|
143
|
+
"build:watch": "npx rollup -c --watch",
|
|
144
|
+
"build:all": "pnpm run build -r",
|
|
145
|
+
"test": "npx http-server -p 49649 --silent & npx node-qunit-puppeteer http://localhost:49649/test/unit_tests.html",
|
|
146
|
+
"test:all": "npx http-server -p 49649 --silent & pnpm run test -r --workspace-concurrency=1",
|
|
147
|
+
"test:performance": "node test/performance.test.js",
|
|
148
|
+
"docco": "npx docco src/jsep.js --css=src/docco.css --output=annotated_source/",
|
|
149
|
+
"lint": "npx eslint src/**/*.js test/*.js test/packages/**/*.js packages/**/*.js",
|
|
150
|
+
"prepare": "husky install",
|
|
151
|
+
"release": "./release.sh"
|
|
152
|
+
}
|
|
153
|
+
}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
declare module 'jsep' {
|
|
2
|
+
|
|
3
|
+
namespace jsep {
|
|
4
|
+
export type baseTypes = string | number | boolean | RegExp | null | undefined | object;
|
|
5
|
+
export interface Expression {
|
|
6
|
+
type: string;
|
|
7
|
+
[key: string]: baseTypes | Expression | Array<baseTypes | Expression>;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface ArrayExpression extends Expression {
|
|
11
|
+
type: 'ArrayExpression';
|
|
12
|
+
/** The expression can be null in the case of array holes ([ , , ]) */
|
|
13
|
+
elements: Array<null | Expression>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface BinaryExpression extends Expression {
|
|
17
|
+
type: 'BinaryExpression';
|
|
18
|
+
operator: string;
|
|
19
|
+
left: Expression;
|
|
20
|
+
right: Expression;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface CallExpression extends Expression {
|
|
24
|
+
type: 'CallExpression';
|
|
25
|
+
arguments: Expression[];
|
|
26
|
+
callee: Expression;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface Compound extends Expression {
|
|
30
|
+
type: 'Compound';
|
|
31
|
+
body: Expression[];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface SequenceExpression extends Expression {
|
|
35
|
+
type: 'SequenceExpression';
|
|
36
|
+
expressions: Expression[];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface ConditionalExpression extends Expression {
|
|
40
|
+
type: 'ConditionalExpression';
|
|
41
|
+
test: Expression;
|
|
42
|
+
consequent: Expression;
|
|
43
|
+
alternate: Expression;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface Identifier extends Expression {
|
|
47
|
+
type: 'Identifier';
|
|
48
|
+
name: string;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface Literal extends Expression {
|
|
52
|
+
type: 'Literal';
|
|
53
|
+
value: boolean | number | string | RegExp | null;
|
|
54
|
+
raw: string;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface MemberExpression extends Expression {
|
|
58
|
+
type: 'MemberExpression';
|
|
59
|
+
computed: boolean;
|
|
60
|
+
object: Expression;
|
|
61
|
+
property: Expression;
|
|
62
|
+
optional?: boolean;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export interface ThisExpression extends Expression {
|
|
66
|
+
type: 'ThisExpression';
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export interface UnaryExpression extends Expression {
|
|
70
|
+
type: 'UnaryExpression';
|
|
71
|
+
operator: string;
|
|
72
|
+
argument: Expression;
|
|
73
|
+
prefix: boolean;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export type ExpressionType =
|
|
77
|
+
'Compound'
|
|
78
|
+
| 'SequenceExpression'
|
|
79
|
+
| 'Identifier'
|
|
80
|
+
| 'MemberExpression'
|
|
81
|
+
| 'Literal'
|
|
82
|
+
| 'ThisExpression'
|
|
83
|
+
| 'CallExpression'
|
|
84
|
+
| 'UnaryExpression'
|
|
85
|
+
| 'BinaryExpression'
|
|
86
|
+
| 'ConditionalExpression'
|
|
87
|
+
| 'ArrayExpression';
|
|
88
|
+
|
|
89
|
+
export type CoreExpression =
|
|
90
|
+
ArrayExpression
|
|
91
|
+
| BinaryExpression
|
|
92
|
+
| CallExpression
|
|
93
|
+
| Compound
|
|
94
|
+
| SequenceExpression
|
|
95
|
+
| ConditionalExpression
|
|
96
|
+
| Identifier
|
|
97
|
+
| Literal
|
|
98
|
+
| MemberExpression
|
|
99
|
+
| ThisExpression
|
|
100
|
+
| UnaryExpression;
|
|
101
|
+
|
|
102
|
+
export type PossibleExpression = Expression | undefined;
|
|
103
|
+
export interface HookScope {
|
|
104
|
+
index: number;
|
|
105
|
+
readonly expr: string;
|
|
106
|
+
readonly char: string; // current character of the expression
|
|
107
|
+
readonly code: number; // current character code of the expression
|
|
108
|
+
gobbleSpaces: () => void;
|
|
109
|
+
gobbleExpressions: (untilICode?: number) => Expression[];
|
|
110
|
+
gobbleExpression: () => Expression;
|
|
111
|
+
gobbleBinaryOp: () => PossibleExpression;
|
|
112
|
+
gobbleBinaryExpression: () => PossibleExpression;
|
|
113
|
+
gobbleToken: () => PossibleExpression;
|
|
114
|
+
gobbleTokenProperty: (node: Expression) => Expression
|
|
115
|
+
gobbleNumericLiteral: () => PossibleExpression;
|
|
116
|
+
gobbleStringLiteral: () => PossibleExpression;
|
|
117
|
+
gobbleIdentifier: () => PossibleExpression;
|
|
118
|
+
gobbleArguments: (untilICode: number) => PossibleExpression;
|
|
119
|
+
gobbleGroup: () => Expression;
|
|
120
|
+
gobbleArray: () => PossibleExpression;
|
|
121
|
+
throwError: (msg: string) => never;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export type HookType = 'gobble-expression' | 'after-expression' | 'gobble-token' | 'after-token' | 'gobble-spaces';
|
|
125
|
+
export type HookCallback = (this: HookScope, env: { node?: Expression }) => void;
|
|
126
|
+
type HookTypeObj = Partial<{ [key in HookType]: HookCallback}>
|
|
127
|
+
|
|
128
|
+
export interface IHooks extends HookTypeObj {
|
|
129
|
+
add(name: HookType, cb: HookCallback, first?: boolean): void;
|
|
130
|
+
add(obj: { [name in HookType]: HookCallback }, first?: boolean): void;
|
|
131
|
+
run(name: string, env: { context?: typeof jsep, node?: Expression }): void;
|
|
132
|
+
}
|
|
133
|
+
let hooks: IHooks;
|
|
134
|
+
|
|
135
|
+
export interface IPlugin {
|
|
136
|
+
name: string;
|
|
137
|
+
init: (this: typeof jsep) => void;
|
|
138
|
+
}
|
|
139
|
+
export interface IPlugins {
|
|
140
|
+
registered: { [name: string]: IPlugin };
|
|
141
|
+
register: (...plugins: IPlugin[]) => void;
|
|
142
|
+
}
|
|
143
|
+
let plugins: IPlugins;
|
|
144
|
+
|
|
145
|
+
let unary_ops: { [op: string]: any };
|
|
146
|
+
let binary_ops: { [op: string]: number };
|
|
147
|
+
let right_associative: Set<string>;
|
|
148
|
+
let additional_identifier_chars: Set<string>;
|
|
149
|
+
let literals: { [literal: string]: any };
|
|
150
|
+
let this_str: string;
|
|
151
|
+
|
|
152
|
+
function addBinaryOp(operatorName: string, precedence: number, rightToLeft?: boolean): void;
|
|
153
|
+
|
|
154
|
+
function addUnaryOp(operatorName: string): void;
|
|
155
|
+
|
|
156
|
+
function addLiteral(literalName: string, literalValue: any): void;
|
|
157
|
+
|
|
158
|
+
function addIdentifierChar(identifierName: string): void;
|
|
159
|
+
|
|
160
|
+
function removeBinaryOp(operatorName: string): void;
|
|
161
|
+
|
|
162
|
+
function removeUnaryOp(operatorName: string): void;
|
|
163
|
+
|
|
164
|
+
function removeLiteral(literalName: string): void;
|
|
165
|
+
|
|
166
|
+
function removeIdentifierChar(identifierName: string): void;
|
|
167
|
+
|
|
168
|
+
function removeAllBinaryOps(): void;
|
|
169
|
+
|
|
170
|
+
function removeAllUnaryOps(): void;
|
|
171
|
+
|
|
172
|
+
function removeAllLiterals(): void;
|
|
173
|
+
|
|
174
|
+
const version: string;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function jsep(val: string | jsep.Expression): jsep.Expression;
|
|
178
|
+
|
|
179
|
+
export = jsep;
|
|
180
|
+
}
|