@dpkit/ckan
Version:
Fast TypeScript data management framework built on top of the Data Package standard and Polars DataFrames
21 lines (16 loc) • 526 B
text/typescript
import type { Plugin } from "@dpkit/core"
import { isRemotePath } from "@dpkit/core"
import { loadPackageFromCkan } from "./package/load.ts"
export class CkanPlugin implements Plugin {
async loadPackage(source: string) {
const isCkan = getIsCkan(source)
if (!isCkan) return undefined
const dataPackage = await loadPackageFromCkan(source)
return dataPackage
}
}
function getIsCkan(path: string) {
const isRemote = isRemotePath(path)
if (!isRemote) return false
return path.includes("/dataset/")
}