Comparing version 1.0.0 to 2.0.0
@@ -1,62 +0,72 @@ | ||
export interface ProductCategory { | ||
name: string; | ||
id: string[]; | ||
taste: boolean; | ||
sweet: boolean; | ||
type Product = { | ||
ProductID: number; | ||
ProductName: string; | ||
ProductBottledVolume: number; | ||
ProductAlchoholVolume: number; | ||
ProductPrice: number; | ||
ProductCategory: { | ||
name: string; | ||
id: string[]; | ||
taste: boolean; | ||
sweet: boolean; | ||
subCategories: null | string[]; | ||
}; | ||
ProductSubCategory: null | string; | ||
ProductCountryOfOrigin: string; | ||
ProductSpecialReserve: boolean; | ||
ProductOrganic: boolean; | ||
ProductContainerType: string; | ||
ProductPlaceOfOrigin: string; | ||
ProductDistrictOfOrigin: string; | ||
ProductWine: string; | ||
ProductInventory: number; | ||
ProductDateOnMarket: string; | ||
ProductIsTemporaryOnSale: boolean; | ||
ProductIsGift: boolean; | ||
ProductIsInThema: boolean; | ||
ProductIsAvailableInStores: boolean; | ||
ProductIsSpecialOrder: boolean; | ||
ProductStoreSelected: null | string; | ||
ProductTasteGroup: string; | ||
ProductTasteGroup2: string; | ||
ProductTasteGroup2Description: null | string; | ||
ProductPackagingClosing: string; | ||
ProductPackagingContainer: string; | ||
ProductSpecialMarking: string[]; | ||
ProductSeasonCode: string; | ||
MinimumQuantity: number; | ||
UseMinimumQuantityAsUnit: boolean; | ||
IsSpecialOrderAndOutOfStock: boolean; | ||
ProductSearchGrape: string; | ||
ProductProducer: string; | ||
ProductShortDescription: string; | ||
ProductBackupInventory: number; | ||
ProductPackagingWeight: number; | ||
ProductCarbonFootprint: number; | ||
SupplierId: null | string; | ||
ProductAvailableUnits: string; | ||
ProductSaleStatus: string; | ||
ProductImageUrl: string; | ||
}; | ||
declare enum Category { | ||
Beer = "beer", | ||
Red = "red", | ||
White = "white", | ||
Rose = "rose", | ||
Bubbly = "bubbly", | ||
Fortified = "fortified", | ||
CiderFruitAndBlends = "ciderfruitandblends", | ||
SakeAndMead = "sakeandmead", | ||
Strong = "strong", | ||
Aromatised = "aromatised" | ||
} | ||
type CategoryData = { | ||
[value in Category]?: Product[]; | ||
}; | ||
type CategoryOptions = { | ||
[value in Category]?: boolean; | ||
}; | ||
export interface Beverage { | ||
ProductID: number; | ||
ProductName: string; | ||
ProductBottledVolume: number; | ||
ProductAlchoholVolume: number; | ||
ProductPrice: number; | ||
ProductFoodCategories: string; | ||
ProductCategory: ProductCategory; | ||
ProductSubCategory: null; | ||
ProductCountryOfOrigin: string; | ||
ProductSpecialReserve: boolean; | ||
ProductOrganic: boolean; | ||
ProductContainerType: string; | ||
ProductPlaceOfOrigin: string; | ||
ProductDistrictOfOrigin: string; | ||
ProductWine: string; | ||
ProductInventory: number; | ||
ProductYear: string; | ||
ProductDateOnMarket: string; | ||
ProductIsTemporaryOnSale: boolean; | ||
ProductIsGift: boolean; | ||
ProductIsInThema: boolean; | ||
ProductIsAvailableInStores: boolean; | ||
ProductIsSpecialOrder: boolean; | ||
ProductStoreSelected: null; | ||
ProductTasteGroup: string; | ||
ProductTasteGroup2: string; | ||
ProductTasteGroup2Description: null; | ||
ProductPackagingClosing: string; | ||
ProductSpecialMarking: string[]; | ||
ProductSeasonCode: string; | ||
MinimumQuantity: number; | ||
UseMinimumQuantityAsUnit: boolean; | ||
IsSpecialOrderAndOutOfStock: boolean; | ||
ProductSearchGrape: string; | ||
ProductProducer: string; | ||
ProductShortDescription: string; | ||
ProductBackupInventory: number; | ||
ProductPackagingWeight: number; | ||
ProductCarbonFootprint: number; | ||
ProductAvailableUnits: string; | ||
ProductImageUrl: string; | ||
} | ||
declare const getProducts: (options?: CategoryOptions) => Promise<CategoryData>; | ||
export function get(options?: { | ||
beers?: boolean; | ||
redWines?: boolean; | ||
whiteWines?: boolean; | ||
roseWines?: boolean; | ||
sparklingWines?: boolean; | ||
dessertWines?: boolean; | ||
cidersAndSodas?: boolean; | ||
spirits?: boolean; | ||
}): Promise<{}>; | ||
//# sourceMappingURL=index.d.ts.map | ||
export { getProducts }; |
{ | ||
"name": "vinbudin", | ||
"version": "1.0.0", | ||
"version": "2.0.0", | ||
"bin": { | ||
"vinbudin": "src/cli.js" | ||
"vinbudin": "dist/src/cli.js" | ||
}, | ||
"description": "Fetches product data from www.vinbudin.is", | ||
"homepage": "https://github.com/valgeirb/vinbudin", | ||
"main": "src/index.js", | ||
"engines": { | ||
"node": ">=16.0.0" | ||
}, | ||
"type": "module", | ||
"main": "dist/src/index.js", | ||
"module": "dist/src/index.mjs", | ||
"types": "dist/index.d.ts", | ||
"files": [ | ||
"src/", | ||
"dist/" | ||
"dist" | ||
], | ||
"types": "dist/index.d.ts", | ||
"scripts": { | ||
"build": "tsup src/index.ts src/cli.ts", | ||
"release": "npm run build && npm publish && git push --follow-tags", | ||
"test": "echo \"Error: no test specified\" && exit 1" | ||
@@ -29,10 +35,13 @@ }, | ||
"dependencies": { | ||
"inquirer": "^7.3.3", | ||
"listr": "^0.14.3", | ||
"node-fetch": "^2.6.1", | ||
"tsc": "^2.0.4" | ||
"inquirer": "^9.2.14", | ||
"listr2": "^8.0.2", | ||
"node-fetch": "^3.3.2" | ||
}, | ||
"devDependencies": { | ||
"prettier": "^2.2.1" | ||
"@types/inquirer": "^9.0.7", | ||
"prettier": "^2.8.8", | ||
"ts-node": "^10.9.2", | ||
"tsup": "^8.0.2", | ||
"typescript": "^5.3.3" | ||
} | ||
} |
@@ -5,4 +5,7 @@ <img width="75px" height="75px" align="right" alt="Vinbudin Logo" src="https://raw.githubusercontent.com/valgeirb/vinbudin/main/assets/vinbudin.svg?sanitize=true" title="vinbudin"/> | ||
> Fetches product data from www.vinbudin.is | ||
## Features | ||
- ⚡ Fetches product data from www.vinbudin.is | ||
- 🏷️ Fully typed | ||
<img src="https://raw.githubusercontent.com/valgeirb/vinbudin/main/assets/vinbudin.gif"> | ||
@@ -28,11 +31,18 @@ | ||
## Usage | ||
## Setup | ||
Install from npm and save to your `package.json`: | ||
```bash | ||
# pnpm | ||
pnpm add -D vinbudin | ||
npm install vinbudin --save | ||
# npm | ||
npm i -D vinbudin | ||
# yarn | ||
yarn add -D vinbudin | ||
``` | ||
## Methods | ||
### `vinbudin.get(products) -> promise` | ||
### `vinbudin.getProducts(products) -> promise` | ||
@@ -47,10 +57,12 @@ Gets products from www.vinbudin.is | ||
{ | ||
beers: true, | ||
redWines: true, | ||
whiteWines: true, | ||
roseWines: true, | ||
sparklingWines: true, | ||
dessertWines: true, | ||
cidersAndSodas: true, | ||
spirits: true, | ||
beer: true, | ||
red: true, | ||
white: true, | ||
rose: true, | ||
bubbly: true, | ||
fortified: true, | ||
ciderfruitandblends: true, | ||
sakeandmead: true, | ||
strong: true, | ||
aromatised: true, | ||
} | ||
@@ -63,46 +75,18 @@ ``` | ||
```javascript | ||
const vinbudin = require("vinbudin"); | ||
```ts | ||
import { getProducts } from 'vinbudin' | ||
vinbudin.get().then((products) => { | ||
getProducts().then((products) => { | ||
// Handle the data | ||
console.log(products); | ||
}); | ||
console.log(products) | ||
}) | ||
// You can also provide an options object to get specific data | ||
vinbudin | ||
.get({ | ||
beers: true, | ||
spirits: true, | ||
}) | ||
.then((products) => { | ||
// Handle the data | ||
console.log(products); | ||
}); | ||
getProducts({ | ||
beer: true, | ||
bubbly: true, | ||
}).then((products) => { | ||
// Handle the data | ||
console.log(products) | ||
}) | ||
``` | ||
### Saving results to a local file | ||
```javascript | ||
const vinbudin = require("vinbudin"); | ||
const fs = require("fs"); | ||
async function vinbudinExample() { | ||
const products = await vinbudin.get(); | ||
fs.writeFile( | ||
"data.json", | ||
JSON.stringify(products, null, 2), | ||
"utf8", | ||
(err) => { | ||
if (err) { | ||
return console.log(err); | ||
} | ||
console.log("Fetch complete, see './data.json'"); | ||
}, | ||
); | ||
} | ||
vinbudinExample(); | ||
``` |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
33073
3
435
Yes
5
9
89
3
+ Addedlistr2@^8.0.2
+ Added@inquirer/figures@1.0.10(transitive)
+ Addedansi-escapes@7.0.0(transitive)
+ Addedansi-regex@6.1.0(transitive)
+ Addedansi-styles@6.2.1(transitive)
+ Addedbase64-js@1.5.1(transitive)
+ Addedbl@4.1.0(transitive)
+ Addedbuffer@5.7.1(transitive)
+ Addedcli-cursor@5.0.0(transitive)
+ Addedcli-spinners@2.9.2(transitive)
+ Addedcli-truncate@4.0.0(transitive)
+ Addedcli-width@4.1.0(transitive)
+ Addedclone@1.0.4(transitive)
+ Addedcolorette@2.0.20(transitive)
+ Addeddata-uri-to-buffer@4.0.1(transitive)
+ Addeddefaults@1.0.4(transitive)
+ Addedemoji-regex@10.4.0(transitive)
+ Addedenvironment@1.1.0(transitive)
+ Addedeventemitter3@5.0.1(transitive)
+ Addedfetch-blob@3.2.0(transitive)
+ Addedformdata-polyfill@4.0.10(transitive)
+ Addedget-east-asian-width@1.3.0(transitive)
+ Addedieee754@1.2.1(transitive)
+ Addedinherits@2.0.4(transitive)
+ Addedinquirer@9.3.7(transitive)
+ Addedis-fullwidth-code-point@4.0.05.0.0(transitive)
+ Addedis-interactive@1.0.0(transitive)
+ Addedis-unicode-supported@0.1.0(transitive)
+ Addedlistr2@8.2.5(transitive)
+ Addedlog-symbols@4.1.0(transitive)
+ Addedlog-update@6.1.0(transitive)
+ Addedmimic-function@5.0.1(transitive)
+ Addedmute-stream@1.0.0(transitive)
+ Addednode-domexception@1.0.0(transitive)
+ Addednode-fetch@3.3.2(transitive)
+ Addedonetime@7.0.0(transitive)
+ Addedora@5.4.1(transitive)
+ Addedreadable-stream@3.6.2(transitive)
+ Addedrestore-cursor@5.1.0(transitive)
+ Addedrfdc@1.4.1(transitive)
+ Addedrun-async@3.0.0(transitive)
+ Addedrxjs@7.8.1(transitive)
+ Addedsafe-buffer@5.2.1(transitive)
+ Addedsignal-exit@4.1.0(transitive)
+ Addedslice-ansi@5.0.07.1.0(transitive)
+ Addedstring-width@7.2.0(transitive)
+ Addedstring_decoder@1.3.0(transitive)
+ Addedstrip-ansi@7.1.0(transitive)
+ Addedtslib@2.8.1(transitive)
+ Addedutil-deprecate@1.0.2(transitive)
+ Addedwcwidth@1.0.1(transitive)
+ Addedweb-streams-polyfill@3.3.3(transitive)
+ Addedwrap-ansi@6.2.09.0.0(transitive)
+ Addedyoctocolors-cjs@2.1.2(transitive)
- Removedlistr@^0.14.3
- Removedtsc@^2.0.4
- Removed@samverschueren/stream-to-observable@0.3.1(transitive)
- Removedansi-escapes@3.2.0(transitive)
- Removedansi-regex@2.1.13.0.1(transitive)
- Removedansi-styles@2.2.13.2.1(transitive)
- Removedany-observable@0.3.0(transitive)
- Removedchalk@1.1.32.4.2(transitive)
- Removedcli-cursor@2.1.0(transitive)
- Removedcli-truncate@0.2.1(transitive)
- Removedcli-width@3.0.0(transitive)
- Removedcode-point-at@1.1.0(transitive)
- Removedcolor-convert@1.9.3(transitive)
- Removedcolor-name@1.1.3(transitive)
- Removeddate-fns@1.30.1(transitive)
- Removedelegant-spinner@1.0.1(transitive)
- Removedescape-string-regexp@1.0.5(transitive)
- Removedfigures@1.7.02.0.03.2.0(transitive)
- Removedhas-ansi@2.0.0(transitive)
- Removedhas-flag@3.0.0(transitive)
- Removedindent-string@3.2.0(transitive)
- Removedinquirer@7.3.3(transitive)
- Removedis-fullwidth-code-point@1.0.02.0.0(transitive)
- Removedis-observable@1.1.0(transitive)
- Removedis-promise@2.2.2(transitive)
- Removedis-stream@1.1.0(transitive)
- Removedlistr@0.14.3(transitive)
- Removedlistr-silent-renderer@1.1.1(transitive)
- Removedlistr-update-renderer@0.5.0(transitive)
- Removedlistr-verbose-renderer@0.5.0(transitive)
- Removedlodash@4.17.21(transitive)
- Removedlog-symbols@1.0.2(transitive)
- Removedlog-update@2.3.0(transitive)
- Removedmimic-fn@1.2.0(transitive)
- Removedmute-stream@0.0.8(transitive)
- Removednode-fetch@2.7.0(transitive)
- Removednumber-is-nan@1.0.1(transitive)
- Removedobject-assign@4.1.1(transitive)
- Removedonetime@2.0.1(transitive)
- Removedp-map@2.1.0(transitive)
- Removedrestore-cursor@2.0.0(transitive)
- Removedrun-async@2.4.1(transitive)
- Removedrxjs@6.6.7(transitive)
- Removedslice-ansi@0.0.4(transitive)
- Removedstring-width@1.0.22.1.1(transitive)
- Removedstrip-ansi@3.0.14.0.0(transitive)
- Removedsupports-color@2.0.05.5.0(transitive)
- Removedsymbol-observable@1.2.0(transitive)
- Removedthrough@2.3.8(transitive)
- Removedtr46@0.0.3(transitive)
- Removedtsc@2.0.4(transitive)
- Removedtslib@1.14.1(transitive)
- Removedwebidl-conversions@3.0.1(transitive)
- Removedwhatwg-url@5.0.0(transitive)
- Removedwrap-ansi@3.0.1(transitive)
Updatedinquirer@^9.2.14
Updatednode-fetch@^3.3.2