@modern-kit/utils
Version:
1 lines • 1.64 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../../../src/clipboard/readClipboardContents/index.ts"],"sourcesContent":["import { isClient } from '../../device';\n\n/**\n * @description 클립보드에 저장된 텍스트를 포함한 html, 이미지 등 다양한 유형의 컨텐츠를 읽어오는 함수입니다.\n * 클라이언트 환경에서만 실행 가능하며, 서버 환경에서는 에러를 발생시킵니다.\n *\n * @returns {Promise<ClipboardItems>} 클립보드에서 읽어온 콘텐츠 목록을 반환합니다. 각 항목은 DataTransfer 객체입니다.\n * @throws {Error} 클라이언트 환경이 아닌 경우 에러를 발생시킵니다.\n * @throws {Error} 클립보드에서 콘텐츠를 읽어오는 도중 에러가 발생할 경우 예외를 던집니다.\n *\n * @example\n * const contents = await readClipboardContents();\n */\nexport async function readClipboardContents(): Promise<ClipboardItems> {\n if (!isClient()) {\n throw new Error('Cannot be executed unless it is a client environment.');\n }\n\n try {\n const contents = await navigator.clipboard.read();\n return contents;\n } catch (err: any) {\n console.error(`Failed to read clipboard. message: ${err.message}`);\n throw err;\n }\n}\n"],"names":["isClient"],"mappings":";;;;;AAaA,eAAsB,qBAAA,GAAiD;AACrE,EAAA,IAAI,CAACA,yBAAS,EAAG;AACf,IAAA,MAAM,IAAI,MAAM,uDAAuD,CAAA;AAAA,EACzE;AAEA,EAAA,IAAI;AACF,IAAA,MAAM,QAAA,GAAW,MAAM,SAAA,CAAU,SAAA,CAAU,IAAA,EAAK;AAChD,IAAA,OAAO,QAAA;AAAA,EACT,SAAS,GAAA,EAAU;AACjB,IAAA,OAAA,CAAQ,KAAA,CAAM,CAAA,mCAAA,EAAsC,GAAA,CAAI,OAAO,CAAA,CAAE,CAAA;AACjE,IAAA,MAAM,GAAA;AAAA,EACR;AACF;;;;"}