@cobuildlab/fisherman-shared

utils for fisherman project

Usage no npm install needed!

<script type="module">
  import cobuildlabFishermanShared from 'https://cdn.skypack.dev/@cobuildlab/fisherman-shared';
</script>

README


Fisherman Shared

Utils for fisherman project

View Demo · Report Bug · Request Feature

Table of Contents

Getting Started

  1. Install the project using npm
npm i @cobuildlab/fisherman-shared

Documentation

types


interface Company {
  name?: string;
  id?: string;
}

interface UserIdRelation {
  user: {
    id: string;
  };
}

interface StripePlan {
  price?: number;
  name?: string;
  stripeID?: string;
  stripePlan?: string;
  priceID?: string;
  type?: string;
  currency?: string;
  planLevel: string;
  id?: string;
}

interface StandUpConfig {
  storedStandUp: number;
  firsLevelLimit: number;
  secondLevelLimit: number;
}

interface Subscription {
  expireDate?: string;
  stripePlanRelation?: StripePlan;
  status?: string;
  start_date?: string;
  companyRelation?: Company;
  stripeSubscriptionID?: string;
  cancelAtPeriodEnd?: string;
  id: string;
}

isCompanyManager

check if the current user is a manager of the company

isCompanyManager(managers: Array<UserIdRelation>, userID: string): [boolean, string?]

isCompanyAdmin

check if the current user is a admin of the company

isCompanyAdmin(admins: Array<UserIdRelation>, userID: string): [boolean, string?]

isValidPlanLevel

check if the plan is valid

isValidPlanLevel(planLevel: string):  [boolean] 

isPlanLevel0

check if the current plan is level 0

isPlanLevel0(plan: StripePlan): [boolean, string?]

isPlanLevel1

check if the current plan is level 1

isPlanLevel1(plan: StripePlan): [boolean, string?]

isPlanLevel2

check if the current plan is level 1

isPlanLevel2(plan: StripePlan): [boolean, string?]

isPlanLevel2

check if the current company can create more standUp this function is used in fisherman-functions

canCreateMoreStandUp(plan: StripePlan, config: StandUpConfig): [boolean, string?]

isActiveSubscription

check if the current company has an active subscription

isActiveSubscription(subscriptions: SubcriptionStatus): [boolean, string?]

isCanceledSubscription

check if the current company has a subscription canceled

isCanceledSubscription(subscriptions: SubcriptionStatus): [boolean, string?]

isUnpaidSubscription

check if the current company has an un-paid status in the subscription

isUnpaidSubscription(subscriptions: SubcriptionStatus): [boolean, string?]

isPastDueSubscription

check if the current company has an past-due status in the subscription

isPastDueSubscription(subscriptions: SubcriptionStatus): [boolean, string?]

constants

const PLANLEVEL0 = 'LEVEL_0';
const PLANLEVEL1 = 'LEVEL_1';
const PLANLEVEL2 = 'LEVEL_2';

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request