@sanity/form-toolkit

3.0.163.0.17
dist/mailchimp/index.js.map
~dist/mailchimp/index.js.mapModified
+1−1
Index: package/dist/mailchimp/index.js.map
===================================================================
--- package/dist/mailchimp/index.js.map
+++ package/dist/mailchimp/index.js.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"index.js","names":["Card","Text","ReactElement","Option","option","$","_c","t0","form","header","text","value","t1","t2","Symbol","for","background","t3","list","name","stats","member_count","t4","t5","mailchimp","createHandler","MailchimpSignupForm","signup_form_url","key","fetchMailchimpData","server","Promise","setConfig","apiKey","response","lists","getAllLists","Error","signupFormsPerList","all","map","list","signup_forms","signupForms","getListSignupForms","id","form","value","flat","mailchimpHandler","keys","asyncList","definePlugin","Option","mailchimpHandler","fetchMailchimpData","MailchimpInputConfig","url","URL","mailchimpInput","options","name","plugins","schemaType","loader","data","fetch","body","json","autocompleteProps","renderOption","option"],"sources":["../../src/mailchimp/components/option.tsx","../../src/mailchimp/create-handler.ts","../../src/mailchimp/index.ts"],"sourcesContent":["import {Card, Text} from '@sanity/ui'\nimport type {ReactElement} from 'react'\n\nexport const Option = (option: {\n  value: string\n  form: {\n    header: {\n      text?: string\n    }\n  }\n  list: {\n    name: string\n    stats: {\n      member_count: number\n    }\n  }\n}): ReactElement => {\n  return (\n    <Card data-as=\"button\" padding={3} radius={2} tone=\"inherit\">\n      <Text size={2} textOverflow=\"ellipsis\">\n        {`${option.form.header.text ? `${option.form.header.text} - ` : ``}${option.value}`}\n      </Text>\n      <Card paddingTop={2} tone=\"inherit\" style={{background: 'inherit'}}>\n        <Text size={1} textOverflow=\"ellipsis\">\n          {`${option.list.name} - ${option.list.stats.member_count} member${option.list.stats.member_count == 1 ? '' : 's'}`}\n        </Text>\n      </Card>\n    </Card>\n  )\n}\n","import mailchimp from '@mailchimp/mailchimp_marketing'\n\nimport createHandler from '../shared/create-handler'\n\ninterface MailchimpSignupForm {\n  signup_form_url: string\n  [key: string]: unknown\n}\n\n// Fetch from Mailchimp's API\nexport async function fetchMailchimpData({\n  key,\n  server,\n}: {\n  key: string\n  server: string\n}): Promise<unknown> {\n  mailchimp.setConfig({\n    apiKey: key,\n    server: server,\n  })\n  const response = await mailchimp.lists.getAllLists()\n  if (!('lists' in response)) {\n    throw new Error('Failed to fetch Mailchimp lists')\n  }\n  const signupFormsPerList = await Promise.all(\n    response.lists.map(async (list) => {\n      const {signup_forms: signupForms}: {signup_forms: MailchimpSignupForm[]} =\n        // @ts-expect-error getListSignupForms is missing from the mailchimp typings\n        await mailchimp.lists.getListSignupForms(list.id)\n      return signupForms.map((form) => ({\n        list,\n        form,\n        value: form.signup_form_url,\n      }))\n    }),\n  )\n  return signupFormsPerList.flat()\n}\n\n// Create the Mailchimp handler for a specific key and server\nexport const mailchimpHandler = (keys: {key: string; server: string}) => {\n  return createHandler(() => fetchMailchimpData(keys))\n}\n","import '@sanity/ui/styles.css'\nimport {asyncList} from '@sanity/sanity-plugin-async-list'\nimport {definePlugin} from 'sanity'\n\nimport {Option} from './components/option'\nimport {mailchimpHandler} from './create-handler'\nimport {fetchMailchimpData} from './create-handler'\ninterface MailchimpInputConfig {\n  url: string | URL\n}\n\n/**\n * Usage in `sanity.config.ts` (or .js)\n *\n * ```ts\n * import {defineConfig} from 'sanity'\n * import {mailchimpInput} from '@sanity/form-toolkit/mailchimp'\n *\n * export default defineConfig({\n *   // ...\n *   plugins: [\n *    mailchimpInput({\n *      url: 'http://localhost:3000/api/mailchimp'\n *    })\n *   ],\n * })\n * ```\n */\nexport {fetchMailchimpData, mailchimpHandler}\nexport const mailchimpInput = definePlugin<MailchimpInputConfig>((options) => {\n  return {\n    name: 'sanity-plugin-form-toolkit_mailchimp-input',\n    plugins: [\n      asyncList({\n        schemaType: 'mailchimpForm',\n        loader: async () => {\n          const data = await fetch(options.url)\n          const body = await data.json()\n          return body\n        },\n        autocompleteProps: {\n          //@ts-expect-error incorrect typing on props?\n          renderOption: (option) => Option(option),\n        },\n      }),\n    ],\n  }\n})\n"],"mappings":";;;;;;;;AAGA,MAAaG,UAASC,WAAA;CAAA,IAAAC,IAAAC,EAAA,CAAA,GAiBbC,KAAA,GAAGH,OAAMI,KAAKC,OAAOC,OAAlB,GAA6BN,OAAMI,KAAKC,OAAOC,KAAK,OAApD,KAAiEN,OAAMO,SAAQC;CAAA,AAAAP,EAAA,OAAAE,KAC9EK,KAAAP,EAAA,MAFPO,KAAA,oBAAC,MAAD;EAAY,MAAA;EAAgB,cAAA;EACzBL,UAAAA;CADE,CAAA,GAEEF,EAAA,KAAAE,IAAAF,EAAA,KAAAO;CAAA,IAAAC;CAAA,AAAAR,EAAA,OAAAS,OAAAC,IAAA,2BAAA,KACoCF,KAAA,EAAAG,YAAa,UAAS,GAACX,EAAA,KAAAQ,MAAAA,KAAAR,EAAA;CAE7D,IAAAY,KAAA,GAAGb,OAAMc,KAAKC,KAAK,KAAMf,OAAMc,KAAKE,MAAMC,aAAa,SAAUjB,OAAMc,KAAKE,MAAMC,gBAAiB,IAAlC,KAAA,OAAgDC;CAAA,AAAAjB,EAAA,OAAAY,KAE/GK,KAAAjB,EAAA,MAJPiB,KAAA,oBAAC,MAAD;EAAkB,YAAA;EAAQ,MAAA;EAAiB,OAAAT;EACzC,UAAA,oBAAC,MAAD;GAAY,MAAA;GAAgB,cAAA;GACzBI,UAAAA;EADE,CAAA;CADF,CAAA,GAIEZ,EAAA,KAAAY,IAAAZ,EAAA,KAAAiB;CAAA,IAAAC;CACF,OADElB,EAAA,OAAAO,MAAAP,EAAA,OAAAiB,MARTC,KAAA,qBAAC,MAAD;EAAc,WAAA;EAAkB,SAAA;EAAW,QAAA;EAAQ,MAAA;EAAnD,UAAA,CACEX,IAGAU,EAJG;KASEjB,EAAA,KAAAO,IAAAP,EAAA,KAAAiB,IAAAjB,EAAA,KAAAkB,MAAAA,KAAAlB,EAAA,IATPkB;AASO;ACjBX,eAAsBM,mBAAmB,EACvCD,KACAE,UAImB;CACnBN,UAAUQ,UAAU;EAClBC,QAAQL;EACAE;CACV,CAAC;CACD,IAAMI,WAAW,MAAMV,UAAUW,MAAMC,YAAY;CACnD,IAAI,EAAE,WAAWF,WACf,MAAUG,MAAM,iCAAiC;CAcnD,QAAOC,MAZ0BP,QAAQQ,IACvCL,SAASC,MAAMK,IAAI,OAAOC,SAAS;EACjC,IAAM,EAACC,cAAcC,gBAEnB,MAAMnB,UAAUW,MAAMS,mBAAmBH,KAAKI,EAAE;EAClD,OAAOF,YAAYH,KAAKM,UAAU;GAChCL;GACAK;GACAC,OAAOD,KAAKnB;EACd,EAAE;CACJ,CAAC,CACH,EAAA,CAC0BqB,KAAK;AACjC;AAGA,MAAaC,oBAAoBC,SACxBzB,oBAAoBI,mBAAmBqB,IAAI,CAAC,GCbxCS,iBAAiBP,cAAoCQ,aACzD;CACLC,MAAM;CACNC,SAAS,CACPX,UAAU;EACRY,YAAY;EACZC,QAAQ,YAGCG,OADYF,MADAC,MAAMN,QAAQH,GAAG,EAAA,CACZW,KAAK;EAG/BC,mBAAmB,EAEjBC,eAAeC,WAAWlB,OAAOkB,MAAM,EACzC;CACF,CAAC,CAAC;AAEN,EACD"}
\ No newline at end of file
+{"version":3,"file":"index.js","names":["<Text size={2} textOverflow=\"ellipsis\">\n        {`${option.form.header.text ? `${option.form.header.text} - ` : ``}${option.value}`}\n      </Text>","`${option.form.header.text ? `${option.form.header.text} - ` : ``}${option.value}`","{background: 'inherit'}","<Card paddingTop={2} tone=\"inherit\" style={{background: 'inherit'}}>\n        <Text size={1} textOverflow=\"ellipsis\">\n          {`${option.list.name} - ${option.list.stats.member_count} member${option.list.stats.member_count == 1 ? '' : 's'}`}\n        </Text>\n      </Card>","`${option.list.name} - ${option.list.stats.member_count} member${option.list.stats.member_count == 1 ? '' : 's'}`","<Card data-as=\"button\" padding={3} radius={2} tone=\"inherit\">\n      <Text size={2} textOverflow=\"ellipsis\">\n        {`${option.form.header.text ? `${option.form.header.text} - ` : ``}${option.value}`}\n      </Text>\n      <Card paddingTop={2} tone=\"inherit\" style={{background: 'inherit'}}>\n        <Text size={1} textOverflow=\"ellipsis\">\n          {`${option.list.name} - ${option.list.stats.member_count} member${option.list.stats.member_count == 1 ? '' : 's'}`}\n        </Text>\n      </Card>\n    </Card>"],"sources":["../../src/mailchimp/components/option.tsx","../../src/mailchimp/create-handler.ts","../../src/mailchimp/index.ts"],"sourcesContent":["import {Card, Text} from '@sanity/ui'\nimport type {ReactElement} from 'react'\n\nexport const Option = (option: {\n  value: string\n  form: {\n    header: {\n      text?: string\n    }\n  }\n  list: {\n    name: string\n    stats: {\n      member_count: number\n    }\n  }\n}): ReactElement => {\n  return (\n    <Card data-as=\"button\" padding={3} radius={2} tone=\"inherit\">\n      <Text size={2} textOverflow=\"ellipsis\">\n        {`${option.form.header.text ? `${option.form.header.text} - ` : ``}${option.value}`}\n      </Text>\n      <Card paddingTop={2} tone=\"inherit\" style={{background: 'inherit'}}>\n        <Text size={1} textOverflow=\"ellipsis\">\n          {`${option.list.name} - ${option.list.stats.member_count} member${option.list.stats.member_count == 1 ? '' : 's'}`}\n        </Text>\n      </Card>\n    </Card>\n  )\n}\n","import mailchimp from '@mailchimp/mailchimp_marketing'\n\nimport createHandler from '../shared/create-handler'\n\ninterface MailchimpSignupForm {\n  signup_form_url: string\n  [key: string]: unknown\n}\n\n// Fetch from Mailchimp's API\nexport async function fetchMailchimpData({\n  key,\n  server,\n}: {\n  key: string\n  server: string\n}): Promise<unknown> {\n  mailchimp.setConfig({\n    apiKey: key,\n    server: server,\n  })\n  const response = await mailchimp.lists.getAllLists()\n  if (!('lists' in response)) {\n    throw new Error('Failed to fetch Mailchimp lists')\n  }\n  const signupFormsPerList = await Promise.all(\n    response.lists.map(async (list) => {\n      const {signup_forms: signupForms}: {signup_forms: MailchimpSignupForm[]} =\n        // @ts-expect-error getListSignupForms is missing from the mailchimp typings\n        await mailchimp.lists.getListSignupForms(list.id)\n      return signupForms.map((form) => ({\n        list,\n        form,\n        value: form.signup_form_url,\n      }))\n    }),\n  )\n  return signupFormsPerList.flat()\n}\n\n// Create the Mailchimp handler for a specific key and server\nexport const mailchimpHandler = (keys: {key: string; server: string}) => {\n  return createHandler(() => fetchMailchimpData(keys))\n}\n","import '@sanity/ui/styles.css'\nimport {asyncList} from '@sanity/sanity-plugin-async-list'\nimport {definePlugin} from 'sanity'\n\nimport {Option} from './components/option'\nimport {mailchimpHandler} from './create-handler'\nimport {fetchMailchimpData} from './create-handler'\ninterface MailchimpInputConfig {\n  url: string | URL\n}\n\n/**\n * Usage in `sanity.config.ts` (or .js)\n *\n * ```ts\n * import {defineConfig} from 'sanity'\n * import {mailchimpInput} from '@sanity/form-toolkit/mailchimp'\n *\n * export default defineConfig({\n *   // ...\n *   plugins: [\n *    mailchimpInput({\n *      url: 'http://localhost:3000/api/mailchimp'\n *    })\n *   ],\n * })\n * ```\n */\nexport {fetchMailchimpData, mailchimpHandler}\nexport const mailchimpInput = definePlugin<MailchimpInputConfig>((options) => {\n  return {\n    name: 'sanity-plugin-form-toolkit_mailchimp-input',\n    plugins: [\n      asyncList({\n        schemaType: 'mailchimpForm',\n        loader: async () => {\n          const data = await fetch(options.url)\n          const body = await data.json()\n          return body\n        },\n        autocompleteProps: {\n          //@ts-expect-error incorrect typing on props?\n          renderOption: (option) => Option(option),\n        },\n      }),\n    ],\n  }\n})\n"],"mappings":";;;;;;;;AAGA,MAAa,UAAU,WAaH;eAIX,KAAA,GAAG,OAAO,KAAK,OAAO,OAAO,GAAG,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,SAD9EA;CACGC,AAAAA,EAAAA,OAAAA,kBADH,KAAA,oBAAC,MAAD;EAAM,MAAM;EAAG,cAAa;EACzBA,UAAAA;CACG,CAAA,GADHA,EAAAA,KAAAA;CAEwCC,IAAAA;qDAAC,KAAA,EAAA,YAAY,UAAS;CAE5D,IAAA,KAAA,GAAG,OAAO,KAAK,KAAK,KAAK,OAAO,KAAK,MAAM,aAAa,SAAS,OAAO,KAAK,MAAM,gBAAgB,IAAI,KAAK,OAFjHC;CAEKC,AAAAA,EAAAA,OAAAA,kBAFL,KAAA,oBAAC,MAAD;EAAM,YAAY;EAAG,MAAK;EAAU,OAAOF;EACzC,UAAA,oBAAC,MAAD;GAAM,MAAM;GAAG,cAAa;GACzBE,UAAAA;EACG,CAAA;CACF,CAAA,GAFDA,EAAAA,KAAAA;CANPC,IAAAA;CADF,OAEIL,EAAAA,OAAAA,MAAAA,EAAAA,OAGAG,MAJF,KAAA,qBAAC,MAAD;EAAM,WAAQ;EAAS,SAAS;EAAG,QAAQ;EAAG,MAAK;EAAnD,UAAA,CACEH,IAGAG,EAKI;KARJH,EAAAA,KAAAA,IAGAG,EAAAA,KAAAA,4BAJFE;AAWJ;ACnBA,eAAsB,mBAAmB,EACvC,KACA,UAImB;CACnB,UAAU,UAAU;EAClB,QAAQ;EACA;CACV,CAAC;CACD,IAAM,WAAW,MAAM,UAAU,MAAM,YAAY;CACnD,IAAI,EAAE,WAAW,WACf,MAAU,MAAM,iCAAiC;CAcnD,QAAO,MAZ0B,QAAQ,IACvC,SAAS,MAAM,IAAI,OAAO,SAAS;EACjC,IAAM,EAAC,cAAc,gBAEnB,MAAM,UAAU,MAAM,mBAAmB,KAAK,EAAE;EAClD,OAAO,YAAY,KAAK,UAAU;GAChC;GACA;GACA,OAAO,KAAK;EACd,EAAE;CACJ,CAAC,CACH,EAAA,CAC0B,KAAK;AACjC;AAGA,MAAa,oBAAoB,SACxB,oBAAoB,mBAAmB,IAAI,CAAC,GCbxC,iBAAiB,cAAoC,aACzD;CACL,MAAM;CACN,SAAS,CACP,UAAU;EACR,YAAY;EACZ,QAAQ,YAGC,OADY,MADA,MAAM,QAAQ,GAAG,EAAA,CACZ,KAAK;EAG/B,mBAAmB,EAEjB,eAAe,WAAW,OAAO,MAAM,EACzC;CACF,CAAC,CACH;AACF,EACD"}
\ No newline at end of file