average-rating
Advanced tools
Comparing version 2.0.3 to 2.0.4
@@ -1,4 +0,5 @@ | ||
// average-rating@2.0.3, by @ndaidong - built with esbuild at 2022-08-10T15:12:36.260Z - published under MIT license | ||
// average-rating@2.0.4, by @ndaidong - built with esbuild at 2023-03-12T04:52:52.906Z - published under MIT license | ||
// src/main.js | ||
var score = (p, n) => { | ||
var score = (p = 0, n = 0) => { | ||
if (p === 0 && n === 0) { | ||
@@ -10,3 +11,3 @@ return 0; | ||
}; | ||
var rate = (rating) => { | ||
var rate = (rating = []) => { | ||
const size = rating.length; | ||
@@ -24,3 +25,3 @@ let n = rating[0]; | ||
}; | ||
var average = (rating) => { | ||
var average = (rating = []) => { | ||
const total = rating.reduce((prev, current) => { | ||
@@ -27,0 +28,0 @@ return prev + current; |
@@ -1,2 +0,2 @@ | ||
// average-rating@2.0.3, by @ndaidong - built with esbuild at 2022-08-10T15:12:36.260Z - published under MIT license | ||
var AverageRating=(()=>{var l=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var F=Object.prototype.hasOwnProperty;var h=(t,e)=>{for(var o in e)l(t,o,{get:e[o],enumerable:!0})},i=(t,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of f(e))!F.call(t,r)&&r!==o&&l(t,r,{get:()=>e[r],enumerable:!(s=d(e,r))||s.enumerable});return t};var m=t=>i(l({},"__esModule",{value:!0}),t);var N={};h(N,{average:()=>b,rate:()=>a,score:()=>x});var x=(t,e)=>{if(t===0&&e===0)return 0;let o=((t+1.9208)/(t+e)-1.96*Math.sqrt(t*e/(t+e)+.9604)/(t+e))/(1+3.8416/(t+e));return Number(o.toFixed(2))},a=t=>{let e=t.length,o=t[0],s=t[e-1],r=(1/(e-1)).toFixed(2),u=e-1;for(let c=1;c<u;c++){let n=(r*c).toFixed(2);s+=t[c]*n,o+=t[u-c]*n}return x(s,o)},b=t=>{let e=t.reduce((u,c)=>u+c,0);if(e===0)return 0;let o=0,s=1;t.forEach(u=>{o+=u*s,s++});let r=o/e;return Number(r.toFixed(1))};return m(N);})(); | ||
// average-rating@2.0.4, by @ndaidong - built with esbuild at 2023-03-12T04:52:52.906Z - published under MIT license | ||
var AverageRating=(()=>{var l=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var F=Object.prototype.hasOwnProperty;var h=(t,e)=>{for(var o in e)l(t,o,{get:e[o],enumerable:!0})},i=(t,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of f(e))!F.call(t,r)&&r!==o&&l(t,r,{get:()=>e[r],enumerable:!(s=d(e,r))||s.enumerable});return t};var m=t=>i(l({},"__esModule",{value:!0}),t);var N={};h(N,{average:()=>b,rate:()=>a,score:()=>x});var x=(t=0,e=0)=>{if(t===0&&e===0)return 0;let o=((t+1.9208)/(t+e)-1.96*Math.sqrt(t*e/(t+e)+.9604)/(t+e))/(1+3.8416/(t+e));return Number(o.toFixed(2))},a=(t=[])=>{let e=t.length,o=t[0],s=t[e-1],r=(1/(e-1)).toFixed(2),u=e-1;for(let c=1;c<u;c++){let n=(r*c).toFixed(2);s+=t[c]*n,o+=t[u-c]*n}return x(s,o)},b=(t=[])=>{let e=t.reduce((u,c)=>u+c,0);if(e===0)return 0;let o=0,s=1;t.forEach(u=>{o+=u*s,s++});let r=o/e;return Number(r.toFixed(1))};return m(N);})(); |
@@ -1,2 +0,2 @@ | ||
// average-rating@2.0.3, by @ndaidong - built with esbuild at 2022-08-10T15:12:36.260Z - published under MIT license | ||
// average-rating@2.0.4, by @ndaidong - built with esbuild at 2023-03-12T04:52:52.906Z - published under MIT license | ||
var __defProp = Object.defineProperty; | ||
@@ -28,3 +28,3 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
module.exports = __toCommonJS(main_exports); | ||
var score = (p, n) => { | ||
var score = (p = 0, n = 0) => { | ||
if (p === 0 && n === 0) { | ||
@@ -36,3 +36,3 @@ return 0; | ||
}; | ||
var rate = (rating) => { | ||
var rate = (rating = []) => { | ||
const size = rating.length; | ||
@@ -50,3 +50,3 @@ let n = rating[0]; | ||
}; | ||
var average = (rating) => { | ||
var average = (rating = []) => { | ||
const total = rating.reduce((prev, current) => { | ||
@@ -53,0 +53,0 @@ return prev + current; |
{ | ||
"name": "average-rating-cjs", | ||
"version": "2.0.3", | ||
"name": "average-rating", | ||
"version": "2.0.4", | ||
"main": "./average-rating.js" | ||
} |
{ | ||
"version": "2.0.3", | ||
"version": "2.0.4", | ||
"name": "average-rating", | ||
@@ -12,2 +12,6 @@ "description": "Calculate average score and rating based on Wilson Score Equation", | ||
"main": "./src/main.js", | ||
"exports": { | ||
"import": "./src/main.js", | ||
"require": "./dist/cjs/average-rating.js" | ||
}, | ||
"type": "module", | ||
@@ -18,3 +22,4 @@ "engines": { | ||
"scripts": { | ||
"lint": "standard .", | ||
"lint": "eslint .", | ||
"lint:fix": "eslint --fix .", | ||
"pretest": "npm run lint", | ||
@@ -27,10 +32,6 @@ "test": "NODE_ENV=test NODE_OPTIONS=--experimental-vm-modules jest --verbose --coverage=true", | ||
"devDependencies": { | ||
"esbuild": "^0.15.0", | ||
"jest": "^28.1.3" | ||
"esbuild": "^0.17.11", | ||
"eslint": "^8.36.0", | ||
"jest": "^29.5.0" | ||
}, | ||
"standard": { | ||
"ignore": [ | ||
"/dist" | ||
] | ||
}, | ||
"keywords": [ | ||
@@ -37,0 +38,0 @@ "rating", |
106
README.md
@@ -8,31 +8,21 @@ # average-rating | ||
![CodeQL](https://github.com/ndaidong/average-rating/workflows/CodeQL/badge.svg) | ||
[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com) | ||
![Google app on Google Play](https://i.imgur.com/XKEEpdb.png) | ||
## Setup | ||
## Install & Usage | ||
- Node.js | ||
```bash | ||
npm i average-rating | ||
```bash | ||
npm i average-rating | ||
# pnpm | ||
pnpm i average-rating | ||
# pnpm | ||
pnpm i average-rating | ||
# yarn | ||
yarn add average-rating | ||
``` | ||
# yarn | ||
yarn add average-rating | ||
``` | ||
- CDN | ||
- ES6 Module: [average-rating.esm.js](https://unpkg.com/average-rating/dist/average-rating.esm.js) | ||
- CommonJS: [average-rating.js](https://unpkg.com/average-rating/dist/cjs/average-rating.js) | ||
- For old browsers: [average-rating.min.js](https://unpkg.com/average-rating/dist/average-rating.min.js) | ||
## Usage | ||
### Node.js: | ||
```js | ||
```ts | ||
// es6 module | ||
import { | ||
@@ -44,5 +34,16 @@ score, | ||
// with CommonJS environment | ||
// const { score, rate, average } = require('feed-reader/dist/cjs/average-rating.js') | ||
// CommonJS | ||
const { | ||
score, | ||
rate, | ||
average | ||
} = require('average-rating') | ||
// or specify exactly path to CommonJS variant | ||
const { | ||
score, | ||
rate, | ||
average | ||
} = require('average-rating/dist/cjs/average-rating.js') | ||
score(80, 20) // => 0.71 | ||
@@ -53,28 +54,36 @@ average([134055, 57472, 143135, 365957, 1448459]) // => 4.4 | ||
### Browsers: | ||
### Deno | ||
Currently ECMAScript modules work fine on almost browsers: | ||
```ts | ||
// deno > 1.28 | ||
import { | ||
score, | ||
rate, | ||
average | ||
} from 'npm:average-rating' | ||
```html | ||
<script type="module"> | ||
import { average } from 'https://unpkg.com/average-rating/dist/average-rating.esm.js' | ||
average([134055, 57472, 143135, 365957, 1448459]) | ||
</script> | ||
// deno < 1.28 | ||
import { | ||
score, | ||
rate, | ||
average | ||
} from 'https://esm.sh/average-rating' | ||
``` | ||
With outdated browsers, we can use traditional way: | ||
### CDN | ||
```html | ||
<script type="text/javascript" src="https://unpkg.com/average-rating/dist/average-rating.min.js"></script> | ||
- ES6 Module: [average-rating.esm.js](https://unpkg.com/average-rating/dist/average-rating.esm.js) | ||
- CommonJS: [average-rating.js](https://unpkg.com/average-rating/dist/cjs/average-rating.js) | ||
- For old browsers: [average-rating.min.js](https://unpkg.com/average-rating/dist/average-rating.min.js) | ||
<script> | ||
const { average } = window.AverageRating | ||
average([134055, 57472, 143135, 365957, 1448459]) | ||
</script> | ||
``` | ||
Currently ECMAScript modules work fine on almost browsers: | ||
Example: | ||
```html | ||
<script type="module"> | ||
import { | ||
score, | ||
rate, | ||
average | ||
} from 'https://unpkg.com/average-rating/dist/average-rating.esm.js' | ||
```js | ||
// get Winson score for a pair of (Positive, Negative) voting | ||
@@ -91,4 +100,21 @@ score(0, 1000) // --> 0 | ||
average(rating) // --> 4.4 | ||
</script> | ||
``` | ||
With outdated browsers, we can use traditional way: | ||
```html | ||
<script type="text/javascript" src="https://unpkg.com/average-rating/dist/average-rating.min.js"></script> | ||
<script> | ||
const { | ||
score, | ||
rate, | ||
average | ||
} = window.AverageRating | ||
// method call | ||
</script> | ||
``` | ||
## APIs | ||
@@ -95,0 +121,0 @@ |
@@ -6,3 +6,3 @@ /** | ||
export const score = (p, n) => { | ||
export const score = (p = 0, n = 0) => { | ||
if (p === 0 && n === 0) { | ||
@@ -15,3 +15,3 @@ return 0 | ||
export const rate = (rating) => { | ||
export const rate = (rating = []) => { | ||
const size = rating.length | ||
@@ -32,3 +32,3 @@ | ||
export const average = (rating) => { | ||
export const average = (rating = []) => { | ||
const total = rating.reduce((prev, current) => { | ||
@@ -35,0 +35,0 @@ return prev + current |
@@ -15,64 +15,64 @@ // main.test | ||
n: 1, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
p: 0, | ||
n: 5, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
p: 0, | ||
n: 10, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
p: 0, | ||
n: 20, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
p: 0, | ||
n: 100, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
p: 0, | ||
n: 1000, | ||
e: 0 | ||
e: 0, | ||
}, { | ||
n: 0, | ||
p: 1, | ||
e: 0.21 | ||
e: 0.21, | ||
}, { | ||
n: 0, | ||
p: 5, | ||
e: 0.57 | ||
e: 0.57, | ||
}, { | ||
n: 0, | ||
p: 10, | ||
e: 0.72 | ||
e: 0.72, | ||
}, { | ||
n: 0, | ||
p: 20, | ||
e: 0.84 | ||
e: 0.84, | ||
}, { | ||
n: 0, | ||
p: 100, | ||
e: 0.96 | ||
e: 0.96, | ||
}, { | ||
n: 0, | ||
p: 1000, | ||
e: 1 | ||
e: 1, | ||
}, { | ||
n: 1, | ||
p: 1, | ||
e: 0.09 | ||
e: 0.09, | ||
}, { | ||
n: 5, | ||
p: 5, | ||
e: 0.24 | ||
e: 0.24, | ||
}, { | ||
n: 500, | ||
p: 500, | ||
e: 0.47 | ||
e: 0.47, | ||
}, { | ||
n: 1000, | ||
p: 1000, | ||
e: 0.48 | ||
} | ||
e: 0.48, | ||
}, | ||
] | ||
@@ -85,4 +85,4 @@ | ||
average: 0, | ||
score: 0 | ||
} | ||
score: 0, | ||
}, | ||
}, { | ||
@@ -92,4 +92,4 @@ rating: [1, 1, 1, 1, 1], | ||
average: 3.0, | ||
score: 0.17 | ||
} | ||
score: 0.17, | ||
}, | ||
}, { | ||
@@ -99,4 +99,4 @@ rating: [2, 2, 2, 2, 2], | ||
average: 3.0, | ||
score: 0.24 | ||
} | ||
score: 0.24, | ||
}, | ||
}, { | ||
@@ -106,4 +106,4 @@ rating: [3, 3, 3, 3, 3], | ||
average: 3.0, | ||
score: 0.27 | ||
} | ||
score: 0.27, | ||
}, | ||
}, { | ||
@@ -113,4 +113,4 @@ rating: [4, 4, 4, 4, 4], | ||
average: 3.0, | ||
score: 0.3 | ||
} | ||
score: 0.3, | ||
}, | ||
}, { | ||
@@ -120,4 +120,4 @@ rating: [5, 5, 5, 5, 5], | ||
average: 3.0, | ||
score: 0.32 | ||
} | ||
score: 0.32, | ||
}, | ||
}, { | ||
@@ -127,4 +127,4 @@ rating: [5, 4, 3, 2, 1], | ||
average: 2.3, | ||
score: 0.15 | ||
} | ||
score: 0.15, | ||
}, | ||
}, { | ||
@@ -134,4 +134,4 @@ rating: [5, 0, 0, 0, 5], | ||
average: 3.0, | ||
score: 0.24 | ||
} | ||
score: 0.24, | ||
}, | ||
}, { | ||
@@ -141,4 +141,4 @@ rating: [5, 0, 0, 4, 5], | ||
average: 3.3, | ||
score: 0.33 | ||
} | ||
score: 0.33, | ||
}, | ||
}, { | ||
@@ -148,4 +148,4 @@ rating: [5, 4, 0, 0, 5], | ||
average: 2.7, | ||
score: 0.21 | ||
} | ||
score: 0.21, | ||
}, | ||
}, { | ||
@@ -155,4 +155,4 @@ rating: [0, 0, 0, 0, 5], | ||
average: 5, | ||
score: 0.57 | ||
} | ||
score: 0.57, | ||
}, | ||
}, { | ||
@@ -162,4 +162,4 @@ rating: [0, 0, 0, 4, 5], | ||
average: 4.6, | ||
score: 0.56 | ||
} | ||
score: 0.56, | ||
}, | ||
}, { | ||
@@ -169,4 +169,4 @@ rating: [0, 0, 3, 4, 5], | ||
average: 4.2, | ||
score: 0.51 | ||
} | ||
score: 0.51, | ||
}, | ||
}, { | ||
@@ -176,4 +176,4 @@ rating: [0, 2, 3, 4, 5], | ||
average: 3.9, | ||
score: 0.45 | ||
} | ||
score: 0.45, | ||
}, | ||
}, { | ||
@@ -183,4 +183,4 @@ rating: [1, 2, 3, 4, 5], | ||
average: 3.7, | ||
score: 0.42 | ||
} | ||
score: 0.42, | ||
}, | ||
}, { | ||
@@ -190,4 +190,4 @@ rating: [9524, 4158, 10177, 25971, 68669], | ||
average: 4.2, | ||
score: 0.79 | ||
} | ||
score: 0.79, | ||
}, | ||
}, { | ||
@@ -197,5 +197,5 @@ rating: [134055, 57472, 143135, 365957, 1448459], | ||
average: 4.4, | ||
score: 0.84 | ||
} | ||
} | ||
score: 0.84, | ||
}, | ||
}, | ||
] | ||
@@ -206,20 +206,20 @@ | ||
input: [3, 4, 2, 6, 12, 46, 134, 213, 116, 91, 45, 15, 58, 96, 1654], | ||
expect: 0.85 | ||
expect: 0.85, | ||
}, | ||
{ | ||
input: [3, 4, 2, 6, 12, 46, 134, 213, 116, 91], | ||
expect: 0.74 | ||
expect: 0.74, | ||
}, | ||
{ | ||
input: [1311, 655, 1008, 1847, 4685, 13522, 31570, 34238, 18180, 11029], | ||
expect: 0.72 | ||
expect: 0.72, | ||
}, | ||
{ | ||
input: [125, 166, 17, 290, 400, 310], | ||
expect: 0.62 | ||
expect: 0.62, | ||
}, | ||
{ | ||
input: [125, 166, 17, 290, 400, 310, 1800], | ||
expect: 0.79 | ||
} | ||
expect: 0.79, | ||
}, | ||
] | ||
@@ -226,0 +226,0 @@ |
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
161
0
0
18005
3
12
511