{"version":3,"file":"klipy.mjs","names":[],"sources":["../../../package/services/klipy.ts"],"sourcesContent":["const BASE_URL = 'https://api.klipy.com/v2';\n\nexport interface KlipyMediaFormat {\n  url: string;\n  dims: [number, number];\n  size: number;\n}\n\nexport interface KlipyResult {\n  id: string;\n  title: string;\n  media_formats: {\n    gif: KlipyMediaFormat;\n    tinygif: KlipyMediaFormat;\n    mediumgif: KlipyMediaFormat;\n    mp4: KlipyMediaFormat;\n    tinymp4: KlipyMediaFormat;\n  };\n  tags: string[];\n  url: string;\n}\n\ninterface SearchOptions {\n  limit?: number;\n  contentfilter?: 'off' | 'low' | 'medium' | 'high';\n  pos?: string;\n}\n\nexport default class KlipyService {\n  private key: string;\n\n  constructor(key: string) {\n    this.key = key;\n  }\n\n  async search(query: string, options: SearchOptions = {}): Promise<{ results: KlipyResult[]; next: string }> {\n    const params = new URLSearchParams({ q: query, key: this.key });\n    if (options.limit != null) params.set('limit', String(options.limit));\n    if (options.contentfilter != null) params.set('contentfilter', options.contentfilter);\n    if (options.pos != null) params.set('pos', options.pos);\n\n    const res = await fetch(`${BASE_URL}/search?${params}`);\n    return res.json();\n  }\n\n  async searchSuggestions(query: string): Promise<{ results: string[] }> {\n    const params = new URLSearchParams({ q: query, key: this.key });\n    const res = await fetch(`${BASE_URL}/search_suggestions?${params}`);\n    return res.json();\n  }\n\n  registerShare(query: string, id: string): void {\n    const params = new URLSearchParams({ id, q: query, key: this.key });\n    fetch(`${BASE_URL}/registershare?${params}`).catch(() => null);\n  }\n}\n"],"mappings":"aAAA,IAAM,EAAW,2BA4BI,EAArB,KAAkC,CAGhC,YAAY,EAAa,CACvB,KAAK,IAAM,CACb,CAEA,MAAM,OAAO,EAAe,EAAyB,CAAC,EAAsD,CAC1G,IAAM,EAAS,IAAI,gBAAgB,CAAE,EAAG,EAAO,IAAK,KAAK,GAAI,CAAC,EAM9D,OALI,EAAQ,OAAS,MAAM,EAAO,IAAI,QAAS,OAAO,EAAQ,KAAK,CAAC,EAChE,EAAQ,eAAiB,MAAM,EAAO,IAAI,gBAAiB,EAAQ,aAAa,EAChF,EAAQ,KAAO,MAAM,EAAO,IAAI,MAAO,EAAQ,GAAG,GAG/C,MADW,MAAM,GAAG,EAAS,UAAU,GAAQ,EAAA,CAC3C,KAAK,CAClB,CAEA,MAAM,kBAAkB,EAA+C,CACrE,IAAM,EAAS,IAAI,gBAAgB,CAAE,EAAG,EAAO,IAAK,KAAK,GAAI,CAAC,EAE9D,OAAO,MADW,MAAM,GAAG,EAAS,sBAAsB,GAAQ,EAAA,CACvD,KAAK,CAClB,CAEA,cAAc,EAAe,EAAkB,CAC7C,IAAM,EAAS,IAAI,gBAAgB,CAAE,KAAI,EAAG,EAAO,IAAK,KAAK,GAAI,CAAC,EAClE,MAAM,GAAG,EAAS,iBAAiB,GAAQ,CAAC,CAAC,UAAY,IAAI,CAC/D,CACF"}