@etherisc/gif-next 0.0.2-e964d24-516 → 0.0.2-ead1eb0-841
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/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
 - package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
 - package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +2 -2
 - package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +2 -2
 - package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
 - package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
 - package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
 - package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +2 -2
 - package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
 - package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
 - package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
 - package/artifacts/contracts/instance/Instance.sol/Instance.json +2 -2
 - package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +2 -2
 - package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +2 -2
 - package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +29 -24
 - package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +2 -2
 - package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +2 -2
 - package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
 - package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +113 -54
 - package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
 - package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -1
 - package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
 - package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +49 -0
 - package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
 - package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
 - package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +51 -2
 - package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
 - package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +2 -2
 - package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
 - package/artifacts/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol}/ObjectManager.json +3 -3
 - package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
 - package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
 - package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
 - package/artifacts/contracts/pool/BundleService.sol/BundleService.json +2 -2
 - package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +2 -2
 - package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
 - package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
 - package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
 - package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +3 -3
 - package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
 - package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
 - package/artifacts/contracts/pool/PoolService.sol/PoolService.json +5 -5
 - package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
 - package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
 - package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
 - package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
 - package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
 - package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +60 -50
 - package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +26 -26
 - package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
 - package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
 - package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +10 -0
 - package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
 - package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
 - package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
 - package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
 - package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
 - package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
 - package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +2 -2
 - package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
 - package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
 - package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
 - package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
 - package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
 - package/artifacts/contracts/product/ProductService.sol/ProductService.json +2 -2
 - package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +2 -2
 - package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
 - package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
 - package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
 - package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
 - package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
 - package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
 - package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +1 -1
 - package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +2 -2
 - package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
 - package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
 - package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
 - package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
 - package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +2 -2
 - package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
 - package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
 - package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +1 -1
 - package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
 - package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
 - package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
 - package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
 - package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
 - package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
 - package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
 - package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
 - package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
 - package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
 - package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
 - package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
 - package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
 - package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
 - package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
 - package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +2 -2
 - package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
 - package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
 - package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
 - package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
 - package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
 - package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
 - package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
 - package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
 - package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
 - package/artifacts/contracts/staking/StakeingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
 - package/artifacts/contracts/staking/StakeingServiceManager.sol/StakingServiceManager.json +2 -2
 - package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
 - package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
 - package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
 - package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
 - package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
 - package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
 - package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
 - package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
 - package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
 - package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
 - package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
 - package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
 - package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
 - package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
 - package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
 - package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
 - package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
 - package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
 - package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
 - package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
 - package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
 - package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
 - package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
 - package/contracts/distribution/DistributionService.sol +1 -0
 - package/contracts/instance/BundleManager.sol +1 -1
 - package/contracts/instance/InstanceAccessManager.sol +2 -0
 - package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +1 -1
 - package/contracts/instance/base/IKeyValueStore.sol +9 -5
 - package/contracts/instance/base/KeyValueStore.sol +28 -8
 - package/contracts/instance/base/Lifecycle.sol +1 -0
 - package/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol} +6 -6
 - package/contracts/instance/module/IPolicy.sol +4 -3
 - package/contracts/product/ApplicationService.sol +1 -1
 - package/contracts/product/ClaimService.sol +9 -4
 - package/contracts/product/IClaimService.sol +5 -2
 - package/contracts/product/Product.sol +8 -4
 - package/contracts/registry/RegistryAccessManager.sol +1 -1
 - package/contracts/registry/ReleaseManager.sol +7 -3
 - package/contracts/type/ObjectType.sol +1 -0
 - package/contracts/type/RoleId.sol +44 -9
 - package/package.json +1 -1
 - package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
 - package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
 
| 
         @@ -223,25 +223,29 @@ abstract contract Product is 
     | 
|
| 
       223 
223 
     | 
    
         
             
                function _confirmClaim(
         
     | 
| 
       224 
224 
     | 
    
         
             
                    NftId policyNftId,
         
     | 
| 
       225 
225 
     | 
    
         
             
                    ClaimId claimId,
         
     | 
| 
       226 
     | 
    
         
            -
                    Amount confirmedAmount
         
     | 
| 
      
 226 
     | 
    
         
            +
                    Amount confirmedAmount,
         
     | 
| 
      
 227 
     | 
    
         
            +
                    bytes memory data
         
     | 
| 
       227 
228 
     | 
    
         
             
                )
         
     | 
| 
       228 
229 
     | 
    
         
             
                    internal
         
     | 
| 
       229 
230 
     | 
    
         
             
                {
         
     | 
| 
       230 
231 
     | 
    
         
             
                    _getProductStorage()._claimService.confirm(
         
     | 
| 
       231 
232 
     | 
    
         
             
                        policyNftId,
         
     | 
| 
       232 
233 
     | 
    
         
             
                        claimId,
         
     | 
| 
       233 
     | 
    
         
            -
                        confirmedAmount 
     | 
| 
      
 234 
     | 
    
         
            +
                        confirmedAmount,
         
     | 
| 
      
 235 
     | 
    
         
            +
                        data);
         
     | 
| 
       234 
236 
     | 
    
         
             
                }
         
     | 
| 
       235 
237 
     | 
    
         | 
| 
       236 
238 
     | 
    
         
             
                function _declineClaim(
         
     | 
| 
       237 
239 
     | 
    
         
             
                    NftId policyNftId,
         
     | 
| 
       238 
     | 
    
         
            -
                    ClaimId claimId
         
     | 
| 
      
 240 
     | 
    
         
            +
                    ClaimId claimId,
         
     | 
| 
      
 241 
     | 
    
         
            +
                    bytes memory data
         
     | 
| 
       239 
242 
     | 
    
         
             
                )
         
     | 
| 
       240 
243 
     | 
    
         
             
                    internal
         
     | 
| 
       241 
244 
     | 
    
         
             
                {
         
     | 
| 
       242 
245 
     | 
    
         
             
                    _getProductStorage()._claimService.decline(
         
     | 
| 
       243 
246 
     | 
    
         
             
                        policyNftId,
         
     | 
| 
       244 
     | 
    
         
            -
                        claimId 
     | 
| 
      
 247 
     | 
    
         
            +
                        claimId,
         
     | 
| 
      
 248 
     | 
    
         
            +
                        data);
         
     | 
| 
       245 
249 
     | 
    
         
             
                }
         
     | 
| 
       246 
250 
     | 
    
         | 
| 
       247 
251 
     | 
    
         
             
                function _closeClaim(
         
     | 
| 
         @@ -19,7 +19,7 @@ import {ReleaseManager} from "./ReleaseManager.sol"; 
     | 
|
| 
       19 
19 
     | 
    
         
             
                    - responsible for setting and granting of REGISTRAR roles
         
     | 
| 
       20 
20 
     | 
    
         
             
                1) REGISTRAR roles
         
     | 
| 
       21 
21 
     | 
    
         
             
                    - set and granted by RELEASE_MANAGER_ROLE
         
     | 
| 
       22 
     | 
    
         
            -
                    - each  
     | 
| 
      
 22 
     | 
    
         
            +
                    - for each service and major version X there is 1 unique member (the service with version X itself) (subject to change)
         
     | 
| 
       23 
23 
     | 
    
         
             
                    - each set to 1 target (registry service ver.X) and 1 selector (function of registry service ver.X) (subject to change)
         
     | 
| 
       24 
24 
     | 
    
         
             
                2) GIF_MANAGER_ROLE
         
     | 
| 
       25 
25 
     | 
    
         
             
                    - can have arbitrary number of members
         
     | 
| 
         @@ -61,7 +61,8 @@ contract ReleaseManager is AccessManaged 
     | 
|
| 
       61 
61 
     | 
    
         | 
| 
       62 
62 
     | 
    
         
             
                mapping(VersionPart majorVersion => IRegistry.ReleaseInfo info) _release;
         
     | 
| 
       63 
63 
     | 
    
         | 
| 
       64 
     | 
    
         
            -
                 
     | 
| 
      
 64 
     | 
    
         
            +
                // registry service function selector assigned to domain 
         
     | 
| 
      
 65 
     | 
    
         
            +
                mapping(VersionPart majorVersion => mapping(ObjectType serviceDomain => bytes4[])) _selectors; 
         
     | 
| 
       65 
66 
     | 
    
         | 
| 
       66 
67 
     | 
    
         
             
                uint _awaitingRegistration; // "services left to register" counter
         
     | 
| 
       67 
68 
     | 
    
         | 
| 
         @@ -90,7 +91,9 @@ contract ReleaseManager is AccessManaged 
     | 
|
| 
       90 
91 
     | 
    
         
             
                    restricted // GIF_ADMIN_ROLE
         
     | 
| 
       91 
92 
     | 
    
         
             
                {
         
     | 
| 
       92 
93 
     | 
    
         
             
                    // allow to register new registry service for next version
         
     | 
| 
      
 94 
     | 
    
         
            +
                    // TODO check/test: assignment to _next likely missing ...
         
     | 
| 
       93 
95 
     | 
    
         
             
                    VersionPartLib.toVersionPart(_next.toInt() + 1);
         
     | 
| 
      
 96 
     | 
    
         
            +
             
     | 
| 
       94 
97 
     | 
    
         
             
                    // disallow registration of regular services for next version while registry service is not registered 
         
     | 
| 
       95 
98 
     | 
    
         
             
                    _awaitingRegistration = 0;
         
     | 
| 
       96 
99 
     | 
    
         | 
| 
         @@ -124,9 +127,10 @@ contract ReleaseManager is AccessManaged 
     | 
|
| 
       124 
127 
     | 
    
         
             
                    emit LogReleaseActivation(version);
         
     | 
| 
       125 
128 
     | 
    
         
             
                }
         
     | 
| 
       126 
129 
     | 
    
         | 
| 
       127 
     | 
    
         
            -
                // TODO  
     | 
| 
      
 130 
     | 
    
         
            +
                // TODO implement reliable way this function can only be called directly after createNextRelease()
         
     | 
| 
       128 
131 
     | 
    
         
             
                // IMPORTANT: MUST never be possible to create with access/release manager, token registry
         
     | 
| 
       129 
     | 
    
         
            -
                // callable once per release after release creation 
     | 
| 
      
 132 
     | 
    
         
            +
                // callable once per release after release creation
         
     | 
| 
      
 133 
     | 
    
         
            +
                // can not register regular services
         
     | 
| 
       130 
134 
     | 
    
         
             
                function registerRegistryService(IRegistryService service)
         
     | 
| 
       131 
135 
     | 
    
         
             
                    external
         
     | 
| 
       132 
136 
     | 
    
         
             
                    restricted // GIF_MANAGER_ROLE
         
     | 
| 
         @@ -24,30 +24,65 @@ function ADMIN_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(type(uin 
     | 
|
| 
       24 
24 
     | 
    
         
             
            function PUBLIC_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(type(uint64).max); }
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
            // general pure free functions
         
     | 
| 
       27 
     | 
    
         
            -
            function DISTRIBUTION_OWNER_ROLE_NAME() pure returns (string memory) { return "DistributionOwnerRole"; }
         
     | 
| 
       28 
     | 
    
         
            -
            function ORACLE_OWNER_ROLE_NAME() pure returns (string memory) { return "OracleOwnerRole"; }
         
     | 
| 
       29 
     | 
    
         
            -
            function POOL_OWNER_ROLE_NAME() pure returns (string memory) { return "PoolOwnerRole"; }
         
     | 
| 
       30 
     | 
    
         
            -
            function PRODUCT_OWNER_ROLE_NAME() pure returns (string memory) { return "ProductOwnerRole"; }
         
     | 
| 
       31 
27 
     | 
    
         | 
| 
      
 28 
     | 
    
         
            +
            /// @dev cental role for gif release management.
         
     | 
| 
      
 29 
     | 
    
         
            +
            /// this role is necessary to call ReleaseManager.createNextRelease/activateNextRelease
         
     | 
| 
      
 30 
     | 
    
         
            +
            /// the actual deployment of a release requires the GIF_MANAGER_ROLE.
         
     | 
| 
      
 31 
     | 
    
         
            +
            /// GIF_ADMIN_ROLE is the admin of the GIF_MANAGER_ROLE.
         
     | 
| 
      
 32 
     | 
    
         
            +
            /// only a single holder may hold this role at any time
         
     | 
| 
      
 33 
     | 
    
         
            +
            function GIF_ADMIN_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1500); } 
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            /// @dev role for token whith/blacklisting, deploying and registering the services for a new major release
         
     | 
| 
      
 36 
     | 
    
         
            +
            /// registering services for a new major release is only possible after a new initial release has been created by the GIF_ADMIN_ROLE
         
     | 
| 
      
 37 
     | 
    
         
            +
            /// token white/blacklisting is possible for any active release
         
     | 
| 
      
 38 
     | 
    
         
            +
            function GIF_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1600); } 
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
            /// @dev role associated with the ReleaseManager contract
         
     | 
| 
      
 41 
     | 
    
         
            +
            function RELEASE_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1700); } 
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
            /// @dev instance specific role to register/own a distribution component
         
     | 
| 
       32 
44 
     | 
    
         
             
            function DISTRIBUTION_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2); }
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            /// @dev instance specific  role to register/own an oracle component
         
     | 
| 
       33 
47 
     | 
    
         
             
            function ORACLE_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(3); }
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
            /// @dev instance specific  role to register/own a pool component
         
     | 
| 
       34 
50 
     | 
    
         
             
            function POOL_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(4); }
         
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
      
 52 
     | 
    
         
            +
            /// @dev instance specific  role to register/own a product component
         
     | 
| 
       35 
53 
     | 
    
         
             
            function PRODUCT_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(5); }
         
     | 
| 
       36 
54 
     | 
    
         | 
| 
      
 55 
     | 
    
         
            +
            /// @dev role associated with an instance contract
         
     | 
| 
      
 56 
     | 
    
         
            +
            /// this role is the admin role for the INSTANCE_OWNER_ROLE
         
     | 
| 
      
 57 
     | 
    
         
            +
            function INSTANCE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2600); }
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            /// @dev required role to register/own an instance
         
     | 
| 
      
 60 
     | 
    
         
            +
            /// allows instance specific target, role and access management 
         
     | 
| 
       37 
61 
     | 
    
         
             
            function INSTANCE_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1900); }
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
            /// @dev instance specific role for instance service
         
     | 
| 
       38 
64 
     | 
    
         
             
            function INSTANCE_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2000); }
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
      
 66 
     | 
    
         
            +
            /// @dev instance specific role for distribution service
         
     | 
| 
       39 
67 
     | 
    
         
             
            function DISTRIBUTION_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2100); }
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
            /// @dev instance specific role for pool service
         
     | 
| 
       40 
70 
     | 
    
         
             
            function POOL_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2200); }
         
     | 
| 
      
 71 
     | 
    
         
            +
             
     | 
| 
      
 72 
     | 
    
         
            +
            /// @dev instance specific role for product service
         
     | 
| 
       41 
73 
     | 
    
         
             
            function PRODUCT_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2300); }
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
            /// @dev instance specific role for application service
         
     | 
| 
       42 
76 
     | 
    
         
             
            function APPLICATION_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2400); }
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            /// @dev instance specific role for policy service
         
     | 
| 
       43 
79 
     | 
    
         
             
            function POLICY_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2410); }
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
            /// @dev instance specific role for claim service
         
     | 
| 
       44 
82 
     | 
    
         
             
            function CLAIM_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2420); }
         
     | 
| 
       45 
     | 
    
         
            -
            function BUNDLE_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2500); }
         
     | 
| 
       46 
     | 
    
         
            -
            function INSTANCE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2600); }
         
     | 
| 
       47 
83 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
            function  
     | 
| 
       50 
     | 
    
         
            -
            function RELEASE_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1700); } 
         
     | 
| 
      
 84 
     | 
    
         
            +
            /// @dev instance specific role for bundle service
         
     | 
| 
      
 85 
     | 
    
         
            +
            function BUNDLE_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2500); }
         
     | 
| 
       51 
86 
     | 
    
         | 
| 
       52 
87 
     | 
    
         
             
            // @dev Returns true iff role ids a and b are identical
         
     | 
| 
       53 
88 
     | 
    
         
             
            function eqRoleId(RoleId a, RoleId b) pure returns (bool isSame) {
         
     | 
    
        package/package.json
    CHANGED