{
  "version": 3,
  "sources": ["../../../../src/testing/registry.ts", "../../../../src/testing/test-data.ts", "../../../../src/testing/test-schema.ts", "../../../../src/testing/util.ts"],
  "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Atom from '@effect-atom/atom/Atom';\nimport * as Layer from 'effect/Layer';\n\nimport { Event } from '@dxos/async';\n\nimport * as Registry from '../Registry';\n\n/**\n * Noop `Registry.Service` layer for testing — always returns empty query results.\n * Use this in test layer stacks that require `Registry.Service` but don't need\n * actual registry contents.\n */\nexport const registryLayerNoop: Layer.Layer<Registry.Service> = Layer.succeed(Registry.Service, {\n  [Registry.TypeId]: Registry.TypeId,\n  id: 'noop-registry',\n  changed: new Event<void>(),\n  local: [],\n  add: () => {},\n  remove: () => false,\n  clear: () => {},\n  get: () => undefined,\n  getByURI: () => undefined,\n  list: () => [],\n  // QueryFn is an overloaded interface — a single generic function cannot satisfy both overload\n  // signatures without a cast. This is the intentional type-system boundary.\n  query: ((_queryOrFilter: unknown) => ({\n    results: [],\n    entries: [],\n    run: async () => [],\n    runEntries: async () => [],\n    runSync: () => [],\n    runSyncEntries: () => [],\n    first: async (): Promise<never> => {\n      throw new Error('registryLayerNoop: registry is empty');\n    },\n    firstOrUndefined: async () => undefined,\n    subscribe: () => () => {},\n    atom: Atom.make((): never[] => []),\n  })) as Registry.Registry['query'],\n} satisfies Registry.Registry);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { DatabaseDirectory, EntityStructure } from '@dxos/echo-protocol';\nimport { EID, EntityId, PublicKey } from '@dxos/keys';\n\nimport { Type } from '../index';\nimport { TestSchema } from './test-schema';\n\n// Lazy init: Cloudflare workers disallow non-determinism at module scope (e.g. random keys).\nlet cachedSpaceKeyHex: string | undefined;\nconst getSpaceKeyHex = (): string => {\n  if (cachedSpaceKeyHex === undefined) {\n    cachedSpaceKeyHex = PublicKey.random().toHex();\n  }\n  return cachedSpaceKeyHex;\n};\n\nlet cachedPeopleAlice: DatabaseDirectory | undefined;\nlet cachedPeopleBob: DatabaseDirectory | undefined;\nlet cachedOrgsDxos: DatabaseDirectory | undefined;\nlet cachedOrgsCyberdyne: DatabaseDirectory | undefined;\nlet cachedWorksFredCyberdyne: DatabaseDirectory | undefined;\nlet cachedWorksAliceAperture: DatabaseDirectory | undefined;\nlet cachedTasksTask1: DatabaseDirectory | undefined;\nlet cachedTasksTask2: DatabaseDirectory | undefined;\n\n// TODO(burdon): Use Obj.make.\n\nexport const PEOPLE = {\n  get alice(): DatabaseDirectory {\n    if (cachedPeopleAlice === undefined) {\n      cachedPeopleAlice = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Person)!,\n            data: {\n              name: 'Alice',\n            },\n          }),\n        },\n      });\n    }\n    return cachedPeopleAlice;\n  },\n\n  get bob(): DatabaseDirectory {\n    if (cachedPeopleBob === undefined) {\n      cachedPeopleBob = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Person)!,\n            data: {\n              name: 'Bob',\n            },\n          }),\n        },\n      });\n    }\n    return cachedPeopleBob;\n  },\n};\n\nexport const ORGS = {\n  get dxos(): DatabaseDirectory {\n    if (cachedOrgsDxos === undefined) {\n      cachedOrgsDxos = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Organization)!,\n            data: {\n              name: 'DXOS',\n              founded: '2023',\n            },\n          }),\n        },\n      });\n    }\n    return cachedOrgsDxos;\n  },\n\n  get cyberdyne(): DatabaseDirectory {\n    if (cachedOrgsCyberdyne === undefined) {\n      cachedOrgsCyberdyne = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Organization)!,\n            data: {\n              name: 'Cyberdyne Systems',\n              founded: '1984',\n            },\n          }),\n        },\n      });\n    }\n    return cachedOrgsCyberdyne;\n  },\n};\n\nexport const WORKS_FOR = {\n  get fredWorksForCyberdyne(): DatabaseDirectory {\n    if (cachedWorksFredCyberdyne === undefined) {\n      cachedWorksFredCyberdyne = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeRelation({\n            type: Type.getURI(TestSchema.EmployedBy)!,\n            source: { '/': EID.make({ entityId: Object.keys(PEOPLE.bob.objects!)[0] }) },\n            target: { '/': EID.make({ entityId: Object.keys(ORGS.cyberdyne.objects!)[0] }) },\n            data: {\n              since: '2020',\n              position: 'Engineer',\n            },\n          }),\n        },\n      });\n    }\n    return cachedWorksFredCyberdyne;\n  },\n\n  get aliceWorksForAperture(): DatabaseDirectory {\n    if (cachedWorksAliceAperture === undefined) {\n      cachedWorksAliceAperture = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeRelation({\n            type: Type.getURI(TestSchema.EmployedBy)!,\n            source: { '/': EID.make({ entityId: Object.keys(PEOPLE.alice.objects!)[0] }) },\n            target: { '/': EID.make({ entityId: Object.keys(ORGS.dxos.objects!)[0] }) },\n            data: {\n              since: '2018',\n              position: 'Research Scientist',\n            },\n          }),\n        },\n      });\n    }\n    return cachedWorksAliceAperture;\n  },\n};\n\nexport const TASKS = {\n  get task1(): DatabaseDirectory {\n    if (cachedTasksTask1 === undefined) {\n      cachedTasksTask1 = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Task)!,\n            data: {\n              title: 'Complete project documentation',\n              description: 'Write comprehensive documentation for the new system',\n              status: 'in-progress',\n              dueDate: '2023-12-31',\n              assignee: { '/': EID.make({ entityId: Object.keys(PEOPLE.bob.objects!)[0] }) },\n            },\n          }),\n        },\n      });\n    }\n    return cachedTasksTask1;\n  },\n\n  get task2(): DatabaseDirectory {\n    if (cachedTasksTask2 === undefined) {\n      cachedTasksTask2 = DatabaseDirectory.make({\n        spaceKey: getSpaceKeyHex(),\n        objects: {\n          [EntityId.random()]: EntityStructure.makeObject({\n            type: Type.getURI(TestSchema.Task)!,\n            data: {\n              title: 'Run experiments',\n              description: 'Conduct series of experiments on the portal device',\n              status: 'pending',\n              dueDate: '2023-11-15',\n              assignee: { '/': EID.make({ entityId: Object.keys(PEOPLE.alice.objects!)[0] }) },\n            },\n          }),\n        },\n      });\n    }\n    return cachedTasksTask2;\n  },\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { DXN } from '@dxos/keys';\n\nimport * as Obj from '../Obj';\nimport * as Ref from '../Ref';\nimport * as Type from '../Type';\n\nexport namespace TestSchema {\n  //\n  // Expando\n  //\n\n  /**\n   * Expando object is an object with an arbitrary set of properties.\n   * This is the test variant with example.com namespace.\n   */\n  export const Expando = Schema.Struct({}, { key: Schema.String, value: Schema.Any }).pipe(\n    Type.makeObject(DXN.make('com.example.type.expando', '0.1.0')),\n  );\n\n  export type Expando = Type.InstanceType<typeof Expando>;\n\n  //\n  // Example\n  //\n\n  const Nested = Schema.Struct({\n    field: Schema.String,\n  });\n\n  export class TestClass {\n    field = 'value';\n    toJSON() {\n      return { field: this.field };\n    }\n  }\n\n  /** @deprecated Use another test schema or create a specific local test schema. */\n  export const ExampleSchema = Schema.Struct({\n    string: Schema.String,\n    number: Schema.Number,\n    boolean: Schema.Boolean,\n    null: Schema.Null,\n    undefined: Schema.Undefined,\n    stringArray: Schema.Array(Schema.String),\n    twoDimNumberArray: Schema.Array(Schema.Array(Schema.Number)),\n    nested: Nested,\n    nestedArray: Schema.Array(Nested),\n    nestedNullableArray: Schema.Array(Schema.Union(Nested, Schema.Null)),\n    reference: Schema.suspend((): Ref.RefSchema<Example> => Ref.Ref(Example)),\n    referenceArray: Schema.Array(Schema.suspend((): Ref.RefSchema<Example> => Ref.Ref(Example))),\n    classInstance: Schema.instanceOf(TestClass),\n    other: Schema.Any,\n  }).pipe(Schema.partial);\n\n  /** @deprecated Use another test schema or create a specific local test schema. */\n  export interface ExampleSchema extends Schema.Schema.Type<typeof ExampleSchema> {}\n\n  /** @deprecated Use another test schema or create a specific local test schema. */\n  export const Example = ExampleSchema.pipe(Type.makeObject(DXN.make('com.example.type.example', '0.1.0')));\n\n  /** @deprecated Use another test schema or create a specific local test schema. */\n  export interface Example extends Type.InstanceType<typeof Example> {}\n\n  //\n  // Message\n  //\n\n  // TODO(burdon): Support defaults directly on Type: `make` is erased by `pipe(Type.Obj)`.\n  export const MessageStruct = Schema.Struct({\n    // TODO(burdon): Support S.Date; Custom Timestamp (with defaults).\n    // TODO(burdon): Support defaults (update create and create).\n    timestamp: Schema.String.pipe(\n      Schema.propertySignature,\n      Schema.withConstructorDefault(() => new Date().toISOString()),\n    ),\n  });\n\n  export const Message = MessageStruct.pipe(Type.makeObject(DXN.make('com.example.type.message', '0.1.0')));\n\n  export type Message = Type.InstanceType<typeof Message>;\n\n  //\n  // Organization\n  //\n\n  export const Organization = Schema.Struct({\n    name: Schema.String,\n    properties: Schema.optional(\n      Schema.Record({\n        key: Schema.String,\n        value: Schema.String,\n      }),\n    ),\n  }).pipe(Type.makeObject(DXN.make('com.example.type.organization', '0.1.0')));\n\n  export type Organization = Type.InstanceType<typeof Organization>;\n\n  //\n  // Person\n  //\n\n  export const Person = Schema.Struct({\n    name: Schema.String,\n    username: Schema.String,\n    email: Schema.String,\n    age: Schema.Number.pipe(Schema.optional),\n    tasks: Schema.Array(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task))),\n    employer: Schema.optional(Ref.Ref(Organization)),\n    address: Schema.Struct({\n      city: Schema.optional(Schema.String),\n      state: Schema.optional(Schema.String),\n      zip: Schema.optional(Schema.String),\n      coordinates: Schema.Struct({\n        lat: Schema.optional(Schema.Number),\n        lng: Schema.optional(Schema.Number),\n      }),\n    }),\n    fields: Schema.Struct({\n      label: Schema.String,\n      value: Schema.String,\n    }).pipe(Schema.Array, Schema.optional),\n  }).pipe(Schema.partial, Type.makeObject(DXN.make('com.example.type.person', '0.1.0')));\n\n  export interface Person extends Type.InstanceType<typeof Person> {}\n\n  //\n  // Task\n  //\n\n  export const Task = Schema.Struct({\n    title: Schema.optional(Schema.String),\n    deadline: Schema.optional(Schema.String),\n    completed: Schema.optional(Schema.Boolean),\n    assignee: Schema.optional(Ref.Ref(Person)),\n    previous: Schema.optional(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task))),\n    subTasks: Schema.optional(Schema.Array(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task)))),\n    description: Schema.optional(Schema.String),\n  }).pipe(Schema.partial, Type.makeObject(DXN.make('com.example.type.task', '0.1.0')));\n\n  export interface Task extends Type.InstanceType<typeof Task> {}\n\n  //\n  // HasManager\n  //\n\n  export const HasManager = Schema.Struct({}).pipe(\n    Type.makeRelation({\n      dxn: DXN.make('com.example.type.hasManager', '0.1.0'),\n      source: Person,\n      target: Person,\n    }),\n  );\n\n  export type HasManager = Type.InstanceType<typeof HasManager>;\n\n  //\n  // EmployedBy\n  //\n\n  export const EmployedBy = Schema.Struct({\n    role: Schema.String,\n    since: Schema.optional(Schema.String),\n  }).pipe(\n    Type.makeRelation({\n      dxn: DXN.make('com.example.type.employedBy', '0.1.0'),\n      source: Person,\n      target: Organization,\n    }),\n  );\n\n  export type EmployedBy = Type.InstanceType<typeof EmployedBy>;\n\n  //\n  // RecordType\n  //\n\n  export enum RecordType {\n    UNDEFINED = 0,\n    PERSONAL = 1,\n    WORK = 2,\n  }\n\n  export const Container = Schema.Struct({\n    objects: Schema.Array(Ref.Ref(Obj.Unknown)),\n    records: Schema.Array(\n      Schema.partial(\n        Schema.Struct({\n          title: Schema.String,\n          description: Schema.String,\n          contacts: Schema.Array(Ref.Ref(Person)),\n          type: Schema.Enums(RecordType),\n        }),\n      ),\n    ),\n  }).pipe(Schema.partial, Type.makeObject(DXN.make('com.example.type.container', '0.1.0')));\n\n  export type Container = Type.InstanceType<typeof Container>;\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\nimport type * as SchemaAST from 'effect/SchemaAST';\n\nimport { assertArgument } from '@dxos/invariant';\nimport { deepMapValues } from '@dxos/util';\n\nimport { TypeSchema, getSchemaTypename, getStaticTypeSchema, makeObject, subscribe, toJsonSchema } from '../internal';\nimport type * as Type from '../Type';\n\n/**\n * Create an in-memory `Type.Type` entity (a `TypeSchema` object) for tests.\n * Accepts a raw Effect Schema. Pass `Type.getSchema(entity)` to convert a\n * `Type.Type` entity to its underlying source schema first.\n */\n// TODO(dmaretskyi): Should be replaced by registration of typed object.\nexport const createEchoSchema = (schema: Schema.Schema.AnyNoContext, version = '0.1.0'): Type.Type => {\n  const jsonSchema = toJsonSchema(schema);\n  const typename = getSchemaTypename(schema);\n  assertArgument(typename, 'typename', 'Schema does not have a typename.');\n  // typename/version are routed via EntityMeta (the canonical registry-provenance\n  // pair); they're no longer data fields on `TypeSchema`.\n  return makeObject(\n    getStaticTypeSchema(TypeSchema) as any,\n    { jsonSchema },\n    { keys: [], key: typename, version },\n    TypeSchema,\n  ) as unknown as Type.Type;\n};\n\n/**\n * Converts AST to a format that can be compared with test matchers.\n */\nexport const prepareAstForCompare = (obj: SchemaAST.AST): any =>\n  deepMapValues(obj, (value: any, recurse: any) => {\n    if (typeof value === 'function') {\n      return null;\n    }\n\n    if (value instanceof RegExp) {\n      return value;\n    }\n\n    // Convert symbols to strings.\n    if (typeof value === 'object') {\n      const clone = { ...value };\n      for (const sym of Object.getOwnPropertySymbols(clone as any)) {\n        clone[sym.toString()] = clone[sym];\n        delete clone[sym];\n      }\n\n      return recurse(clone);\n    }\n\n    return recurse(value);\n  });\n\n/**\n * Creates an update counter that tracks changes to reactive objects.\n * @param objects - Reactive objects to subscribe to.\n * @returns An object with a count property and Symbol.dispose for cleanup.\n */\nexport const updateCounter = (...objects: object[]) => {\n  let updateCount = 0;\n\n  const unsubscribes = objects.map((obj) =>\n    subscribe(obj, () => {\n      updateCount++;\n    }),\n  );\n\n  const unsubscribeAll = () => {\n    for (const unsub of unsubscribes) {\n      unsub();\n    }\n  };\n\n  return {\n    // https://github.com/tc39/proposal-explicit-resource-management\n    [Symbol.dispose]: unsubscribeAll,\n    get count() {\n      return updateCount;\n    },\n  };\n};\n"],
  "mappings": "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",
  "names": ["Atom", "Layer", "Event", "registryLayerNoop", "succeed", "Service", "TypeId", "id", "changed", "Event", "local", "add", "remove", "clear", "get", "undefined", "getByURI", "list", "query", "_queryOrFilter", "results", "entries", "run", "runEntries", "runSync", "runSyncEntries", "first", "Error", "firstOrUndefined", "subscribe", "atom", "make", "DatabaseDirectory", "EntityStructure", "EID", "EntityId", "PublicKey", "Schema", "DXN", "TestSchema", "Expando", "Struct", "key", "String", "value", "Any", "pipe", "makeObject", "DXN", "make", "Nested", "field", "TestClass", "toJSON", "ExampleSchema", "string", "number", "Number", "boolean", "Boolean", "null", "Null", "undefined", "Undefined", "stringArray", "Array", "twoDimNumberArray", "nested", "nestedArray", "nestedNullableArray", "Union", "reference", "suspend", "Ref", "Example", "referenceArray", "classInstance", "instanceOf", "other", "partial", "MessageStruct", "timestamp", "propertySignature", "withConstructorDefault", "Date", "toISOString", "Message", "Organization", "name", "properties", "optional", "Record", "Person", "username", "email", "age", "tasks", "Task", "employer", "address", "city", "state", "zip", "coordinates", "lat", "lng", "fields", "label", "title", "deadline", "completed", "assignee", "previous", "subTasks", "description", "HasManager", "makeRelation", "dxn", "source", "target", "EmployedBy", "role", "since", "RecordType", "Container", "objects", "Unknown", "records", "contacts", "type", "Enums", "cachedSpaceKeyHex", "getSpaceKeyHex", "undefined", "PublicKey", "random", "toHex", "cachedPeopleAlice", "cachedPeopleBob", "cachedOrgsDxos", "cachedOrgsCyberdyne", "cachedWorksFredCyberdyne", "cachedWorksAliceAperture", "cachedTasksTask1", "cachedTasksTask2", "PEOPLE", "alice", "DatabaseDirectory", "make", "spaceKey", "objects", "EntityId", "EntityStructure", "makeObject", "type", "Type", "getURI", "TestSchema", "Person", "data", "name", "bob", "ORGS", "dxos", "Organization", "founded", "cyberdyne", "WORKS_FOR", "fredWorksForCyberdyne", "makeRelation", "EmployedBy", "source", "EID", "entityId", "Object", "keys", "target", "since", "position", "aliceWorksForAperture", "TASKS", "task1", "Task", "title", "description", "status", "dueDate", "assignee", "task2", "assertArgument", "deepMapValues", "createEchoSchema", "schema", "version", "jsonSchema", "toJsonSchema", "typename", "getSchemaTypename", "assertArgument", "makeObject", "getStaticTypeSchema", "TypeSchema", "keys", "key", "prepareAstForCompare", "obj", "deepMapValues", "value", "recurse", "RegExp", "clone", "sym", "Object", "getOwnPropertySymbols", "toString", "updateCounter", "objects", "updateCount", "unsubscribes", "map", "subscribe", "unsubscribeAll", "unsub", "Symbol", "dispose", "count"]
}
