@grnsft/if 0.5.0 → 0.6.0-beta.0
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/README.md +5 -17
- package/Refactor-migration-guide.md +110 -164
- package/build/common/config/index.d.ts +1 -0
- package/build/common/config/index.js +6 -0
- package/build/common/config/strings.d.ts +8 -0
- package/build/common/config/strings.js +16 -0
- package/build/common/lib/load.d.ts +6 -0
- package/build/common/lib/load.js +18 -0
- package/build/{types → common/types}/manifest.d.ts +4 -1
- package/build/common/types/manifest.js +3 -0
- package/build/common/util/debug-logger.js +115 -0
- package/build/common/util/fs.js +94 -0
- package/build/common/util/helpers.d.ts +15 -0
- package/build/common/util/helpers.js +80 -0
- package/build/{util → common/util}/logger.js +1 -1
- package/build/{util → common/util}/validations.d.ts +149 -47
- package/build/common/util/validations.js +141 -0
- package/build/common/util/yaml.js +59 -0
- package/build/if-check/config/config.d.ts +6 -0
- package/build/if-check/config/config.js +31 -0
- package/build/{config → if-check/config}/index.d.ts +0 -1
- package/build/if-check/config/index.js +8 -0
- package/build/if-check/config/strings.d.ts +12 -0
- package/build/if-check/config/strings.js +16 -0
- package/build/if-check/index.js +98 -0
- package/build/if-check/types/process-args.d.ts +4 -0
- package/build/if-check/types/process-args.js +3 -0
- package/build/if-check/util/args.d.ts +10 -0
- package/build/if-check/util/args.js +56 -0
- package/build/if-check/util/helpers.d.ts +4 -0
- package/build/if-check/util/helpers.js +18 -0
- package/build/if-check/util/npm.d.ts +4 -0
- package/build/if-check/util/npm.js +59 -0
- package/build/if-csv/config/config.d.ts +6 -0
- package/build/if-csv/config/config.js +37 -0
- package/build/if-csv/config/index.d.ts +2 -0
- package/build/if-csv/config/index.js +8 -0
- package/build/if-csv/config/strings.d.ts +4 -0
- package/build/if-csv/config/strings.js +8 -0
- package/build/if-csv/index.js +63 -0
- package/build/if-csv/types/csv.d.ts +7 -0
- package/build/if-csv/types/csv.js +3 -0
- package/build/if-csv/types/process-args.d.ts +5 -0
- package/build/if-csv/types/process-args.js +3 -0
- package/build/if-csv/util/args.d.ts +12 -0
- package/build/if-csv/util/args.js +51 -0
- package/build/if-csv/util/helpers.d.ts +9 -0
- package/build/if-csv/util/helpers.js +95 -0
- package/build/if-diff/config/config.d.ts +6 -0
- package/build/if-diff/config/config.js +31 -0
- package/build/if-diff/config/index.d.ts +2 -0
- package/build/if-diff/config/index.js +8 -0
- package/build/if-diff/config/strings.d.ts +6 -0
- package/build/if-diff/config/strings.js +10 -0
- package/build/if-diff/index.js +46 -0
- package/build/{lib → if-diff/lib}/compare.d.ts +1 -1
- package/build/if-diff/lib/compare.js +56 -0
- package/build/{lib → if-diff/lib}/load.d.ts +16 -18
- package/build/if-diff/lib/load.js +51 -0
- package/build/if-diff/types/args.js +3 -0
- package/build/if-diff/types/compare.js +3 -0
- package/build/if-diff/types/process-args.d.ts +4 -0
- package/build/if-diff/types/process-args.js +3 -0
- package/build/if-diff/util/args.d.ts +5 -0
- package/build/if-diff/util/args.js +51 -0
- package/build/if-diff/util/helpers.d.ts +13 -0
- package/build/if-diff/util/helpers.js +75 -0
- package/build/if-env/config/config.d.ts +6 -0
- package/build/if-env/config/config.js +37 -0
- package/build/if-env/config/index.d.ts +2 -0
- package/build/if-env/config/index.js +8 -0
- package/build/if-env/config/strings.d.ts +7 -0
- package/build/if-env/config/strings.js +11 -0
- package/build/if-env/index.js +40 -0
- package/build/if-env/types/if-env.js +3 -0
- package/build/if-env/types/npm.js +3 -0
- package/build/if-env/types/process-args.d.ts +5 -0
- package/build/if-env/types/process-args.js +3 -0
- package/build/if-env/util/args.d.ts +12 -0
- package/build/if-env/util/args.js +47 -0
- package/build/if-env/util/helpers.d.ts +20 -0
- package/build/if-env/util/helpers.js +94 -0
- package/build/{util → if-env/util}/npm.d.ts +0 -4
- package/build/if-env/util/npm.js +126 -0
- package/build/if-run/builtins/coefficient/index.d.ts +2 -0
- package/build/if-run/builtins/coefficient/index.js +67 -0
- package/build/if-run/builtins/copy-param/index.d.ts +2 -0
- package/build/if-run/builtins/copy-param/index.js +70 -0
- package/build/if-run/builtins/csv-lookup/index.d.ts +2 -0
- package/build/if-run/builtins/csv-lookup/index.js +190 -0
- package/build/if-run/builtins/divide/index.d.ts +2 -0
- package/build/if-run/builtins/divide/index.js +80 -0
- package/build/if-run/builtins/exponent/index.d.ts +2 -0
- package/build/if-run/builtins/exponent/index.js +60 -0
- package/build/{builtins → if-run/builtins}/export-log.d.ts +1 -1
- package/build/{builtins → if-run/builtins}/export-log.js +1 -1
- package/build/{builtins → if-run/builtins}/export-yaml.d.ts +1 -1
- package/build/if-run/builtins/export-yaml.js +30 -0
- package/build/{builtins → if-run/builtins}/index.d.ts +1 -2
- package/build/{builtins → if-run/builtins}/index.js +4 -6
- package/build/if-run/builtins/interpolation/index.d.ts +2 -0
- package/build/if-run/builtins/interpolation/index.js +151 -0
- package/build/if-run/builtins/mock-observations/helpers/common-generator.js +29 -0
- package/build/if-run/builtins/mock-observations/helpers/rand-int-generator.js +48 -0
- package/build/if-run/builtins/mock-observations/index.d.ts +2 -0
- package/build/if-run/builtins/mock-observations/index.js +116 -0
- package/build/if-run/builtins/mock-observations/interfaces/index.js +3 -0
- package/build/if-run/builtins/multiply/index.d.ts +2 -0
- package/build/if-run/builtins/multiply/index.js +59 -0
- package/build/if-run/builtins/regex/index.d.ts +2 -0
- package/build/if-run/builtins/regex/index.js +76 -0
- package/build/if-run/builtins/sci/config.js +44 -0
- package/build/if-run/builtins/sci/index.d.ts +2 -0
- package/build/if-run/builtins/sci/index.js +92 -0
- package/build/if-run/builtins/sci-embodied/index.d.ts +2 -0
- package/build/if-run/builtins/sci-embodied/index.js +156 -0
- package/build/if-run/builtins/shell/index.d.ts +2 -0
- package/build/if-run/builtins/shell/index.js +60 -0
- package/build/if-run/builtins/subtract/index.d.ts +2 -0
- package/build/if-run/builtins/subtract/index.js +61 -0
- package/build/if-run/builtins/sum/index.d.ts +2 -0
- package/build/if-run/builtins/sum/index.js +66 -0
- package/build/if-run/builtins/time-sync/index.d.ts +17 -0
- package/build/if-run/builtins/time-sync/index.js +339 -0
- package/build/if-run/config/config.d.ts +9 -0
- package/build/if-run/config/config.js +73 -0
- package/build/if-run/config/index.d.ts +2 -0
- package/build/if-run/config/index.js +8 -0
- package/build/{config → if-run/config}/strings.d.ts +28 -54
- package/build/if-run/config/strings.js +76 -0
- package/build/if-run/index.d.ts +2 -0
- package/build/if-run/index.js +63 -0
- package/build/if-run/lib/aggregate.d.ts +15 -0
- package/build/if-run/lib/aggregate.js +123 -0
- package/build/if-run/lib/compute.js +136 -0
- package/build/{lib → if-run/lib}/environment.d.ts +1 -1
- package/build/if-run/lib/environment.js +75 -0
- package/build/{lib → if-run/lib}/exhaust.d.ts +1 -1
- package/build/if-run/lib/exhaust.js +27 -0
- package/build/if-run/lib/explain.d.ts +9 -0
- package/build/if-run/lib/explain.js +43 -0
- package/build/if-run/lib/initialize.d.ts +6 -0
- package/build/if-run/lib/initialize.js +109 -0
- package/build/if-run/lib/regroup.d.ts +5 -0
- package/build/if-run/lib/regroup.js +64 -0
- package/build/if-run/types/aggregation.d.ts +5 -0
- package/build/if-run/types/aggregation.js +6 -0
- package/build/{types → if-run/types}/compute.d.ts +12 -8
- package/build/if-run/types/compute.js +3 -0
- package/build/if-run/types/environment.js +3 -0
- package/build/{types → if-run/types}/exhaust-plugin-interface.d.ts +1 -1
- package/build/if-run/types/exhaust-plugin-interface.js +3 -0
- package/build/if-run/types/explain.d.ts +10 -0
- package/build/if-run/types/explain.js +3 -0
- package/build/if-run/types/interface.d.ts +3 -0
- package/build/if-run/types/interface.js +6 -0
- package/build/if-run/types/plugin-storage.js +3 -0
- package/build/if-run/types/process-args.d.ts +25 -0
- package/build/if-run/types/process-args.js +3 -0
- package/build/if-run/types/time-sync.js +3 -0
- package/build/{util → if-run/util}/aggregation-helper.d.ts +2 -1
- package/build/if-run/util/aggregation-helper.js +47 -0
- package/build/if-run/util/args.d.ts +9 -0
- package/build/if-run/util/args.js +60 -0
- package/build/if-run/util/helpers.d.ts +14 -0
- package/build/if-run/util/helpers.js +57 -0
- package/build/if-run/util/log-memoize.js +19 -0
- package/build/if-run/util/os-checker.js +97 -0
- package/build/{util → if-run/util}/plugin-storage.d.ts +1 -1
- package/build/if-run/util/plugin-storage.js +34 -0
- package/jest.config.js +2 -6
- package/manifests/examples/builtins/coefficient/failure-invalid-config-input-param.yml +2 -2
- package/manifests/examples/builtins/coefficient/failure-output-param-is-null.yaml +3 -3
- package/manifests/examples/builtins/coefficient/success.yml +2 -2
- package/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml +3 -3
- package/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml +3 -3
- package/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml +3 -3
- package/manifests/examples/builtins/csv-lookup/cloud-metadata/success.yml +3 -3
- package/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-column.yml +3 -3
- package/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-output.yml +3 -3
- package/manifests/examples/builtins/csv-lookup/region-metadata/success-renaming.yml +4 -4
- package/manifests/examples/builtins/csv-lookup/region-metadata/success.yml +3 -3
- package/manifests/examples/builtins/csv-lookup/tdp-finder/failure-missing-input-param.yml +2 -2
- package/manifests/examples/builtins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml +2 -2
- package/manifests/examples/builtins/csv-lookup/tdp-finder/success.yml +2 -2
- package/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml +4 -4
- package/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml +5 -5
- package/manifests/examples/builtins/divide/failure-missing-numerator.yml +4 -4
- package/manifests/examples/builtins/divide/success.yml +4 -6
- package/manifests/examples/builtins/exponent/success.yml +5 -7
- package/manifests/examples/builtins/interpolation/interpolation.yml +2 -2
- package/manifests/examples/builtins/interpolation/success.yml +2 -1
- package/manifests/examples/builtins/mock-observations/failure-invalid-config-cpu-range.yml +2 -2
- package/manifests/examples/builtins/mock-observations/failure-invalid-memory-utilization-range.yml +2 -2
- package/manifests/examples/builtins/mock-observations/failure-missing-timestamp-from-param.yml +2 -2
- package/manifests/examples/builtins/mock-observations/success.yml +2 -2
- package/manifests/examples/builtins/multiply/failure-input-parameter-is-missing.yml +2 -4
- package/manifests/examples/builtins/multiply/success-with-multiple-inputs.yml +2 -4
- package/manifests/examples/builtins/multiply/success.yml +3 -4
- package/manifests/examples/builtins/regex/failure-missing-input-param.yml +2 -4
- package/manifests/examples/builtins/regex/failure-not-matching-with-regex.yml +2 -4
- package/manifests/examples/builtins/regex/success.yml +2 -4
- package/manifests/examples/builtins/sci/failure-invalid-config-value.yml +2 -2
- package/manifests/examples/builtins/sci/failure-missing-input-param.yml +3 -2
- package/manifests/examples/builtins/sci/success.yml +2 -3
- package/manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml +3 -3
- package/manifests/examples/builtins/sci-embodied/failure-missing-expected-lifespan.yml +2 -2
- package/manifests/examples/builtins/sci-embodied/success.yml +2 -2
- package/manifests/examples/builtins/shell/failure-invalid-command.yml +2 -2
- package/manifests/examples/builtins/shell/success.yml +2 -1
- package/manifests/examples/builtins/subtract/success.yml +6 -8
- package/manifests/examples/builtins/sum/failure-missing-input-param.yml +2 -4
- package/manifests/examples/builtins/sum/failure-missing-output-param.yml +3 -5
- package/manifests/examples/builtins/sum/success.yml +2 -4
- package/manifests/examples/builtins/time-sync/failure-config-start-later-end.yml +3 -3
- package/manifests/examples/builtins/time-sync/failure-missing-global-config.yml +3 -3
- package/manifests/examples/builtins/time-sync/success.yml +2 -2
- package/manifests/examples/{builtins/groupby/failure-invalid-config-group.yml → features/regroup/failure-invalid-regroup.yml} +4 -11
- package/manifests/examples/{builtins/groupby → features/regroup}/failure-missing-cloud-instance-type.yml +5 -12
- package/manifests/examples/{builtins/groupby → features/regroup}/success.yml +4 -11
- package/manifests/examples/pipelines/generics.yml +12 -13
- package/manifests/examples/pipelines/instance-metadata.yml +4 -5
- package/manifests/examples/pipelines/nesting.yml +157 -50
- package/manifests/examples/pipelines/outputs-if-diff/pipeline-with-aggregate.yaml +997 -0
- package/manifests/examples/pipelines/outputs-if-diff/pipeline-with-mocks.yaml +1059 -0
- package/manifests/examples/pipelines/pipeline-teads-sci.yml +11 -11
- package/manifests/examples/pipelines/pipeline-with-aggregate.yml +114 -37
- package/manifests/examples/pipelines/pipeline-with-mocks.yml +193 -103
- package/manifests/examples/pipelines/scenario-1.yml +34 -0
- package/manifests/examples/pipelines/scenario-2.yml +52 -0
- package/manifests/examples/pipelines/scenario-3.yml +86 -0
- package/manifests/examples/pipelines/scenario-4.yml +46 -0
- package/manifests/examples/pipelines/scenario-5.yml +46 -0
- package/manifests/examples/pipelines/sci.yml +15 -17
- package/manifests/examples/pipelines/teads-curve.yml +7 -6
- package/manifests/examples/pipelines/zeros.yml +15 -16
- package/manifests/outputs/bugs/aggregation-error-wrong-metric.yaml +51 -59
- package/manifests/outputs/bugs/input-error-missing-duration.yaml +14 -16
- package/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml +14 -16
- package/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml +14 -16
- package/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml +15 -17
- package/manifests/outputs/bugs/pipeline-ordering-error.yaml +23 -26
- package/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml +13 -14
- package/manifests/outputs/{plugins → builtins}/coefficient/failure-invalid-config-input-param.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/coefficient/failure-output-param-is-null.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/coefficient/success.yaml +11 -16
- package/manifests/outputs/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml +76 -0
- package/manifests/outputs/{plugins → builtins}/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml +16 -19
- package/manifests/outputs/{plugins → builtins}/csv-lookup/cloud-metadata/success.yaml +16 -19
- package/manifests/outputs/{plugins → builtins}/csv-lookup/region-metadata/failure-missing-column.yaml +14 -15
- package/manifests/outputs/{plugins → builtins}/csv-lookup/region-metadata/failure-missing-output.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/csv-lookup/region-metadata/success-renaming.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/csv-lookup/region-metadata/success.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/csv-lookup/tdp-finder/failure-missing-input-param.yaml +13 -16
- package/manifests/outputs/{plugins → builtins}/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/csv-lookup/tdp-finder/success.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/divide/failure-invalid-config-denominator.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/divide/failure-missing-numerator.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/divide/success-denominator-equal-zero.yaml +14 -18
- package/manifests/outputs/{plugins → builtins}/divide/success.yaml +14 -18
- package/manifests/outputs/{plugins → builtins}/exponent/success.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/interpolation/interpolation.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/interpolation/success.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/mock-observations/failure-invalid-config-cpu-range.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/mock-observations/failure-invalid-memory-utilization-range.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/mock-observations/failure-missing-timestamp-from-param.yaml +13 -15
- package/manifests/outputs/builtins/mock-observations/success.yaml +358 -0
- package/manifests/outputs/{plugins → builtins}/multiply/failure-input-parameter-is-missing.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/multiply/success-with-multiple-inputs.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/multiply/success.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/regex/failure-missing-input-param.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/regex/success.yaml +14 -19
- package/manifests/outputs/{plugins → builtins}/sci/failure-invalid-config-value.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/sci/failure-missing-input-param.yaml +13 -15
- package/manifests/outputs/{plugins/sci/success.yml.yaml → builtins/sci/success.yaml} +13 -16
- package/manifests/outputs/{plugins → builtins}/sci-embodied/failure-invalid-default-emission-value.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/sci-embodied/failure-missing-expected-lifespan.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/sci-embodied/success.yaml +13 -15
- package/manifests/outputs/{plugins → builtins}/shell/failure-invalid-command.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/shell/success.yaml +14 -16
- package/manifests/outputs/{plugins → builtins}/subtract/success.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/sum/failure-missing-input-param.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/sum/failure-missing-output-param.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/sum/success.yaml +13 -17
- package/manifests/outputs/{plugins → builtins}/time-sync/failure-config-start-later-end.yaml +20 -23
- package/manifests/outputs/{plugins → builtins}/time-sync/success.yaml +38 -35
- package/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml +17 -18
- package/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml +17 -18
- package/manifests/outputs/features/aggregate-horizontal.yaml +27 -23
- package/manifests/outputs/features/aggregate-vertical.yaml +33 -29
- package/manifests/outputs/features/aggregate.yaml +33 -29
- package/manifests/outputs/{plugins/groupby/failure-invalid-config-group.yaml → features/failure-invalid-regroup.yaml} +16 -25
- package/manifests/outputs/{plugins/groupby → features}/failure-missing-cloud-instance-type.yaml +16 -25
- package/manifests/outputs/pipelines/cloud-metadata-divide.yaml +14 -18
- package/manifests/outputs/pipelines/generics.yaml +239 -0
- package/manifests/outputs/pipelines/instance-metadata.yaml +98 -0
- package/manifests/outputs/pipelines/mock-obs-time-sync.yaml +246 -147
- package/manifests/outputs/pipelines/nesting.yaml +1799 -0
- package/manifests/outputs/pipelines/pipeline-teads-sci.yaml +276 -0
- package/manifests/outputs/pipelines/sci.yaml +297 -0
- package/manifests/outputs/pipelines/teads-curve.yaml +188 -0
- package/manifests/outputs/pipelines/zeros.yaml +198 -0
- package/package.json +15 -16
- package/src/__mocks__/mock-manifest.yaml +2 -3
- package/src/{config → if-env/config}/env-template.yml +2 -3
- package/src/{builtins → if-run/builtins}/coefficient/README.md +31 -9
- package/src/{builtins → if-run/builtins}/copy-param/README.md +30 -11
- package/src/{builtins → if-run/builtins}/csv-lookup/README.md +32 -20
- package/src/{builtins → if-run/builtins}/divide/README.md +21 -8
- package/src/{builtins → if-run/builtins}/exponent/README.md +19 -8
- package/src/{builtins → if-run/builtins}/interpolation/README.md +21 -6
- package/src/{builtins → if-run/builtins}/mock-observations/README.md +18 -4
- package/src/{builtins → if-run/builtins}/multiply/README.md +20 -8
- package/src/{builtins → if-run/builtins}/regex/README.md +19 -9
- package/src/{builtins → if-run/builtins}/sci/README.md +19 -9
- package/src/{builtins → if-run/builtins}/sci-embodied/README.md +17 -5
- package/src/{builtins → if-run/builtins}/shell/README.md +19 -7
- package/src/{builtins → if-run/builtins}/subtract/README.md +17 -6
- package/src/{builtins → if-run/builtins}/sum/README.md +34 -8
- package/src/if-run/builtins/time-sync/README.md +267 -0
- package/build/builtins/coefficient/index.d.ts +0 -2
- package/build/builtins/coefficient/index.js +0 -65
- package/build/builtins/copy-param/index.d.ts +0 -2
- package/build/builtins/copy-param/index.js +0 -68
- package/build/builtins/csv-lookup/index.d.ts +0 -2
- package/build/builtins/csv-lookup/index.js +0 -188
- package/build/builtins/divide/index.d.ts +0 -2
- package/build/builtins/divide/index.js +0 -78
- package/build/builtins/exponent/index.d.ts +0 -2
- package/build/builtins/exponent/index.js +0 -58
- package/build/builtins/export-csv-raw.d.ts +0 -4
- package/build/builtins/export-csv-raw.js +0 -132
- package/build/builtins/export-csv.d.ts +0 -10
- package/build/builtins/export-csv.js +0 -96
- package/build/builtins/export-yaml.js +0 -30
- package/build/builtins/group-by.d.ts +0 -5
- package/build/builtins/group-by.js +0 -71
- package/build/builtins/interpolation/index.d.ts +0 -2
- package/build/builtins/interpolation/index.js +0 -148
- package/build/builtins/mock-observations/helpers/common-generator.js +0 -29
- package/build/builtins/mock-observations/helpers/rand-int-generator.js +0 -48
- package/build/builtins/mock-observations/index.d.ts +0 -2
- package/build/builtins/mock-observations/index.js +0 -114
- package/build/builtins/mock-observations/interfaces/index.js +0 -3
- package/build/builtins/multiply/index.d.ts +0 -2
- package/build/builtins/multiply/index.js +0 -57
- package/build/builtins/regex/index.d.ts +0 -2
- package/build/builtins/regex/index.js +0 -74
- package/build/builtins/sci/config.js +0 -44
- package/build/builtins/sci/index.d.ts +0 -2
- package/build/builtins/sci/index.js +0 -70
- package/build/builtins/sci-embodied/index.d.ts +0 -2
- package/build/builtins/sci-embodied/index.js +0 -114
- package/build/builtins/shell/index.d.ts +0 -2
- package/build/builtins/shell/index.js +0 -58
- package/build/builtins/subtract/index.d.ts +0 -2
- package/build/builtins/subtract/index.js +0 -59
- package/build/builtins/sum/index.d.ts +0 -2
- package/build/builtins/sum/index.js +0 -64
- package/build/builtins/time-sync.d.ts +0 -2
- package/build/builtins/time-sync.js +0 -300
- package/build/check.js +0 -95
- package/build/config/config.d.ts +0 -29
- package/build/config/config.js +0 -147
- package/build/config/index.js +0 -10
- package/build/config/params.d.ts +0 -2
- package/build/config/params.js +0 -196
- package/build/config/strings.js +0 -105
- package/build/diff.js +0 -46
- package/build/env.js +0 -38
- package/build/index.js +0 -48
- package/build/lib/aggregate.d.ts +0 -6
- package/build/lib/aggregate.js +0 -77
- package/build/lib/compare.js +0 -56
- package/build/lib/compute.js +0 -91
- package/build/lib/environment.js +0 -75
- package/build/lib/exhaust.js +0 -53
- package/build/lib/initialize.d.ts +0 -6
- package/build/lib/initialize.js +0 -101
- package/build/lib/load.js +0 -70
- package/build/lib/parameterize.d.ts +0 -6
- package/build/lib/parameterize.js +0 -55
- package/build/types/aggregation.d.ts +0 -2
- package/build/types/aggregation.js +0 -5
- package/build/types/compute.js +0 -3
- package/build/types/environment.js +0 -3
- package/build/types/exhaust-plugin-interface.js +0 -3
- package/build/types/if-env.js +0 -3
- package/build/types/interface.d.ts +0 -4
- package/build/types/interface.js +0 -8
- package/build/types/lib/compare.js +0 -3
- package/build/types/manifest.js +0 -3
- package/build/types/npm.js +0 -3
- package/build/types/parameters.d.ts +0 -5
- package/build/types/parameters.js +0 -5
- package/build/types/plugin-storage.js +0 -3
- package/build/types/process-args.d.ts +0 -33
- package/build/types/process-args.js +0 -3
- package/build/types/time-sync.js +0 -3
- package/build/types/util/args.js +0 -3
- package/build/util/aggregation-helper.js +0 -55
- package/build/util/args.d.ts +0 -37
- package/build/util/args.js +0 -205
- package/build/util/debug-logger.js +0 -118
- package/build/util/fs.js +0 -94
- package/build/util/helpers.d.ts +0 -57
- package/build/util/helpers.js +0 -251
- package/build/util/json.d.ts +0 -4
- package/build/util/json.js +0 -36
- package/build/util/log-memoize.js +0 -19
- package/build/util/npm.js +0 -152
- package/build/util/os-checker.js +0 -97
- package/build/util/plugin-storage.js +0 -34
- package/build/util/validations.js +0 -124
- package/build/util/yaml.js +0 -59
- package/manifests/outputs/bugs/initialize-error-no-config.yaml +0 -78
- package/manifests/outputs/bugs/initialize-error-no-path.yaml +0 -91
- package/manifests/outputs/bugs/initialize-error-no-plugins.yaml +0 -74
- package/manifests/outputs/divide.yaml +0 -93
- package/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml +0 -645
- package/manifests/outputs/pipelines/mock-obs-groupby.yaml +0 -178
- package/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml +0 -27
- package/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml +0 -27
- package/manifests/outputs/plugins/groupby/success.yaml +0 -101
- package/manifests/outputs/plugins/mock-observations/success.yaml +0 -220
- package/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml +0 -76
- package/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml +0 -78
- package/src/__tests__/integration/templates/integration.yaml +0 -16
- package/src/builtins/README.md +0 -848
- /package/build/{util → common/util}/debug-logger.d.ts +0 -0
- /package/build/{util → common/util}/fs.d.ts +0 -0
- /package/build/{util → common/util}/logger.d.ts +0 -0
- /package/build/{util → common/util}/yaml.d.ts +0 -0
- /package/build/{index.d.ts → if-check/index.d.ts} +0 -0
- /package/build/{check.d.ts → if-csv/index.d.ts} +0 -0
- /package/build/{diff.d.ts → if-diff/index.d.ts} +0 -0
- /package/build/{types/util → if-diff/types}/args.d.ts +0 -0
- /package/build/{types/lib → if-diff/types}/compare.d.ts +0 -0
- /package/build/{env.d.ts → if-env/index.d.ts} +0 -0
- /package/build/{types → if-env/types}/if-env.d.ts +0 -0
- /package/build/{types → if-env/types}/npm.d.ts +0 -0
- /package/build/{builtins → if-run/builtins}/mock-observations/helpers/common-generator.d.ts +0 -0
- /package/build/{builtins → if-run/builtins}/mock-observations/helpers/rand-int-generator.d.ts +0 -0
- /package/build/{builtins → if-run/builtins}/mock-observations/interfaces/index.d.ts +0 -0
- /package/build/{builtins → if-run/builtins}/sci/config.d.ts +0 -0
- /package/build/{lib → if-run/lib}/compute.d.ts +0 -0
- /package/build/{types → if-run/types}/environment.d.ts +0 -0
- /package/build/{types → if-run/types}/plugin-storage.d.ts +0 -0
- /package/build/{types → if-run/types}/time-sync.d.ts +0 -0
- /package/build/{util → if-run/util}/log-memoize.d.ts +0 -0
- /package/build/{util → if-run/util}/os-checker.d.ts +0 -0
package/build/util/npm.js
DELETED
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
-
if (k2 === undefined) k2 = k;
|
|
5
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(o, k2, desc);
|
|
10
|
-
}) : (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
o[k2] = m[k];
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
-
if (mod && mod.__esModule) return mod;
|
|
21
|
-
var result = {};
|
|
22
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
-
__setModuleDefault(result, mod);
|
|
24
|
-
return result;
|
|
25
|
-
};
|
|
26
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.executeCommands = exports.updatePackageJsonProperties = exports.extractPathsWithVersion = exports.updatePackageJsonDependencies = exports.installDependencies = exports.initPackageJsonIfNotExists = void 0;
|
|
28
|
-
/* eslint-disable no-process-exit */
|
|
29
|
-
const fs = __importStar(require("fs/promises"));
|
|
30
|
-
const path = __importStar(require("path"));
|
|
31
|
-
const helpers_1 = require("./helpers");
|
|
32
|
-
const fs_1 = require("./fs");
|
|
33
|
-
const logger_1 = require("./logger");
|
|
34
|
-
const config_1 = require("../config");
|
|
35
|
-
const packageJson = require('../../package.json');
|
|
36
|
-
const { INITIALIZING_PACKAGE_JSON, INSTALLING_NPM_PACKAGES, IF_CHECK_VERIFIED } = config_1.STRINGS;
|
|
37
|
-
/**
|
|
38
|
-
* Checks if the package.json is exists, if not, initializes it.
|
|
39
|
-
*/
|
|
40
|
-
const initPackageJsonIfNotExists = async (folderPath) => {
|
|
41
|
-
const packageJsonPath = path.resolve(folderPath, 'package.json');
|
|
42
|
-
const isPackageJsonExists = await (0, fs_1.isFileExists)(packageJsonPath);
|
|
43
|
-
if (!isPackageJsonExists) {
|
|
44
|
-
logger_1.logger.info(INITIALIZING_PACKAGE_JSON);
|
|
45
|
-
const nodeModulesPath = path.resolve(folderPath, 'node_modules');
|
|
46
|
-
const isNodeModulesExists = await (0, fs_1.isDirectoryExists)(nodeModulesPath);
|
|
47
|
-
if (isNodeModulesExists) {
|
|
48
|
-
await fs.rm(nodeModulesPath, { recursive: true });
|
|
49
|
-
}
|
|
50
|
-
await (0, helpers_1.execPromise)('npm init -y', { cwd: folderPath });
|
|
51
|
-
}
|
|
52
|
-
return packageJsonPath;
|
|
53
|
-
};
|
|
54
|
-
exports.initPackageJsonIfNotExists = initPackageJsonIfNotExists;
|
|
55
|
-
/**
|
|
56
|
-
* Installs packages from the specified dependencies in the specified folder.
|
|
57
|
-
*/
|
|
58
|
-
const installDependencies = async (folderPath, dependencies) => {
|
|
59
|
-
const packages = Object.entries(dependencies).map(([dependency, version]) => `${dependency}@${version.replace('^', '')}`);
|
|
60
|
-
logger_1.logger.info(INSTALLING_NPM_PACKAGES);
|
|
61
|
-
await (0, helpers_1.execPromise)(`npm install ${packages.join(' ')}`, {
|
|
62
|
-
cwd: folderPath,
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
exports.installDependencies = installDependencies;
|
|
66
|
-
/**
|
|
67
|
-
* Updates package.json dependencies.
|
|
68
|
-
*/
|
|
69
|
-
const updatePackageJsonDependencies = async (packageJsonPath, dependencies, cwd) => {
|
|
70
|
-
const packageJsonContent = await fs.readFile(packageJsonPath, 'utf8');
|
|
71
|
-
const parsedPackageJson = JSON.parse(packageJsonContent);
|
|
72
|
-
if (cwd) {
|
|
73
|
-
parsedPackageJson.dependencies = {
|
|
74
|
-
...parsedPackageJson.dependencies,
|
|
75
|
-
...dependencies,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
parsedPackageJson.dependencies = { ...dependencies };
|
|
80
|
-
}
|
|
81
|
-
await fs.writeFile(packageJsonPath, JSON.stringify(parsedPackageJson, null, 2));
|
|
82
|
-
};
|
|
83
|
-
exports.updatePackageJsonDependencies = updatePackageJsonDependencies;
|
|
84
|
-
/**
|
|
85
|
-
* Gets depencecies with versions.
|
|
86
|
-
*/
|
|
87
|
-
const extractPathsWithVersion = (plugins, dependencies) => {
|
|
88
|
-
const paths = Object.keys(plugins).map(plugin => plugins[plugin].path);
|
|
89
|
-
const uniquePaths = [...new Set(paths)].filter(path => path !== 'builtin');
|
|
90
|
-
const pathsWithVersion = {};
|
|
91
|
-
uniquePaths.forEach(pluginPath => {
|
|
92
|
-
const dependency = dependencies.find((dependency) => dependency.startsWith(pluginPath));
|
|
93
|
-
if (dependency) {
|
|
94
|
-
const splittedDependency = dependency.split('@');
|
|
95
|
-
const version = splittedDependency.length > 2
|
|
96
|
-
? splittedDependency[2].split(' ')[0]
|
|
97
|
-
: splittedDependency[1];
|
|
98
|
-
pathsWithVersion[pluginPath] = `^${version}`;
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
return pathsWithVersion;
|
|
102
|
-
};
|
|
103
|
-
exports.extractPathsWithVersion = extractPathsWithVersion;
|
|
104
|
-
/**
|
|
105
|
-
* Update the package.json properties.
|
|
106
|
-
*/
|
|
107
|
-
const updatePackageJsonProperties = async (newPackageJsonPath, appendDependencies) => {
|
|
108
|
-
const packageJsonContent = await fs.readFile(newPackageJsonPath, 'utf8');
|
|
109
|
-
const parsedPackageJsonContent = JSON.parse(packageJsonContent);
|
|
110
|
-
const properties = {
|
|
111
|
-
name: 'if-environment',
|
|
112
|
-
description: packageJson.description,
|
|
113
|
-
author: packageJson.author,
|
|
114
|
-
bugs: packageJson.bugs,
|
|
115
|
-
engines: packageJson.engines,
|
|
116
|
-
homepage: packageJson.homepage,
|
|
117
|
-
dependencies: appendDependencies
|
|
118
|
-
? parsedPackageJsonContent.dependencies
|
|
119
|
-
: {},
|
|
120
|
-
};
|
|
121
|
-
const newPackageJson = Object.assign({}, parsedPackageJsonContent, properties);
|
|
122
|
-
await fs.writeFile(newPackageJsonPath, JSON.stringify(newPackageJson, null, 2));
|
|
123
|
-
};
|
|
124
|
-
exports.updatePackageJsonProperties = updatePackageJsonProperties;
|
|
125
|
-
/**
|
|
126
|
-
* Executes a series of npm commands based on the provided manifest file.
|
|
127
|
-
*/
|
|
128
|
-
const executeCommands = async (manifest, cwd) => {
|
|
129
|
-
// TODO: After release remove isGlobal and appropriate checks
|
|
130
|
-
const isGlobal = !!process.env.npm_config_global;
|
|
131
|
-
const manifestDirPath = path.dirname(manifest);
|
|
132
|
-
const manifestFileName = (0, fs_1.getFileName)(manifest);
|
|
133
|
-
const executedManifest = path.join(manifestDirPath, `re-${manifestFileName}`);
|
|
134
|
-
const prefixFlag = process.env.CURRENT_DIR && process.env.CURRENT_DIR !== process.cwd()
|
|
135
|
-
? `--prefix=${path.relative(process.env.CURRENT_DIR, process.cwd())}`
|
|
136
|
-
: '';
|
|
137
|
-
const ifEnv = `${isGlobal ? `if-env ${prefixFlag}` : `npm run if-env ${prefixFlag} --`} -m ${manifest}`;
|
|
138
|
-
const ifEnvCommand = cwd ? `${ifEnv} -c` : ifEnv;
|
|
139
|
-
const ifRunCommand = `${isGlobal ? `if-run ${prefixFlag}` : `npm run if-run ${prefixFlag} --`} -m ${manifest} -o ${executedManifest}`;
|
|
140
|
-
const ifDiffCommand = `${isGlobal ? `if-diff ${prefixFlag}` : `npm run if-diff ${prefixFlag} --`} -s ${executedManifest}.yaml -t ${manifest}`;
|
|
141
|
-
const ttyCommand = " node -p 'Boolean(process.stdout.isTTY)'";
|
|
142
|
-
await (0, helpers_1.execPromise)(`${ifEnvCommand} && ${ifRunCommand} && ${ttyCommand} | ${ifDiffCommand}`, {
|
|
143
|
-
cwd: process.env.CURRENT_DIR || process.cwd(),
|
|
144
|
-
});
|
|
145
|
-
if (!cwd) {
|
|
146
|
-
await (0, fs_1.removeFileIfExists)(`${manifestDirPath}/package.json`);
|
|
147
|
-
}
|
|
148
|
-
await (0, fs_1.removeFileIfExists)(`${executedManifest}.yaml`);
|
|
149
|
-
console.log(IF_CHECK_VERIFIED(path.basename(manifest)));
|
|
150
|
-
};
|
|
151
|
-
exports.executeCommands = executeCommands;
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvbnBtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLG9DQUFvQztBQUNwQyxnREFBa0M7QUFDbEMsMkNBQTZCO0FBRTdCLHVDQUFzQztBQUN0Qyw2QkFLYztBQUNkLHFDQUFnQztBQUVoQyxzQ0FBa0M7QUFHbEMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7QUFFbEQsTUFBTSxFQUFDLHlCQUF5QixFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFDLEdBQzNFLGdCQUFPLENBQUM7QUFFVjs7R0FFRztBQUNJLE1BQU0sMEJBQTBCLEdBQUcsS0FBSyxFQUFFLFVBQWtCLEVBQUUsRUFBRTtJQUNyRSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNqRSxNQUFNLG1CQUFtQixHQUFHLE1BQU0sSUFBQSxpQkFBWSxFQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRWhFLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtRQUN4QixlQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFFdkMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDakUsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLElBQUEsc0JBQWlCLEVBQUMsZUFBZSxDQUFDLENBQUM7UUFFckUsSUFBSSxtQkFBbUIsRUFBRTtZQUN2QixNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFBZSxFQUFFLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7U0FDakQ7UUFFRCxNQUFNLElBQUEscUJBQVcsRUFBQyxhQUFhLEVBQUUsRUFBQyxHQUFHLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztLQUNyRDtJ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Q0FBQyxtQkFBbUIsVUFBVSxLQUNwRSxPQUFPLGdCQUFnQixZQUFZLFFBQVEsRUFBRSxDQUFDO0lBQzlDLE1BQU0sVUFBVSxHQUFHLDBDQUEwQyxDQUFDO0lBRTlELE1BQU0sSUFBQSxxQkFBVyxFQUNmLEdBQUcsWUFBWSxPQUFPLFlBQVksT0FBTyxVQUFVLE1BQU0sYUFBYSxFQUFFLEVBQ3hFO1FBQ0UsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7S0FDOUMsQ0FDRixDQUFDO0lBRUYsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNSLE1BQU0sSUFBQSx1QkFBa0IsRUFBQyxHQUFHLGVBQWUsZUFBZSxDQUFDLENBQUM7S0FDN0Q7SUFFRCxNQUFNLElBQUEsdUJBQWtCLEVBQUMsR0FBRyxnQkFBZ0IsT0FBTyxDQUFDLENBQUM7SUFFckQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxRCxDQUFDLENBQUM7QUFwQ1csUUFBQSxlQUFlLG1CQW9DMUIiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1wcm9jZXNzLWV4aXQgKi9cbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzL3Byb21pc2VzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCB7ZXhlY1Byb21pc2V9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQge1xuICBpc0RpcmVjdG9yeUV4aXN0cyxcbiAgZ2V0RmlsZU5hbWUsXG4gIGlzRmlsZUV4aXN0cyxcbiAgcmVtb3ZlRmlsZUlmRXhpc3RzLFxufSBmcm9tICcuL2ZzJztcbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuL2xvZ2dlcic7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnJztcbmltcG9ydCB7TWFuaWZlc3RQbHVnaW4sIFBhdGhXaXRoVmVyc2lvbn0gZnJvbSAnLi4vdHlwZXMvbnBtJztcblxuY29uc3QgcGFja2FnZUpzb24gPSByZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKTtcblxuY29uc3Qge0lOSVRJQUxJWklOR19QQUNLQUdFX0pTT04sIElOU1RBTExJTkdfTlBNX1BBQ0tBR0VTLCBJRl9DSEVDS19WRVJJRklFRH0gPVxuICBTVFJJTkdTO1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgcGFja2FnZS5qc29uIGlzIGV4aXN0cywgaWYgbm90LCBpbml0aWFsaXplcyBpdC5cbiAqL1xuZXhwb3J0IGNvbnN0IGluaXRQYWNrYWdlSnNvbklmTm90RXhpc3RzID0gYXN5bmMgKGZvbGRlclBhdGg6IHN0cmluZykgPT4ge1xuICBjb25zdCBwYWNrYWdlSnNvblBhdGggPSBwYXRoLnJlc29sdmUoZm9sZGVyUGF0aCwgJ3BhY2thZ2UuanNvbicpO1xuICBjb25zdCBpc1BhY2thZ2VKc29uRXhpc3RzID0gYXdhaXQgaXNGaWxlRXhpc3RzKHBhY2thZ2VKc29uUGF0aCk7XG5cbiAgaWYgKCFpc1BhY2thZ2VKc29uRXhpc3RzKSB7XG4gICAgbG9nZ2VyLmluZm8oSU5JVElBTElaSU5HX1BBQ0tBR0VfSlNPTik7XG5cbiAgICBjb25zdCBub2RlTW9kdWxlc1BhdGggPSBwYXRoLnJlc29sdmUoZm9sZGVyUGF0aCwgJ25vZGVfbW9kdWxlcycpO1xuICAgIGNvbnN0IGlzTm9kZU1vZHVsZXNFeGlzdHMgPSBhd2FpdCBpc0RpcmVjdG9yeUV4aXN0cyhub2RlTW9kdWxlc1BhdGgpO1xuXG4gICAgaWYgKGlzTm9kZU1vZHVsZXNFeGlzdHMpIHtcbiAgICAgIGF3YWl0IGZzLnJtKG5vZGVNb2R1bGVzUGF0aCwge3JlY3Vyc2l2ZTogdHJ1ZX0pO1xuICAgIH1cblxuICAgIGF3YWl0IGV4ZWNQcm9taXNlKCducG0gaW5pdCAteScsIHtjd2Q6IGZvbGRlclBhdGh9KTtcbiAgfVxuXG4gIHJldHVybiBwYWNrYWdlSnNvblBhdGg7XG59O1xuXG4vKipcbiAqIEluc3RhbGxzIHBhY2thZ2VzIGZyb20gdGhlIHNwZWNpZmllZCBkZXBlbmRlbmNpZXMgaW4gdGhlIHNwZWNpZmllZCBmb2xkZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBpbnN0YWxsRGVwZW5kZW5jaWVzID0gYXN5bmMgKFxuICBmb2xkZXJQYXRoOiBzdHJpbmcsXG4gIGRlcGVuZGVuY2llczoge1twYXRoOiBzdHJpbmddOiBzdHJpbmd9XG4pID0+IHtcbiAgY29uc3QgcGFja2FnZXMgPSBPYmplY3QuZW50cmllcyhkZXBlbmRlbmNpZXMpLm1hcChcbiAgICAoW2RlcGVuZGVuY3ksIHZlcnNpb25dKSA9PiBgJHtkZXBlbmRlbmN5fUAke3ZlcnNpb24ucmVwbGFjZSgnXicsICcnKX1gXG4gICk7XG5cbiAgbG9nZ2VyLmluZm8oSU5TVEFMTElOR19OUE1fUEFDS0FHRVMpO1xuICBhd2FpdCBleGVjUHJvbWlzZShgbnBtIGluc3RhbGwgJHtwYWNrYWdlcy5qb2luKCcgJyl9YCwge1xuICAgIGN3ZDogZm9sZGVyUGF0aCxcbiAgfSk7XG59O1xuXG4vKipcbiAqIFVwZGF0ZXMgcGFja2FnZS5qc29uIGRlcGVuZGVuY2llcy5cbiAqL1xuZXhwb3J0IGNvbnN0IHVwZGF0ZVBhY2thZ2VKc29uRGVwZW5kZW5jaWVzID0gYXN5bmMgKFxuICBwYWNrYWdlSnNvblBhdGg6IHN0cmluZyxcbiAgZGVwZW5kZW5jaWVzOiBQYXRoV2l0aFZlcnNpb24sXG4gIGN3ZDogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IHBhY2thZ2VKc29uQ29udGVudCA9IGF3YWl0IGZzLnJlYWRGaWxlKHBhY2thZ2VKc29uUGF0aCwgJ3V0ZjgnKTtcblxuICBjb25zdCBwYXJzZWRQYWNrYWdlSnNvbiA9IEpTT04ucGFyc2UocGFja2FnZUpzb25Db250ZW50KTtcblxuICBpZiAoY3dkKSB7XG4gICAgcGFyc2VkUGFja2FnZUpzb24uZGVwZW5kZW5jaWVzID0ge1xuICAgICAgLi4ucGFyc2VkUGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLFxuICAgICAgLi4uZGVwZW5kZW5jaWVzLFxuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgcGFyc2VkUGFja2FnZUpzb24uZGVwZW5kZW5jaWVzID0gey4uLmRlcGVuZGVuY2llc307XG4gIH1cblxuICBhd2FpdCBmcy53cml0ZUZpbGUoXG4gICAgcGFja2FnZUpzb25QYXRoLFxuICAgIEpTT04uc3RyaW5naWZ5KHBhcnNlZFBhY2thZ2VKc29uLCBudWxsLCAyKVxuICApO1xufTtcblxuLyoqXG4gKiBHZXRzIGRlcGVuY2VjaWVzIHdpdGggdmVyc2lvbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBleHRyYWN0UGF0aHNXaXRoVmVyc2lvbiA9IChcbiAgcGx1Z2luczogTWFuaWZlc3RQbHVnaW4sXG4gIGRlcGVuZGVuY2llczogc3RyaW5nW11cbikgPT4ge1xuICBjb25zdCBwYXRocyA9IE9iamVjdC5rZXlzKHBsdWdpbnMpLm1hcChwbHVnaW4gPT4gcGx1Z2luc1twbHVnaW5dLnBhdGgpO1xuICBjb25zdCB1bmlxdWVQYXRocyA9IFsuLi5uZXcgU2V0KHBhdGhzKV0uZmlsdGVyKHBhdGggPT4gcGF0aCAhPT0gJ2J1aWx0aW4nKTtcbiAgY29uc3QgcGF0aHNXaXRoVmVyc2lvbjogUGF0aFdpdGhWZXJzaW9uID0ge307XG5cbiAgdW5pcXVlUGF0aHMuZm9yRWFjaChwbHVnaW5QYXRoID0+IHtcbiAgICBjb25zdCBkZXBlbmRlbmN5ID0gZGVwZW5kZW5jaWVzLmZpbmQoKGRlcGVuZGVuY3k6IHN0cmluZykgPT5cbiAgICAgIGRlcGVuZGVuY3kuc3RhcnRzV2l0aChwbHVnaW5QYXRoKVxuICAgICk7XG5cbiAgICBpZiAoZGVwZW5kZW5jeSkge1xuICAgICAgY29uc3Qgc3BsaXR0ZWREZXBlbmRlbmN5ID0gZGVwZW5kZW5jeS5zcGxpdCgnQCcpO1xuICAgICAgY29uc3QgdmVyc2lvbiA9XG4gICAgICAgIHNwbGl0dGVkRGVwZW5kZW5jeS5sZW5ndGggPiAyXG4gICAgICAgICAgPyBzcGxpdHRlZERlcGVuZGVuY3lbMl0uc3BsaXQoJyAnKVswXVxuICAgICAgICAgIDogc3BsaXR0ZWREZXBlbmRlbmN5WzFdO1xuXG4gICAgICBwYXRoc1dpdGhWZXJzaW9uW3BsdWdpblBhdGhdID0gYF4ke3ZlcnNpb259YDtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBwYXRoc1dpdGhWZXJzaW9uO1xufTtcblxuLyoqXG4gKiBVcGRhdGUgdGhlIHBhY2thZ2UuanNvbiBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgY29uc3QgdXBkYXRlUGFja2FnZUpzb25Qcm9wZXJ0aWVzID0gYXN5bmMgKFxuICBuZXdQYWNrYWdlSnNvblBhdGg6IHN0cmluZyxcbiAgYXBwZW5kRGVwZW5kZW5jaWVzOiBib29sZWFuXG4pID0+IHtcbiAgY29uc3QgcGFja2FnZUpzb25Db250ZW50ID0gYXdhaXQgZnMucmVhZEZpbGUobmV3UGFja2FnZUpzb25QYXRoLCAndXRmOCcpO1xuICBjb25zdCBwYXJzZWRQYWNrYWdlSnNvbkNvbnRlbnQgPSBKU09OLnBhcnNlKHBhY2thZ2VKc29uQ29udGVudCk7XG5cbiAgY29uc3QgcHJvcGVydGllcyA9IHtcbiAgICBuYW1lOiAnaWYtZW52aXJvbm1lbnQnLFxuICAgIGRlc2NyaXB0aW9uOiBwYWNrYWdlSnNvbi5kZXNjcmlwdGlvbixcbiAgICBhdXRob3I6IHBhY2thZ2VKc29uLmF1dGhvcixcbiAgICBidWdzOiBwYWNrYWdlSnNvbi5idWdzLFxuICAgIGVuZ2luZXM6IHBhY2thZ2VKc29uLmVuZ2luZXMsXG4gICAgaG9tZXBhZ2U6IHBhY2thZ2VKc29uLmhvbWVwYWdlLFxuICAgIGRlcGVuZGVuY2llczogYXBwZW5kRGVwZW5kZW5jaWVzXG4gICAgICA/IHBhcnNlZFBhY2thZ2VKc29uQ29udGVudC5kZXBlbmRlbmNpZXNcbiAgICAgIDoge30sXG4gIH07XG5cbiAgY29uc3QgbmV3UGFja2FnZUpzb24gPSBPYmplY3QuYXNzaWduKFxuICAgIHt9LFxuICAgIHBhcnNlZFBhY2thZ2VKc29uQ29udGVudCxcbiAgICBwcm9wZXJ0aWVzXG4gICk7XG5cbiAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgIG5ld1BhY2thZ2VKc29uUGF0aCxcbiAgICBKU09OLnN0cmluZ2lmeShuZXdQYWNrYWdlSnNvbiwgbnVsbCwgMilcbiAgKTtcbn07XG5cbi8qKlxuICogRXhlY3V0ZXMgYSBzZXJpZXMgb2YgbnBtIGNvbW1hbmRzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBtYW5pZmVzdCBmaWxlLlxuICovXG5leHBvcnQgY29uc3QgZXhlY3V0ZUNvbW1hbmRzID0gYXN5bmMgKG1hbmlmZXN0OiBzdHJpbmcsIGN3ZDogYm9vbGVhbikgPT4ge1xuICAvLyBUT0RPOiBBZnRlciByZWxlYXNlIHJlbW92ZSBpc0dsb2JhbCBhbmQgYXBwcm9wcmlhdGUgY2hlY2tzXG4gIGNvbnN0IGlzR2xvYmFsID0gISFwcm9jZXNzLmVudi5ucG1fY29uZmlnX2dsb2JhbDtcbiAgY29uc3QgbWFuaWZlc3REaXJQYXRoID0gcGF0aC5kaXJuYW1lKG1hbmlmZXN0KTtcbiAgY29uc3QgbWFuaWZlc3RGaWxlTmFtZSA9IGdldEZpbGVOYW1lKG1hbmlmZXN0KTtcbiAgY29uc3QgZXhlY3V0ZWRNYW5pZmVzdCA9IHBhdGguam9pbihtYW5pZmVzdERpclBhdGgsIGByZS0ke21hbmlmZXN0RmlsZU5hbWV9YCk7XG4gIGNvbnN0IHByZWZpeEZsYWcgPVxuICAgIHByb2Nlc3MuZW52LkNVUlJFTlRfRElSICYmIHByb2Nlc3MuZW52LkNVUlJFTlRfRElSICE9PSBwcm9jZXNzLmN3ZCgpXG4gICAgICA/IGAtLXByZWZpeD0ke3BhdGgucmVsYXRpdmUocHJvY2Vzcy5lbnYuQ1VSUkVOVF9ESVIhLCBwcm9jZXNzLmN3ZCgpKX1gXG4gICAgICA6ICcnO1xuICBjb25zdCBpZkVudiA9IGAke1xuICAgIGlzR2xvYmFsID8gYGlmLWVudiAke3ByZWZpeEZsYWd9YCA6IGBucG0gcnVuIGlmLWVudiAke3ByZWZpeEZsYWd9IC0tYFxuICB9IC1tICR7bWFuaWZlc3R9YDtcbiAgY29uc3QgaWZFbnZDb21tYW5kID0gY3dkID8gYCR7aWZFbnZ9IC1jYCA6IGlmRW52O1xuICBjb25zdCBpZlJ1bkNvbW1hbmQgPSBgJHtcbiAgICBpc0dsb2JhbCA/IGBpZi1ydW4gJHtwcmVmaXhGbGFnfWAgOiBgbnBtIHJ1biBpZi1ydW4gJHtwcmVmaXhGbGFnfSAtLWBcbiAgfSAtbSAke21hbmlmZXN0fSAtbyAke2V4ZWN1dGVkTWFuaWZlc3R9YDtcbiAgY29uc3QgaWZEaWZmQ29tbWFuZCA9IGAke1xuICAgIGlzR2xvYmFsID8gYGlmLWRpZmYgJHtwcmVmaXhGbGFnfWAgOiBgbnBtIHJ1biBpZi1kaWZmICR7cHJlZml4RmxhZ30gLS1gXG4gIH0gLXMgJHtleGVjdXRlZE1hbmlmZXN0fS55YW1sIC10ICR7bWFuaWZlc3R9YDtcbiAgY29uc3QgdHR5Q29tbWFuZCA9IFwiIG5vZGUgLXAgJ0Jvb2xlYW4ocHJvY2Vzcy5zdGRvdXQuaXNUVFkpJ1wiO1xuXG4gIGF3YWl0IGV4ZWNQcm9taXNlKFxuICAgIGAke2lmRW52Q29tbWFuZH0gJiYgJHtpZlJ1bkNvbW1hbmR9ICYmICR7dHR5Q29tbWFuZH0gfCAke2lmRGlmZkNvbW1hbmR9YCxcbiAgICB7XG4gICAgICBjd2Q6IHByb2Nlc3MuZW52LkNVUlJFTlRfRElSIHx8IHByb2Nlc3MuY3dkKCksXG4gICAgfVxuICApO1xuXG4gIGlmICghY3dkKSB7XG4gICAgYXdhaXQgcmVtb3ZlRmlsZUlmRXhpc3RzKGAke21hbmlmZXN0RGlyUGF0aH0vcGFja2FnZS5qc29uYCk7XG4gIH1cblxuICBhd2FpdCByZW1vdmVGaWxlSWZFeGlzdHMoYCR7ZXhlY3V0ZWRNYW5pZmVzdH0ueWFtbGApO1xuXG4gIGNvbnNvbGUubG9nKElGX0NIRUNLX1ZFUklGSUVEKHBhdGguYmFzZW5hbWUobWFuaWZlc3QpKSk7XG59O1xuIl19
|
package/build/util/os-checker.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.osInfo = void 0;
|
|
4
|
-
const os_1 = require("os");
|
|
5
|
-
const helpers_1 = require("./helpers");
|
|
6
|
-
/**
|
|
7
|
-
* Executes `lsb_release -a` command in terminal.
|
|
8
|
-
*
|
|
9
|
-
* ```
|
|
10
|
-
* Distributor ID: Ubuntu
|
|
11
|
-
* Description: Ubuntu 22.04.4 LTS
|
|
12
|
-
* Release: 22.04
|
|
13
|
-
* Codename: jammy
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* Parses os and os-version from the response.
|
|
17
|
-
*/
|
|
18
|
-
const getLinuxInfo = async () => {
|
|
19
|
-
const { stdout } = await (0, helpers_1.execPromise)('lsb_release -a');
|
|
20
|
-
const parseLinuxVersion = (lsbReleaseResponse) => {
|
|
21
|
-
const regex = /Distributor ID: ([^\n]+)\nDescription: +([^ ]+) +([^ ]+) +(.+)\n/;
|
|
22
|
-
const match = lsbReleaseResponse.match(regex);
|
|
23
|
-
return {
|
|
24
|
-
os: match ? match[1] : (0, os_1.platform)(),
|
|
25
|
-
'os-version': match ? `${match[3]} ${match[4]}` : (0, os_1.release)(),
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
return parseLinuxVersion(stdout);
|
|
29
|
-
};
|
|
30
|
-
/**
|
|
31
|
-
* Executes in CMD `systeminfo | findstr /B /C:"OS Name" /B /C:"OS Version"` command.
|
|
32
|
-
*
|
|
33
|
-
* ```
|
|
34
|
-
* OS Name: Microsoft Windows 11 Enterprise
|
|
35
|
-
* OS Version: 10.0.22631 N/A Build 22631
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* Parses os and os-version from the response.
|
|
39
|
-
*/
|
|
40
|
-
const getWindowsInfo = async () => {
|
|
41
|
-
const { stdout } = await (0, helpers_1.execPromise)('systeminfo | findstr /B /C:"OS Name" /B /C:"OS Version"');
|
|
42
|
-
const parseWindowsInfo = (systemInfoResponse) => {
|
|
43
|
-
const regex = /OS Name:\s+([^\n]+)\nOS Version:\s+([\d.]+)\s+(N\/A\s+Build\s+(\d+))/;
|
|
44
|
-
const match = systemInfoResponse.match(regex);
|
|
45
|
-
return {
|
|
46
|
-
os: match ? match[1] : (0, os_1.platform)(),
|
|
47
|
-
'os-version': match ? `${match[2]} ${match[3]}` : (0, os_1.release)(),
|
|
48
|
-
};
|
|
49
|
-
};
|
|
50
|
-
return parseWindowsInfo(stdout);
|
|
51
|
-
};
|
|
52
|
-
/**
|
|
53
|
-
* Executes `sw_vers` command in terminal.
|
|
54
|
-
*
|
|
55
|
-
* ```
|
|
56
|
-
* ProductName: macOS
|
|
57
|
-
* ProductVersion: 14.3.1
|
|
58
|
-
* BuildVersion: 23D60
|
|
59
|
-
* ```
|
|
60
|
-
*
|
|
61
|
-
* Parses os and os version from the response.
|
|
62
|
-
*/
|
|
63
|
-
const getMacVersion = async () => {
|
|
64
|
-
const { stdout } = await (0, helpers_1.execPromise)('sw_vers');
|
|
65
|
-
const parseMacInfo = (swVersResponse) => {
|
|
66
|
-
const productNameRegex = /ProductName:\s*(.+)/;
|
|
67
|
-
const productVersionRegex = /ProductVersion:\s*(.+)/;
|
|
68
|
-
const nameMatch = swVersResponse.match(productNameRegex);
|
|
69
|
-
const versionMatch = swVersResponse.match(productVersionRegex);
|
|
70
|
-
return {
|
|
71
|
-
os: nameMatch ? nameMatch[1].trim() : (0, os_1.platform)(),
|
|
72
|
-
'os-version': versionMatch ? versionMatch[1].trim() : (0, os_1.release)(),
|
|
73
|
-
};
|
|
74
|
-
};
|
|
75
|
-
return parseMacInfo(stdout);
|
|
76
|
-
};
|
|
77
|
-
/**
|
|
78
|
-
* Finds operating system information like name and version.
|
|
79
|
-
*/
|
|
80
|
-
const osInfo = async () => {
|
|
81
|
-
const osKind = (0, os_1.platform)();
|
|
82
|
-
switch (osKind) {
|
|
83
|
-
case 'darwin':
|
|
84
|
-
return getMacVersion();
|
|
85
|
-
case 'linux':
|
|
86
|
-
return getLinuxInfo();
|
|
87
|
-
case 'win32':
|
|
88
|
-
return getWindowsInfo();
|
|
89
|
-
default:
|
|
90
|
-
return {
|
|
91
|
-
os: osKind,
|
|
92
|
-
'os-version': (0, os_1.release)(),
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
exports.osInfo = osInfo;
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3MtY2hlY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL29zLWNoZWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkJBQXFDO0FBRXJDLHVDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sWUFBWSxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQzlCLE1BQU0sRUFBQyxNQUFNLEVBQUMsR0FBRyxNQUFNLElBQUEscUJBQVcsRUFBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXJELE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxrQkFBMEIsRUFBRSxFQUFFO1FBQ3ZELE1BQU0sS0FBSyxHQUNULGtFQUFrRSxDQUFDO1FBQ3JFLE1BQU0sS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QyxPQUFPO1lBQ0wsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLGFBQVEsR0FBRTtZQUNqQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBQSxZQUFPLEdBQUU7U0FDNUQsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUVGLE9BQU8saUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxjQUFjLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDaEMsTUFBTSxFQUFDLE1BQU0sRUFBQyxHQUFHLE1BQU0sSUFBQSxxQkFBVyxFQUNoQyx5REFBeUQsQ0FDMUQsQ0FBQztJQUVGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxrQkFBMEIsRUFBRSxFQUFFO1FBQ3RELE1BQU0sS0FBSyxHQUNULHNFQUFzRSxDQUFDO1FBQ3pFLE1BQU0sS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QyxPQUFPO1lBQ0wsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLGFBQVEsR0FBRTtZQUNqQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBQSxZQUFPLEdBQUU7U0FDNUQsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUVGLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDbEMsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sYUFBYSxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQy9CLE1BQU0sRUFBQyxNQUFNLEVBQUMsR0FBRyxNQUFNLElBQUEscUJBQVcsRUFBQyxTQUFTLENBQUMsQ0FBQztJQUU5QyxNQUFNLFlBQVksR0FBRyxDQUFDLGNBQXNCLEVBQUUsRUFBRTtRQUM5QyxNQUFNLGdCQUFnQixHQUFHLHFCQUFxQixDQUFDO1FBQy9DLE1BQU0sbUJBQW1CLEdBQUcsd0JBQXdCLENBQUM7UUFFckQsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUUvRCxPQUFPO1lBQ0wsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFBLGFBQVEsR0FBRTtZQUNoRCxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUEsWUFBTyxHQUFFO1NBQ2hFLENBQUM7SUFDSixDQUFDLENBQUM7SUFFRixPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNJLE1BQU0sTUFBTSxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQy9CLE1BQU0sTUFBTSxHQUFHLElBQUEsYUFBUSxHQUFFLENBQUM7SUFFMUIsUUFBUSxNQUFNLEVBQUU7UUFDZCxLQUFLLFFBQVE7WUFDWCxPQUFPLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLEtBQUssT0FBTztZQUNWLE9BQU8sWUFBWSxFQUFFLENBQUM7UUFDeEIsS0FBSyxPQUFPO1lBQ1YsT0FBTyxjQUFjLEVBQUUsQ0FBQztRQUMxQjtZQUNFLE9BQU87Z0JBQ0wsRUFBRSxFQUFFLE1BQU07Z0JBQ1YsWUFBWSxFQUFFLElBQUEsWUFBTyxHQUFFO2FBQ3hCLENBQUM7S0FDTDtBQUNILENBQUMsQ0FBQztBQWhCVyxRQUFBLE1BQU0sVUFnQmpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtyZWxlYXNlLCBwbGF0Zm9ybX0gZnJvbSAnb3MnO1xuXG5pbXBvcnQge2V4ZWNQcm9taXNlfSBmcm9tICcuL2hlbHBlcnMnO1xuXG4vKipcbiAqIEV4ZWN1dGVzIGBsc2JfcmVsZWFzZSAtYWAgY29tbWFuZCBpbiB0ZXJtaW5hbC5cbiAqXG4gKiBgYGBcbiAqIERpc3RyaWJ1dG9yIElEOiBVYnVudHVcbiAqIERlc2NyaXB0aW9uOiAgICBVYnVudHUgMjIuMDQuNCBMVFNcbiAqIFJlbGVhc2U6ICAgICAgICAyMi4wNFxuICogQ29kZW5hbWU6ICAgICAgIGphbW15XG4gKiBgYGBcbiAqXG4gKiBQYXJzZXMgb3MgYW5kIG9zLXZlcnNpb24gZnJvbSB0aGUgcmVzcG9uc2UuXG4gKi9cbmNvbnN0IGdldExpbnV4SW5mbyA9IGFzeW5jICgpID0+IHtcbiAgY29uc3Qge3N0ZG91dH0gPSBhd2FpdCBleGVjUHJvbWlzZSgnbHNiX3JlbGVhc2UgLWEnKTtcblxuICBjb25zdCBwYXJzZUxpbnV4VmVyc2lvbiA9IChsc2JSZWxlYXNlUmVzcG9uc2U6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHJlZ2V4ID1cbiAgICAgIC9EaXN0cmlidXRvciBJRDogKFteXFxuXSspXFxuRGVzY3JpcHRpb246ICsoW14gXSspICsoW14gXSspICsoLispXFxuLztcbiAgICBjb25zdCBtYXRjaCA9IGxzYlJlbGVhc2VSZXNwb25zZS5tYXRjaChyZWdleCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3M6IG1hdGNoID8gbWF0Y2hbMV0gOiBwbGF0Zm9ybSgpLFxuICAgICAgJ29zLXZlcnNpb24nOiBtYXRjaCA/IGAke21hdGNoWzNdfSAke21hdGNoWzRdfWAgOiByZWxlYXNlKCksXG4gICAgfTtcbiAgfTtcblxuICByZXR1cm4gcGFyc2VMaW51eFZlcnNpb24oc3Rkb3V0KTtcbn07XG5cbi8qKlxuICogRXhlY3V0ZXMgaW4gQ01EIGBzeXN0ZW1pbmZvIHwgZmluZHN0ciAvQiAvQzpcIk9TIE5hbWVcIiAvQiAvQzpcIk9TIFZlcnNpb25cImAgY29tbWFuZC5cbiAqXG4gKiBgYGBcbiAqIE9TIE5hbWU6ICAgICAgICAgICAgICAgICAgIE1pY3Jvc29mdCBXaW5kb3dzIDExIEVudGVycHJpc2VcbiAqIE9TIFZlcnNpb246ICAgICAgICAgICAgICAgIDEwLjAuMjI2MzEgTi9BIEJ1aWxkIDIyNjMxXG4gKiBgYGBcbiAqXG4gKiBQYXJzZXMgb3MgYW5kIG9zLXZlcnNpb24gZnJvbSB0aGUgcmVzcG9uc2UuXG4gKi9cbmNvbnN0IGdldFdpbmRvd3NJbmZvID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCB7c3Rkb3V0fSA9IGF3YWl0IGV4ZWNQcm9taXNlKFxuICAgICdzeXN0ZW1pbmZvIHwgZmluZHN0ciAvQiAvQzpcIk9TIE5hbWVcIiAvQiAvQzpcIk9TIFZlcnNpb25cIidcbiAgKTtcblxuICBjb25zdCBwYXJzZVdpbmRvd3NJbmZvID0gKHN5c3RlbUluZm9SZXNwb25zZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgcmVnZXggPVxuICAgICAgL09TIE5hbWU6XFxzKyhbXlxcbl0rKVxcbk9TIFZlcnNpb246XFxzKyhbXFxkLl0rKVxccysoTlxcL0FcXHMrQnVpbGRcXHMrKFxcZCspKS87XG4gICAgY29uc3QgbWF0Y2ggPSBzeXN0ZW1JbmZvUmVzcG9uc2UubWF0Y2gocmVnZXgpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9zOiBtYXRjaCA/IG1hdGNoWzFdIDogcGxhdGZvcm0oKSxcbiAgICAgICdvcy12ZXJzaW9uJzogbWF0Y2ggPyBgJHttYXRjaFsyXX0gJHttYXRjaFszXX1gIDogcmVsZWFzZSgpLFxuICAgIH07XG4gIH07XG5cbiAgcmV0dXJuIHBhcnNlV2luZG93c0luZm8oc3Rkb3V0KTtcbn07XG5cbi8qKlxuICogRXhlY3V0ZXMgYHN3X3ZlcnNgIGNvbW1hbmQgaW4gdGVybWluYWwuXG4gKlxuICogYGBgXG4gKiBQcm9kdWN0TmFtZTogICAgICBtYWNPU1xuICogUHJvZHVjdFZlcnNpb246ICAgMTQuMy4xXG4gKiBCdWlsZFZlcnNpb246ICAgICAyM0Q2MFxuICogYGBgXG4gKlxuICogUGFyc2VzIG9zIGFuZCBvcyB2ZXJzaW9uIGZyb20gdGhlIHJlc3BvbnNlLlxuICovXG5jb25zdCBnZXRNYWNWZXJzaW9uID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCB7c3Rkb3V0fSA9IGF3YWl0IGV4ZWNQcm9taXNlKCdzd192ZXJzJyk7XG5cbiAgY29uc3QgcGFyc2VNYWNJbmZvID0gKHN3VmVyc1Jlc3BvbnNlOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBwcm9kdWN0TmFtZVJlZ2V4ID0gL1Byb2R1Y3ROYW1lOlxccyooLispLztcbiAgICBjb25zdCBwcm9kdWN0VmVyc2lvblJlZ2V4ID0gL1Byb2R1Y3RWZXJzaW9uOlxccyooLispLztcblxuICAgIGNvbnN0IG5hbWVNYXRjaCA9IHN3VmVyc1Jlc3BvbnNlLm1hdGNoKHByb2R1Y3ROYW1lUmVnZXgpO1xuICAgIGNvbnN0IHZlcnNpb25NYXRjaCA9IHN3VmVyc1Jlc3BvbnNlLm1hdGNoKHByb2R1Y3RWZXJzaW9uUmVnZXgpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9zOiBuYW1lTWF0Y2ggPyBuYW1lTWF0Y2hbMV0udHJpbSgpIDogcGxhdGZvcm0oKSxcbiAgICAgICdvcy12ZXJzaW9uJzogdmVyc2lvbk1hdGNoID8gdmVyc2lvbk1hdGNoWzFdLnRyaW0oKSA6IHJlbGVhc2UoKSxcbiAgICB9O1xuICB9O1xuXG4gIHJldHVybiBwYXJzZU1hY0luZm8oc3Rkb3V0KTtcbn07XG5cbi8qKlxuICogRmluZHMgb3BlcmF0aW5nIHN5c3RlbSBpbmZvcm1hdGlvbiBsaWtlIG5hbWUgYW5kIHZlcnNpb24uXG4gKi9cbmV4cG9ydCBjb25zdCBvc0luZm8gPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IG9zS2luZCA9IHBsYXRmb3JtKCk7XG5cbiAgc3dpdGNoIChvc0tpbmQpIHtcbiAgICBjYXNlICdkYXJ3aW4nOlxuICAgICAgcmV0dXJuIGdldE1hY1ZlcnNpb24oKTtcbiAgICBjYXNlICdsaW51eCc6XG4gICAgICByZXR1cm4gZ2V0TGludXhJbmZvKCk7XG4gICAgY2FzZSAnd2luMzInOlxuICAgICAgcmV0dXJuIGdldFdpbmRvd3NJbmZvKCk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG9zOiBvc0tpbmQsXG4gICAgICAgICdvcy12ZXJzaW9uJzogcmVsZWFzZSgpLFxuICAgICAgfTtcbiAgfVxufTtcbiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pluginStorage = void 0;
|
|
4
|
-
const utils_1 = require("@grnsft/if-core/utils");
|
|
5
|
-
const config_1 = require("../config");
|
|
6
|
-
const { PluginInitializationError } = utils_1.ERRORS;
|
|
7
|
-
const { NOT_INITALIZED_PLUGIN } = config_1.STRINGS;
|
|
8
|
-
/**
|
|
9
|
-
* Storage for maintaining plugins.
|
|
10
|
-
*/
|
|
11
|
-
const pluginStorage = () => {
|
|
12
|
-
const storage = {};
|
|
13
|
-
return {
|
|
14
|
-
/**
|
|
15
|
-
* Gets plugin by given `name`. If it's missing then throws error.
|
|
16
|
-
*/
|
|
17
|
-
get: (name) => {
|
|
18
|
-
const plugin = storage[name];
|
|
19
|
-
if (!plugin) {
|
|
20
|
-
throw new PluginInitializationError(NOT_INITALIZED_PLUGIN(name));
|
|
21
|
-
}
|
|
22
|
-
return plugin;
|
|
23
|
-
},
|
|
24
|
-
/**
|
|
25
|
-
* Saves given `plugin` with given `name`.
|
|
26
|
-
*/
|
|
27
|
-
set: function (name, plugin) {
|
|
28
|
-
storage[name] = plugin;
|
|
29
|
-
return this;
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
exports.pluginStorage = pluginStorage;
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLXN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC9wbHVnaW4tc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBNkM7QUFFN0Msc0NBQWtDO0FBS2xDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxHQUFHLGNBQU0sQ0FBQztBQUMzQyxNQUFNLEVBQUMscUJBQXFCLEVBQUMsR0FBRyxnQkFBTyxDQUFDO0FBRXhDOztHQUVHO0FBQ0ksTUFBTSxhQUFhLEdBQUcsR0FBRyxFQUFFO0lBQ2hDLE1BQU0sT0FBTyxHQUFrQixFQUFFLENBQUM7SUFFbEMsT0FBTztRQUNMOztXQUVHO1FBQ0gsR0FBRyxFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUU7WUFDcEIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTdCLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ1gsTUFBTSxJQUFJLHlCQUF5QixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDbEU7WUFFRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBQ0Q7O1dBRUc7UUFDSCxHQUFHLEVBQUUsVUFBVSxJQUFZLEVBQUUsTUFBdUI7WUFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQztZQUV2QixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBekJXLFFBQUEsYUFBYSxpQkF5QnhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFUlJPUlN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS91dGlscyc7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnJztcblxuaW1wb3J0IHtQbHVnaW5JbnRlcmZhY2V9IGZyb20gJy4uL3R5cGVzL2ludGVyZmFjZSc7XG5pbXBvcnQge1BsdWdpblN0b3JhZ2V9IGZyb20gJy4uL3R5cGVzL3BsdWdpbi1zdG9yYWdlJztcblxuY29uc3Qge1BsdWdpbkluaXRpYWxpemF0aW9uRXJyb3J9ID0gRVJST1JTO1xuY29uc3Qge05PVF9JTklUQUxJWkVEX1BMVUdJTn0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIFN0b3JhZ2UgZm9yIG1haW50YWluaW5nIHBsdWdpbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBwbHVnaW5TdG9yYWdlID0gKCkgPT4ge1xuICBjb25zdCBzdG9yYWdlOiBQbHVnaW5TdG9yYWdlID0ge307XG5cbiAgcmV0dXJuIHtcbiAgICAvKipcbiAgICAgKiBHZXRzIHBsdWdpbiBieSBnaXZlbiBgbmFtZWAuIElmIGl0J3MgbWlzc2luZyB0aGVuIHRocm93cyBlcnJvci5cbiAgICAgKi9cbiAgICBnZXQ6IChuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHBsdWdpbiA9IHN0b3JhZ2VbbmFtZV07XG5cbiAgICAgIGlmICghcGx1Z2luKSB7XG4gICAgICAgIHRocm93IG5ldyBQbHVnaW5Jbml0aWFsaXphdGlvbkVycm9yKE5PVF9JTklUQUxJWkVEX1BMVUdJTihuYW1lKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwbHVnaW47XG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBTYXZlcyBnaXZlbiBgcGx1Z2luYCB3aXRoIGdpdmVuIGBuYW1lYC5cbiAgICAgKi9cbiAgICBzZXQ6IGZ1bmN0aW9uIChuYW1lOiBzdHJpbmcsIHBsdWdpbjogUGx1Z2luSW50ZXJmYWNlKSB7XG4gICAgICBzdG9yYWdlW25hbWVdID0gcGx1Z2luO1xuXG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9LFxuICB9O1xufTtcbiJdfQ==
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validate = exports.validateManifest = exports.manifestSchema = exports.allDefined = exports.atLeastOneDefined = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
const utils_1 = require("@grnsft/if-core/utils");
|
|
6
|
-
const strings_1 = require("../config/strings");
|
|
7
|
-
const aggregation_1 = require("../types/aggregation");
|
|
8
|
-
const parameters_1 = require("../types/parameters");
|
|
9
|
-
const { ManifestValidationError, InputValidationError } = utils_1.ERRORS;
|
|
10
|
-
const { VALIDATING_MANIFEST } = strings_1.STRINGS;
|
|
11
|
-
/**
|
|
12
|
-
* At least one property defined handler.
|
|
13
|
-
*/
|
|
14
|
-
const atLeastOneDefined = (obj) => Object.values(obj).some(v => v !== undefined);
|
|
15
|
-
exports.atLeastOneDefined = atLeastOneDefined;
|
|
16
|
-
/**
|
|
17
|
-
* All properties are defined handler.
|
|
18
|
-
*/
|
|
19
|
-
const allDefined = (obj) => Object.values(obj).every(v => v !== undefined);
|
|
20
|
-
exports.allDefined = allDefined;
|
|
21
|
-
/**
|
|
22
|
-
* Validation schema for manifests.
|
|
23
|
-
*/
|
|
24
|
-
exports.manifestSchema = zod_1.z.object({
|
|
25
|
-
name: zod_1.z.string(),
|
|
26
|
-
description: zod_1.z.string().optional().nullable(),
|
|
27
|
-
tags: zod_1.z
|
|
28
|
-
.object({
|
|
29
|
-
kind: zod_1.z.string().optional().nullable(),
|
|
30
|
-
complexity: zod_1.z.string().optional().nullable(),
|
|
31
|
-
category: zod_1.z.string().optional().nullable(),
|
|
32
|
-
})
|
|
33
|
-
.optional()
|
|
34
|
-
.nullable(),
|
|
35
|
-
aggregation: zod_1.z
|
|
36
|
-
.object({
|
|
37
|
-
metrics: zod_1.z.array(zod_1.z.string()),
|
|
38
|
-
type: zod_1.z.enum(aggregation_1.AGGREGATION_METHODS),
|
|
39
|
-
})
|
|
40
|
-
.optional()
|
|
41
|
-
.nullable(),
|
|
42
|
-
params: zod_1.z
|
|
43
|
-
.array(zod_1.z.object({
|
|
44
|
-
name: zod_1.z.string(),
|
|
45
|
-
description: zod_1.z.string(),
|
|
46
|
-
aggregation: zod_1.z.enum(parameters_1.AGGREGATION_TYPES),
|
|
47
|
-
unit: zod_1.z.string(),
|
|
48
|
-
}))
|
|
49
|
-
.optional()
|
|
50
|
-
.nullable(),
|
|
51
|
-
initialize: zod_1.z.object({
|
|
52
|
-
plugins: zod_1.z.record(zod_1.z.string(), zod_1.z.object({
|
|
53
|
-
path: zod_1.z.string(),
|
|
54
|
-
method: zod_1.z.string(),
|
|
55
|
-
'global-config': zod_1.z.record(zod_1.z.string(), zod_1.z.any()).optional(),
|
|
56
|
-
})),
|
|
57
|
-
outputs: zod_1.z.array(zod_1.z.string()).optional(),
|
|
58
|
-
}),
|
|
59
|
-
execution: zod_1.z
|
|
60
|
-
.object({
|
|
61
|
-
command: zod_1.z.string().optional(),
|
|
62
|
-
environment: zod_1.z
|
|
63
|
-
.object({
|
|
64
|
-
'if-version': zod_1.z.string(),
|
|
65
|
-
os: zod_1.z.string(),
|
|
66
|
-
'os-version': zod_1.z.string(),
|
|
67
|
-
'node-version': zod_1.z.string(),
|
|
68
|
-
'date-time': zod_1.z.string(),
|
|
69
|
-
dependencies: zod_1.z.array(zod_1.z.string()),
|
|
70
|
-
})
|
|
71
|
-
.optional(),
|
|
72
|
-
status: zod_1.z.string(),
|
|
73
|
-
error: zod_1.z.string().optional(),
|
|
74
|
-
})
|
|
75
|
-
.optional(),
|
|
76
|
-
tree: zod_1.z.record(zod_1.z.string(), zod_1.z.any()),
|
|
77
|
-
});
|
|
78
|
-
/**
|
|
79
|
-
* Validates given `manifest` object to match pattern.
|
|
80
|
-
*/
|
|
81
|
-
const validateManifest = (manifest) => {
|
|
82
|
-
console.debug(VALIDATING_MANIFEST);
|
|
83
|
-
return (0, exports.validate)(exports.manifestSchema, manifest, undefined, ManifestValidationError);
|
|
84
|
-
};
|
|
85
|
-
exports.validateManifest = validateManifest;
|
|
86
|
-
/**
|
|
87
|
-
* Validates given `object` with given `schema`.
|
|
88
|
-
*/
|
|
89
|
-
const validate = (schema, object, index, errorConstructor = InputValidationError) => {
|
|
90
|
-
const validationResult = schema.safeParse(object);
|
|
91
|
-
if (!validationResult.success) {
|
|
92
|
-
throw new errorConstructor(prettifyErrorMessage(validationResult.error.message, index));
|
|
93
|
-
}
|
|
94
|
-
return validationResult.data;
|
|
95
|
-
};
|
|
96
|
-
exports.validate = validate;
|
|
97
|
-
/**
|
|
98
|
-
* Error message formatter for zod issues.
|
|
99
|
-
*/
|
|
100
|
-
const prettifyErrorMessage = (issues, index) => {
|
|
101
|
-
const issuesArray = JSON.parse(issues);
|
|
102
|
-
return issuesArray.map((issue) => {
|
|
103
|
-
const code = issue.code;
|
|
104
|
-
let { path, message } = issue;
|
|
105
|
-
const indexErrorMessage = index !== undefined ? ` at index ${index}` : '';
|
|
106
|
-
if (issue.code === zod_1.ZodIssueCode.invalid_union) {
|
|
107
|
-
message = issue.unionErrors[0].issues[0].message;
|
|
108
|
-
path = issue.unionErrors[0].issues[0].path;
|
|
109
|
-
}
|
|
110
|
-
const fullPath = flattenPath(path);
|
|
111
|
-
if (!fullPath) {
|
|
112
|
-
return message;
|
|
113
|
-
}
|
|
114
|
-
return `"${fullPath}" parameter is ${message.toLowerCase()}${indexErrorMessage}. Error code: ${code}.`;
|
|
115
|
-
});
|
|
116
|
-
};
|
|
117
|
-
/**
|
|
118
|
-
* Flattens an array representing a nested path into a string.
|
|
119
|
-
*/
|
|
120
|
-
const flattenPath = (path) => {
|
|
121
|
-
const flattenPath = path.map(part => typeof part === 'number' ? `[${part}]` : part);
|
|
122
|
-
return flattenPath.join('.');
|
|
123
|
-
};
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC92YWxpZGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBeUQ7QUFDekQsaURBQTZDO0FBRTdDLCtDQUEwQztBQUUxQyxzREFBeUQ7QUFDekQsb0RBQXNEO0FBRXRELE1BQU0sRUFBQyx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBQyxHQUFHLGNBQU0sQ0FBQztBQUMvRCxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsR0FBRyxpQkFBTyxDQUFDO0FBRXRDOztHQUVHO0FBQ0ksTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixHQUE4QyxFQUM5QyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUM7QUFGdEMsUUFBQSxpQkFBaUIscUJBRXFCO0FBRW5EOztHQUVHO0FBQ0ksTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUE4QyxFQUFFLEVBQUUsQ0FDM0UsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUM7QUFEcEMsUUFBQSxVQUFVLGNBQzBCO0FBRWpEOztHQUVHO0FBQ1UsUUFBQSxjQUFjLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNyQyxJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNoQixXQUFXLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM3QyxJQUFJLEVBQUUsT0FBQztTQUNKLE1BQU0sQ0FBQztRQUNOLElBQUksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ3RDLFVBQVUs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QUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUM1QztRQUVELE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFFRCxPQUFPLElBQUksUUFBUSxrQkFBa0IsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLGlCQUFpQixpQkFBaUIsSUFBSSxHQUFHLENBQUM7SUFDekcsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sV0FBVyxHQUFHLENBQUMsSUFBeUIsRUFBVSxFQUFFO0lBQ3hELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbEMsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzlDLENBQUM7SUFFRixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDL0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtab2RJc3N1ZSwgWm9kSXNzdWVDb2RlLCBab2RTY2hlbWEsIHp9IGZyb20gJ3pvZCc7XG5pbXBvcnQge0VSUk9SU30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3V0aWxzJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuLi9jb25maWcvc3RyaW5ncyc7XG5cbmltcG9ydCB7QUdHUkVHQVRJT05fTUVUSE9EU30gZnJvbSAnLi4vdHlwZXMvYWdncmVnYXRpb24nO1xuaW1wb3J0IHtBR0dSRUdBVElPTl9UWVBFU30gZnJvbSAnLi4vdHlwZXMvcGFyYW1ldGVycyc7XG5cbmNvbnN0IHtNYW5pZmVzdFZhbGlkYXRpb25FcnJvciwgSW5wdXRWYWxpZGF0aW9uRXJyb3J9ID0gRVJST1JTO1xuY29uc3Qge1ZBTElEQVRJTkdfTUFOSUZFU1R9ID0gU1RSSU5HUztcblxuLyoqXG4gKiBBdCBsZWFzdCBvbmUgcHJvcGVydHkgZGVmaW5lZCBoYW5kbGVyLlxuICovXG5leHBvcnQgY29uc3QgYXRMZWFzdE9uZURlZmluZWQgPSAoXG4gIG9iajogUmVjb3JkPHN0cmluZyB8IG51bWJlciB8IHN5bWJvbCwgdW5rbm93bj5cbikgPT4gT2JqZWN0LnZhbHVlcyhvYmopLnNvbWUodiA9PiB2ICE9PSB1bmRlZmluZWQpO1xuXG4vKipcbiAqIEFsbCBwcm9wZXJ0aWVzIGFyZSBkZWZpbmVkIGhhbmRsZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBhbGxEZWZpbmVkID0gKG9iajogUmVjb3JkPHN0cmluZyB8IG51bWJlciB8IHN5bWJvbCwgdW5rbm93bj4pID0+XG4gIE9iamVjdC52YWx1ZXMob2JqKS5ldmVyeSh2ID0+IHYgIT09IHVuZGVmaW5lZCk7XG5cbi8qKlxuICogVmFsaWRhdGlvbiBzY2hlbWEgZm9yIG1hbmlmZXN0cy5cbiAqL1xuZXhwb3J0IGNvbnN0IG1hbmlmZXN0U2NoZW1hID0gei5vYmplY3Qoe1xuICBuYW1lOiB6LnN0cmluZygpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKS5vcHRpb25hbCgpLm51bGxhYmxlKCksXG4gIHRhZ3M6IHpcbiAgICAub2JqZWN0KHtcbiAgICAgIGtpbmQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKS5udWxsYWJsZSgpLFxuICAgICAgY29tcGxleGl0eTogei5zdHJpbmcoKS5vcHRpb25hbCgpLm51bGxhYmxlKCksXG4gICAgICBjYXRlZ29yeTogei5zdHJpbmcoKS5vcHRpb25hbCgpLm51bGxhYmxlKCksXG4gICAgfSlcbiAgICAub3B0aW9uYWwoKVxuICAgIC5udWxsYWJsZSgpLFxuICBhZ2dyZWdhdGlvbjogelxuICAgIC5vYmplY3Qoe1xuICAgICAgbWV0cmljczogei5hcnJheSh6LnN0cmluZygpKSxcbiAgICAgIHR5cGU6IHouZW51bShBR0dSRUdBVElPTl9NRVRIT0RTKSxcbiAgICB9KVxuICAgIC5vcHRpb25hbCgpXG4gICAgLm51bGxhYmxlKCksXG4gIHBhcmFtczogelxuICAgIC5hcnJheShcbiAgICAgIHoub2JqZWN0KHtcbiAgICAgICAgbmFtZTogei5zdHJpbmcoKSxcbiAgICAgICAgZGVzY3JpcHRpb246IHouc3RyaW5nKCksXG4gICAgICAgIGFnZ3JlZ2F0aW9uOiB6LmVudW0oQUdHUkVHQVRJT05fVFlQRVMpLFxuICAgICAgICB1bml0OiB6LnN0cmluZygpLFxuICAgICAgfSlcbiAgICApXG4gICAgLm9wdGlvbmFsKClcbiAgICAubnVsbGFibGUoKSxcbiAgaW5pdGlhbGl6ZTogei5vYmplY3Qoe1xuICAgIHBsdWdpbnM6IHoucmVjb3JkKFxuICAgICAgei5zdHJpbmcoKSxcbiAgICAgIHoub2JqZWN0KHtcbiAgICAgICAgcGF0aDogei5zdHJpbmcoKSxcbiAgICAgICAgbWV0aG9kOiB6LnN0cmluZygpLFxuICAgICAgICAnZ2xvYmFsLWNvbmZpZyc6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLm9wdGlvbmFsKCksXG4gICAgICB9KVxuICAgICksXG4gICAgb3V0cHV0czogei5hcnJheSh6LnN0cmluZygpKS5vcHRpb25hbCgpLFxuICB9KSxcbiAgZXhlY3V0aW9uOiB6XG4gICAgLm9iamVjdCh7XG4gICAgICBjb21tYW5kOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gICAgICBlbnZpcm9ubWVudDogelxuICAgICAgICAub2JqZWN0KHtcbiAgICAgICAgICAnaWYtdmVyc2lvbic6IHouc3RyaW5nKCksXG4gICAgICAgICAgb3M6IHouc3RyaW5nKCksXG4gICAgICAgICAgJ29zLXZlcnNpb24nOiB6LnN0cmluZygpLFxuICAgICAgICAgICdub2RlLXZlcnNpb24nOiB6LnN0cmluZygpLFxuICAgICAgICAgICdkYXRlLXRpbWUnOiB6LnN0cmluZygpLFxuICAgICAgICAgIGRlcGVuZGVuY2llczogei5hcnJheSh6LnN0cmluZygpKSxcbiAgICAgICAgfSlcbiAgICAgICAgLm9wdGlvbmFsKCksXG4gICAgICBzdGF0dXM6IHouc3RyaW5nKCksXG4gICAgICBlcnJvcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIH0pXG4gICAgLm9wdGlvbmFsKCksXG4gIHRyZWU6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLFxufSk7XG5cbi8qKlxuICogVmFsaWRhdGVzIGdpdmVuIGBtYW5pZmVzdGAgb2JqZWN0IHRvIG1hdGNoIHBhdHRlcm4uXG4gKi9cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZU1hbmlmZXN0ID0gKG1hbmlmZXN0OiBhbnkpID0+IHtcbiAgY29uc29sZS5kZWJ1ZyhWQUxJREFUSU5HX01BTklGRVNUKTtcblxuICByZXR1cm4gdmFsaWRhdGUobWFuaWZlc3RTY2hlbWEsIG1hbmlmZXN0LCB1bmRlZmluZWQsIE1hbmlmZXN0VmFsaWRhdGlvbkVycm9yKTtcbn07XG5cbi8qKlxuICogVmFsaWRhdGVzIGdpdmVuIGBvYmplY3RgIHdpdGggZ2l2ZW4gYHNjaGVtYWAuXG4gKi9cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZSA9IDxUPihcbiAgc2NoZW1hOiBab2RTY2hlbWE8VD4sXG4gIG9iamVjdDogYW55LFxuICBpbmRleD86IG51bWJlcixcbiAgZXJyb3JDb25zdHJ1Y3RvcjogRXJyb3JDb25zdHJ1Y3RvciA9IElucHV0VmFsaWRhdGlvbkVycm9yXG4pID0+IHtcbiAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IHNjaGVtYS5zYWZlUGFyc2Uob2JqZWN0KTtcblxuICBpZiAoIXZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xuICAgIHRocm93IG5ldyBlcnJvckNvbnN0cnVjdG9yKFxuICAgICAgcHJldHRpZnlFcnJvck1lc3NhZ2UodmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlLCBpbmRleClcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRpb25SZXN1bHQuZGF0YTtcbn07XG5cbi8qKlxuICogRXJyb3IgbWVzc2FnZSBmb3JtYXR0ZXIgZm9yIHpvZCBpc3N1ZXMuXG4gKi9cbmNvbnN0IHByZXR0aWZ5RXJyb3JNZXNzYWdlID0gKGlzc3Vlczogc3RyaW5nLCBpbmRleD86IG51bWJlcikgPT4ge1xuICBjb25zdCBpc3N1ZXNBcnJheSA9IEpTT04ucGFyc2UoaXNzdWVzKTtcblxuICByZXR1cm4gaXNzdWVzQXJyYXkubWFwKChpc3N1ZTogWm9kSXNzdWUpID0+IHtcbiAgICBjb25zdCBjb2RlID0gaXNzdWUuY29kZTtcbiAgICBsZXQge3BhdGgsIG1lc3NhZ2V9ID0gaXNzdWU7XG5cbiAgICBjb25zdCBpbmRleEVycm9yTWVzc2FnZSA9IGluZGV4ICE9PSB1bmRlZmluZWQgPyBgIGF0IGluZGV4ICR7aW5kZXh9YCA6ICcnO1xuXG4gICAgaWYgKGlzc3VlLmNvZGUgPT09IFpvZElzc3VlQ29kZS5pbnZhbGlkX3VuaW9uKSB7XG4gICAgICBtZXNzYWdlID0gaXNzdWUudW5pb25FcnJvcnNbMF0uaXNzdWVzWzBdLm1lc3NhZ2U7XG4gICAgICBwYXRoID0gaXNzdWUudW5pb25FcnJvcnNbMF0uaXNzdWVzWzBdLnBhdGg7XG4gICAgfVxuXG4gICAgY29uc3QgZnVsbFBhdGggPSBmbGF0dGVuUGF0aChwYXRoKTtcblxuICAgIGlmICghZnVsbFBhdGgpIHtcbiAgICAgIHJldHVybiBtZXNzYWdlO1xuICAgIH1cblxuICAgIHJldHVybiBgXCIke2Z1bGxQYXRofVwiIHBhcmFtZXRlciBpcyAke21lc3NhZ2UudG9Mb3dlckNhc2UoKX0ke2luZGV4RXJyb3JNZXNzYWdlfS4gRXJyb3IgY29kZTogJHtjb2RlfS5gO1xuICB9KTtcbn07XG5cbi8qKlxuICogRmxhdHRlbnMgYW4gYXJyYXkgcmVwcmVzZW50aW5nIGEgbmVzdGVkIHBhdGggaW50byBhIHN0cmluZy5cbiAqL1xuY29uc3QgZmxhdHRlblBhdGggPSAocGF0aDogKHN0cmluZyB8IG51bWJlcilbXSk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGZsYXR0ZW5QYXRoID0gcGF0aC5tYXAocGFydCA9PlxuICAgIHR5cGVvZiBwYXJ0ID09PSAnbnVtYmVyJyA/IGBbJHtwYXJ0fV1gIDogcGFydFxuICApO1xuXG4gIHJldHVybiBmbGF0dGVuUGF0aC5qb2luKCcuJyk7XG59O1xuIl19
|
package/build/util/yaml.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.checkIfFileIsYaml = exports.saveYamlFileAs = exports.openYamlFileAsObject = void 0;
|
|
27
|
-
const fs = __importStar(require("fs/promises"));
|
|
28
|
-
const path = __importStar(require("path"));
|
|
29
|
-
const YAML = __importStar(require("js-yaml"));
|
|
30
|
-
/**
|
|
31
|
-
* Reads and parses `yaml` file to object.
|
|
32
|
-
*/
|
|
33
|
-
const openYamlFileAsObject = async (filePath) => {
|
|
34
|
-
const yamlFileBuffer = await fs.readFile(filePath, 'utf8');
|
|
35
|
-
return YAML.load(yamlFileBuffer);
|
|
36
|
-
};
|
|
37
|
-
exports.openYamlFileAsObject = openYamlFileAsObject;
|
|
38
|
-
/**
|
|
39
|
-
* Saves given `yaml` dump as a file.
|
|
40
|
-
*/
|
|
41
|
-
const saveYamlFileAs = async (object, pathToFile) => {
|
|
42
|
-
const dirPath = path.dirname(pathToFile);
|
|
43
|
-
await fs.mkdir(dirPath, { recursive: true });
|
|
44
|
-
const yamlString = YAML.dump(object, { noRefs: true });
|
|
45
|
-
return fs.writeFile(pathToFile, yamlString);
|
|
46
|
-
};
|
|
47
|
-
exports.saveYamlFileAs = saveYamlFileAs;
|
|
48
|
-
/**
|
|
49
|
-
* Checks if given `fileName` is yaml.
|
|
50
|
-
*/
|
|
51
|
-
const checkIfFileIsYaml = (fileName) => {
|
|
52
|
-
const yamlFileTypes = ['yaml', 'yml'];
|
|
53
|
-
const splittedParts = fileName.split('.');
|
|
54
|
-
const lastIndex = splittedParts.length - 1;
|
|
55
|
-
const extension = splittedParts[lastIndex];
|
|
56
|
-
return yamlFileTypes.includes(extension);
|
|
57
|
-
};
|
|
58
|
-
exports.checkIfFileIsYaml = checkIfFileIsYaml;
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFtbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL3lhbWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBa0M7QUFDbEMsMkNBQTZCO0FBRTdCLDhDQUFnQztBQUVoQzs7R0FFRztBQUNJLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxFQUFLLFFBQWdCLEVBQWMsRUFBRTtJQUM1RSxNQUFNLGNBQWMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRTNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQU0sQ0FBQztBQUN4QyxDQUFDLENBQUM7QUFKVyxRQUFBLG9CQUFvQix3QkFJL0I7QUFFRjs7R0FFRztBQUNJLE1BQU0sY0FBYyxHQUFHLEtBQUssRUFBRSxNQUFXLEVBQUUsVUFBa0IsRUFBRSxFQUFFO0lBQ3RFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7SUFFckQsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUM5QyxDQUFDLENBQUM7QUFOVyxRQUFBLGNBQWMsa0JBTXpCO0FBRUY7O0dBRUc7QUFDSSxNQUFNLGlCQUFpQixHQUFHLENBQUMsUUFBZ0IsRUFBRSxFQUFFO0lBQ3BELE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUMsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDM0MsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMzQyxDQUFDLENBQUM7QUFQVyxRQUFBLGlCQUFpQixxQkFPNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcy9wcm9taXNlcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5pbXBvcnQgKiBhcyBZQU1MIGZyb20gJ2pzLXlhbWwnO1xuXG4vKipcbiAqIFJlYWRzIGFuZCBwYXJzZXMgYHlhbWxgIGZpbGUgdG8gb2JqZWN0LlxuICovXG5leHBvcnQgY29uc3Qgb3BlbllhbWxGaWxlQXNPYmplY3QgPSBhc3luYyA8VD4oZmlsZVBhdGg6IHN0cmluZyk6IFByb21pc2U8VD4gPT4ge1xuICBjb25zdCB5YW1sRmlsZUJ1ZmZlciA9IGF3YWl0IGZzLnJlYWRGaWxlKGZpbGVQYXRoLCAndXRmOCcpO1xuXG4gIHJldHVybiBZQU1MLmxvYWQoeWFtbEZpbGVCdWZmZXIpIGFzIFQ7XG59O1xuXG4vKipcbiAqIFNhdmVzIGdpdmVuIGB5YW1sYCBkdW1wIGFzIGEgZmlsZS5cbiAqL1xuZXhwb3J0IGNvbnN0IHNhdmVZYW1sRmlsZUFzID0gYXN5bmMgKG9iamVjdDogYW55LCBwYXRoVG9GaWxlOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgZGlyUGF0aCA9IHBhdGguZGlybmFtZShwYXRoVG9GaWxlKTtcbiAgYXdhaXQgZnMubWtkaXIoZGlyUGF0aCwge3JlY3Vyc2l2ZTogdHJ1ZX0pO1xuICBjb25zdCB5YW1sU3RyaW5nID0gWUFNTC5kdW1wKG9iamVjdCwge25vUmVmczogdHJ1ZX0pO1xuXG4gIHJldHVybiBmcy53cml0ZUZpbGUocGF0aFRvRmlsZSwgeWFtbFN0cmluZyk7XG59O1xuXG4vKipcbiAqIENoZWNrcyBpZiBnaXZlbiBgZmlsZU5hbWVgIGlzIHlhbWwuXG4gKi9cbmV4cG9ydCBjb25zdCBjaGVja0lmRmlsZUlzWWFtbCA9IChmaWxlTmFtZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHlhbWxGaWxlVHlwZXMgPSBbJ3lhbWwnLCAneW1sJ107XG4gIGNvbnN0IHNwbGl0dGVkUGFydHMgPSBmaWxlTmFtZS5zcGxpdCgnLicpO1xuICBjb25zdCBsYXN0SW5kZXggPSBzcGxpdHRlZFBhcnRzLmxlbmd0aCAtIDE7XG4gIGNvbnN0IGV4dGVuc2lvbiA9IHNwbGl0dGVkUGFydHNbbGFzdEluZGV4XTtcblxuICByZXR1cm4geWFtbEZpbGVUeXBlcy5pbmNsdWRlcyhleHRlbnNpb24pO1xufTtcbiJdfQ==
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
name: initialize-error-no-config
|
|
2
|
-
description: >-
|
|
3
|
-
a negative test case that fails due to plugin initialization missing some
|
|
4
|
-
required config
|
|
5
|
-
tags: null
|
|
6
|
-
initialize:
|
|
7
|
-
outputs:
|
|
8
|
-
- yaml
|
|
9
|
-
plugins:
|
|
10
|
-
interpolate:
|
|
11
|
-
method: Interpolation
|
|
12
|
-
path: builtin
|
|
13
|
-
global-config: null
|
|
14
|
-
execution:
|
|
15
|
-
status: fail
|
|
16
|
-
command: >-
|
|
17
|
-
/Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node
|
|
18
|
-
/Users/mariamkhalatova/Projects/UK/if/src/index.ts -m
|
|
19
|
-
manifests/outputs/bugs/initialize-error-no-config.yml -o
|
|
20
|
-
manifests/outputs/bugs/initialize-error-no-config
|
|
21
|
-
environment:
|
|
22
|
-
if-version: 0.4.0
|
|
23
|
-
os: macOS
|
|
24
|
-
os-version: '13.2'
|
|
25
|
-
node-version: 18.14.2
|
|
26
|
-
date-time: 2024-07-01T19:45:41.936Z (UTC)
|
|
27
|
-
dependencies:
|
|
28
|
-
- '@babel/core@7.22.10'
|
|
29
|
-
- '@babel/preset-typescript@7.23.3'
|
|
30
|
-
- '@commitlint/cli@18.6.0'
|
|
31
|
-
- '@commitlint/config-conventional@18.6.0'
|
|
32
|
-
- '@grnsft/if-core@0.0.10'
|
|
33
|
-
|
|
34
|
-
- '@jest/globals@29.7.0'
|
|
35
|
-
- '@types/jest@29.5.8'
|
|
36
|
-
- '@types/js-yaml@4.0.9'
|
|
37
|
-
- '@types/luxon@3.4.2'
|
|
38
|
-
- '@types/node@20.9.0'
|
|
39
|
-
- axios-mock-adapter@1.22.0
|
|
40
|
-
- axios@1.7.2
|
|
41
|
-
- cross-env@7.0.3
|
|
42
|
-
- csv-parse@5.5.6
|
|
43
|
-
- csv-stringify@6.4.6
|
|
44
|
-
- fixpack@4.0.0
|
|
45
|
-
- gts@5.2.0
|
|
46
|
-
- husky@8.0.3
|
|
47
|
-
- jest@29.7.0
|
|
48
|
-
- js-yaml@4.1.0
|
|
49
|
-
- lint-staged@15.2.2
|
|
50
|
-
- luxon@3.4.4
|
|
51
|
-
- release-it@16.3.0
|
|
52
|
-
- rimraf@5.0.5
|
|
53
|
-
- ts-command-line-args@2.5.1
|
|
54
|
-
- ts-jest@29.1.1
|
|
55
|
-
- typescript-cubic-spline@1.0.1
|
|
56
|
-
- typescript@5.2.2
|
|
57
|
-
- winston@3.11.0
|
|
58
|
-
- zod@3.22.4
|
|
59
|
-
error: >-
|
|
60
|
-
ManifestValidationError: "initialize.plugins.interpolate.global-config"
|
|
61
|
-
parameter is expected object, received null. Error code: invalid_type.
|
|
62
|
-
tree:
|
|
63
|
-
children:
|
|
64
|
-
child-0:
|
|
65
|
-
defaults:
|
|
66
|
-
cpu/thermal-design-power: 100
|
|
67
|
-
pipeline:
|
|
68
|
-
- interpolate
|
|
69
|
-
inputs:
|
|
70
|
-
- timestamp: 2023-07-06T00:00
|
|
71
|
-
duration: 1
|
|
72
|
-
cpu/utilization: 20
|
|
73
|
-
- timestamp: 2023-07-06T00:01
|
|
74
|
-
duration: 1
|
|
75
|
-
cpu/utilization: 80
|
|
76
|
-
- timestamp: 2023-07-06T00:02
|
|
77
|
-
duration: 1
|
|
78
|
-
cpu/utilization: 20
|