{
  "version": 3,
  "sources": ["../../../../src/packages/workspace.state/createWorkspaceState.ts"],
  "sourcesContent": ["import pick from 'ramda/src/pick';\nimport type {\n  ProjectsList,\n  WorkspaceState,\n  WorkspaceStateSettings,\n} from './types.ts';\nimport type { Project, ProjectRootDir } from '../types/index.ts';\n\nexport type CreateWorkspaceStateOptions = {\n  allProjects: ProjectsList;\n  pnpmfileExists?: boolean | undefined;\n  filteredInstall?: boolean | undefined;\n  settings: WorkspaceStateSettings;\n  configDependencies?: Record<string, string> | undefined;\n};\n\nexport function createWorkspaceState(\n  opts: CreateWorkspaceStateOptions\n): WorkspaceState {\n  return {\n    lastValidatedTimestamp: Date.now(),\n    projects: Object.fromEntries(\n      opts.allProjects.map(\n        (\n          project: Pick<Project, 'rootDir' | 'manifest'>\n        ): [\n          ProjectRootDir,\n          {\n            name?: string | undefined;\n            version?: string | undefined;\n          },\n        ] => {\n          return [\n            project.rootDir,\n            {\n              name: project.manifest.name,\n              version: project.manifest.version,\n            },\n          ];\n        }\n      )\n    ),\n    pnpmfileExists: opts.pnpmfileExists,\n    settings: pick.default(\n      [\n        'autoInstallPeers',\n        'catalogs',\n        'dedupeDirectDeps',\n        'dedupeInjectedDeps',\n        'dedupePeerDependents',\n        'dev',\n        'excludeLinksFromLockfile',\n        'hoistPattern',\n        'hoistWorkspacePackages',\n        'injectWorkspacePackages',\n        'linkWorkspacePackages',\n        'nodeLinker',\n        'optional',\n        'preferWorkspacePackages',\n        'production',\n        'publicHoistPattern',\n        'workspacePackagePatterns',\n      ],\n      opts.settings\n    ),\n    filteredInstall: opts.filteredInstall,\n    configDependencies: opts.configDependencies,\n  };\n}\n"],
  "mappings": "AAAA,OAAO,UAAU;AAgBV,SAAS,qBACd,MACgB;AAChB,SAAO;AAAA,IACL,wBAAwB,KAAK,IAAI;AAAA,IACjC,UAAU,OAAO;AAAA,MACf,KAAK,YAAY;AAAA,QACf,CACE,YAOG;AACH,iBAAO;AAAA,YACL,QAAQ;AAAA,YACR;AAAA,cACE,MAAM,QAAQ,SAAS;AAAA,cACvB,SAAS,QAAQ,SAAS;AAAA,YAC5B;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,gBAAgB,KAAK;AAAA,IACrB,UAAU,KAAK;AAAA,MACb;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,KAAK;AAAA,IACP;AAAA,IACA,iBAAiB,KAAK;AAAA,IACtB,oBAAoB,KAAK;AAAA,EAC3B;AACF;",
  "names": []
}
