Files
habitica/website/common/script/content/gems.js
Matteo Pagliazzi 83aca20ce5 Fall Festival Gem Promo (#138)
* content: add gems blocks

* gemsBlocks: include ios and android identifiers

* wip: promo code

* split common constants into multiple files

* add second promo part

* geCurrentEvent, refactor promo

* fix lint

* fix exports, use world state api

* start adding world state tests

* remove console.log

* use gems block for purchases

* remove comments

* fix most unit tests

* restore comment

* fix lint

* prevent apple/google gift tests from breaking other tests when stub is not reset

* fix unit tests, clarify tests names

* iap: use gift object when gifting gems

* allow gift object with less data

* fix iap tests, remove findById stubs

* iap: require less data from the mobile apps

* apply discounts

* add missing worldState file

* fix lint

* add test event

* start removing 20 gems option for web

* start adding support for all gems packages on web

* fix unit tests for apple, stripe and google

* amazon: support all gems blocks

* paypal: support all gems blocks

* fix payments unit tests, add tests for getGemsBlock

* web: add gems plans with discounts, update stripe

* fix amazon and paypal clients, payments success modals

* amazon pay: disabled state

* update icons, start abstracting payments buttons

* begin redesign

* redesign gems modal

* fix buttons

* fix hover color for gems modal close icon

* add key to world state current event

* extend test event length

* implement gems modals designs

* early test fall2020

* fix header banner position

* add missing files

* use iso 8601 for dates, minor ui fixes

* fix time zones

* events: fix ISO8601 format

* fix css indentation

* start abstracting banners

* refactor payments buttons

* test spooky, fix group plans box

* implement gems promo banners, refactor banners, fixes

* fix lint

* fix dates

* remove unused i18n strings

* fix stripe integration test

* fix world state integration tests

* the current active event

* add missing unit tests

* add storybook story for payments buttons component

* fix typo

* fix(stripe): correct label when gifting subscriptions
2020-09-21 16:22:13 +02:00

41 lines
1.0 KiB
JavaScript

const blocks = {
'4gems': {
gems: 4,
iosProducts: ['com.habitrpg.ios.Habitica.4gems'],
androidProducts: ['com.habitrpg.android.habitica.iap.4gems'],
price: 99, // in cents, web only
},
'21gems': {
gems: 21,
iosProducts: [
'com.habitrpg.ios.Habitica.20gems',
'com.habitrpg.ios.Habitica.21gems',
],
androidProducts: [
'com.habitrpg.android.habitica.iap.20.gems',
'com.habitrpg.android.habitica.iap.21.gems',
],
price: 499, // in cents, web only
},
'42gems': {
gems: 42,
iosProducts: ['com.habitrpg.ios.Habitica.42gems'],
androidProducts: ['com.habitrpg.android.habitica.iap.42gems'],
price: 999, // in cents, web only
},
'84gems': {
gems: 84,
iosProducts: ['com.habitrpg.ios.Habitica.84gems'],
androidProducts: ['com.habitrpg.android.habitica.iap.84gems'],
price: 1999, // in cents, web only
},
};
// Add the block key to all blocks
Object.keys(blocks).forEach(blockKey => {
const block = blocks[blockKey];
block.key = blockKey;
});
export default blocks;