@poa-box/core 0.1.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/abis/AuthorityRouter.d.ts +448 -0
- package/dist/abis/AuthorityRouter.js +584 -0
- package/dist/abis/CutoverVerifier.d.ts +194 -0
- package/dist/abis/CutoverVerifier.js +259 -0
- package/dist/abis/DirectDemocracyVotingNew.d.ts +168 -30
- package/dist/abis/DirectDemocracyVotingNew.js +214 -35
- package/dist/abis/EducationHubNew.d.ts +32 -75
- package/dist/abis/EducationHubNew.js +38 -94
- package/dist/abis/Executor.d.ts +56 -86
- package/dist/abis/Executor.js +68 -104
- package/dist/abis/HybridVotingNew.d.ts +279 -35
- package/dist/abis/HybridVotingNew.js +357 -40
- package/dist/abis/{EligibilityModuleNew.d.ts → MembershipAuthority.d.ts} +1437 -718
- package/dist/abis/{EligibilityModuleNew.js → MembershipAuthority.js} +1821 -899
- package/dist/abis/OrgDeployerNew.d.ts +193 -127
- package/dist/abis/OrgDeployerNew.js +244 -160
- package/dist/abis/OrgRegistry.d.ts +40 -0
- package/dist/abis/OrgRegistry.js +51 -0
- package/dist/abis/ParticipationToken.d.ts +32 -75
- package/dist/abis/ParticipationToken.js +38 -94
- package/dist/abis/PasskeyAccount.d.ts +28 -0
- package/dist/abis/PasskeyAccount.js +35 -0
- package/dist/abis/PaymasterHub.d.ts +527 -47
- package/dist/abis/PaymasterHub.js +750 -135
- package/dist/abis/QuickJoinNew.d.ts +59 -170
- package/dist/abis/QuickJoinNew.js +71 -215
- package/dist/abis/TaskManagerNew.d.ts +27 -44
- package/dist/abis/TaskManagerNew.js +31 -52
- package/dist/abis/UniversalAccountRegistry.d.ts +24 -0
- package/dist/abis/UniversalAccountRegistry.js +30 -0
- package/dist/abis/ZkEmailInvites.d.ts +44 -0
- package/dist/abis/ZkEmailInvites.js +55 -0
- package/dist/abis/index.d.ts +6 -4
- package/dist/abis/index.js +10 -7
- package/dist/chains.js +3 -3
- package/dist/error-catalog.js +125 -7
- package/dist/graph/documents/activity.d.ts +3 -1
- package/dist/graph/documents/activity.js +19 -14
- package/dist/graph/documents/org.d.ts +4 -4
- package/dist/graph/documents/org.js +10 -4
- package/dist/graph/documents/task.d.ts +10 -1
- package/dist/graph/documents/task.js +157 -3
- package/dist/graph/documents/user.d.ts +5 -30
- package/dist/graph/documents/user.js +2 -42
- package/dist/graph/documents/voting-classes.d.ts +23 -2
- package/dist/graph/documents/voting-classes.js +119 -10
- package/dist/metadata/index.d.ts +0 -1
- package/dist/metadata/index.js +1 -2
- package/dist/perms.d.ts +0 -15
- package/dist/perms.js +1 -21
- package/dist/preflight.d.ts +2 -2
- package/dist/preflight.js +14 -22
- package/dist/reads/authority.d.ts +33 -0
- package/dist/reads/authority.js +196 -0
- package/dist/reads/index.d.ts +1 -1
- package/dist/reads/index.js +2 -2
- package/dist/reads/org.d.ts +20 -20
- package/dist/reads/org.js +94 -28
- package/dist/reads/project.js +3 -3
- package/dist/reads/resolve.d.ts +1 -1
- package/dist/reads/resolve.js +12 -3
- package/dist/reads/task.d.ts +44 -22
- package/dist/reads/task.js +126 -67
- package/dist/reads/user.d.ts +8 -43
- package/dist/reads/user.js +27 -44
- package/dist/reads/vote.d.ts +26 -2
- package/dist/reads/vote.js +104 -23
- package/dist/tx/authority.d.ts +33 -0
- package/dist/tx/authority.js +62 -0
- package/dist/tx/governance.d.ts +6 -0
- package/dist/tx/governance.js +20 -2
- package/dist/tx/index.d.ts +1 -1
- package/dist/tx/index.js +2 -2
- package/dist/tx/org.d.ts +23 -18
- package/dist/tx/org.js +203 -67
- package/dist/tx/project.d.ts +3 -2
- package/dist/tx/project.js +28 -10
- package/dist/tx/task.d.ts +13 -24
- package/dist/tx/task.js +45 -85
- package/dist/tx/user.d.ts +2 -40
- package/dist/tx/user.js +2 -76
- package/dist/tx/vote.d.ts +5 -0
- package/dist/tx/vote.js +54 -43
- package/dist/version.d.ts +0 -5
- package/dist/version.js +1 -13
- package/package.json +1 -1
- package/dist/abis/ToggleModule.d.ts +0 -193
- package/dist/abis/ToggleModule.js +0 -255
- package/dist/metadata/role.d.ts +0 -38
- package/dist/metadata/role.js +0 -35
- package/dist/reads/eligibility.d.ts +0 -377
- package/dist/reads/eligibility.js +0 -687
- package/dist/tx/eligibility.d.ts +0 -511
- package/dist/tx/eligibility.js +0 -818
|
@@ -573,5 +573,29 @@ export declare const UniversalAccountRegistryAbi: readonly [{
|
|
|
573
573
|
readonly type: "error";
|
|
574
574
|
readonly name: "UsernameTooLong";
|
|
575
575
|
readonly inputs: readonly [];
|
|
576
|
+
}, {
|
|
577
|
+
readonly type: "error";
|
|
578
|
+
readonly name: "AuthDataTooShort";
|
|
579
|
+
readonly inputs: readonly [];
|
|
580
|
+
}, {
|
|
581
|
+
readonly type: "error";
|
|
582
|
+
readonly name: "ChallengeMismatch";
|
|
583
|
+
readonly inputs: readonly [];
|
|
584
|
+
}, {
|
|
585
|
+
readonly type: "error";
|
|
586
|
+
readonly name: "InvalidWebAuthnSignature";
|
|
587
|
+
readonly inputs: readonly [];
|
|
588
|
+
}, {
|
|
589
|
+
readonly type: "error";
|
|
590
|
+
readonly name: "MalformedClientData";
|
|
591
|
+
readonly inputs: readonly [];
|
|
592
|
+
}, {
|
|
593
|
+
readonly type: "error";
|
|
594
|
+
readonly name: "SignCountTooLow";
|
|
595
|
+
readonly inputs: readonly [];
|
|
596
|
+
}, {
|
|
597
|
+
readonly type: "error";
|
|
598
|
+
readonly name: "UserNotPresent";
|
|
599
|
+
readonly inputs: readonly [];
|
|
576
600
|
}];
|
|
577
601
|
export default UniversalAccountRegistryAbi;
|
|
@@ -745,6 +745,36 @@ exports.UniversalAccountRegistryAbi = [
|
|
|
745
745
|
"type": "error",
|
|
746
746
|
"name": "UsernameTooLong",
|
|
747
747
|
"inputs": []
|
|
748
|
+
},
|
|
749
|
+
{
|
|
750
|
+
"type": "error",
|
|
751
|
+
"name": "AuthDataTooShort",
|
|
752
|
+
"inputs": []
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
"type": "error",
|
|
756
|
+
"name": "ChallengeMismatch",
|
|
757
|
+
"inputs": []
|
|
758
|
+
},
|
|
759
|
+
{
|
|
760
|
+
"type": "error",
|
|
761
|
+
"name": "InvalidWebAuthnSignature",
|
|
762
|
+
"inputs": []
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"type": "error",
|
|
766
|
+
"name": "MalformedClientData",
|
|
767
|
+
"inputs": []
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
"type": "error",
|
|
771
|
+
"name": "SignCountTooLow",
|
|
772
|
+
"inputs": []
|
|
773
|
+
},
|
|
774
|
+
{
|
|
775
|
+
"type": "error",
|
|
776
|
+
"name": "UserNotPresent",
|
|
777
|
+
"inputs": []
|
|
748
778
|
}
|
|
749
779
|
];
|
|
750
780
|
exports.default = exports.UniversalAccountRegistryAbi;
|
|
@@ -819,5 +819,49 @@ export declare const ZkEmailInvitesAbi: readonly [{
|
|
|
819
819
|
readonly type: "error";
|
|
820
820
|
readonly name: "ZeroClaimer";
|
|
821
821
|
readonly inputs: readonly [];
|
|
822
|
+
}, {
|
|
823
|
+
readonly type: "error";
|
|
824
|
+
readonly name: "CapBelowCommitted";
|
|
825
|
+
readonly inputs: readonly [];
|
|
826
|
+
}, {
|
|
827
|
+
readonly type: "error";
|
|
828
|
+
readonly name: "EmptyTitle";
|
|
829
|
+
readonly inputs: readonly [];
|
|
830
|
+
}, {
|
|
831
|
+
readonly type: "error";
|
|
832
|
+
readonly name: "InvalidPayout";
|
|
833
|
+
readonly inputs: readonly [];
|
|
834
|
+
}, {
|
|
835
|
+
readonly type: "error";
|
|
836
|
+
readonly name: "InvalidString";
|
|
837
|
+
readonly inputs: readonly [];
|
|
838
|
+
}, {
|
|
839
|
+
readonly type: "error";
|
|
840
|
+
readonly name: "TitleTooLong";
|
|
841
|
+
readonly inputs: readonly [];
|
|
842
|
+
}, {
|
|
843
|
+
readonly type: "error";
|
|
844
|
+
readonly name: "AuthDataTooShort";
|
|
845
|
+
readonly inputs: readonly [];
|
|
846
|
+
}, {
|
|
847
|
+
readonly type: "error";
|
|
848
|
+
readonly name: "ChallengeMismatch";
|
|
849
|
+
readonly inputs: readonly [];
|
|
850
|
+
}, {
|
|
851
|
+
readonly type: "error";
|
|
852
|
+
readonly name: "InvalidWebAuthnSignature";
|
|
853
|
+
readonly inputs: readonly [];
|
|
854
|
+
}, {
|
|
855
|
+
readonly type: "error";
|
|
856
|
+
readonly name: "MalformedClientData";
|
|
857
|
+
readonly inputs: readonly [];
|
|
858
|
+
}, {
|
|
859
|
+
readonly type: "error";
|
|
860
|
+
readonly name: "SignCountTooLow";
|
|
861
|
+
readonly inputs: readonly [];
|
|
862
|
+
}, {
|
|
863
|
+
readonly type: "error";
|
|
864
|
+
readonly name: "UserNotPresent";
|
|
865
|
+
readonly inputs: readonly [];
|
|
822
866
|
}];
|
|
823
867
|
export default ZkEmailInvitesAbi;
|
|
@@ -1055,6 +1055,61 @@ exports.ZkEmailInvitesAbi = [
|
|
|
1055
1055
|
"type": "error",
|
|
1056
1056
|
"name": "ZeroClaimer",
|
|
1057
1057
|
"inputs": []
|
|
1058
|
+
},
|
|
1059
|
+
{
|
|
1060
|
+
"type": "error",
|
|
1061
|
+
"name": "CapBelowCommitted",
|
|
1062
|
+
"inputs": []
|
|
1063
|
+
},
|
|
1064
|
+
{
|
|
1065
|
+
"type": "error",
|
|
1066
|
+
"name": "EmptyTitle",
|
|
1067
|
+
"inputs": []
|
|
1068
|
+
},
|
|
1069
|
+
{
|
|
1070
|
+
"type": "error",
|
|
1071
|
+
"name": "InvalidPayout",
|
|
1072
|
+
"inputs": []
|
|
1073
|
+
},
|
|
1074
|
+
{
|
|
1075
|
+
"type": "error",
|
|
1076
|
+
"name": "InvalidString",
|
|
1077
|
+
"inputs": []
|
|
1078
|
+
},
|
|
1079
|
+
{
|
|
1080
|
+
"type": "error",
|
|
1081
|
+
"name": "TitleTooLong",
|
|
1082
|
+
"inputs": []
|
|
1083
|
+
},
|
|
1084
|
+
{
|
|
1085
|
+
"type": "error",
|
|
1086
|
+
"name": "AuthDataTooShort",
|
|
1087
|
+
"inputs": []
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
"type": "error",
|
|
1091
|
+
"name": "ChallengeMismatch",
|
|
1092
|
+
"inputs": []
|
|
1093
|
+
},
|
|
1094
|
+
{
|
|
1095
|
+
"type": "error",
|
|
1096
|
+
"name": "InvalidWebAuthnSignature",
|
|
1097
|
+
"inputs": []
|
|
1098
|
+
},
|
|
1099
|
+
{
|
|
1100
|
+
"type": "error",
|
|
1101
|
+
"name": "MalformedClientData",
|
|
1102
|
+
"inputs": []
|
|
1103
|
+
},
|
|
1104
|
+
{
|
|
1105
|
+
"type": "error",
|
|
1106
|
+
"name": "SignCountTooLow",
|
|
1107
|
+
"inputs": []
|
|
1108
|
+
},
|
|
1109
|
+
{
|
|
1110
|
+
"type": "error",
|
|
1111
|
+
"name": "UserNotPresent",
|
|
1112
|
+
"inputs": []
|
|
1058
1113
|
}
|
|
1059
1114
|
];
|
|
1060
1115
|
exports.default = exports.ZkEmailInvitesAbi;
|
package/dist/abis/index.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { AuthorityRouterAbi } from './AuthorityRouter';
|
|
2
|
+
import { CutoverVerifierAbi } from './CutoverVerifier';
|
|
1
3
|
import { DirectDemocracyVotingNewAbi } from './DirectDemocracyVotingNew';
|
|
2
4
|
import { ERC20Abi } from './ERC20';
|
|
3
5
|
import { EducationHubNewAbi } from './EducationHubNew';
|
|
4
|
-
import { EligibilityModuleNewAbi } from './EligibilityModuleNew';
|
|
5
6
|
import { ExecutorAbi } from './Executor';
|
|
6
7
|
import { HybridVotingNewAbi } from './HybridVotingNew';
|
|
7
8
|
import { ImplementationRegistryAbi } from './ImplementationRegistry';
|
|
9
|
+
import { MembershipAuthorityAbi } from './MembershipAuthority';
|
|
8
10
|
import { OrgDeployerNewAbi } from './OrgDeployerNew';
|
|
9
11
|
import { OrgRegistryAbi } from './OrgRegistry';
|
|
10
12
|
import { ParticipationTokenAbi } from './ParticipationToken';
|
|
@@ -15,7 +17,6 @@ import { PaymentManagerAbi } from './PaymentManager';
|
|
|
15
17
|
import { PoaManagerAbi } from './PoaManager';
|
|
16
18
|
import { QuickJoinNewAbi } from './QuickJoinNew';
|
|
17
19
|
import { TaskManagerNewAbi } from './TaskManagerNew';
|
|
18
|
-
import { ToggleModuleAbi } from './ToggleModule';
|
|
19
20
|
import { UniversalAccountRegistryAbi } from './UniversalAccountRegistry';
|
|
20
21
|
import { ZkEmailInvitesAbi } from './ZkEmailInvites';
|
|
21
22
|
import { AaveGovernanceV2Abi } from './external/AaveGovernanceV2';
|
|
@@ -27,13 +28,15 @@ import { GovernorAlphaAbi } from './external/GovernorAlpha';
|
|
|
27
28
|
import { MakerDAOChiefAbi } from './external/MakerDAOChief';
|
|
28
29
|
import { OZGovernorAbi } from './external/OZGovernor';
|
|
29
30
|
import { SolidlyVotingEscrowAbi } from './external/SolidlyVotingEscrow';
|
|
31
|
+
export { AuthorityRouterAbi };
|
|
32
|
+
export { CutoverVerifierAbi };
|
|
30
33
|
export { DirectDemocracyVotingNewAbi };
|
|
31
34
|
export { ERC20Abi };
|
|
32
35
|
export { EducationHubNewAbi };
|
|
33
|
-
export { EligibilityModuleNewAbi };
|
|
34
36
|
export { ExecutorAbi };
|
|
35
37
|
export { HybridVotingNewAbi };
|
|
36
38
|
export { ImplementationRegistryAbi };
|
|
39
|
+
export { MembershipAuthorityAbi };
|
|
37
40
|
export { OrgDeployerNewAbi };
|
|
38
41
|
export { OrgRegistryAbi };
|
|
39
42
|
export { ParticipationTokenAbi };
|
|
@@ -44,7 +47,6 @@ export { PaymentManagerAbi };
|
|
|
44
47
|
export { PoaManagerAbi };
|
|
45
48
|
export { QuickJoinNewAbi };
|
|
46
49
|
export { TaskManagerNewAbi };
|
|
47
|
-
export { ToggleModuleAbi };
|
|
48
50
|
export { UniversalAccountRegistryAbi };
|
|
49
51
|
export { ZkEmailInvitesAbi };
|
|
50
52
|
export { AaveGovernanceV2Abi };
|
package/dist/abis/index.js
CHANGED
|
@@ -2,21 +2,25 @@
|
|
|
2
2
|
// GENERATED by packages/core/scripts/gen-abis.mjs — do not edit.
|
|
3
3
|
// Source of truth: src/abi/*.json at the repo root (see scripts/extract-abis.mjs).
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.EXTERNAL_ABIS = exports.ALL_ABIS = exports.SolidlyVotingEscrowAbi = exports.OZGovernorAbi = exports.MakerDAOChiefAbi = exports.GovernorAlphaAbi = exports.CurveVotingEscrowAbi = exports.CurveGaugeControllerAbi = exports.AragonVotingAbi = exports.AaveGovernanceV3Abi = exports.AaveGovernanceV2Abi = exports.ZkEmailInvitesAbi = exports.UniversalAccountRegistryAbi = exports.
|
|
5
|
+
exports.EXTERNAL_ABIS = exports.ALL_ABIS = exports.SolidlyVotingEscrowAbi = exports.OZGovernorAbi = exports.MakerDAOChiefAbi = exports.GovernorAlphaAbi = exports.CurveVotingEscrowAbi = exports.CurveGaugeControllerAbi = exports.AragonVotingAbi = exports.AaveGovernanceV3Abi = exports.AaveGovernanceV2Abi = exports.ZkEmailInvitesAbi = exports.UniversalAccountRegistryAbi = exports.TaskManagerNewAbi = exports.QuickJoinNewAbi = exports.PoaManagerAbi = exports.PaymentManagerAbi = exports.PaymasterHubAbi = exports.PasskeyAccountFactoryAbi = exports.PasskeyAccountAbi = exports.ParticipationTokenAbi = exports.OrgRegistryAbi = exports.OrgDeployerNewAbi = exports.MembershipAuthorityAbi = exports.ImplementationRegistryAbi = exports.HybridVotingNewAbi = exports.ExecutorAbi = exports.EducationHubNewAbi = exports.ERC20Abi = exports.DirectDemocracyVotingNewAbi = exports.CutoverVerifierAbi = exports.AuthorityRouterAbi = void 0;
|
|
6
|
+
const AuthorityRouter_1 = require("./AuthorityRouter");
|
|
7
|
+
Object.defineProperty(exports, "AuthorityRouterAbi", { enumerable: true, get: function () { return AuthorityRouter_1.AuthorityRouterAbi; } });
|
|
8
|
+
const CutoverVerifier_1 = require("./CutoverVerifier");
|
|
9
|
+
Object.defineProperty(exports, "CutoverVerifierAbi", { enumerable: true, get: function () { return CutoverVerifier_1.CutoverVerifierAbi; } });
|
|
6
10
|
const DirectDemocracyVotingNew_1 = require("./DirectDemocracyVotingNew");
|
|
7
11
|
Object.defineProperty(exports, "DirectDemocracyVotingNewAbi", { enumerable: true, get: function () { return DirectDemocracyVotingNew_1.DirectDemocracyVotingNewAbi; } });
|
|
8
12
|
const ERC20_1 = require("./ERC20");
|
|
9
13
|
Object.defineProperty(exports, "ERC20Abi", { enumerable: true, get: function () { return ERC20_1.ERC20Abi; } });
|
|
10
14
|
const EducationHubNew_1 = require("./EducationHubNew");
|
|
11
15
|
Object.defineProperty(exports, "EducationHubNewAbi", { enumerable: true, get: function () { return EducationHubNew_1.EducationHubNewAbi; } });
|
|
12
|
-
const EligibilityModuleNew_1 = require("./EligibilityModuleNew");
|
|
13
|
-
Object.defineProperty(exports, "EligibilityModuleNewAbi", { enumerable: true, get: function () { return EligibilityModuleNew_1.EligibilityModuleNewAbi; } });
|
|
14
16
|
const Executor_1 = require("./Executor");
|
|
15
17
|
Object.defineProperty(exports, "ExecutorAbi", { enumerable: true, get: function () { return Executor_1.ExecutorAbi; } });
|
|
16
18
|
const HybridVotingNew_1 = require("./HybridVotingNew");
|
|
17
19
|
Object.defineProperty(exports, "HybridVotingNewAbi", { enumerable: true, get: function () { return HybridVotingNew_1.HybridVotingNewAbi; } });
|
|
18
20
|
const ImplementationRegistry_1 = require("./ImplementationRegistry");
|
|
19
21
|
Object.defineProperty(exports, "ImplementationRegistryAbi", { enumerable: true, get: function () { return ImplementationRegistry_1.ImplementationRegistryAbi; } });
|
|
22
|
+
const MembershipAuthority_1 = require("./MembershipAuthority");
|
|
23
|
+
Object.defineProperty(exports, "MembershipAuthorityAbi", { enumerable: true, get: function () { return MembershipAuthority_1.MembershipAuthorityAbi; } });
|
|
20
24
|
const OrgDeployerNew_1 = require("./OrgDeployerNew");
|
|
21
25
|
Object.defineProperty(exports, "OrgDeployerNewAbi", { enumerable: true, get: function () { return OrgDeployerNew_1.OrgDeployerNewAbi; } });
|
|
22
26
|
const OrgRegistry_1 = require("./OrgRegistry");
|
|
@@ -37,8 +41,6 @@ const QuickJoinNew_1 = require("./QuickJoinNew");
|
|
|
37
41
|
Object.defineProperty(exports, "QuickJoinNewAbi", { enumerable: true, get: function () { return QuickJoinNew_1.QuickJoinNewAbi; } });
|
|
38
42
|
const TaskManagerNew_1 = require("./TaskManagerNew");
|
|
39
43
|
Object.defineProperty(exports, "TaskManagerNewAbi", { enumerable: true, get: function () { return TaskManagerNew_1.TaskManagerNewAbi; } });
|
|
40
|
-
const ToggleModule_1 = require("./ToggleModule");
|
|
41
|
-
Object.defineProperty(exports, "ToggleModuleAbi", { enumerable: true, get: function () { return ToggleModule_1.ToggleModuleAbi; } });
|
|
42
44
|
const UniversalAccountRegistry_1 = require("./UniversalAccountRegistry");
|
|
43
45
|
Object.defineProperty(exports, "UniversalAccountRegistryAbi", { enumerable: true, get: function () { return UniversalAccountRegistry_1.UniversalAccountRegistryAbi; } });
|
|
44
46
|
const ZkEmailInvites_1 = require("./ZkEmailInvites");
|
|
@@ -63,13 +65,15 @@ const SolidlyVotingEscrow_1 = require("./external/SolidlyVotingEscrow");
|
|
|
63
65
|
Object.defineProperty(exports, "SolidlyVotingEscrowAbi", { enumerable: true, get: function () { return SolidlyVotingEscrow_1.SolidlyVotingEscrowAbi; } });
|
|
64
66
|
/** Every first-party POP ABI, keyed by its historical abi/ file base name. */
|
|
65
67
|
exports.ALL_ABIS = {
|
|
68
|
+
"AuthorityRouter": AuthorityRouter_1.AuthorityRouterAbi,
|
|
69
|
+
"CutoverVerifier": CutoverVerifier_1.CutoverVerifierAbi,
|
|
66
70
|
"DirectDemocracyVotingNew": DirectDemocracyVotingNew_1.DirectDemocracyVotingNewAbi,
|
|
67
71
|
"ERC20": ERC20_1.ERC20Abi,
|
|
68
72
|
"EducationHubNew": EducationHubNew_1.EducationHubNewAbi,
|
|
69
|
-
"EligibilityModuleNew": EligibilityModuleNew_1.EligibilityModuleNewAbi,
|
|
70
73
|
"Executor": Executor_1.ExecutorAbi,
|
|
71
74
|
"HybridVotingNew": HybridVotingNew_1.HybridVotingNewAbi,
|
|
72
75
|
"ImplementationRegistry": ImplementationRegistry_1.ImplementationRegistryAbi,
|
|
76
|
+
"MembershipAuthority": MembershipAuthority_1.MembershipAuthorityAbi,
|
|
73
77
|
"OrgDeployerNew": OrgDeployerNew_1.OrgDeployerNewAbi,
|
|
74
78
|
"OrgRegistry": OrgRegistry_1.OrgRegistryAbi,
|
|
75
79
|
"ParticipationToken": ParticipationToken_1.ParticipationTokenAbi,
|
|
@@ -80,7 +84,6 @@ exports.ALL_ABIS = {
|
|
|
80
84
|
"PoaManager": PoaManager_1.PoaManagerAbi,
|
|
81
85
|
"QuickJoinNew": QuickJoinNew_1.QuickJoinNewAbi,
|
|
82
86
|
"TaskManagerNew": TaskManagerNew_1.TaskManagerNewAbi,
|
|
83
|
-
"ToggleModule": ToggleModule_1.ToggleModuleAbi,
|
|
84
87
|
"UniversalAccountRegistry": UniversalAccountRegistry_1.UniversalAccountRegistryAbi,
|
|
85
88
|
"ZkEmailInvites": ZkEmailInvites_1.ZkEmailInvitesAbi,
|
|
86
89
|
};
|
package/dist/chains.js
CHANGED
|
@@ -56,9 +56,9 @@ exports.NETWORKS = {
|
|
|
56
56
|
blockExplorer: 'https://arbiscan.io',
|
|
57
57
|
isTestnet: false,
|
|
58
58
|
subgraphUrl: 'https://api.studio.thegraph.com/query/73367/poa-arb-v-1/version/latest',
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
|
|
59
|
+
// Published production deployment, shared with the frontend's networks.js.
|
|
60
|
+
// Studio remains the free default; GRAPH_API_KEY enables gateway fallback.
|
|
61
|
+
gatewaySubgraphId: '2egvcs94ZStD38inRtK9bp3Maw3UZw4BDinH8jLyAF4G',
|
|
62
62
|
bountyTokens: {
|
|
63
63
|
USDC: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831',
|
|
64
64
|
},
|
package/dist/error-catalog.js
CHANGED
|
@@ -142,6 +142,95 @@ function decodeContractError(error, iface) {
|
|
|
142
142
|
* fails if an ABI regeneration introduces a name without an entry here.
|
|
143
143
|
*/
|
|
144
144
|
exports.ERROR_MESSAGES = {
|
|
145
|
+
AlreadyMember: { human: "This address is already a member of the role." },
|
|
146
|
+
DeploymentComplete: { human: "The organization deployment has already completed." },
|
|
147
|
+
DuplicateGroupMemberRole: { human: "A group lists the same role more than once." },
|
|
148
|
+
ForceRequired: { human: "Closing a role with accepted members requires the explicit force flag." },
|
|
149
|
+
GlobalRuleUnknown: { human: "The requested global rule does not exist." },
|
|
150
|
+
GrantBlockedByGovernanceBan: { human: "Governance has banned this member; a delegated manager cannot override the ban." },
|
|
151
|
+
GroupSizeLimit: { human: "A group may contain at most 16 roles." },
|
|
152
|
+
GroupsPerRoleLimit: { human: "A role may belong to at most 8 groups." },
|
|
153
|
+
InvalidConfigKey: { human: "This configuration key is not supported by the authority-only protocol." },
|
|
154
|
+
InvalidRulesMode: { human: "The rule mode is invalid." },
|
|
155
|
+
InvalidTypeId: { human: "The contract type ID is invalid." },
|
|
156
|
+
LegacyConfigRemoved: { human: "Legacy Hats configuration has been removed. Configure MembershipAuthority permissions instead." },
|
|
157
|
+
MaxMembersOnGroup: { human: "Groups derive membership from roles and cannot have a member cap." },
|
|
158
|
+
NoPendingAction: { human: "This pending action does not exist or has already been resolved." },
|
|
159
|
+
NotAGroup: { human: "The subject kind does not support this operation." },
|
|
160
|
+
NotAuthorizedManager: { human: "Your account lacks the required manager capability for this subject." },
|
|
161
|
+
NotClaimable: { human: "This role is not currently claimable by your account." },
|
|
162
|
+
NotInOrg: { human: "The target must already belong to the organization; offer the role to an outsider." },
|
|
163
|
+
NotRegisteredModule: { human: "Only the registered organization module may perform this operation." },
|
|
164
|
+
NotRegistryAdmin: { human: "Your account is not the registry administrator." },
|
|
165
|
+
NotYetActive: { human: "The delegated action review delay has not elapsed." },
|
|
166
|
+
PendingActionExists: { human: "This subject and user already have a pending action." },
|
|
167
|
+
PermFanoutLimit: { human: "A permission key and context may refer to at most 16 subjects." },
|
|
168
|
+
QuickJoinRoleNotOpen: { human: "Every QuickJoin role must allow default membership." },
|
|
169
|
+
RemovalIneffective: { human: "Soft removal leaves another eligibility source active. Review the sources before proposing a ban." },
|
|
170
|
+
RemoveBlockedByStickyGovernance: { human: "A delegated manager cannot remove this sticky governance grant." },
|
|
171
|
+
RoleCapacityBelowGenesisSeed: { human: "The role cap is lower than its initial membership allocation." },
|
|
172
|
+
RoleLimit: { human: "An account may accept at most 16 roles." },
|
|
173
|
+
RuleNotDelegable: { human: "Governance marked this rule as non-delegable." },
|
|
174
|
+
SelfManagedCycle: { human: "The manager configuration creates a management cycle." },
|
|
175
|
+
SubjectExists: { human: "This subject or group composition already exists." },
|
|
176
|
+
SubjectFull: { human: "The role has reached its membership cap. Reconcile a lapsed membership or increase the cap." },
|
|
177
|
+
UnknownSubject: { human: "The subject does not exist in this organization authority." },
|
|
178
|
+
VouchRateLimited: { human: "The daily vouch limit has been reached." },
|
|
179
|
+
WiringIncompatible: { human: "The authority subject configuration is structurally incompatible." },
|
|
180
|
+
// --- Authority routing / migration invariant checks ---
|
|
181
|
+
AlreadyBound: {
|
|
182
|
+
human: 'This legacy top-hat domain is already bound to an organization authority.',
|
|
183
|
+
suggestion: 'Inspect the existing router binding before proposing any binding change.',
|
|
184
|
+
},
|
|
185
|
+
NotBound: {
|
|
186
|
+
human: 'This legacy top-hat domain has no authority binding to remove.',
|
|
187
|
+
},
|
|
188
|
+
TopHatDomainMismatch: {
|
|
189
|
+
human: 'The supplied top-hat domain does not match the organization recorded in OrgRegistry.',
|
|
190
|
+
suggestion: 'Use the domain from the registered top-hat ID: topHatId shifted right by 224 bits.',
|
|
191
|
+
},
|
|
192
|
+
ArrayLengthMismatchRouter: {
|
|
193
|
+
human: 'The router balance query must contain one subject ID for each user address.',
|
|
194
|
+
},
|
|
195
|
+
WriteToPassthrough: {
|
|
196
|
+
human: 'The authority router does not allow writes through its legacy Hats passthrough route.',
|
|
197
|
+
suggestion: 'Use the organization authority for native membership changes.',
|
|
198
|
+
},
|
|
199
|
+
NoSubjects: {
|
|
200
|
+
human: 'Cutover verification requires at least one adopted subject, with the admin subject first.',
|
|
201
|
+
},
|
|
202
|
+
AuthorityNotBound: {
|
|
203
|
+
human: 'A cutover subject resolves through the router to a different authority than expected.',
|
|
204
|
+
suggestion: 'Correct the router binding in the governance cutover batch.',
|
|
205
|
+
},
|
|
206
|
+
AuthorityPaused: {
|
|
207
|
+
human: 'The organization authority is still paused at the end of the cutover batch.',
|
|
208
|
+
suggestion: 'Include the authority unpause before the final cutover verification call.',
|
|
209
|
+
},
|
|
210
|
+
MemberCountDrift: {
|
|
211
|
+
human: 'An authority membership count differs from the count recorded when the cutover batch was prepared.',
|
|
212
|
+
suggestion: 'Reconcile the membership snapshot and regenerate the cutover batch from the current state.',
|
|
213
|
+
},
|
|
214
|
+
SupplyDrift: {
|
|
215
|
+
human: 'A legacy Hats supply differs from the supply recorded when the cutover batch was prepared.',
|
|
216
|
+
suggestion: 'Account for legacy joins and removals in the migration snapshot before regenerating the cutover batch.',
|
|
217
|
+
},
|
|
218
|
+
MemberCountExceedsSupply: {
|
|
219
|
+
human: 'An adopted subject has more authority members than its canonical legacy Hats supply.',
|
|
220
|
+
suggestion: 'Correct the migrated membership set before completing the cutover.',
|
|
221
|
+
},
|
|
222
|
+
AdminNotResolved: {
|
|
223
|
+
human: 'The router does not recognize the registered organization executor as a member of the admin subject.',
|
|
224
|
+
suggestion: 'Check the first cutover subject, its executor membership, and the router binding.',
|
|
225
|
+
},
|
|
226
|
+
AdminHatInactive: {
|
|
227
|
+
human: 'The admin subject is inactive when read through the authority router.',
|
|
228
|
+
suggestion: 'Restore the admin subject configuration before completing the cutover.',
|
|
229
|
+
},
|
|
230
|
+
RouterNotCanonical: {
|
|
231
|
+
human: 'The cutover batch names a router different from the paymaster hub’s live HATS pointer.',
|
|
232
|
+
suggestion: 'Build the cutover batch against the router currently used by PaymasterHub.',
|
|
233
|
+
},
|
|
145
234
|
// --- Accounts / usernames (UniversalAccountRegistry, QuickJoin, PasskeyAccountFactory) ---
|
|
146
235
|
AccountExists: {
|
|
147
236
|
human: 'An account is already registered for this address.',
|
|
@@ -242,10 +331,10 @@ exports.ERROR_MESSAGES = {
|
|
|
242
331
|
// contract-neutral — it previously named only the TaskManager permission bits, which
|
|
243
332
|
// sent people to `pop task perms` for a voting or token failure.
|
|
244
333
|
Unauthorized: {
|
|
245
|
-
human: 'Your
|
|
246
|
-
suggestion: '
|
|
334
|
+
human: 'Your account lacks the membership or permission this action requires.',
|
|
335
|
+
suggestion: 'Inspect your organization memberships with: pop user whoami. For task actions the required bit is '
|
|
247
336
|
+ 'one of CREATE/CLAIM/REVIEW/ASSIGN/SELF_REVIEW/BUDGET/EDIT_META/EDIT_FULL — inspect with '
|
|
248
|
-
+ 'pop task perms show. For proposals,
|
|
337
|
+
+ 'pop task perms show. For proposals, inspect the authority creator permission on your roles or groups.',
|
|
249
338
|
},
|
|
250
339
|
UnauthorizedCaller: {
|
|
251
340
|
human: 'Caller is not authorized for this executor operation.',
|
|
@@ -342,7 +431,8 @@ exports.ERROR_MESSAGES = {
|
|
|
342
431
|
human: 'That hat is not allowed for this voting action.',
|
|
343
432
|
},
|
|
344
433
|
InvalidQuorum: {
|
|
345
|
-
human: '
|
|
434
|
+
human: 'A nonzero quorum override or equal-weight tally requires a restricted proposal.',
|
|
435
|
+
suggestion: 'Specify --subject-ids for the restricted electorate. Quorum is a voter count, not a percentage.',
|
|
346
436
|
},
|
|
347
437
|
InvalidThreshold: {
|
|
348
438
|
human: 'Threshold percentage is out of range.',
|
|
@@ -572,7 +662,7 @@ exports.ERROR_MESSAGES = {
|
|
|
572
662
|
},
|
|
573
663
|
// --- Paymaster hub ---
|
|
574
664
|
NotAdmin: {
|
|
575
|
-
human: 'Caller is not
|
|
665
|
+
human: 'Caller is not an administrator authorized by this contract.',
|
|
576
666
|
},
|
|
577
667
|
NotOperator: {
|
|
578
668
|
human: 'Caller is not a paymaster operator.',
|
|
@@ -621,8 +711,8 @@ exports.ERROR_MESSAGES = {
|
|
|
621
711
|
human: 'This org is already registered with the paymaster.',
|
|
622
712
|
},
|
|
623
713
|
OrgNotRegistered: {
|
|
624
|
-
human: 'This
|
|
625
|
-
suggestion: '
|
|
714
|
+
human: 'This organization is not registered in the registry required by this operation.',
|
|
715
|
+
suggestion: 'Check the organization ID and its registration in OrgRegistry or PaymasterHub, as applicable.',
|
|
626
716
|
},
|
|
627
717
|
OrgIsBanned: {
|
|
628
718
|
human: 'This org is banned from paymaster sponsorship.',
|
|
@@ -767,6 +857,34 @@ exports.ERROR_MESSAGES = {
|
|
|
767
857
|
InvalidSignature: {
|
|
768
858
|
human: 'Signature verification failed.',
|
|
769
859
|
},
|
|
860
|
+
AuthDataTooShort: {
|
|
861
|
+
human: 'WebAuthn authenticator data is shorter than the required 37 bytes.',
|
|
862
|
+
suggestion: 'Supply the complete authenticator data returned by the passkey authenticator.',
|
|
863
|
+
},
|
|
864
|
+
UserNotPresent: {
|
|
865
|
+
human: 'The passkey assertion does not confirm user presence.',
|
|
866
|
+
suggestion: 'Complete the authenticator’s user-presence prompt when authorizing the operation.',
|
|
867
|
+
},
|
|
868
|
+
ChallengeMismatch: {
|
|
869
|
+
human: 'The WebAuthn challenge is malformed or does not match the operation being authorized.',
|
|
870
|
+
suggestion: 'Check the challenge bytes, base64url encoding, and challenge index in the client data.',
|
|
871
|
+
},
|
|
872
|
+
MalformedClientData: {
|
|
873
|
+
human: 'The WebAuthn client data JSON or its field offsets are malformed.',
|
|
874
|
+
suggestion: 'Preserve the exact client data bytes and use the matching challenge and type offsets.',
|
|
875
|
+
},
|
|
876
|
+
InvalidWebAuthnSignature: {
|
|
877
|
+
human: 'The passkey assertion failed its challenge, authenticator flags, or signature checks.',
|
|
878
|
+
suggestion: 'Verify the credential, operation challenge, client data, and required authenticator verification flags.',
|
|
879
|
+
},
|
|
880
|
+
SignCountTooLow: {
|
|
881
|
+
human: 'The passkey signature counter did not advance beyond the stored value.',
|
|
882
|
+
suggestion: 'Check the credential’s counter and authenticator state; a reused assertion cannot authorize another operation.',
|
|
883
|
+
},
|
|
884
|
+
InvalidSignatureComponents: {
|
|
885
|
+
human: 'A P-256 signature component is zero or outside the curve’s valid range.',
|
|
886
|
+
suggestion: 'Check the r and s values extracted from the authenticator signature.',
|
|
887
|
+
},
|
|
770
888
|
BeaconNotSet: {
|
|
771
889
|
human: 'The passkey account beacon is not configured.',
|
|
772
890
|
},
|
|
@@ -6,4 +6,6 @@
|
|
|
6
6
|
* Uses nested org queries for tasks/members (known working pattern),
|
|
7
7
|
* and top-level queries for vouches/tokenRequests/proposals (validated in other query files).
|
|
8
8
|
*/
|
|
9
|
-
export declare const FETCH_ORG_ACTIVITY = "\n query FetchOrgActivity(\n $orgId: Bytes!\n $hybridVotingId: String\n $
|
|
9
|
+
export declare const FETCH_ORG_ACTIVITY = "\n query FetchOrgActivity(\n $orgId: Bytes!\n $hybridVotingId: String\n $authorityId: Bytes\n $tokenAddress: String\n ) {\n # Org overview + tasks + members via nested pattern (known working)\n organization(id: $orgId) {\n id\n name\n participationToken {\n id\n totalSupply\n symbol\n }\n paymentManager {\n distributionCounter\n }\n taskManager {\n id\n projects(where: { deleted: false }, first: 50) {\n id\n title\n tasks(first: 200, orderBy: taskId, orderDirection: desc) {\n id\n taskId\n title\n status\n payout\n assignee\n assigneeUsername\n completer\n completerUsername\n createdAt\n assignedAt\n submittedAt\n completedAt\n }\n }\n }\n users(orderBy: firstSeenAt, orderDirection: desc, first: 20) {\n address\n account { username }\n membershipStatus\n joinMethod\n firstSeenAt\n currentHatIds\n }\n directDemocracyVoting {\n ddvProposals(\n where: { status: \"Active\" }\n orderBy: startTimestamp\n orderDirection: desc\n first: 50\n ) {\n id\n proposalId\n title\n metadata { description optionNames }\n numOptions\n startTimestamp\n endTimestamp\n status\n isHatRestricted\n restrictedHatIds\n votes { voter optionIndexes optionWeights }\n }\n }\n }\n\n # Active hybrid proposals \u2014 top-level query (validated: proposals entity exists)\n activeHybridProposals: proposals(\n where: { hybridVoting: $hybridVotingId, status: \"Active\" }\n orderBy: startTimestamp\n orderDirection: desc\n first: 50\n ) {\n id\n proposalId\n title\n metadata { description optionNames }\n numOptions\n startTimestamp\n endTimestamp\n status\n isHatRestricted\n restrictedHatIds\n votes {\n voter\n voterUsername\n optionIndexes\n optionWeights\n classRawPowers\n votedAt\n }\n }\n\n # Recently ended hybrid proposals (catch outcomes since last heartbeat)\n endedHybridProposals: proposals(\n where: { hybridVoting: $hybridVotingId, status: \"Ended\" }\n orderBy: startTimestamp\n orderDirection: desc\n first: 10\n ) {\n id\n proposalId\n title\n status\n winningOption\n isValid\n wasExecuted\n executionFailed\n executionError\n votes { voter optionIndexes optionWeights }\n }\n\n activeVouches: subjectVouchRecords(\n where: { authority: $authorityId, active: true }\n orderBy: vouchedAt\n orderDirection: desc\n first: 100\n ) {\n subject { subjectId }\n wearer: user\n membership { userUsername vouchCount }\n voucher\n voucherUsername\n epoch\n config { epoch }\n createdAt: vouchedAt\n }\n\n # Pending token requests \u2014 top-level query (validated in token.ts)\n pendingTokenRequests: tokenRequests(\n where: { participationToken: $tokenAddress, status: Pending }\n orderBy: createdAt\n orderDirection: desc\n first: 50\n ) {\n requestId\n requester\n amount\n metadata { reason }\n status\n createdAt\n }\n }\n";
|
|
10
|
+
/** Preserve activity JSON keys while taking the live epoch and count from authority rows. */
|
|
11
|
+
export declare function normalizeAuthorityVouches(rows: any[]): any[];
|
|
@@ -9,11 +9,12 @@
|
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.FETCH_ORG_ACTIVITY = void 0;
|
|
12
|
+
exports.normalizeAuthorityVouches = normalizeAuthorityVouches;
|
|
12
13
|
exports.FETCH_ORG_ACTIVITY = `
|
|
13
14
|
query FetchOrgActivity(
|
|
14
15
|
$orgId: Bytes!
|
|
15
16
|
$hybridVotingId: String
|
|
16
|
-
$
|
|
17
|
+
$authorityId: Bytes
|
|
17
18
|
$tokenAddress: String
|
|
18
19
|
) {
|
|
19
20
|
# Org overview + tasks + members via nested pattern (known working)
|
|
@@ -126,24 +127,20 @@ exports.FETCH_ORG_ACTIVITY = `
|
|
|
126
127
|
votes { voter optionIndexes optionWeights }
|
|
127
128
|
}
|
|
128
129
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
# extra field. Older deployments still list superseded vouches — stale rather than
|
|
133
|
-
# wrong, which is fine for an activity feed but NOT for quorum maths (see vouch.ts).
|
|
134
|
-
activeVouches: vouches(
|
|
135
|
-
where: { eligibilityModule: $eligibilityModuleId, isActive: true }
|
|
136
|
-
orderBy: createdAt
|
|
130
|
+
activeVouches: subjectVouchRecords(
|
|
131
|
+
where: { authority: $authorityId, active: true }
|
|
132
|
+
orderBy: vouchedAt
|
|
137
133
|
orderDirection: desc
|
|
138
134
|
first: 100
|
|
139
135
|
) {
|
|
140
|
-
|
|
141
|
-
wearer
|
|
142
|
-
|
|
136
|
+
subject { subjectId }
|
|
137
|
+
wearer: user
|
|
138
|
+
membership { userUsername vouchCount }
|
|
143
139
|
voucher
|
|
144
140
|
voucherUsername
|
|
145
|
-
|
|
146
|
-
|
|
141
|
+
epoch
|
|
142
|
+
config { epoch }
|
|
143
|
+
createdAt: vouchedAt
|
|
147
144
|
}
|
|
148
145
|
|
|
149
146
|
# Pending token requests — top-level query (validated in token.ts)
|
|
@@ -162,3 +159,11 @@ exports.FETCH_ORG_ACTIVITY = `
|
|
|
162
159
|
}
|
|
163
160
|
}
|
|
164
161
|
`;
|
|
162
|
+
/** Preserve activity JSON keys while taking the live epoch and count from authority rows. */
|
|
163
|
+
function normalizeAuthorityVouches(rows) {
|
|
164
|
+
return rows.filter(v => v.active !== false && v.config && String(v.epoch) === String(v.config.epoch))
|
|
165
|
+
.map(v => ({ hatId: v.subject.subjectId, wearer: v.wearer,
|
|
166
|
+
wearerUsername: v.membership?.userUsername ?? null, voucher: v.voucher,
|
|
167
|
+
voucherUsername: v.voucherUsername, vouchCount: v.membership?.vouchCount ?? 0,
|
|
168
|
+
createdAt: v.createdAt }));
|
|
169
|
+
}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* Organization Queries
|
|
3
3
|
* Ported from frontend queries.js
|
|
4
4
|
*/
|
|
5
|
-
export declare const FETCH_ORG_BY_ID = "\n query FetchOrgById($id: Bytes!) {\n organization(id: $id) {\n id\n name\n metadataHash\n deployedAt\n topHatId\n roleHatIds\n participationToken {\n id\n name\n symbol\n totalSupply\n }\n quickJoin {\n id\n }\n hybridVoting {\n id\n thresholdPct\n quorum\n }\n directDemocracyVoting {\n id\n thresholdPct\n quorum\n }\n taskManager {\n id\n projects {\n id\n title\n deleted\n }\n }\n educationHub {\n id\n nextModuleId\n }\n executorContract {\n id\n }\n
|
|
6
|
-
export declare const FETCH_ORG_FULL_DATA = "\n query FetchOrgFullData($orgId: Bytes!) {\n organization(id: $orgId) {\n id\n name\n metadataHash\n metadataAdminHatId\n metadata {\n id\n description\n template\n backgroundColor\n logo\n hideTreasury\n useTokenSymbol\n taskPayoutHoursOnly\n taskPayoutHourlyRate\n links {\n name\n url\n index\n }\n }\n deployedAt\n topHatId\n roleHatIds\n participationToken {\n id\n name\n symbol\n totalSupply\n }\n quickJoin {\n id\n }\n hybridVoting {\n id\n thresholdPct\n quorum\n }\n directDemocracyVoting {\n id\n thresholdPct\n quorum\n }\n zkEmailInvites {\n id\n }\n taskManager {\n id\n creatorHatIds\n projects(where: { deleted: false }, first: 100) {\n id\n tasks(first: 1000) {\n id\n status\n }\n }\n }\n educationHub {\n id\n modules {\n id\n moduleId\n title\n contentHash\n metadata {\n description\n link\n quiz\n answersJson\n }\n payout\n status\n completions {\n learner\n }\n }\n }\n executorContract {\n id\n }\n
|
|
7
|
-
export declare const GET_ORG_BY_NAME = "\n query GetOrgByName($name: String!) {\n organizations(where: { name: $name }, first:
|
|
8
|
-
export declare const FETCH_USER_ORGANIZATIONS = "\n query FetchUserOrganizations($userAddress: Bytes!) {\n users(where: { address: $userAddress
|
|
5
|
+
export declare const FETCH_ORG_BY_ID = "\n query FetchOrgById($id: Bytes!) {\n organization(id: $id) {\n id\n name\n metadataHash\n deployedAt\n topHatId\n roleHatIds\n participationToken {\n id\n name\n symbol\n totalSupply\n }\n quickJoin {\n id\n }\n hybridVoting {\n id\n thresholdPct\n quorum\n }\n directDemocracyVoting {\n id\n thresholdPct\n quorum\n }\n taskManager {\n id\n projects {\n id\n title\n deleted\n }\n }\n educationHub {\n id\n nextModuleId\n }\n executorContract {\n id\n }\n membershipAuthority {\n id\n isRouterBound\n cutoverAt\n }\n paymentManager {\n id\n }\n zkEmailInvites {\n id\n }\n users {\n id\n address\n account {\n username\n metadata {\n avatar\n }\n }\n participationTokenBalance\n membershipStatus\n currentHatIds\n }\n roles(where: { isUserRole: true }) {\n id\n hatId\n name\n image\n canVote\n isUserRole\n }\n }\n }\n";
|
|
6
|
+
export declare const FETCH_ORG_FULL_DATA = "\n query FetchOrgFullData($orgId: Bytes!) {\n organization(id: $orgId) {\n id\n name\n metadataHash\n metadataAdminHatId\n metadata {\n id\n description\n template\n backgroundColor\n logo\n hideTreasury\n useTokenSymbol\n taskPayoutHoursOnly\n taskPayoutHourlyRate\n links {\n name\n url\n index\n }\n }\n deployedAt\n topHatId\n roleHatIds\n participationToken {\n id\n name\n symbol\n totalSupply\n }\n quickJoin {\n id\n }\n hybridVoting {\n id\n thresholdPct\n quorum\n }\n directDemocracyVoting {\n id\n thresholdPct\n quorum\n }\n zkEmailInvites {\n id\n }\n taskManager {\n id\n creatorHatIds\n projects(where: { deleted: false }, first: 100) {\n id\n tasks(first: 1000) {\n id\n status\n }\n }\n }\n educationHub {\n id\n modules {\n id\n moduleId\n title\n contentHash\n metadata {\n description\n link\n quiz\n answersJson\n }\n payout\n status\n completions {\n learner\n }\n }\n }\n executorContract {\n id\n }\n membershipAuthority {\n id\n isRouterBound\n cutoverAt\n }\n paymentManager {\n id\n }\n users(orderBy: participationTokenBalance, orderDirection: desc, first: 100) {\n id\n address\n account {\n username\n metadata {\n avatar\n }\n }\n participationTokenBalance\n membershipStatus\n currentHatIds\n totalTasksCompleted\n totalVotes\n firstSeenAt\n }\n roles(where: { isUserRole: true }) {\n id\n hatId\n name\n image\n canVote\n isUserRole\n hat {\n name\n }\n }\n }\n }\n";
|
|
7
|
+
export declare const GET_ORG_BY_NAME = "\n query GetOrgByName($name: String!) {\n organizations(where: { name: $name }, first: 100) {\n id\n name\n membershipAuthority { id isRouterBound cutoverAt }\n }\n }\n";
|
|
8
|
+
export declare const FETCH_USER_ORGANIZATIONS = "\n query FetchUserOrganizations($userAddress: Bytes!) {\n users(first: 1000, where: { address: $userAddress }) {\n id\n membershipStatus\n participationTokenBalance\n totalTasksCompleted\n totalVotes\n organization {\n id\n name\n membershipAuthority { id isRouterBound cutoverAt }\n metadataHash\n participationToken {\n symbol\n }\n }\n }\n }\n";
|
|
9
9
|
/**
|
|
10
10
|
* Just the org's payout convention + token symbol.
|
|
11
11
|
*
|
|
@@ -48,8 +48,10 @@ exports.FETCH_ORG_BY_ID = `
|
|
|
48
48
|
executorContract {
|
|
49
49
|
id
|
|
50
50
|
}
|
|
51
|
-
|
|
51
|
+
membershipAuthority {
|
|
52
52
|
id
|
|
53
|
+
isRouterBound
|
|
54
|
+
cutoverAt
|
|
53
55
|
}
|
|
54
56
|
paymentManager {
|
|
55
57
|
id
|
|
@@ -163,8 +165,10 @@ exports.FETCH_ORG_FULL_DATA = `
|
|
|
163
165
|
executorContract {
|
|
164
166
|
id
|
|
165
167
|
}
|
|
166
|
-
|
|
168
|
+
membershipAuthority {
|
|
167
169
|
id
|
|
170
|
+
isRouterBound
|
|
171
|
+
cutoverAt
|
|
168
172
|
}
|
|
169
173
|
paymentManager {
|
|
170
174
|
id
|
|
@@ -201,15 +205,16 @@ exports.FETCH_ORG_FULL_DATA = `
|
|
|
201
205
|
`;
|
|
202
206
|
exports.GET_ORG_BY_NAME = `
|
|
203
207
|
query GetOrgByName($name: String!) {
|
|
204
|
-
organizations(where: { name: $name }, first:
|
|
208
|
+
organizations(where: { name: $name }, first: 100) {
|
|
205
209
|
id
|
|
206
210
|
name
|
|
211
|
+
membershipAuthority { id isRouterBound cutoverAt }
|
|
207
212
|
}
|
|
208
213
|
}
|
|
209
214
|
`;
|
|
210
215
|
exports.FETCH_USER_ORGANIZATIONS = `
|
|
211
216
|
query FetchUserOrganizations($userAddress: Bytes!) {
|
|
212
|
-
users(where: { address: $userAddress
|
|
217
|
+
users(first: 1000, where: { address: $userAddress }) {
|
|
213
218
|
id
|
|
214
219
|
membershipStatus
|
|
215
220
|
participationTokenBalance
|
|
@@ -218,6 +223,7 @@ exports.FETCH_USER_ORGANIZATIONS = `
|
|
|
218
223
|
organization {
|
|
219
224
|
id
|
|
220
225
|
name
|
|
226
|
+
membershipAuthority { id isRouterBound cutoverAt }
|
|
221
227
|
metadataHash
|
|
222
228
|
participationToken {
|
|
223
229
|
symbol
|