Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/salesforce/refocus-collector-eval
Utilities used by Refocus Collectors for executing the "transform" logic from a Sample Generator Template.
https://github.com/salesforce/refocus-collector-eval
collector generator refocus sample template transform
Last synced: 2 months ago
JSON representation
Utilities used by Refocus Collectors for executing the "transform" logic from a Sample Generator Template.
- Host: GitHub
- URL: https://github.com/salesforce/refocus-collector-eval
- Owner: salesforce
- License: bsd-3-clause
- Created: 2017-10-24T00:02:44.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-27T19:26:23.000Z (almost 2 years ago)
- Last Synced: 2024-09-18T02:29:02.615Z (4 months ago)
- Topics: collector, generator, refocus, sample, template, transform
- Language: JavaScript
- Homepage:
- Size: 68.4 KB
- Stars: 2
- Watchers: 16
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
[![Coverage Status](https://coveralls.io/repos/github/salesforce/refocus-collector-eval/badge.svg)](https://coveralls.io/github/salesforce/refocus-collector-eval)
# Refocus Collector Eval
Note: this repository is infrequently maintained.
Collector eval utils used by Refocus Collector System to validate transform and toUrl functions
## Install
`npm install @salesforce/refocus-collector-eval --save`
## API
### RefocusCollectorEval.safeTransform(transformFunc, args)
Safely executes the given transform function with the arguments provided. Returns array of zero or more samples.
### RefocusCollectorEval.safeToUrl(toUrlFunc, args)
Safely executes the given toUrl function with the arguments provided. Returns the generated url as a string.
### RefocusCollectorEval.getTransformFunction(transform, status)
Returns a transform function based on the status code provided. Checks for an exact status match from transform.errorHandlers. If there is an exact match, returns that one. If no exact match is found, checks for a regex status match. If there is an errorHandler defined for the status code based on a regex match, returns the first regex match found. If there is no errorHandler defined for the status code provided, if the status code is 2xx, returns transform.default. If there is no errorHandler AND the status code is NOT 2xx, returns false.
### RefocusCollectorEval.sampleSchema
Returns the Joi schema for sample validation.
## Usage
```
const RefocusCollectorEval = require('@salesforce/refocus-collector-eval');const sampleArr = RefocusCollectorEval.safeTransform(transformFunc, args);
const url = RefocusCollectorEval.safeToUrl(toUrlFunc, args);
const func = RefocusCollectorEval.getTransformFunction(transform, status);
const sampleSchema = RefocusCollectorEval.sampleSchema;
```## Projects using this module
- [Refocus Collector](https://github.com/salesforce/refocus-collector)
- [Refocus Sample Generator Template Utils](https://github.com/salesforce/refocus-sample-generator-template-utils)# Version History
- 1.11.3: Update validation to accept empty subjects array
- 1.11.2: Hide secrets from debug output
- 1.11.1: Expand object bug fix.
- 1.11.0: Removed unnecessary logging.
- 1.10.0: Add new expandObject function to apply variable expansion across multiple attributes of an object instead of just for a single stering.
- 1.9.0: Add aspects and subjects to context for url variable substitution; support object and array references in template expansion.