Browse Source

@joystream/types - poroposalDetails and WorkingGroup enum update (Baylon)

Leszek Wiesner 4 years ago
parent
commit
ecc09689d8
2 changed files with 9 additions and 8 deletions
  1. 9 1
      types/src/common.ts
  2. 0 7
      types/src/proposals.ts

+ 9 - 1
types/src/common.ts

@@ -13,8 +13,15 @@ export { JoyEnum, JoyStructCustom, JoyStructDecorated }
 // Adds sorting during BTreeSet toU8a encoding (required by the runtime)
 // Currently only supports values that extend UInt
 // FIXME: Will not cover cases where BTreeSet is part of extrinsic args metadata
-export function JoyBTreeSet<V extends UInt>(valType: Constructor<V>): Constructor<BTreeSet<V>> {
+export interface ExtendedBTreeSet<V extends UInt> extends BTreeSet<V> {
+  toArray(): V[]
+}
+export function JoyBTreeSet<V extends UInt>(valType: Constructor<V>): Constructor<ExtendedBTreeSet<V>> {
   return class extends BTreeSet.with(valType) {
+    public toArray(): V[] {
+      return Array.from(this)
+    }
+
     public toU8a(isBare?: boolean): Uint8Array {
       const encoded = new Array<Uint8Array>()
 
@@ -98,6 +105,7 @@ export class InputValidationLengthConstraint extends JoyStructDecorated({ min: u
 
 export const WorkingGroupDef = {
   Storage: Null,
+  Content: Null,
 } as const
 export type WorkingGroupKey = keyof typeof WorkingGroupDef
 export class WorkingGroup extends JoyEnum(WorkingGroupDef) {}

+ 0 - 7
types/src/proposals.ts

@@ -153,10 +153,6 @@ export class ProposalId extends u32 {}
 
 export class SpendingParams extends Tuple.with(['Balance', 'AccountId']) {}
 
-export class SetLeadParams extends Tuple.with([MemberId, AccountId]) {}
-
-export class SetLead extends Option.with(SetLeadParams) {}
-
 export class Proposal
   // FIXME: Snake case for consistency?
   extends JoyStructDecorated({
@@ -254,8 +250,6 @@ export class ProposalDetails extends JoyEnum({
   RuntimeUpgrade: Bytes,
   SetElectionParameters: ElectionParameters,
   Spending: SpendingParams,
-  SetLead: SetLead,
-  SetContentWorkingGroupMintCapacity: u128,
   EvictStorageProvider: AccountId,
   SetValidatorCount: u32,
   SetStorageRoleParameters: RoleParameters,
@@ -291,7 +285,6 @@ export const proposalsTypes = {
   ProposalDecisionStatus,
   ExecutionFailed,
   Approved,
-  SetLeadParams,
 }
 
 export default proposalsTypes