diff --git a/packages/admin/src/index.ts b/packages/admin/src/index.ts index 367b7b2f..36ff3cb6 100644 --- a/packages/admin/src/index.ts +++ b/packages/admin/src/index.ts @@ -8,4 +8,3 @@ export type * from './types/controllers.types'; export type * from './types/customdomain.types'; export type * from './types/ic.types'; export type * from './types/releases.types'; -export type * from './types/rules.types'; diff --git a/packages/admin/src/services/satellite.services.ts b/packages/admin/src/services/satellite.services.ts index a87a361d..4fc12f32 100644 --- a/packages/admin/src/services/satellite.services.ts +++ b/packages/admin/src/services/satellite.services.ts @@ -36,7 +36,7 @@ import { import type {SatelliteParameters} from '../types/actor.types'; import type {BuildType} from '../types/build.types'; import type {CustomDomain} from '../types/customdomain.types'; -import type {Rule, RulesType} from '../types/rules.types'; +import type {Rule, RulesType} from '@junobuild/config'; import {encodeIDLControllers} from '../utils/idl.utils'; import {mapRule, mapRuleType, mapSetRule} from '../utils/rule.utils'; diff --git a/packages/admin/src/utils/rule.utils.ts b/packages/admin/src/utils/rule.utils.ts index 343a4233..78df262d 100644 --- a/packages/admin/src/utils/rule.utils.ts +++ b/packages/admin/src/utils/rule.utils.ts @@ -16,7 +16,7 @@ import { PermissionPublic, StorageRulesType } from '../constants/rules.constants'; -import type {MemoryText, PermissionText, Rule, RulesType} from '../types/rules.types'; +import type {MemoryText, PermissionText, Rule, RulesType} from '@junobuild/config'; export const mapRuleType = (type: RulesType): RulesTypeApi => type === 'storage' ? StorageRulesType : DbRulesType; diff --git a/packages/config/src/dev/juno.dev.config.ts b/packages/config/src/dev/juno.dev.config.ts new file mode 100644 index 00000000..6bd39d83 --- /dev/null +++ b/packages/config/src/dev/juno.dev.config.ts @@ -0,0 +1,22 @@ +import {Rule} from "../types/rules"; + +export type SatelliteDevCollection = Omit; + +export interface SatelliteDevCollections { + db?: SatelliteDevCollection[]; + storage?: SatelliteDevCollection[]; +} + +export interface SatelliteDevController { + id: string; + scope: 'write' | 'admin'; +} + +export interface SatelliteDevConfig { + collections: SatelliteDevCollections; + controllers?: SatelliteDevController[]; +} + +export interface JunoDevConfig { + satellite: SatelliteDevConfig; +} diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index ca0a8db4..00d5a984 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -1,6 +1,8 @@ +export type * from './dev/juno.dev.config'; export type * from './types/encoding'; export type * from './types/juno.config'; export type * from './types/juno.env'; +export type * from './types/rules'; export type * from './types/satellite.config'; export type * from './types/storage.config'; export type * from './types/utility'; diff --git a/packages/admin/src/types/rules.types.ts b/packages/config/src/types/rules.ts similarity index 100% rename from packages/admin/src/types/rules.types.ts rename to packages/config/src/types/rules.ts