@jeromefitz/notion 6.1.1-canary.1 → 6.2.0-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +4 -0
- package/.turbo/turbo-lint$colon$ts.log +1 -0
- package/dist/get-types-7QEbhRzY.mjs +2 -0
- package/dist/get-types-7QEbhRzY.mjs.map +1 -0
- package/dist/index.mjs +2 -0
- package/{index.mjs.map → dist/index.mjs.map} +1 -1
- package/{queries/getBlocksByIdChildren → dist/queries/get-blocks-by-id-children}/index.d.mts +1 -1
- package/dist/queries/get-blocks-by-id-children/index.d.mts.map +1 -0
- package/dist/queries/get-blocks-by-id-children/index.mjs.map +1 -0
- package/{queries/getDatabasesByIdQuery → dist/queries/get-databases-by-id-query}/index.d.mts +1 -1
- package/dist/queries/get-databases-by-id-query/index.d.mts.map +1 -0
- package/dist/queries/get-databases-by-id-query/index.mjs.map +1 -0
- package/{queries/getDeepFetchAllChildren → dist/queries/get-deep-fetch-all-children}/index.d.mts +1 -1
- package/dist/queries/get-deep-fetch-all-children/index.d.mts.map +1 -0
- package/dist/queries/get-deep-fetch-all-children/index.mjs.map +1 -0
- package/{queries/getInfoType → dist/queries/get-info-type}/index.d.mts +1 -1
- package/dist/queries/get-info-type/index.d.mts.map +1 -0
- package/dist/queries/get-info-type/index.mjs.map +1 -0
- package/{queries/getNotionListing → dist/queries/get-notion-listing}/index.d.mts +1 -1
- package/dist/queries/get-notion-listing/index.d.mts.map +1 -0
- package/dist/queries/get-notion-listing/index.mjs +2 -0
- package/dist/queries/get-notion-listing/index.mjs.map +1 -0
- package/{queries/getNotionListingByDate → dist/queries/get-notion-listing-by-date}/index.d.mts +1 -1
- package/dist/queries/get-notion-listing-by-date/index.d.mts.map +1 -0
- package/dist/queries/get-notion-listing-by-date/index.mjs +2 -0
- package/dist/queries/get-notion-listing-by-date/index.mjs.map +1 -0
- package/{queries/getNotionSlug → dist/queries/get-notion-slug}/index.d.mts +1 -1
- package/dist/queries/get-notion-slug/index.d.mts.map +1 -0
- package/dist/queries/get-notion-slug/index.mjs +2 -0
- package/dist/queries/get-notion-slug/index.mjs.map +1 -0
- package/{queries/getNotionSlugByRoute → dist/queries/get-notion-slug-by-route}/index.d.mts +1 -1
- package/dist/queries/get-notion-slug-by-route/index.d.mts.map +1 -0
- package/dist/queries/get-notion-slug-by-route/index.mjs +2 -0
- package/dist/queries/get-notion-slug-by-route/index.mjs.map +1 -0
- package/{queries/getPagesById → dist/queries/get-pages-by-id}/index.d.mts +1 -1
- package/dist/queries/get-pages-by-id/index.d.mts.map +1 -0
- package/dist/queries/get-pages-by-id/index.mjs.map +1 -0
- package/{queries/getPathVariables → dist/queries/get-path-variables}/index.d.mts +1 -1
- package/dist/queries/get-path-variables/index.d.mts.map +1 -0
- package/dist/queries/get-path-variables/index.mjs +2 -0
- package/dist/queries/get-path-variables/index.mjs.map +1 -0
- package/{queries/getQuery → dist/queries/get-query}/index.d.mts +1 -1
- package/dist/queries/get-query/index.d.mts.map +1 -0
- package/dist/queries/get-query/index.mjs +2 -0
- package/dist/queries/get-query/index.mjs.map +1 -0
- package/dist/queries/index.d.mts +12 -0
- package/dist/queries/index.mjs +1 -0
- package/{utils/addTime → dist/utils/add-time}/index.d.mts +1 -1
- package/dist/utils/add-time/index.d.mts.map +1 -0
- package/dist/utils/add-time/index.mjs.map +1 -0
- package/{utils/dataNormalized → dist/utils/data-normalized}/index.d.mts +1 -1
- package/dist/utils/data-normalized/index.d.mts.map +1 -0
- package/dist/utils/data-normalized/index.mjs +1 -0
- package/{utils/dataNormalizedResults → dist/utils/data-normalized-results}/index.d.mts +1 -1
- package/dist/utils/data-normalized-results/index.d.mts.map +1 -0
- package/dist/utils/data-normalized-results/index.mjs +1 -0
- package/{utils/getDataType → dist/utils/get-data-type}/index.d.mts +1 -1
- package/dist/utils/get-data-type/index.d.mts.map +1 -0
- package/dist/utils/get-data-type/index.mjs.map +1 -0
- package/{utils/getTitle → dist/utils/get-title}/index.d.mts +1 -1
- package/dist/utils/get-title/index.d.mts.map +1 -0
- package/dist/utils/get-title/index.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/_unsupported.d.mts +1 -1
- package/dist/utils/get-types/_unsupported.d.mts.map +1 -0
- package/dist/utils/get-types/_unsupported.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/checkbox.d.mts +1 -1
- package/dist/utils/get-types/checkbox.d.mts.map +1 -0
- package/dist/utils/get-types/checkbox.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/date.d.mts +1 -1
- package/dist/utils/get-types/date.d.mts.map +1 -0
- package/dist/utils/get-types/date.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/email.d.mts +1 -1
- package/dist/utils/get-types/email.d.mts.map +1 -0
- package/dist/utils/get-types/email.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/files.d.mts +1 -1
- package/dist/utils/get-types/files.d.mts.map +1 -0
- package/dist/utils/get-types/files.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/index.d.mts +1 -1
- package/{utils/getTypes → dist/utils/get-types}/index.d.mts.map +1 -1
- package/dist/utils/get-types/index.mjs +1 -0
- package/{utils/getTypes/multi_select.d.mts → dist/utils/get-types/multi-select.d.mts} +2 -2
- package/dist/utils/get-types/multi-select.d.mts.map +1 -0
- package/{utils/getTypes/multi_select.mjs → dist/utils/get-types/multi-select.mjs} +1 -1
- package/dist/utils/get-types/multi-select.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/number.d.mts +1 -1
- package/dist/utils/get-types/number.d.mts.map +1 -0
- package/dist/utils/get-types/number.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/people.d.mts +1 -1
- package/dist/utils/get-types/people.d.mts.map +1 -0
- package/dist/utils/get-types/people.mjs.map +1 -0
- package/{utils/getTypes/phone_number.d.mts → dist/utils/get-types/phone-number.d.mts} +2 -2
- package/dist/utils/get-types/phone-number.d.mts.map +1 -0
- package/{utils/getTypes/phone_number.mjs → dist/utils/get-types/phone-number.mjs} +1 -1
- package/dist/utils/get-types/phone-number.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/relation.d.mts +1 -1
- package/dist/utils/get-types/relation.d.mts.map +1 -0
- package/dist/utils/get-types/relation.mjs +1 -0
- package/{utils/getTypes/rich_text.d.mts → dist/utils/get-types/rich-text.d.mts} +2 -2
- package/dist/utils/get-types/rich-text.d.mts.map +1 -0
- package/{utils/getTypes/rich_text.mjs → dist/utils/get-types/rich-text.mjs} +1 -1
- package/dist/utils/get-types/rich-text.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/rollup.d.mts +1 -1
- package/dist/utils/get-types/rollup.d.mts.map +1 -0
- package/dist/utils/get-types/rollup.mjs +1 -0
- package/{utils/getTypes → dist/utils/get-types}/select.d.mts +1 -1
- package/dist/utils/get-types/select.d.mts.map +1 -0
- package/dist/utils/get-types/select.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/title.d.mts +1 -1
- package/dist/utils/get-types/title.d.mts.map +1 -0
- package/dist/utils/get-types/title.mjs.map +1 -0
- package/{utils/getTypes → dist/utils/get-types}/url.d.mts +1 -1
- package/{utils/getTypes → dist/utils/get-types}/url.d.mts.map +1 -1
- package/dist/utils/get-types/url.mjs.map +1 -0
- package/dist/utils/index.d.mts +7 -0
- package/dist/utils/index.mjs +1 -0
- package/dist/utils-SxsCJsDP.mjs +2 -0
- package/dist/utils-SxsCJsDP.mjs.map +1 -0
- package/package.json +189 -38
- package/release.config.js +25 -0
- package/src/constants/index.ts +1326 -0
- package/src/index.ts +151 -0
- package/src/queries/get-blocks-by-id-children/index.ts +12 -0
- package/src/queries/get-databases-by-id-query/index.ts +28 -0
- package/src/queries/get-deep-fetch-all-children/index.ts +35 -0
- package/src/queries/get-info-type/index.ts +40 -0
- package/src/queries/get-notion-listing/index.ts +91 -0
- package/src/queries/get-notion-listing-by-date/index.ts +190 -0
- package/src/queries/get-notion-slug/index.ts +64 -0
- package/src/queries/get-notion-slug-by-route/index.ts +201 -0
- package/src/queries/get-pages-by-id/index.ts +12 -0
- package/src/queries/get-path-variables/index.ts +60 -0
- package/src/queries/get-query/index.ts +140 -0
- package/src/queries/index.ts +25 -0
- package/src/schema/index.ts +386 -0
- package/src/utils/add-time/index.ts +16 -0
- package/src/utils/data-normalized/index.ts +49 -0
- package/src/utils/data-normalized-results/index.ts +29 -0
- package/src/utils/get-data-type/index.ts +62 -0
- package/src/utils/get-title/index.ts +21 -0
- package/src/utils/get-types/_unsupported.ts +7 -0
- package/src/utils/get-types/checkbox.ts +3 -0
- package/src/utils/get-types/date.ts +6 -0
- package/src/utils/get-types/email.ts +3 -0
- package/src/utils/get-types/files.ts +67 -0
- package/src/utils/get-types/index.ts +41 -0
- package/src/utils/get-types/multi-select.ts +16 -0
- package/src/utils/get-types/number.ts +6 -0
- package/src/utils/get-types/people.ts +22 -0
- package/src/utils/get-types/phone-number.ts +3 -0
- package/src/utils/get-types/relation.ts +18 -0
- package/src/utils/get-types/rich-text.ts +5 -0
- package/src/utils/get-types/rollup.ts +30 -0
- package/src/utils/get-types/select.ts +21 -0
- package/src/utils/get-types/title.ts +4 -0
- package/src/utils/get-types/url.ts +3 -0
- package/src/utils/index.ts +16 -0
- package/tsconfig.json +15 -0
- package/tsdown.config.ts +14 -0
- package/getTypes-D-cwjcBl.mjs +0 -2
- package/getTypes-D-cwjcBl.mjs.map +0 -1
- package/index.mjs +0 -2
- package/queries/getBlocksByIdChildren/index.d.mts.map +0 -1
- package/queries/getBlocksByIdChildren/index.mjs.map +0 -1
- package/queries/getDatabasesByIdQuery/index.d.mts.map +0 -1
- package/queries/getDatabasesByIdQuery/index.mjs.map +0 -1
- package/queries/getDeepFetchAllChildren/index.d.mts.map +0 -1
- package/queries/getDeepFetchAllChildren/index.mjs.map +0 -1
- package/queries/getInfoType/index.d.mts.map +0 -1
- package/queries/getInfoType/index.mjs.map +0 -1
- package/queries/getNotionListing/index.d.mts.map +0 -1
- package/queries/getNotionListing/index.mjs +0 -2
- package/queries/getNotionListing/index.mjs.map +0 -1
- package/queries/getNotionListingByDate/index.d.mts.map +0 -1
- package/queries/getNotionListingByDate/index.mjs +0 -2
- package/queries/getNotionListingByDate/index.mjs.map +0 -1
- package/queries/getNotionSlug/index.d.mts.map +0 -1
- package/queries/getNotionSlug/index.mjs +0 -2
- package/queries/getNotionSlug/index.mjs.map +0 -1
- package/queries/getNotionSlugByRoute/index.d.mts.map +0 -1
- package/queries/getNotionSlugByRoute/index.mjs +0 -2
- package/queries/getNotionSlugByRoute/index.mjs.map +0 -1
- package/queries/getPagesById/index.d.mts.map +0 -1
- package/queries/getPagesById/index.mjs.map +0 -1
- package/queries/getPathVariables/index.d.mts.map +0 -1
- package/queries/getPathVariables/index.mjs +0 -2
- package/queries/getPathVariables/index.mjs.map +0 -1
- package/queries/getQuery/index.d.mts.map +0 -1
- package/queries/getQuery/index.mjs +0 -2
- package/queries/getQuery/index.mjs.map +0 -1
- package/queries/index.d.mts +0 -12
- package/queries/index.mjs +0 -1
- package/utils/addTime/index.d.mts.map +0 -1
- package/utils/addTime/index.mjs.map +0 -1
- package/utils/dataNormalized/index.d.mts.map +0 -1
- package/utils/dataNormalized/index.mjs +0 -1
- package/utils/dataNormalizedResults/index.d.mts.map +0 -1
- package/utils/dataNormalizedResults/index.mjs +0 -1
- package/utils/getDataType/index.d.mts.map +0 -1
- package/utils/getDataType/index.mjs.map +0 -1
- package/utils/getTitle/index.d.mts.map +0 -1
- package/utils/getTitle/index.mjs.map +0 -1
- package/utils/getTypes/_unsupported.d.mts.map +0 -1
- package/utils/getTypes/_unsupported.mjs.map +0 -1
- package/utils/getTypes/checkbox.d.mts.map +0 -1
- package/utils/getTypes/checkbox.mjs.map +0 -1
- package/utils/getTypes/date.d.mts.map +0 -1
- package/utils/getTypes/date.mjs.map +0 -1
- package/utils/getTypes/email.d.mts.map +0 -1
- package/utils/getTypes/email.mjs.map +0 -1
- package/utils/getTypes/files.d.mts.map +0 -1
- package/utils/getTypes/files.mjs.map +0 -1
- package/utils/getTypes/index.mjs +0 -1
- package/utils/getTypes/multi_select.d.mts.map +0 -1
- package/utils/getTypes/multi_select.mjs.map +0 -1
- package/utils/getTypes/number.d.mts.map +0 -1
- package/utils/getTypes/number.mjs.map +0 -1
- package/utils/getTypes/people.d.mts.map +0 -1
- package/utils/getTypes/people.mjs.map +0 -1
- package/utils/getTypes/phone_number.d.mts.map +0 -1
- package/utils/getTypes/phone_number.mjs.map +0 -1
- package/utils/getTypes/relation.d.mts.map +0 -1
- package/utils/getTypes/relation.mjs +0 -1
- package/utils/getTypes/rich_text.d.mts.map +0 -1
- package/utils/getTypes/rich_text.mjs.map +0 -1
- package/utils/getTypes/rollup.d.mts.map +0 -1
- package/utils/getTypes/rollup.mjs +0 -1
- package/utils/getTypes/select.d.mts.map +0 -1
- package/utils/getTypes/select.mjs.map +0 -1
- package/utils/getTypes/title.d.mts.map +0 -1
- package/utils/getTypes/title.mjs.map +0 -1
- package/utils/getTypes/url.mjs.map +0 -1
- package/utils/index.d.mts +0 -7
- package/utils/index.mjs +0 -1
- package/utils-VfbevQkn.mjs +0 -2
- package/utils-VfbevQkn.mjs.map +0 -1
- /package/{constants → dist/constants}/index.d.mts +0 -0
- /package/{constants → dist/constants}/index.d.mts.map +0 -0
- /package/{constants → dist/constants}/index.mjs +0 -0
- /package/{constants → dist/constants}/index.mjs.map +0 -0
- /package/{index-BAoq6yHe.d.mts → dist/index-BAoq6yHe.d.mts} +0 -0
- /package/{index-BAoq6yHe.d.mts.map → dist/index-BAoq6yHe.d.mts.map} +0 -0
- /package/{index.d.mts → dist/index.d.mts} +0 -0
- /package/{index.d.mts.map → dist/index.d.mts.map} +0 -0
- /package/{queries/getBlocksByIdChildren → dist/queries/get-blocks-by-id-children}/index.mjs +0 -0
- /package/{queries/getDatabasesByIdQuery → dist/queries/get-databases-by-id-query}/index.mjs +0 -0
- /package/{queries/getDeepFetchAllChildren → dist/queries/get-deep-fetch-all-children}/index.mjs +0 -0
- /package/{queries/getInfoType → dist/queries/get-info-type}/index.mjs +0 -0
- /package/{queries/getPagesById → dist/queries/get-pages-by-id}/index.mjs +0 -0
- /package/{schema → dist/schema}/index.d.mts +0 -0
- /package/{schema → dist/schema}/index.mjs +0 -0
- /package/{utils/addTime → dist/utils/add-time}/index.mjs +0 -0
- /package/{utils/getDataType → dist/utils/get-data-type}/index.mjs +0 -0
- /package/{utils/getTitle → dist/utils/get-title}/index.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/_unsupported.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/checkbox.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/date.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/email.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/files.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/number.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/people.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/select.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/title.mjs +0 -0
- /package/{utils/getTypes → dist/utils/get-types}/url.mjs +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
$ tsc --noEmit --declaration
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import e from"./utils/get-types/_unsupported.mjs";import t from"./utils/get-types/checkbox.mjs";import n from"./utils/get-types/date.mjs";import r from"./utils/get-types/email.mjs";import i from"./utils/get-types/files.mjs";import a from"./utils/get-types/multi-select.mjs";import o from"./utils/get-types/number.mjs";import s from"./utils/get-types/people.mjs";import c from"./utils/get-types/phone-number.mjs";import l from"./utils/get-types/rich-text.mjs";import u from"./utils/get-types/select.mjs";import d from"./utils/get-types/title.mjs";import f from"./utils/get-types/url.mjs";import{map as p,sortBy as m}from"lodash-es";const h=e=>e.type===`rollup`?e.rollup.type===`array`&&p(e.rollup.array,e=>_[e.type](e))[0]:p(e.relation,e=>e.id),g=e=>{let t=e?.rollup;return m(p(t?.array,e=>p(e[e?.type],t=>_[e?.type]({[e?.type]:[t],type:e?.type})))).flat()},_={checkbox:t,created_by:e,created_time:n,date:n,email:r,files:i,formula:e,image:i,last_edited_by:e,last_edited_time:n,multi_select:a,number:o,people:s,phone_number:c,relation:h,rich_text:l,rollup:g,select:u,title:d,url:f};export{g as n,h as r,_ as t};
|
|
2
|
+
//# sourceMappingURL=get-types-7QEbhRzY.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-types-7QEbhRzY.mjs","names":["_map","_sortBy","_map"],"sources":["../src/utils/get-types/relation.ts","../src/utils/get-types/rollup.ts","../src/utils/get-types/index.ts"],"sourcesContent":["import { map as _map } from \"lodash-es\";\n\nimport getTypes from \"../../utils/get-types/index\";\n\nconst relation = (data: any) => {\n if (data.type === \"rollup\") {\n return (\n data.rollup.type === \"array\" &&\n _map(data.rollup.array, (item: any) => {\n return getTypes[item.type](item);\n })[0]\n );\n } else {\n return _map(data.relation, (relation: any) => relation.id);\n }\n};\n\nexport default relation;\n","import { map as _map, sortBy as _sortBy } from \"lodash-es\";\n\nimport type { RollupFunction } from \"../../schema/index\";\nimport getTypes from \"../../utils/get-types/index\";\n\n/**\n * @note(notion) https://github.com/JeromeFitz/packages/issues/631\n */\ntype Rollup = {\n array: any;\n function: RollupFunction;\n type: \"array\";\n};\n\n// @todo(types)\nconst rollup = (data: any) => {\n const rollupData: Rollup = data?.rollup;\n return _sortBy(\n _map(rollupData?.array, (item) =>\n _map(item[item?.type], (itemData) =>\n getTypes[item?.type]({\n [item?.type]: [itemData],\n type: item?.type,\n }),\n ),\n ),\n ).flat();\n};\n\nexport default rollup;\n","import _unsupported from \"./_unsupported\";\nimport checkbox from \"./checkbox\";\nimport date from \"./date\";\nimport email from \"./email\";\nimport files from \"./files\";\n// import images from './images'\nimport multi_select from \"./multi-select\";\nimport number from \"./number\";\nimport people from \"./people\";\nimport phone_number from \"./phone-number\";\nimport relation from \"./relation\";\nimport rich_text from \"./rich-text\";\nimport rollup from \"./rollup\";\nimport select from \"./select\";\nimport title from \"./title\";\nimport url from \"./url\";\n\nconst getTypes = {\n checkbox,\n created_by: _unsupported,\n created_time: date,\n date,\n email,\n files,\n formula: _unsupported,\n image: files,\n last_edited_by: _unsupported,\n last_edited_time: date,\n multi_select,\n number,\n people,\n phone_number,\n relation,\n rich_text,\n rollup,\n select,\n title,\n url,\n};\n\nexport default getTypes;\n"],"mappings":"unBAIA,MAAM,EAAY,GACZ,EAAK,OAAS,SAEd,EAAK,OAAO,OAAS,SACrBA,EAAK,EAAK,OAAO,MAAQ,GAChB,EAAS,EAAK,KAAK,CAAC,CAAI,CAChC,CAAC,CAAC,GAGEA,EAAK,EAAK,SAAW,GAAkB,EAAS,EAAE,ECEvD,EAAU,GAAc,CAC5B,IAAM,EAAqB,GAAM,OACjC,OAAOC,EACLC,EAAK,GAAY,MAAQ,GACvBA,EAAK,EAAK,GAAM,MAAQ,GACtB,EAAS,GAAM,KAAK,CAAC,EAClB,GAAM,MAAO,CAAC,CAAQ,EACvB,KAAM,GAAM,IACd,CAAC,CACH,CACF,CACF,CAAC,CAAC,KAAK,CACT,ECVM,EAAW,CACf,WACA,WAAY,EACZ,aAAc,EACd,OACA,QACA,QACA,QAAS,EACT,MAAO,EACP,eAAgB,EAChB,iBAAkB,EAClB,eACA,SACA,SACA,eACA,WACA,YACA,SACA,SACA,QACA,KACF"}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{DATA_TYPES as e}from"./constants/index.mjs";import t from"./queries/get-blocks-by-id-children/index.mjs";import n from"./queries/get-databases-by-id-query/index.mjs";import r from"./queries/get-deep-fetch-all-children/index.mjs";import i from"./queries/get-info-type/index.mjs";import a from"./queries/get-notion-listing-by-date/index.mjs";import o from"./queries/get-notion-listing/index.mjs";import s from"./queries/get-notion-slug-by-route/index.mjs";import c from"./queries/get-notion-slug/index.mjs";import l from"./queries/get-pages-by-id/index.mjs";import u from"./queries/get-path-variables/index.mjs";import d from"./queries/get-query/index.mjs";import"./queries/index.mjs";import{Client as f}from"@notionhq/client";var p=class extends f{#e;custom={getBlocksByIdChildren:async e=>await t({...e,getBlocksChildrenList:this.blocks.children.list}),getDatabasesByIdQuery:async e=>await n({...e,getDatabasesQuery:this.databases.query}),getDeepFetchAllChildren:async e=>await r({...e,getBlocksChildrenList:this.blocks.children.list}),getInfoType:e=>i({...e,config:this.#e}),getPagesById:async e=>await l({...e,getPagesRetrieve:this.pages.retrieve}),getPathVariables:e=>u({...e,config:this.#e}),getQuery:async e=>await d({...e,config:this.#e,notionDatabasesQuery:this.databases.query})};dataTypes={[e.LISTING]:async e=>await o({...e,config:this.#e,getBlocksByIdChildren:this.custom.getBlocksByIdChildren,getDatabasesByIdQuery:this.custom.getDatabasesByIdQuery,getPagesById:this.custom.getPagesById}),[e.LISTING_BY_DATE]:async e=>await a({...e,config:this.#e,getBlocksByIdChildren:this.custom.getBlocksByIdChildren,getDatabasesByIdQuery:this.custom.getDatabasesByIdQuery,getPagesById:this.custom.getPagesById}),[e.SLUG]:async e=>await c({...e,config:this.#e,getBlocksByIdChildren:this.custom.getBlocksByIdChildren,getDatabasesByIdQuery:this.custom.getDatabasesByIdQuery,getDeepFetchAllChildren:this.custom.getDeepFetchAllChildren}),[e.SLUG_BY_ROUTE]:async e=>await s({...e,config:this.#e,getBlocksByIdChildren:this.custom.getBlocksByIdChildren,getDatabasesByIdQuery:this.custom.getDatabasesByIdQuery,getQuery:this.custom.getQuery})};constructor(e){super(e),this.#e=e?.config}};export{p as Client};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["_Client","#config"],"sources":["../src/index.ts"],"sourcesContent":["import { Client as _Client } from \"@notionhq/client\";\n\nimport { DATA_TYPES } from \"./constants/index\";\nimport {\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getDeepFetchAllChildren,\n getInfoType,\n getNotionListing,\n getNotionListingByDate,\n getNotionSlug,\n getNotionSlugByRoute,\n getPagesById,\n getPathVariables,\n getQuery,\n} from \"./queries/index\";\n\ntype ClientProps = {\n custom: CustomProps;\n dataTypes: DataTypesProps;\n};\n\ntype CredentialProps = {\n auth: string;\n config: any;\n};\n\ntype CustomProps = {\n getBlocksByIdChildren: any;\n getDatabasesByIdQuery: any;\n getDeepFetchAllChildren: any;\n getInfoType: any;\n getPagesById: any;\n getPathVariables: any;\n getQuery: any;\n};\n\ntype DataTypesProps = {\n LISTING: any;\n LISTING_BY_DATE: any;\n SLUG: any;\n SLUG_BY_ROUTE: any;\n};\n\nclass Client extends _Client {\n #config?: any;\n\n // @todo(notion) throw error if `config` is not passed\n public readonly custom = {\n getBlocksByIdChildren: async (props) =>\n await getBlocksByIdChildren({\n ...props,\n getBlocksChildrenList: this.blocks.children.list,\n }),\n\n getDatabasesByIdQuery: async (props) =>\n await getDatabasesByIdQuery({\n ...props,\n getDatabasesQuery: this.databases.query,\n }),\n\n getDeepFetchAllChildren: async (props) =>\n await getDeepFetchAllChildren({\n ...props,\n getBlocksChildrenList: this.blocks.children.list,\n }),\n\n getInfoType: (props) => {\n return getInfoType({ ...props, config: this.#config });\n },\n\n getPagesById: async (props) =>\n await getPagesById({ ...props, getPagesRetrieve: this.pages.retrieve }),\n\n getPathVariables: (props) => getPathVariables({ ...props, config: this.#config }),\n\n getQuery: async (props) =>\n await getQuery({\n ...props,\n config: this.#config,\n notionDatabasesQuery: this.databases.query,\n }),\n };\n\n /**\n * @info details at: ../../utils/getDataType\n *\n */\n public readonly dataTypes = {\n [DATA_TYPES.LISTING]: async (props: { pathVariables: any; routeType: any; slug?: any }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.LISTING}`)\n return await getNotionListing({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getPagesById: this.custom.getPagesById,\n });\n },\n\n [DATA_TYPES.LISTING_BY_DATE]: async (props: {\n pathVariables: any;\n routeType: any;\n slug: any;\n }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.LISTING_BY_DATE}`)\n return await getNotionListingByDate({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getPagesById: this.custom.getPagesById,\n });\n },\n\n [DATA_TYPES.SLUG]: async (props: { pathVariables: any; routeType: any; slug: any }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.SLUG}`)\n return await getNotionSlug({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getDeepFetchAllChildren: this.custom.getDeepFetchAllChildren,\n });\n },\n\n [DATA_TYPES.SLUG_BY_ROUTE]: async (props: {\n pathVariables: any;\n routeType: any;\n slug: any;\n }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.SLUG_BY_ROUTE}`)\n return await getNotionSlugByRoute({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getQuery: this.custom.getQuery,\n });\n },\n };\n\n // public constructor(options?: ClientOptions) {\n public constructor(options?: any) {\n super(options);\n this.#config = options?.config;\n }\n}\n\nexport type { ClientProps, CredentialProps };\nexport { Client };\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_Client","#config"],"sources":["../src/index.ts"],"sourcesContent":["import { Client as _Client } from \"@notionhq/client\";\n\nimport { DATA_TYPES } from \"./constants/index\";\nimport {\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getDeepFetchAllChildren,\n getInfoType,\n getNotionListing,\n getNotionListingByDate,\n getNotionSlug,\n getNotionSlugByRoute,\n getPagesById,\n getPathVariables,\n getQuery,\n} from \"./queries/index\";\n\ntype ClientProps = {\n custom: CustomProps;\n dataTypes: DataTypesProps;\n};\n\ntype CredentialProps = {\n auth: string;\n config: any;\n};\n\ntype CustomProps = {\n getBlocksByIdChildren: any;\n getDatabasesByIdQuery: any;\n getDeepFetchAllChildren: any;\n getInfoType: any;\n getPagesById: any;\n getPathVariables: any;\n getQuery: any;\n};\n\ntype DataTypesProps = {\n LISTING: any;\n LISTING_BY_DATE: any;\n SLUG: any;\n SLUG_BY_ROUTE: any;\n};\n\nclass Client extends _Client {\n #config?: any;\n\n // @todo(notion) throw error if `config` is not passed\n public readonly custom = {\n getBlocksByIdChildren: async (props) =>\n await getBlocksByIdChildren({\n ...props,\n getBlocksChildrenList: this.blocks.children.list,\n }),\n\n getDatabasesByIdQuery: async (props) =>\n await getDatabasesByIdQuery({\n ...props,\n getDatabasesQuery: this.databases.query,\n }),\n\n getDeepFetchAllChildren: async (props) =>\n await getDeepFetchAllChildren({\n ...props,\n getBlocksChildrenList: this.blocks.children.list,\n }),\n\n getInfoType: (props) => {\n return getInfoType({ ...props, config: this.#config });\n },\n\n getPagesById: async (props) =>\n await getPagesById({ ...props, getPagesRetrieve: this.pages.retrieve }),\n\n getPathVariables: (props) => getPathVariables({ ...props, config: this.#config }),\n\n getQuery: async (props) =>\n await getQuery({\n ...props,\n config: this.#config,\n notionDatabasesQuery: this.databases.query,\n }),\n };\n\n /**\n * @info details at: ../../utils/getDataType\n *\n */\n public readonly dataTypes = {\n [DATA_TYPES.LISTING]: async (props: { pathVariables: any; routeType: any; slug?: any }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.LISTING}`)\n return await getNotionListing({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getPagesById: this.custom.getPagesById,\n });\n },\n\n [DATA_TYPES.LISTING_BY_DATE]: async (props: {\n pathVariables: any;\n routeType: any;\n slug: any;\n }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.LISTING_BY_DATE}`)\n return await getNotionListingByDate({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getPagesById: this.custom.getPagesById,\n });\n },\n\n [DATA_TYPES.SLUG]: async (props: { pathVariables: any; routeType: any; slug: any }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.SLUG}`)\n return await getNotionSlug({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getDeepFetchAllChildren: this.custom.getDeepFetchAllChildren,\n });\n },\n\n [DATA_TYPES.SLUG_BY_ROUTE]: async (props: {\n pathVariables: any;\n routeType: any;\n slug: any;\n }) => {\n // console.dir(`📦️ [@jeromefitz/notion] => ${DATA_TYPES.SLUG_BY_ROUTE}`)\n return await getNotionSlugByRoute({\n ...props,\n config: this.#config,\n getBlocksByIdChildren: this.custom.getBlocksByIdChildren,\n getDatabasesByIdQuery: this.custom.getDatabasesByIdQuery,\n getQuery: this.custom.getQuery,\n });\n },\n };\n\n // public constructor(options?: ClientOptions) {\n public constructor(options?: any) {\n super(options);\n this.#config = options?.config;\n }\n}\n\nexport type { ClientProps, CredentialProps };\nexport { Client };\n"],"mappings":"4tBA4CA,IAAM,EAAN,cAAqBA,CAAQ,CAC3B,GAGA,OAAyB,CACvB,sBAAuB,KAAO,IAC5B,MAAM,EAAsB,CAC1B,GAAG,EACH,sBAAuB,KAAK,OAAO,SAAS,IAC9C,CAAC,EAEH,sBAAuB,KAAO,IAC5B,MAAM,EAAsB,CAC1B,GAAG,EACH,kBAAmB,KAAK,UAAU,KACpC,CAAC,EAEH,wBAAyB,KAAO,IAC9B,MAAM,EAAwB,CAC5B,GAAG,EACH,sBAAuB,KAAK,OAAO,SAAS,IAC9C,CAAC,EAEH,YAAc,GACL,EAAY,CAAE,GAAG,EAAO,OAAQ,KAAKC,EAAQ,CAAC,EAGvD,aAAc,KAAO,IACnB,MAAM,EAAa,CAAE,GAAG,EAAO,iBAAkB,KAAK,MAAM,QAAS,CAAC,EAExE,iBAAmB,GAAU,EAAiB,CAAE,GAAG,EAAO,OAAQ,KAAKA,EAAQ,CAAC,EAEhF,SAAU,KAAO,IACf,MAAM,EAAS,CACb,GAAG,EACH,OAAQ,KAAKA,GACb,qBAAsB,KAAK,UAAU,KACvC,CAAC,CACL,EAMA,UAA4B,EACzB,EAAW,SAAU,KAAO,IAEpB,MAAM,EAAiB,CAC5B,GAAG,EACH,OAAQ,KAAKA,GACb,sBAAuB,KAAK,OAAO,sBACnC,sBAAuB,KAAK,OAAO,sBACnC,aAAc,KAAK,OAAO,YAC5B,CAAC,GAGF,EAAW,iBAAkB,KAAO,IAM5B,MAAM,EAAuB,CAClC,GAAG,EACH,OAAQ,KAAKA,GACb,sBAAuB,KAAK,OAAO,sBACnC,sBAAuB,KAAK,OAAO,sBACnC,aAAc,KAAK,OAAO,YAC5B,CAAC,GAGF,EAAW,MAAO,KAAO,IAEjB,MAAM,EAAc,CACzB,GAAG,EACH,OAAQ,KAAKA,GACb,sBAAuB,KAAK,OAAO,sBACnC,sBAAuB,KAAK,OAAO,sBACnC,wBAAyB,KAAK,OAAO,uBACvC,CAAC,GAGF,EAAW,eAAgB,KAAO,IAM1B,MAAM,EAAqB,CAChC,GAAG,EACH,OAAQ,KAAKA,GACb,sBAAuB,KAAK,OAAO,sBACnC,sBAAuB,KAAK,OAAO,sBACnC,SAAU,KAAK,OAAO,QACxB,CAAC,CAEL,EAGA,YAAmB,EAAe,CAChC,MAAM,CAAO,EACb,KAAKA,GAAU,GAAS,MAC1B,CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-blocks-by-id-children/index.ts"],"mappings":";cAGM,qBAAA;EAA+B,QAAA;EAAA;AAAA;;;MAAmC,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/queries/get-blocks-by-id-children/index.ts"],"sourcesContent":["import { avoidRateLimit, isUndefined } from \"@jeromefitz/utils\";\n\n// @todo(types)\nconst getBlocksByIdChildren = async ({ block_id, getBlocksChildrenList }) => {\n if (isUndefined(block_id)) return [];\n await avoidRateLimit(0);\n return await getBlocksChildrenList({\n block_id,\n });\n};\n\nexport default getBlocksByIdChildren;\n"],"mappings":"oEAGA,MAAM,EAAwB,MAAO,CAAE,WAAU,2BAC3C,EAAY,CAAQ,EAAU,CAAC,GACnC,MAAM,EAAe,CAAC,EACf,MAAM,EAAsB,CACjC,UACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-databases-by-id-query/index.ts"],"mappings":";;;cAaM,qBAAA;EAA+B,WAAA;EAAA,MAAA;EAAA,iBAAA;EAAA;AAAA;;;;UAAA,QAAA;AAAA,MAKpC,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/queries/get-databases-by-id-query/index.ts"],"sourcesContent":["import { PROPERTIES } from \"../../constants/index\";\nimport type { SortMock } from \"../../schema/index\";\n\nconst sortDefault: SortMock = {\n sorts: [\n {\n direction: \"ascending\",\n property: PROPERTIES.slug.notion,\n },\n ],\n};\n\n// @todo(types)\nconst getDatabasesByIdQuery = async ({\n database_id,\n filter = sortDefault?.filter,\n getDatabasesQuery,\n sorts = sortDefault?.sorts,\n}) => {\n if (!database_id) return [];\n return await getDatabasesQuery({\n database_id,\n filter,\n sorts,\n });\n};\n\nexport default getDatabasesByIdQuery;\n"],"mappings":"uDAGA,MAAM,EAAwB,CAC5B,MAAO,CACL,CACE,UAAW,YACX,SAAU,EAAW,KAAK,MAC5B,CACF,CACF,EAGM,EAAwB,MAAO,CACnC,cACA,SAAS,GAAa,OACtB,oBACA,QAAQ,GAAa,SAEhB,EACE,MAAM,EAAkB,CAC7B,cACA,SACA,OACF,CAAC,EALwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-deep-fetch-all-children/index.ts"],"mappings":";cAAM,uBAAA;EAAiC,MAAA;EAAA;AAAA;;;MAGnC,OAAA,CAAQ,KAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/queries/get-deep-fetch-all-children/index.ts"],"sourcesContent":["const getDeepFetchAllChildren = async ({\n blocks,\n getBlocksChildrenList,\n}): Promise<Array<any | any[]>> => {\n if (blocks === null || blocks === undefined) return blocks;\n const fetchChildrenMap = blocks\n .filter((block: { has_children: any }) => block.has_children)\n .map((parent_block: { id: string }) => {\n const { id: block_id } = parent_block;\n return {\n parent_block,\n promise: getBlocksChildrenList({\n block_id,\n page_size: 100,\n }),\n };\n });\n\n const results = await Promise.all<any>(fetchChildrenMap.map((value) => value.promise));\n\n for (let i = 0; i < results.length; i++) {\n const blocks = results[i].results;\n await getDeepFetchAllChildren({\n blocks,\n getBlocksChildrenList,\n });\n if (fetchChildrenMap[i]) {\n const parent: any = fetchChildrenMap[i].parent_block;\n parent[parent.type].children = blocks;\n }\n }\n return blocks;\n};\n\nexport default getDeepFetchAllChildren;\n"],"mappings":"AAAA,MAAM,EAA0B,MAAO,CACrC,SACA,2BACiC,CACjC,GAAI,GAAW,KAA8B,OAAO,EACpD,IAAM,EAAmB,EACtB,OAAQ,GAAiC,EAAM,YAAY,CAAC,CAC5D,IAAK,GAAiC,CACrC,GAAM,CAAE,GAAI,GAAa,EACzB,MAAO,CACL,eACA,QAAS,EAAsB,CAC7B,WACA,UAAW,GACb,CAAC,CACH,CACF,CAAC,EAEG,EAAU,MAAM,QAAQ,IAAS,EAAiB,IAAK,GAAU,EAAM,OAAO,CAAC,EAErF,IAAK,IAAI,EAAI,EAAG,EAAI,EAAQ,OAAQ,IAAK,CACvC,IAAM,EAAS,EAAQ,EAAE,CAAC,QAK1B,GAJA,MAAM,EAAwB,CAC5B,SACA,uBACF,CAAC,EACG,EAAiB,GAAI,CACvB,IAAM,EAAc,EAAiB,EAAE,CAAC,aACxC,EAAO,EAAO,KAAK,CAAC,SAAW,CACjC,CACF,CACA,OAAO,CACT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-info-type/index.ts"],"mappings":";cAAM,WAAA;EAAe,MAAA;EAAA,IAAA;EAAA,IAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/queries/get-info-type/index.ts"],"sourcesContent":["const getInfoType = ({ config, item, meta, routeType }) => {\n const { NOTION } = config;\n\n let date = \"\";\n const slug = item.properties?.slug;\n\n let as = \"\";\n const href = `/[...catchAll]`;\n\n switch (routeType) {\n case NOTION.BLOG.routeType:\n case NOTION.EVENTS.routeType:\n date = item.properties[NOTION[routeType.toUpperCase()].infoType.key]?.start.slice(0, 10);\n // oxlint-disable-next-line no-unsafe-optional-chaining\n const [year, month, day] = date?.split(\"-\");\n as = `/${routeType}/${year}/${month}/${day}/${slug}`;\n break;\n case NOTION.EPISODES.routeType:\n as = `/${meta?.join(\"/\")}/${slug}`;\n break;\n // case NOTION.PODCASTS.routeType:\n // case NOTION.PEOPLE.routeType:\n // case NOTION.SHOWS.routeType:\n // case NOTION.VENUES.routeType:\n default:\n as = `/${routeType}/${slug}`;\n break;\n }\n\n as = as.replace(\"//\", \"/\");\n\n return {\n as,\n date,\n href,\n slug,\n };\n};\n\nexport default getInfoType;\n"],"mappings":"AAAA,MAAM,GAAe,CAAE,SAAQ,OAAM,OAAM,eAAgB,CACzD,GAAM,CAAE,UAAW,EAEf,EAAO,GACL,EAAO,EAAK,YAAY,KAE1B,EAAK,GAGT,OAAQ,EAAR,CACE,KAAK,EAAO,KAAK,UACjB,KAAK,EAAO,OAAO,UACjB,EAAO,EAAK,WAAW,EAAO,EAAU,YAAY,EAAE,CAAC,SAAS,IAAI,EAAE,MAAM,MAAM,EAAG,EAAE,EAEvF,GAAM,CAAC,EAAM,EAAO,GAAO,GAAM,MAAM,GAAG,EAC1C,EAAK,IAAI,EAAU,GAAG,EAAK,GAAG,EAAM,GAAG,EAAI,GAAG,IAC9C,MACF,KAAK,EAAO,SAAS,UACnB,EAAK,IAAI,GAAM,KAAK,GAAG,EAAE,GAAG,IAC5B,MAKF,QACE,EAAK,IAAI,EAAU,GAAG,IACtB,KACJ,CAIA,MAFA,GAAK,EAAG,QAAQ,KAAM,GAAG,EAElB,CACL,KACA,OACA,sBACA,MACF,CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-notion-listing/index.ts"],"mappings":";cAMM,gBAAA;EAA0B,MAAA;EAAA,qBAAA;EAAA,qBAAA;EAAA,YAAA;EAAA,aAAA;EAAA;AAAA;;;;;;;MAO/B,OAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PROPERTIES as e}from"../../constants/index.mjs";import{t}from"../../utils-SxsCJsDP.mjs";import{map as n,omit as r}from"lodash-es";import{sortObject as i}from"@jeromefitz/utils";const a=async({config:a,getBlocksByIdChildren:o,getDatabasesByIdQuery:s,getPagesById:c,pathVariables:l,routeType:u})=>{let{NOTION:d}=a,f={},p=d[u.toUpperCase()].page_id__seo,m=await c({page_id:p});if(!m)return{};m?.object===`page`&&(f=r(m,`properties`),f.properties=i(t({config:a,data:m,pageId:f.id,pathVariables:l})));let h=d[u.toUpperCase()].infoType.notion??e.datePublished.notion,g=h===e.datePublished.notion?new Date(`2020-01-01`).toISOString():new Date().toISOString(),_=await o({block_id:f.id}),v=await s({database_id:d[u.toUpperCase()].database_id,filter:{and:[{date:{on_or_after:g},property:h}]}}),y=[];n(v.results,e=>{let n=e;n=r(n,`properties`),n.properties=i(t({config:a,data:e,pageId:e.id,pathVariables:l})),y.push(n)});let b=r(v,`results`);return b.results=y,{content:_,images:{},info:f,items:b}};export{a as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_omit"],"sources":["../../../src/queries/get-notion-listing/index.ts"],"sourcesContent":["import { sortObject } from \"@jeromefitz/utils\";\nimport { map as _map, omit as _omit } from \"lodash-es\";\n\nimport { PROPERTIES } from \"../../constants/index\";\nimport { dataNormalized } from \"../../utils/index\";\n\nconst getNotionListing = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getPagesById,\n pathVariables,\n routeType,\n}) => {\n const { NOTION } = config;\n\n let info: any = {};\n\n const page_id = NOTION[routeType.toUpperCase()].page_id__seo;\n const _info = await getPagesById({\n page_id,\n });\n // @refactor(404)\n if (!_info) {\n return {};\n }\n if (_info?.object === \"page\") {\n info = _omit(_info, \"properties\");\n info.properties = sortObject(\n dataNormalized({ config, data: _info, pageId: info.id, pathVariables }),\n );\n }\n\n const property =\n NOTION[routeType.toUpperCase()].infoType.notion ?? PROPERTIES.datePublished.notion;\n\n /**\n * @todo Can we make the date dynamic?\n * This can be considered the date you want to go back in time to on build.\n * Can be construed as the website creation date, too I guess.\n *\n * For those routeTypes that do not go off of datePublished,\n * we want to get their listing by the current date.\n *\n * ex) /events => Only want events that are in the future.\n *\n */\n const timestamp =\n property === PROPERTIES.datePublished.notion\n ? new Date(\"2020-01-01\").toISOString()\n : new Date().toISOString();\n\n const content = await getBlocksByIdChildren({ block_id: info.id });\n const _items: any = await getDatabasesByIdQuery({\n database_id: NOTION[routeType.toUpperCase()].database_id,\n filter: {\n and: [\n {\n date: {\n on_or_after: timestamp,\n },\n property,\n },\n ],\n },\n });\n const results: any[] = [];\n _map(_items.results, (item) => {\n let itemInit = item;\n itemInit = _omit(itemInit, \"properties\");\n itemInit.properties = sortObject(\n dataNormalized({ config, data: item, pageId: item.id, pathVariables }),\n );\n results.push(itemInit);\n // console.dir(`> last_edited_time`)\n // console.dir(item.id)\n // console.dir(item.last_edited_time)\n // console.dir(`---`)\n });\n const items = _omit(_items, \"results\");\n items.results = results;\n\n /**\n * @note(plaiceholder)\n *\n * Pass empty `images` object for SSR/API takeover\n */\n return { content, images: {}, info, items };\n};\n\nexport default getNotionListing;\n"],"mappings":"wLAMA,MAAM,EAAmB,MAAO,CAC9B,SACA,wBACA,wBACA,eACA,gBACA,eACI,CACJ,GAAM,CAAE,UAAW,EAEf,EAAY,CAAC,EAEX,EAAU,EAAO,EAAU,YAAY,EAAE,CAAC,aAC1C,EAAQ,MAAM,EAAa,CAC/B,SACF,CAAC,EAED,GAAI,CAAC,EACH,MAAO,CAAC,EAEN,GAAO,SAAW,SACpB,EAAOA,EAAM,EAAO,YAAY,EAChC,EAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAO,OAAQ,EAAK,GAAI,eAAc,CAAC,CACxE,GAGF,IAAM,EACJ,EAAO,EAAU,YAAY,EAAE,CAAC,SAAS,QAAU,EAAW,cAAc,OAaxE,EACJ,IAAa,EAAW,cAAc,OAClC,IAAI,KAAK,YAAY,CAAC,CAAC,YAAY,EACnC,IAAI,KAAK,CAAC,CAAC,YAAY,EAEvB,EAAU,MAAM,EAAsB,CAAE,SAAU,EAAK,EAAG,CAAC,EAC3D,EAAc,MAAM,EAAsB,CAC9C,YAAa,EAAO,EAAU,YAAY,EAAE,CAAC,YAC7C,OAAQ,CACN,IAAK,CACH,CACE,KAAM,CACJ,YAAa,CACf,EACA,UACF,CACF,CACF,CACF,CAAC,EACK,EAAiB,CAAC,EACxB,EAAK,EAAO,QAAU,GAAS,CAC7B,IAAI,EAAW,EACf,EAAWA,EAAM,EAAU,YAAY,EACvC,EAAS,WAAa,EACpB,EAAe,CAAE,SAAQ,KAAM,EAAM,OAAQ,EAAK,GAAI,eAAc,CAAC,CACvE,EACA,EAAQ,KAAK,CAAQ,CAKvB,CAAC,EACD,IAAM,EAAQA,EAAM,EAAQ,SAAS,EAQrC,MAPA,GAAM,QAAU,EAOT,CAAE,UAAS,OAAQ,CAAC,EAAG,OAAM,OAAM,CAC5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-notion-listing-by-date/index.ts"],"mappings":";cA0HM,sBAAA;EAAgC,MAAA;EAAA,qBAAA;EAAA,qBAAA;EAAA,YAAA;EAAA,aAAA;EAAA,SAAA;EAAA;AAAA;;;;;;;;MAQrC,OAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PROPERTIES as e,QUERIES as t}from"../../constants/index.mjs";import n from"../../utils/add-time/index.mjs";import{t as r}from"../../utils-SxsCJsDP.mjs";import{map as i,omit as a,size as o}from"lodash-es";import{sortObject as s}from"@jeromefitz/utils";const c=({config:r,pathVariables:i,routeType:a,slug:s})=>{let{NOTION:c}=r,{meta:l}=i,[u,d,f]=l,p=o(l),m=new Date().toISOString(),h=new Date(`${u||m.slice(0,4)}-${d||`01`}-${f||`01`}`),g=c[a.toUpperCase()]?.infoType?.notion??e.datePublished.notion;switch(p){case 1:return{and:[{date:{on_or_after:n(h,``)},property:g},{date:{before:n(h,`year`)},property:g}]};case 2:return{and:[{date:{on_or_after:n(h,``)},property:g},{date:{before:n(h,`month`)},property:g}]};case 3:return{and:[{date:{on_or_after:n(h,``)},property:g},{date:{before:n(h,`day`)},property:g}]};default:return{and:[{date:{on_or_after:n(h,``)},property:g},{date:{before:n(h,`day`)},property:g},{...t.slug,rich_text:{equals:s}}]}}},l=async({config:t,getBlocksByIdChildren:n,getDatabasesByIdQuery:o,getPagesById:l,pathVariables:u,routeType:d,slug:f})=>{let{NOTION:p}=t,m={},h={},g=p[d.toUpperCase()].page_id__seo,_=await l({page_id:g});_.object===`page`&&(h=a(_,`properties`),h.properties=s(r({config:t,data:_,pageId:_.id,pathVariables:u}))),m=await n({block_id:h.id});let v=[{direction:`descending`,property:e.datePublished.notion}],y=c({config:t,pathVariables:u,routeType:d,slug:f}),b=p[d.toUpperCase()].database_id,x=await o({database_id:b,filter:y,sorts:v}),S=[];i(x.results,e=>{let n=a(e,`properties`);n.properties=s(r({config:t,data:e,pageId:n.id,pathVariables:u})),n&&S.push(n)});let C=a(x,`results`);C.results=S;let w=a(C,`data`);return{content:m,images:{},info:h,items:w}};export{l as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_size","_omit"],"sources":["../../../src/queries/get-notion-listing-by-date/index.ts"],"sourcesContent":["import { sortObject } from \"@jeromefitz/utils\";\nimport { map as _map, omit as _omit, size as _size } from \"lodash-es\";\n\nimport { PROPERTIES, QUERIES } from \"../../constants/index\";\nimport type { SortItem } from \"../../schema/index\";\nimport { addTime, dataNormalized } from \"../../utils/index\";\n\nconst getNotionListingByDate__getFilter = ({ config, pathVariables, routeType, slug }) => {\n const { NOTION } = config;\n const { meta } = pathVariables;\n const [year, month, day] = meta;\n const metaCount = _size(meta);\n // @hack nothing to see here, haha\n const dateTimestamp = new Date().toISOString();\n const timestampQuery = new Date(\n `${year ? year : dateTimestamp.slice(0, 4)}-${month ? month : \"01\"}-${day ? day : \"01\"}`,\n );\n\n /**\n * @filter\n * @note metaCount breakdown:\n * 1 = yyyy\n * 2 = yyyy/mm\n * 3 = yyyy/mm/dd\n * ? = yyyy/mm/dd/slug (SLUG_BY_ROUTE takes this over)\n */\n const property =\n NOTION[routeType.toUpperCase()]?.infoType?.notion ?? PROPERTIES.datePublished.notion;\n\n switch (metaCount) {\n /**\n * @note yyyy\n */\n case 1:\n return {\n and: [\n {\n date: {\n on_or_after: addTime(timestampQuery, \"\"),\n },\n property,\n },\n {\n date: {\n before: addTime(timestampQuery, \"year\"),\n },\n property,\n },\n ],\n };\n\n /**\n * @note yyyy/mm\n */\n case 2:\n return {\n and: [\n {\n date: {\n on_or_after: addTime(timestampQuery, \"\"),\n },\n property,\n },\n {\n date: {\n before: addTime(timestampQuery, \"month\"),\n },\n property,\n },\n ],\n };\n\n /**\n * @note yyyy/mm/dd\n */\n case 3:\n return {\n and: [\n {\n date: {\n on_or_after: addTime(timestampQuery, \"\"),\n },\n property,\n },\n {\n date: {\n before: addTime(timestampQuery, \"day\"),\n },\n property,\n },\n ],\n };\n\n /**\n * @note yyyy/mm/dd/slug\n *\n * Technically this is picked up by `getNotionSlugByRoute` SLUG_BY_ROUTE\n */\n default:\n return {\n and: [\n {\n date: {\n on_or_after: addTime(timestampQuery, \"\"),\n },\n property,\n },\n {\n date: {\n before: addTime(timestampQuery, \"day\"),\n },\n property,\n },\n {\n ...QUERIES.slug,\n rich_text: { equals: slug },\n },\n ],\n };\n }\n};\n\nconst getNotionListingByDate = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getPagesById,\n pathVariables,\n routeType,\n slug,\n}) => {\n const { NOTION } = config;\n\n let content: any = {},\n info: any = {};\n\n const page_id = NOTION[routeType.toUpperCase()].page_id__seo;\n const _info = await getPagesById({\n page_id,\n });\n if (_info.object === \"page\") {\n info = _omit(_info, \"properties\");\n info.properties = sortObject(\n dataNormalized({ config, data: _info, pageId: _info.id, pathVariables }),\n );\n }\n\n content = await getBlocksByIdChildren({ block_id: info.id });\n\n const sorts: SortItem[] = [\n {\n direction: \"descending\",\n property: PROPERTIES.datePublished.notion,\n },\n ];\n const filter = getNotionListingByDate__getFilter({\n config,\n pathVariables,\n routeType,\n slug,\n });\n\n const database_id = NOTION[routeType.toUpperCase()].database_id;\n\n const ___items: any = await getDatabasesByIdQuery({\n database_id,\n filter,\n sorts,\n });\n const __items: any[] = [];\n _map(___items.results, (i) => {\n const item = _omit(i, \"properties\");\n item.properties = sortObject(\n dataNormalized({ config, data: i, pageId: item.id, pathVariables }),\n );\n !!item && __items.push(item);\n });\n const _items = _omit(___items, \"results\");\n _items.results = __items;\n const items = _omit(_items, \"data\");\n\n /**\n * @note(plaiceholder)\n *\n * Pass empty `images` object for SSR/API takeover\n */\n return { content, images: {}, info, items };\n};\n\nexport default getNotionListingByDate;\n"],"mappings":"kQAOA,MAAM,GAAqC,CAAE,SAAQ,gBAAe,YAAW,UAAW,CACxF,GAAM,CAAE,UAAW,EACb,CAAE,QAAS,EACX,CAAC,EAAM,EAAO,GAAO,EACrB,EAAYA,EAAM,CAAI,EAEtB,EAAgB,IAAI,KAAK,CAAC,CAAC,YAAY,EACvC,EAAiB,IAAI,KACzB,GAAG,GAAc,EAAc,MAAM,EAAG,CAAC,EAAE,GAAG,GAAgB,KAAK,GAAG,GAAY,MACpF,EAUM,EACJ,EAAO,EAAU,YAAY,EAAE,EAAE,UAAU,QAAU,EAAW,cAAc,OAEhF,OAAQ,EAAR,CAIE,IAAK,GACH,MAAO,CACL,IAAK,CACH,CACE,KAAM,CACJ,YAAa,EAAQ,EAAgB,EAAE,CACzC,EACA,UACF,EACA,CACE,KAAM,CACJ,OAAQ,EAAQ,EAAgB,MAAM,CACxC,EACA,UACF,CACF,CACF,EAKF,IAAK,GACH,MAAO,CACL,IAAK,CACH,CACE,KAAM,CACJ,YAAa,EAAQ,EAAgB,EAAE,CACzC,EACA,UACF,EACA,CACE,KAAM,CACJ,OAAQ,EAAQ,EAAgB,OAAO,CACzC,EACA,UACF,CACF,CACF,EAKF,IAAK,GACH,MAAO,CACL,IAAK,CACH,CACE,KAAM,CACJ,YAAa,EAAQ,EAAgB,EAAE,CACzC,EACA,UACF,EACA,CACE,KAAM,CACJ,OAAQ,EAAQ,EAAgB,KAAK,CACvC,EACA,UACF,CACF,CACF,EAOF,QACE,MAAO,CACL,IAAK,CACH,CACE,KAAM,CACJ,YAAa,EAAQ,EAAgB,EAAE,CACzC,EACA,UACF,EACA,CACE,KAAM,CACJ,OAAQ,EAAQ,EAAgB,KAAK,CACvC,EACA,UACF,EACA,CACE,GAAG,EAAQ,KACX,UAAW,CAAE,OAAQ,CAAK,CAC5B,CACF,CACF,CACJ,CACF,EAEM,EAAyB,MAAO,CACpC,SACA,wBACA,wBACA,eACA,gBACA,YACA,UACI,CACJ,GAAM,CAAE,UAAW,EAEf,EAAe,CAAC,EAClB,EAAY,CAAC,EAET,EAAU,EAAO,EAAU,YAAY,EAAE,CAAC,aAC1C,EAAQ,MAAM,EAAa,CAC/B,SACF,CAAC,EACG,EAAM,SAAW,SACnB,EAAOC,EAAM,EAAO,YAAY,EAChC,EAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAO,OAAQ,EAAM,GAAI,eAAc,CAAC,CACzE,GAGF,EAAU,MAAM,EAAsB,CAAE,SAAU,EAAK,EAAG,CAAC,EAE3D,IAAM,EAAoB,CACxB,CACE,UAAW,aACX,SAAU,EAAW,cAAc,MACrC,CACF,EACM,EAAS,EAAkC,CAC/C,SACA,gBACA,YACA,MACF,CAAC,EAEK,EAAc,EAAO,EAAU,YAAY,EAAE,CAAC,YAE9C,EAAgB,MAAM,EAAsB,CAChD,cACA,SACA,OACF,CAAC,EACK,EAAiB,CAAC,EACxB,EAAK,EAAS,QAAU,GAAM,CAC5B,IAAM,EAAOA,EAAM,EAAG,YAAY,EAClC,EAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAG,OAAQ,EAAK,GAAI,eAAc,CAAC,CACpE,EACE,GAAQ,EAAQ,KAAK,CAAI,CAC7B,CAAC,EACD,IAAM,EAASA,EAAM,EAAU,SAAS,EACxC,EAAO,QAAU,EACjB,IAAM,EAAQA,EAAM,EAAQ,MAAM,EAOlC,MAAO,CAAE,UAAS,OAAQ,CAAC,EAAG,OAAM,OAAM,CAC5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-notion-slug/index.ts"],"mappings":";cAMM,aAAA;EAAuB,MAAA;EAAA,qBAAA;EAAA,qBAAA;EAAA,uBAAA;EAAA,aAAA;EAAA,SAAA;EAAA;AAAA;;;;;;;;MAQ5B,OAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{QUERIES as e}from"../../constants/index.mjs";import{t}from"../../utils-SxsCJsDP.mjs";import{omit as n}from"lodash-es";import{sortObject as r}from"@jeromefitz/utils";const i=async({config:i,getBlocksByIdChildren:a,getDatabasesByIdQuery:o,getDeepFetchAllChildren:s,pathVariables:c,routeType:l,slug:u})=>{let{NOTION:d}=i,f=l?.toUpperCase();if(!Object.keys(d).includes(f))return{content:{},images:{},info:{},items:{}};let p=await o({database_id:d[f].database_id,filter:{and:[{...e.slug,rich_text:{equals:u}}]}}),m=p?.object===`list`&&p.results[0];if(!m)return{};let h=n(m,`properties`);return h.properties=r(t({config:i,data:m,pageId:h.id,pathVariables:c})),{content:[...await s({blocks:(await a({block_id:h.id})).results})],images:{},info:h,items:{}}};export{i as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_omit"],"sources":["../../../src/queries/get-notion-slug/index.ts"],"sourcesContent":["import { sortObject } from \"@jeromefitz/utils\";\nimport { omit as _omit } from \"lodash-es\";\n\nimport { QUERIES } from \"../../constants/index\";\nimport { dataNormalized } from \"../../utils/index\";\n\nconst getNotionSlug = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getDeepFetchAllChildren,\n pathVariables,\n routeType,\n slug,\n}) => {\n const { NOTION } = config;\n\n const DB_TYPE = routeType?.toUpperCase();\n const isValid = Object.keys(NOTION).includes(DB_TYPE);\n\n if (!isValid) return { content: {}, images: {}, info: {}, items: {} };\n\n const __info: any = await getDatabasesByIdQuery({\n database_id: NOTION[DB_TYPE].database_id,\n filter: {\n and: [\n {\n ...QUERIES.slug,\n rich_text: { equals: slug },\n },\n ],\n },\n });\n\n const _info = __info?.object === \"list\" && __info.results[0];\n // @refactor(404)\n if (!_info) {\n return {};\n }\n\n const info = _omit(_info, \"properties\");\n info.properties = sortObject(\n dataNormalized({ config, data: _info, pageId: info.id, pathVariables }),\n );\n\n const _content = await getBlocksByIdChildren({ block_id: info.id });\n const blocks = [...(await getDeepFetchAllChildren({ blocks: _content.results }))];\n const content = blocks;\n\n /**\n * @question if this is reached, there are no `items`\n */\n // const items: any = {}\n // items.results = _filter(items?.results, { properties: { isPublished: true } })\n\n /**\n * @note(plaiceholder)\n *\n * Pass empty `images` object for SSR/API takeover\n */\n return { content, images: {}, info, items: {} };\n};\n\nexport default getNotionSlug;\n"],"mappings":"4KAMA,MAAM,EAAgB,MAAO,CAC3B,SACA,wBACA,wBACA,0BACA,gBACA,YACA,UACI,CACJ,GAAM,CAAE,UAAW,EAEb,EAAU,GAAW,YAAY,EAGvC,GAAI,CAFY,OAAO,KAAK,CAAM,CAAC,CAAC,SAAS,CAExC,EAAS,MAAO,CAAE,QAAS,CAAC,EAAG,OAAQ,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,CAAE,EAEpE,IAAM,EAAc,MAAM,EAAsB,CAC9C,YAAa,EAAO,EAAQ,CAAC,YAC7B,OAAQ,CACN,IAAK,CACH,CACE,GAAG,EAAQ,KACX,UAAW,CAAE,OAAQ,CAAK,CAC5B,CACF,CACF,CACF,CAAC,EAEK,EAAQ,GAAQ,SAAW,QAAU,EAAO,QAAQ,GAE1D,GAAI,CAAC,EACH,MAAO,CAAC,EAGV,IAAM,EAAOA,EAAM,EAAO,YAAY,EAoBtC,MAnBA,GAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAO,OAAQ,EAAK,GAAI,eAAc,CAAC,CACxE,EAiBO,CAAE,SAdO,GAAI,MAAM,EAAwB,CAAE,QAAQ,MADrC,EAAsB,CAAE,SAAU,EAAK,EAAG,CAAC,EACN,CAAS,OAAQ,CAAC,CAcrE,EAAS,OAAQ,CAAC,EAAG,OAAM,MAAO,CAAC,CAAE,CAChD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-notion-slug-by-route/index.ts"],"mappings":";cAuJM,oBAAA;EAA8B,MAAA;EAAA,qBAAA;EAAA,qBAAA;EAAA,QAAA;EAAA,aAAA;EAAA,SAAA;EAAA;AAAA;;;;;;;;MAQnC,OAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{DATA_TYPES as e,PROPERTIES as t,QUERIES as n}from"../../constants/index.mjs";import r from"../../utils/add-time/index.mjs";import{t as i}from"../../utils-SxsCJsDP.mjs";import{omit as a,size as o}from"lodash-es";import{sortObject as s}from"@jeromefitz/utils";const c=async({config:e,getBlocksByIdChildren:t,getDatabasesByIdQuery:r,getQuery:c,pathVariables:l,routeType:u})=>{let{NOTION:d}=e,{meta:f}=l,p=u.toUpperCase(),[m,h]=f,g=o(f)===2,_=d[p]?.hasChild?.toUpperCase(),v=await r({database_id:d[g?d[_].routeType.toUpperCase():p].database_id,filter:{and:[{...n.slug,rich_text:{equals:g?h:m}}]}}),y=v?.object===`list`&&v.results[0];if(!y)return{content:{},images:{},info:{},items:{}};let b=a(y,`properties`);b.properties=s(i({config:e,data:y,pageId:b.id,pathVariables:l}));let x=await t({block_id:b.id}),S={};return g||(S=await c({config:e,reqQuery:{databaseType:d[_].routeType.toUpperCase(),podcasts:b.id}})),{content:x,images:{},info:b,items:S}},l=async({config:e,getBlocksByIdChildren:o,getDatabasesByIdQuery:c,pathVariables:l,routeType:u,slug:d})=>{let f=new Date().toISOString(),{NOTION:p}=e,{meta:m}=l,[h,g,_]=m,v=new Date(`${h||f.slice(0,4)}-${g||`01`}-${_||`01`}`),y=p[u.toUpperCase()]?.infoType?.notion??t.datePublished.notion,b=await c({database_id:p[u.toUpperCase()].database_id,filter:{and:[{date:{on_or_after:r(v,``)},property:y},{date:{before:r(v,`day`)},property:y},{...n.slug,rich_text:{equals:d}}]}}),x=b?.object===`list`&&b.results[0];if(!x)return{content:{},images:{},info:{},items:{}};let S=a(x,`properties`);return S.properties=s(i({config:e,data:x,pageId:S.id,pathVariables:l})),{content:await o({block_id:S.id}),images:{},info:S,items:{}}},u=async({config:t,getBlocksByIdChildren:n,getDatabasesByIdQuery:r,getQuery:i,pathVariables:a,routeType:o,slug:s})=>{let{NOTION:u,ROUTE_TYPES_BY_DATA_TYPES:d}=t;return u[o?.toUpperCase()]?.hasChild?await c({config:t,getBlocksByIdChildren:n,getDatabasesByIdQuery:r,getQuery:i,pathVariables:a,routeType:o}):d[e.LISTING_BY_DATE].includes(o.toUpperCase())?await l({config:t,getBlocksByIdChildren:n,getDatabasesByIdQuery:r,pathVariables:a,routeType:o,slug:s}):{content:{},images:{},info:{},items:{}}};export{u as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_size","_omit"],"sources":["../../../src/queries/get-notion-slug-by-route/index.ts"],"sourcesContent":["import { sortObject } from \"@jeromefitz/utils\";\nimport { omit as _omit, size as _size } from \"lodash-es\";\n\nimport { DATA_TYPES, PROPERTIES, QUERIES } from \"../../constants/index\";\nimport { addTime, dataNormalized } from \"../../utils/index\";\n\n/**\n * @note Determine if PARENT|CHILD should be returned:\n *\n * PARENT\n * - /[parent-routeType]/[slug]\n * - /podcasts/jer-and-ky-and-guest\n *\n * CHILD\n * - /[parent-routeType]/[child-routeType]/[slug]\n * - /podcasts/jer-and-ky-and-guest/am-i-dracula-greg-gillotti\n\n *\n */\nconst getNotionSlugByRoute__getDataByParentRouteType = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getQuery,\n pathVariables,\n routeType,\n // slug,\n}) => {\n const { NOTION } = config;\n const { meta } = pathVariables;\n\n const ROUTE_TYPE = routeType.toUpperCase();\n\n const [parentSlug, slug] = meta;\n const isChild = _size(meta) === 2;\n\n const CHILD = NOTION[ROUTE_TYPE]?.hasChild?.toUpperCase();\n\n const __info: any = await getDatabasesByIdQuery({\n database_id: NOTION[isChild ? NOTION[CHILD].routeType.toUpperCase() : ROUTE_TYPE].database_id,\n filter: {\n and: [\n {\n ...QUERIES.slug,\n rich_text: { equals: isChild ? slug : parentSlug },\n },\n ],\n },\n });\n\n const _info = __info?.object === \"list\" && __info.results[0];\n // @refactor(404)\n if (!_info) {\n return { content: {}, images: {}, info: {}, items: {} };\n }\n const info = _omit(_info, \"properties\");\n info.properties = sortObject(\n dataNormalized({ config, data: _info, pageId: info.id, pathVariables }),\n );\n const content = await getBlocksByIdChildren({ block_id: info.id });\n let items = {};\n\n /**\n * @note if PARENT then get CHILDREN via `items`\n */\n if (!isChild) {\n items = await getQuery({\n config,\n reqQuery: {\n databaseType: NOTION[CHILD].routeType.toUpperCase(),\n podcasts: info.id,\n },\n });\n }\n\n return { content, images: {}, info, items };\n};\n\n/**\n * @note This is unique because the following are different:\n *\n * - /events/2020/05/01/jerome-and\n * - /events/2020/05/08/jerome-and\n * - /[routeType]/[yyyy/mm/dd]/[slug]\n *\n * We actually _do_ use the date for this.\n *\n */\nconst getNotionSlugByRoute__getDataByListingDate = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n // getQuery,\n pathVariables,\n routeType,\n slug,\n}) => {\n const dateTimestamp = new Date().toISOString();\n\n const { NOTION } = config;\n const { meta } = pathVariables;\n\n const [year, month, day] = meta;\n /**\n * @hack uh... nothing to see here, haha\n */\n const timestampQuery = new Date(\n `${year ? year : dateTimestamp.slice(0, 4)}-${month ? month : \"01\"}-${day ? day : \"01\"}`,\n );\n const property =\n NOTION[routeType.toUpperCase()]?.infoType?.notion ?? PROPERTIES.datePublished.notion;\n\n const __info: any = await getDatabasesByIdQuery({\n database_id: NOTION[routeType.toUpperCase()].database_id,\n filter: {\n and: [\n {\n date: {\n on_or_after: addTime(timestampQuery, \"\"),\n },\n property,\n },\n {\n date: {\n before: addTime(timestampQuery, \"day\"),\n },\n property,\n },\n {\n ...QUERIES.slug,\n rich_text: { equals: slug },\n },\n ],\n },\n });\n\n const _info = __info?.object === \"list\" && __info.results[0];\n // @refactor(404)\n if (!_info) {\n return { content: {}, images: {}, info: {}, items: {} };\n }\n\n const info = _omit(_info, \"properties\");\n info.properties = sortObject(\n dataNormalized({ config, data: _info, pageId: info.id, pathVariables }),\n );\n const content = await getBlocksByIdChildren({ block_id: info.id });\n\n return { content, images: {}, info, items: {} };\n};\n\nconst getNotionSlugByRoute = async ({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getQuery,\n pathVariables,\n routeType,\n slug,\n}) => {\n const { NOTION, ROUTE_TYPES_BY_DATA_TYPES } = config;\n\n /**\n * @custom (notion) DATA_TYPES.SLUG_BY_ROUTE -- but customized:\n * Determine if `routeType` is a parent|child\n *\n * // @todo(next-notion) move to `isChild`\n *\n */\n if (NOTION[routeType?.toUpperCase()]?.hasChild) {\n return await getNotionSlugByRoute__getDataByParentRouteType({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n getQuery,\n pathVariables,\n routeType,\n // slug,\n });\n }\n\n /**\n * @custom (notion) DATA_TYPES.LISTING_BY_DATE\n *\n */\n if (ROUTE_TYPES_BY_DATA_TYPES[DATA_TYPES.LISTING_BY_DATE].includes(routeType.toUpperCase())) {\n return await getNotionSlugByRoute__getDataByListingDate({\n config,\n getBlocksByIdChildren,\n getDatabasesByIdQuery,\n // getQuery,\n pathVariables,\n routeType,\n slug,\n });\n }\n\n return { content: {}, images: {}, info: {}, items: {} };\n};\n\nexport default getNotionSlugByRoute;\n"],"mappings":"yQAmBA,MAAM,EAAiD,MAAO,CAC5D,SACA,wBACA,wBACA,WACA,gBACA,eAEI,CACJ,GAAM,CAAE,UAAW,EACb,CAAE,QAAS,EAEX,EAAa,EAAU,YAAY,EAEnC,CAAC,EAAY,GAAQ,EACrB,EAAUA,EAAM,CAAI,IAAM,EAE1B,EAAQ,EAAO,EAAW,EAAE,UAAU,YAAY,EAElD,EAAc,MAAM,EAAsB,CAC9C,YAAa,EAAO,EAAU,EAAO,EAAM,CAAC,UAAU,YAAY,EAAI,EAAW,CAAC,YAClF,OAAQ,CACN,IAAK,CACH,CACE,GAAG,EAAQ,KACX,UAAW,CAAE,OAAQ,EAAU,EAAO,CAAW,CACnD,CACF,CACF,CACF,CAAC,EAEK,EAAQ,GAAQ,SAAW,QAAU,EAAO,QAAQ,GAE1D,GAAI,CAAC,EACH,MAAO,CAAE,QAAS,CAAC,EAAG,OAAQ,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,CAAE,EAExD,IAAM,EAAOC,EAAM,EAAO,YAAY,EACtC,EAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAO,OAAQ,EAAK,GAAI,eAAc,CAAC,CACxE,EACA,IAAM,EAAU,MAAM,EAAsB,CAAE,SAAU,EAAK,EAAG,CAAC,EAC7D,EAAQ,CAAC,EAeb,OAVK,IACH,EAAQ,MAAM,EAAS,CACrB,SACA,SAAU,CACR,aAAc,EAAO,EAAM,CAAC,UAAU,YAAY,EAClD,SAAU,EAAK,EACjB,CACF,CAAC,GAGI,CAAE,UAAS,OAAQ,CAAC,EAAG,OAAM,OAAM,CAC5C,EAYM,EAA6C,MAAO,CACxD,SACA,wBACA,wBAEA,gBACA,YACA,UACI,CACJ,IAAM,EAAgB,IAAI,KAAK,CAAC,CAAC,YAAY,EAEvC,CAAE,UAAW,EACb,CAAE,QAAS,EAEX,CAAC,EAAM,EAAO,GAAO,EAIrB,EAAiB,IAAI,KACzB,GAAG,GAAc,EAAc,MAAM,EAAG,CAAC,EAAE,GAAG,GAAgB,KAAK,GAAG,GAAY,MACpF,EACM,EACJ,EAAO,EAAU,YAAY,EAAE,EAAE,UAAU,QAAU,EAAW,cAAc,OAE1E,EAAc,MAAM,EAAsB,CAC9C,YAAa,EAAO,EAAU,YAAY,EAAE,CAAC,YAC7C,OAAQ,CACN,IAAK,CACH,CACE,KAAM,CACJ,YAAa,EAAQ,EAAgB,EAAE,CACzC,EACA,UACF,EACA,CACE,KAAM,CACJ,OAAQ,EAAQ,EAAgB,KAAK,CACvC,EACA,UACF,EACA,CACE,GAAG,EAAQ,KACX,UAAW,CAAE,OAAQ,CAAK,CAC5B,CACF,CACF,CACF,CAAC,EAEK,EAAQ,GAAQ,SAAW,QAAU,EAAO,QAAQ,GAE1D,GAAI,CAAC,EACH,MAAO,CAAE,QAAS,CAAC,EAAG,OAAQ,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,CAAE,EAGxD,IAAM,EAAOA,EAAM,EAAO,YAAY,EAMtC,MALA,GAAK,WAAa,EAChB,EAAe,CAAE,SAAQ,KAAM,EAAO,OAAQ,EAAK,GAAI,eAAc,CAAC,CACxE,EAGO,CAAE,cAFa,EAAsB,CAAE,SAAU,EAAK,EAAG,CAAC,EAE/C,OAAQ,CAAC,EAAG,OAAM,MAAO,CAAC,CAAE,CAChD,EAEM,EAAuB,MAAO,CAClC,SACA,wBACA,wBACA,WACA,gBACA,YACA,UACI,CACJ,GAAM,CAAE,SAAQ,6BAA8B,EAqC9C,OA5BI,EAAO,GAAW,YAAY,EAAE,EAAE,SAC7B,MAAM,EAA+C,CAC1D,SACA,wBACA,wBACA,WACA,gBACA,WAEF,CAAC,EAOC,EAA0B,EAAW,gBAAgB,CAAC,SAAS,EAAU,YAAY,CAAC,EACjF,MAAM,EAA2C,CACtD,SACA,wBACA,wBAEA,gBACA,YACA,MACF,CAAC,EAGI,CAAE,QAAS,CAAC,EAAG,OAAQ,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,CAAE,CACxD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-pages-by-id/index.ts"],"mappings":";cAGM,YAAA;EAAsB,gBAAA;EAAA;AAAA;;;MAA6B,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/queries/get-pages-by-id/index.ts"],"sourcesContent":["import { avoidRateLimit, isUndefined } from \"@jeromefitz/utils\";\n\n// @todo(types)\nconst getPagesById = async ({ getPagesRetrieve, page_id }) => {\n if (isUndefined(page_id)) return [];\n await avoidRateLimit(0);\n return await getPagesRetrieve({\n page_id,\n });\n};\n\nexport default getPagesById;\n"],"mappings":"oEAGA,MAAM,EAAe,MAAO,CAAE,mBAAkB,aAC1C,EAAY,CAAO,EAAU,CAAC,GAClC,MAAM,EAAe,CAAC,EACf,MAAM,EAAiB,CAC5B,SACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-path-variables/index.ts"],"mappings":";;;cAiBM,gBAAA;EAAoB,QAAA;EAAA;AAAA;;;;YAAA,SAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import"../../utils-SxsCJsDP.mjs";import e from"../../utils/get-data-type/index.mjs";import{drop as t,dropRight as n,first as r,includes as i,isInteger as a,join as o,last as s,size as c}from"lodash-es";const l=({catchAll:l,config:u})=>{let{NOTION:d,PAGES__HOMEPAGE:f,ROUTE_META:p,ROUTE_TYPES:m}=u,h=c(l),g=r(l),_=g.toUpperCase(),v=s(l),y=h>1&&i(p,_)?t(l):t(n(l)),b=g===v&&!i(m,_)?d.PAGES.routeType:g,x=g!==v&&!a(parseInt(v))?v:g,S=b===d.PAGES.routeType.toLowerCase(),C=x===g,w={hasMeta:!!y&&c(y)!==0,isIndex:C,isPage:S,meta:y,routeType:b,slug:x,url:S&&g===f?``:o(l,`/`)},T=e(w);return{...w,dataType:T}};export{l as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["size","_size","first","_first","last","_last","_includes","_drop","_dropRight","_isInteger","_join"],"sources":["../../../src/queries/get-path-variables/index.ts"],"sourcesContent":["/**\n * @refactor(lodash)\n */\nimport {\n drop as _drop,\n dropRight as _dropRight,\n first as _first,\n includes as _includes,\n isInteger as _isInteger,\n join as _join,\n last as _last,\n size as _size,\n} from \"lodash-es\";\n\n// import { DATA_TYPES } from '../../constants/index'\nimport { getDataType } from \"../../utils/index\";\n\nconst getPathVariables = ({ catchAll, config }) => {\n const { NOTION, PAGES__HOMEPAGE, ROUTE_META, ROUTE_TYPES } = config;\n const size: number = _size(catchAll);\n const first: any = _first(catchAll);\n const FIRST = first.toUpperCase();\n const last: any = _last(catchAll);\n // const LAST = last.toUpperCase()\n\n const meta =\n size > 1 && _includes(ROUTE_META, FIRST) ? _drop(catchAll) : _drop(_dropRight(catchAll));\n\n const routeType =\n first === last && !_includes(ROUTE_TYPES, FIRST) ? NOTION.PAGES.routeType : first;\n const slug = first !== last && !_isInteger(parseInt(last)) ? last : first;\n\n const isPage = routeType === NOTION.PAGES.routeType.toLowerCase();\n const isIndex = slug === first;\n const hasMeta = !!meta && _size(meta) !== 0;\n\n const url = isPage && first === PAGES__HOMEPAGE ? \"\" : _join(catchAll, \"/\");\n\n const pathVariables = {\n hasMeta,\n isIndex,\n isPage,\n meta,\n routeType,\n slug,\n url,\n };\n\n // console.dir(`> pathVariables`)\n // console.dir(pathVariables)\n\n const dataType = getDataType(pathVariables);\n\n return {\n ...pathVariables,\n dataType,\n };\n};\n\nexport default getPathVariables;\n"],"mappings":"0MAiBA,MAAM,GAAoB,CAAE,WAAU,YAAa,CACjD,GAAM,CAAE,SAAQ,kBAAiB,aAAY,eAAgB,EACvDA,EAAeC,EAAM,CAAQ,EAC7BC,EAAaC,EAAO,CAAQ,EAC5B,EAAQD,EAAM,YAAY,EAC1BE,EAAYC,EAAM,CAAQ,EAG1B,EACJL,EAAO,GAAKM,EAAU,EAAY,CAAK,EAAIC,EAAM,CAAQ,EAAIA,EAAMC,EAAW,CAAQ,CAAC,EAEnF,EACJN,IAAUE,GAAQ,CAACE,EAAU,EAAa,CAAK,EAAI,EAAO,MAAM,UAAYJ,EACxE,EAAOA,IAAUE,GAAQ,CAACK,EAAW,SAASL,CAAI,CAAC,EAAIA,EAAOF,EAE9D,EAAS,IAAc,EAAO,MAAM,UAAU,YAAY,EAC1D,EAAU,IAASA,EAKnB,EAAgB,CACpB,QALc,CAAC,CAAC,GAAQD,EAAM,CAAI,IAAM,EAMxC,UACA,SACA,OACA,YACA,OACA,IATU,GAAUC,IAAU,EAAkB,GAAKQ,EAAM,EAAU,GAAG,CAU1E,EAKM,EAAW,EAAY,CAAa,EAE1C,MAAO,CACL,GAAG,EACH,UACF,CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/queries/get-query/index.ts"],"mappings":";cAmBM,QAAA;EAAkB,MAAA;EAAA,oBAAA;EAAA;AAAA;;;;MAA0C,OAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PROPERTIES as e}from"../../constants/index.mjs";import{n as t}from"../../utils-SxsCJsDP.mjs";import{map as n,omit as r,size as i}from"lodash-es";import{avoidRateLimit as a,isObjectEmpty as o}from"@jeromefitz/utils";const s=[{direction:`ascending`,property:e.slug.notion}],c=async({config:c,notionDatabasesQuery:l,reqQuery:u})=>{let{NOTION:d}=c,{databaseType:f}=u,p=f,m=!1,h=d[f.toUpperCase()].database_id;if(!h)return[];let g={},_={},v,y;if(f===`EPISODES`){y=s;let{podcasts:t}=u,r=[],a=[];t&&a.push(...t?.split(`,`)),i(a)>0&&n(a,t=>r.push({property:e.relationEpisodes__Podcasts.notion,relation:{contains:t}})),v={or:[...r]}}else m=!0;if(!m&&(!g||o(g))){await a(0);let n;v?(v?.or.length===0&&(v={and:[{property:e.slug.notion,rich_text:{equals:`@hack(notion)-do-not-return`}}]}),n=await l({database_id:h,filter:v,sorts:y}),g=n,_=t({config:c,results:n.results,routeType:p}),g=r(g,`results`),g.results=_):m=!0}return g};export{c as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_map","_omit"],"sources":["../../../src/queries/get-query/index.ts"],"sourcesContent":["import { avoidRateLimit, isObjectEmpty } from \"@jeromefitz/utils\";\nimport { map as _map, omit as _omit, size as _size } from \"lodash-es\";\n\nimport { PROPERTIES } from \"../../constants/index\";\nimport type { SortItem } from \"../../schema/index\";\nimport dataNormalizedResults from \"../../utils/data-normalized-results/index\";\n\n// const useCache = process.env.NEXT_PUBLIC__NOTION_USE_CACHE\n// const useCache = false\n\nconst SORTS: SortItem[] = [\n {\n direction: \"ascending\",\n property: PROPERTIES.slug.notion,\n },\n];\n\n// @todo(complexity) 12\n// oxlint-disable-next-line complexity\nconst getQuery = async ({ config, notionDatabasesQuery, reqQuery }) => {\n const { NOTION } = config;\n const { databaseType } = reqQuery;\n const routeType = databaseType;\n let hasError = false;\n\n /**\n * @setup\n */\n const DATABASE_TYPE = databaseType.toUpperCase();\n const database_id = NOTION[DATABASE_TYPE].database_id;\n if (!database_id) return [];\n\n // @todo(types) any\n let data: any = {},\n items: any = {};\n let filter: any, sorts: any;\n\n /**\n * @todo(notion) move this to the api so it can be re-used\n * not hidden in here all hacky\n *\n * @note(notion) right now only need this for episodes of podcasts\n * _OR_ Related Databases (PODCASTS => EPISODES)\n *\n * This is not needed often and can/should probably be handled instead\n * with Relations & Rollups rather than this customization\n */\n\n if (databaseType === \"EPISODES\") {\n sorts = SORTS;\n const { podcasts } = reqQuery;\n\n // @todo(types)\n const filterTagEpisodesByPodcasts: any = [];\n const podcastIds: any = [];\n\n // oxlint-disable-next-line no-unused-expressions\n !!podcasts && podcastIds.push(...podcasts?.split(\",\"));\n // oxlint-disable-next-line no-unused-expressions\n _size(podcastIds) > 0 &&\n _map(podcastIds, (id) =>\n filterTagEpisodesByPodcasts.push({\n property: PROPERTIES.relationEpisodes__Podcasts.notion,\n relation: {\n contains: id,\n },\n }),\n );\n filter = { or: [...filterTagEpisodesByPodcasts] };\n } else {\n // console.dir(`no filter`)\n hasError = true;\n }\n\n // /**\n // * @cache pre\n // */\n // if (useCache) {\n // const url = catchAll.join('/')\n // const cacheData = await getCache(url)\n // if (!!cacheData) {\n // data = cacheData\n // }\n // }\n\n if (!hasError && (!data || isObjectEmpty(data))) {\n await avoidRateLimit(0);\n // @todo(types) any\n let contentData: Pick<any, number | string | symbol>;\n\n // oxlint-disable-next-line no-extra-boolean-cast\n if (!!filter) {\n // @hack(notion)-do-not-return'\n if (filter?.or.length === 0) {\n filter = {\n and: [\n {\n property: PROPERTIES.slug.notion,\n rich_text: { equals: \"@hack(notion)-do-not-return\" },\n },\n ],\n };\n }\n contentData = await notionDatabasesQuery({\n database_id,\n filter,\n sorts,\n });\n\n data = contentData;\n items = dataNormalizedResults({\n config,\n results: contentData.results,\n routeType,\n });\n data = _omit(data, \"results\");\n data.results = items;\n } else {\n // console.dir(`no filter`)\n hasError = true;\n }\n\n // /**\n // * @cache post\n // */\n // if (useCache && !!data) {\n // const url = catchAll.join('/')\n // // console.dir(url)\n // const isCacheExists = await getCache(url)\n // // console.dir(isCacheExists)\n // if (!isCacheExists || isCacheExists === undefined) {\n // setCache(data, url)\n // }\n // }\n }\n\n return data;\n};\n\nexport default getQuery;\n"],"mappings":"8NAUA,MAAM,EAAoB,CACxB,CACE,UAAW,YACX,SAAU,EAAW,KAAK,MAC5B,CACF,EAIM,EAAW,MAAO,CAAE,SAAQ,uBAAsB,cAAe,CACrE,GAAM,CAAE,UAAW,EACb,CAAE,gBAAiB,EACnB,EAAY,EACd,EAAW,GAMT,EAAc,EADE,EAAa,YACR,EAAc,CAAC,YAC1C,GAAI,CAAC,EAAa,MAAO,CAAC,EAG1B,IAAI,EAAY,CAAC,EACf,EAAa,CAAC,EACZ,EAAa,EAajB,GAAI,IAAiB,WAAY,CAC/B,EAAQ,EACR,GAAM,CAAE,YAAa,EAGf,EAAmC,CAAC,EACpC,EAAkB,CAAC,EAGvB,GAAY,EAAW,KAAK,GAAG,GAAU,MAAM,GAAG,CAAC,EAErD,EAAM,CAAU,EAAI,GAClBA,EAAK,EAAa,GAChB,EAA4B,KAAK,CAC/B,SAAU,EAAW,2BAA2B,OAChD,SAAU,CACR,SAAU,CACZ,CACF,CAAC,CACH,EACF,EAAS,CAAE,GAAI,CAAC,GAAG,CAA2B,CAAE,CAClD,KAEE,GAAW,GAcb,GAAI,CAAC,IAAa,CAAC,GAAQ,EAAc,CAAI,GAAI,CAC/C,MAAM,EAAe,CAAC,EAEtB,IAAI,EAGE,GAEA,GAAQ,GAAG,SAAW,IACxB,EAAS,CACP,IAAK,CACH,CACE,SAAU,EAAW,KAAK,OAC1B,UAAW,CAAE,OAAQ,6BAA8B,CACrD,CACF,CACF,GAEF,EAAc,MAAM,EAAqB,CACvC,cACA,SACA,OACF,CAAC,EAED,EAAO,EACP,EAAQ,EAAsB,CAC5B,SACA,QAAS,EAAY,QACrB,WACF,CAAC,EACD,EAAOC,EAAM,EAAM,SAAS,EAC5B,EAAK,QAAU,GAGf,EAAW,EAef,CAEA,OAAO,CACT"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import getBlocksByIdChildren from "./get-blocks-by-id-children/index.mjs";
|
|
2
|
+
import getDatabasesByIdQuery from "./get-databases-by-id-query/index.mjs";
|
|
3
|
+
import getDeepFetchAllChildren from "./get-deep-fetch-all-children/index.mjs";
|
|
4
|
+
import getInfoType from "./get-info-type/index.mjs";
|
|
5
|
+
import getNotionListingByDate from "./get-notion-listing-by-date/index.mjs";
|
|
6
|
+
import getNotionListing from "./get-notion-listing/index.mjs";
|
|
7
|
+
import getNotionSlugByRoute from "./get-notion-slug-by-route/index.mjs";
|
|
8
|
+
import getNotionSlug from "./get-notion-slug/index.mjs";
|
|
9
|
+
import getPagesById from "./get-pages-by-id/index.mjs";
|
|
10
|
+
import getPathVariables from "./get-path-variables/index.mjs";
|
|
11
|
+
import getQuery from "./get-query/index.mjs";
|
|
12
|
+
export { getBlocksByIdChildren, getDatabasesByIdQuery, getDeepFetchAllChildren, getInfoType, getNotionListing, getNotionListingByDate, getNotionSlug, getNotionSlugByRoute, getPagesById, getPathVariables, getQuery };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"./get-blocks-by-id-children/index.mjs";import t from"./get-databases-by-id-query/index.mjs";import n from"./get-deep-fetch-all-children/index.mjs";import r from"./get-info-type/index.mjs";import i from"./get-notion-listing-by-date/index.mjs";import a from"./get-notion-listing/index.mjs";import o from"./get-notion-slug-by-route/index.mjs";import s from"./get-notion-slug/index.mjs";import c from"./get-pages-by-id/index.mjs";import l from"./get-path-variables/index.mjs";import u from"./get-query/index.mjs";export{e as getBlocksByIdChildren,t as getDatabasesByIdQuery,n as getDeepFetchAllChildren,r as getInfoType,a as getNotionListing,i as getNotionListingByDate,s as getNotionSlug,o as getNotionSlugByRoute,c as getPagesById,l as getPathVariables,u as getQuery};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/add-time/index.ts"],"mappings":";cAEM,OAAA,GAAW,IAAA,OAAM,IAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_addDays","_addMonths","_addYears"],"sources":["../../../src/utils/add-time/index.ts"],"sourcesContent":["import { addDays as _addDays, addMonths as _addMonths, addYears as _addYears } from \"date-fns\";\n\nconst addTime = (date, type) => {\n switch (type) {\n case \"day\":\n // @hack the TimeZone to UTC is ... not great.\n return _addDays(date, 2).toISOString();\n case \"month\":\n return _addMonths(date, 1).toISOString();\n case \"year\":\n return _addYears(date, 1).toISOString();\n }\n return _addDays(date, -1).toISOString();\n};\n\nexport default addTime;\n"],"mappings":"gEAEA,MAAM,GAAW,EAAM,IAAS,CAC9B,OAAQ,EAAR,CACE,IAAK,MAEH,OAAOA,EAAS,EAAM,CAAC,CAAC,CAAC,YAAY,EACvC,IAAK,QACH,OAAOC,EAAW,EAAM,CAAC,CAAC,CAAC,YAAY,EACzC,IAAK,OACH,OAAOC,EAAU,EAAM,CAAC,CAAC,CAAC,YAAY,CAC1C,CACA,OAAOF,EAAS,EAAM,EAAE,CAAC,CAAC,YAAY,CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/data-normalized/index.ts"],"mappings":";;;;;;cAWM,cAAA;EAAkB,MAAA;EAAA,IAAA;EAAA,MAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"../../utils-SxsCJsDP.mjs";export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/data-normalized-results/index.ts"],"mappings":";;;;;;;cAWM,qBAAA;EAAyB,MAAA;EAAA,OAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"../../utils-SxsCJsDP.mjs";export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/get-data-type/index.ts"],"mappings":";;;;;;AAqDiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA3C,WAAA;EAAe,OAAA;EAAA,OAAA;EAAA;AAAA;;;;MAAA,SAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/utils/get-data-type/index.ts"],"sourcesContent":["import { DATA_TYPES } from \"../../constants/index\";\n\n/**\n * @info dataType\n * pathVariables via `../../queries/pathVariables`\n *\n * 1 = (isPage) DATA_TYPES.SLUG\n * ex) /about\n * /colophon\n * /contact\n * => routeType = pages\n * @note no ability for second tier at the moment for non-db\n * otherwise these would have to be `/pages/about`\n *\n * 2 = (isIndex && !hasMeta) DATA_TYPES.LISTING\n * ex) /blog\n * /events\n * /podcasts\n * => routeType = routeType\n * @note\n * - events should only be \"upcoming events\"\n * - blog should be all-time (handled by pagination)\n *\n * 3 = (isIndex && hasMeta) DATA_TYPES.LISTING_BY_DATE\n * ex) /blog/yyyy\n * /blog/yyyy/mm\n * /blog/yyyy/mm/dd\n * /events/yyyy\n * /events/yyyy/mm\n * /events/yyyy/mm/dd\n * => routeType = routeType\n * @note These are each `index` pages for certain routeTypes\n *\n * 4 = (hasMeta) DATA_TYPES.SLUG_BY_ROUTE\n * ex) /blog/yyyy/mm/dd/[slug]\n * => parentRouteType = blog\n * => routeType = blog\n * @note determine [yyyy-mm-dd] from data via slug\n * /events/yyyy/mm/dd/[slug],\n * => parentRouteType = events\n * => routeType = events\n * @note determine [yyyy-mm-dd] from data via slug\n * /podcasts/[podcasts-slug]/[slug]\n * => parentRouteType = podcasts\n * => routeType = episodes\n * @note determine [podcasts-slug] from data via slug\n *\n * 5 = (else) DATA_TYPES.SLUG\n * ex) /shows/[slug]\n * /events/yyyy/mm/dd/[slug]\n * /podcasts/[slug]\n *\n */\nconst getDataType = ({ hasMeta, isIndex, isPage }) => {\n if (isPage) return DATA_TYPES.SLUG;\n if (isIndex && !hasMeta) return DATA_TYPES.LISTING;\n if (isIndex && hasMeta) return DATA_TYPES.LISTING_BY_DATE;\n if (hasMeta) return DATA_TYPES.SLUG_BY_ROUTE;\n return DATA_TYPES.SLUG;\n};\n\nexport default getDataType;\n"],"mappings":"uDAqDA,MAAM,GAAe,CAAE,UAAS,UAAS,YACnC,EAAe,EAAW,KAC1B,GAAW,CAAC,EAAgB,EAAW,QACvC,GAAW,EAAgB,EAAW,gBACtC,EAAgB,EAAW,cACxB,EAAW"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/get-title/index.ts"],"mappings":";;;;;cAMM,QAAA,GAAY,KAAa"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["_last"],"sources":["../../../src/utils/get-title/index.ts"],"sourcesContent":["import { last as _last } from \"lodash-es\";\n\n/**\n * @note this should be in the website repo as it’s custom\n * *cough* more custom than _waves vaguely all-around_ all of this\n */\nconst getTitle = (title: string) => {\n const _title: string = _last(title.split(\"_\")) ?? \"\";\n\n // oxlint-disable-next-line no-extra-boolean-cast\n if (!!_title) {\n return _title\n .replace(\"Past\", \"Cast Emeritus\")\n .replace(\"Musical\", \"Musical Director\")\n .replace(\"Technical\", \"Technical Director\");\n }\n\n return _title;\n};\n\nexport default getTitle;\n"],"mappings":"iCAMA,MAAM,EAAY,GAAkB,CAClC,IAAM,EAAiBA,EAAM,EAAM,MAAM,GAAG,CAAC,GAAK,GAUlD,OAPM,GACG,EACJ,QAAQ,OAAQ,eAAe,CAAC,CAChC,QAAQ,UAAW,kBAAkB,CAAC,CACtC,QAAQ,YAAa,oBAAoB,CAIhD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_unsupported.d.mts","names":[],"sources":["../../../src/utils/get-types/_unsupported.ts"],"mappings":";cAAM,YAAA,GAAgB,IAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_unsupported.mjs","names":[],"sources":["../../../src/utils/get-types/_unsupported.ts"],"sourcesContent":["const _unsupported = (data: any) => {\n console.dir(`@notion(_unsupported)`);\n // console.dir(data)\n return data;\n};\n\nexport default _unsupported;\n"],"mappings":"AAAA,MAAM,EAAgB,IACpB,QAAQ,IAAI,uBAAuB,EAE5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkbox.d.mts","names":[],"sources":["../../../src/utils/get-types/checkbox.ts"],"mappings":";cAAM,QAAA,GAAY,IAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkbox.mjs","names":[],"sources":["../../../src/utils/get-types/checkbox.ts"],"sourcesContent":["const checkbox = (data: any) => data.checkbox || false;\n\nexport default checkbox;\n"],"mappings":"AAAA,MAAM,EAAY,GAAc,EAAK,UAAY"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.d.mts","names":[],"sources":["../../../src/utils/get-types/date.ts"],"mappings":";cAAM,IAAA,GAAQ,IAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.mjs","names":[],"sources":["../../../src/utils/get-types/date.ts"],"sourcesContent":["const date = (data: any) => {\n const { type } = data;\n return data[type];\n};\n\nexport default date;\n"],"mappings":"AAAA,MAAM,EAAQ,GAAc,CAC1B,GAAM,CAAE,QAAS,EACjB,OAAO,EAAK,EACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.d.mts","names":[],"sources":["../../../src/utils/get-types/email.ts"],"mappings":";cAAM,KAAA,GAAS,IAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.mjs","names":[],"sources":["../../../src/utils/get-types/email.ts"],"sourcesContent":["const email = (data: any) => data.email || null;\n\nexport default email;\n"],"mappings":"AAAA,MAAM,EAAS,GAAc,EAAK,OAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.d.mts","names":[],"sources":["../../../src/utils/get-types/files.ts"],"mappings":";cAWM,KAAA,GAAS,IAAA,OAAW,MAAc"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.mjs","names":["_size"],"sources":["../../../src/utils/get-types/files.ts"],"sourcesContent":["import { stringToUUID } from \"@jeromefitz/utils\";\nimport Slugger from \"github-slugger\";\nimport { size as _size } from \"lodash-es\";\n\nconst notionImageHosted = `https://www.notion.so/image/{{FILENAME}}?table=block&id={{PAGE_ID}}&cache=v2&w1dth=600`;\n\nconst getNotionHostedUrl = (url: boolean | number | string, pageId: string) =>\n notionImageHosted\n .replace(\"{{FILENAME}}\", encodeURIComponent(url))\n .replace(\"{{PAGE_ID}}\", stringToUUID(pageId));\n\nconst files = (data: any, pageId: string) => {\n const slugger = new Slugger();\n const _files = {};\n\n if (_size(data.files) <= 0) return _files;\n // oxlint-disable-next-line complexity\n data.files.map((file: { external: { url: string }; file: { url: string }; type: string }) => {\n if (file?.type === \"file\") {\n const internalUrl = file?.file?.url.split(\"?\")[0];\n const internalSlug = slugger.slug(internalUrl);\n /**\n * @note(plaiceholder)\n *\n * Do not handle here.\n */\n // const { base64: internalBase64, img: internalImg } = await getPlaiceholder(\n // internalUrl\n // )\n _files[internalSlug] = {\n type: file?.type,\n url: getNotionHostedUrl(internalUrl, pageId),\n // base64: internalBase64,\n // img: internalImg,\n };\n }\n if (file?.type === \"external\") {\n const externalUrl = file?.external?.url.split(\"?\")[0];\n const externalSlug = slugger.slug(externalUrl);\n /**\n * @note(plaiceholder)\n *\n * Do not handle here.\n */\n // const { base64: externalBase64, img: externalImg } = await getPlaiceholder(\n // externalUrl\n // )\n _files[externalSlug] = {\n type: file?.type,\n url: externalUrl,\n // base64: externalBase64,\n // img: externalImg,\n };\n }\n // if (file?.type === 'image') {\n // const externalUrl = file?.external?.url.split('?')[0]\n // const externalSlug = slugger.slug(externalUrl)\n // _files[externalSlug] = { type: file?.type, url: externalUrl }\n // }\n\n // return\n });\n\n return _files;\n};\n\nexport default files;\n"],"mappings":"gHAIA,MAEM,GAAsB,EAAgC,IAC1D,yFACG,QAAQ,eAAgB,mBAAmB,CAAG,CAAC,CAAC,CAChD,QAAQ,cAAe,EAAa,CAAM,CAAC,EAE1C,GAAS,EAAW,IAAmB,CAC3C,IAAM,EAAU,IAAI,EACd,EAAS,CAAC,EAkDhB,OAhDIA,EAAM,EAAK,KAAK,GAAK,GAEzB,EAAK,MAAM,IAAK,GAA6E,CAC3F,GAAI,GAAM,OAAS,OAAQ,CACzB,IAAM,EAAc,GAAM,MAAM,IAAI,MAAM,GAAG,CAAC,CAAC,GACzC,EAAe,EAAQ,KAAK,CAAW,EAS7C,EAAO,GAAgB,CACrB,KAAM,GAAM,KACZ,IAAK,EAAmB,EAAa,CAAM,CAG7C,CACF,CACA,GAAI,GAAM,OAAS,WAAY,CAC7B,IAAM,EAAc,GAAM,UAAU,IAAI,MAAM,GAAG,CAAC,CAAC,GAC7C,EAAe,EAAQ,KAAK,CAAW,EAS7C,EAAO,GAAgB,CACrB,KAAM,GAAM,KACZ,IAAK,CAGP,CACF,CAQF,CAAC,EA9CkC,CAiDrC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/utils/get-types/index.ts"],"mappings":";cAiBM,QAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"../../get-types-7QEbhRzY.mjs";export{e as default};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
//#region src/utils/
|
|
1
|
+
//#region src/utils/get-types/multi-select.d.ts
|
|
2
2
|
declare const multi_select: (data: any) => {};
|
|
3
3
|
//#endregion
|
|
4
4
|
export { multi_select as default };
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=multi-select.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-select.d.mts","names":[],"sources":["../../../src/utils/get-types/multi-select.ts"],"mappings":";cAGM,YAAA,GAAgB,IAAS"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import{map as e}from"lodash-es";import t from"github-slugger";const n=n=>{let r=new t,i={};return e(n.multi_select,e=>{let t=e;t.slug=r.slug(t.name),i[t.id]=t}),i};export{n as default};
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=multi-select.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-select.mjs","names":[],"sources":["../../../src/utils/get-types/multi-select.ts"],"sourcesContent":["import Slugger from \"github-slugger\";\nimport { map as _map } from \"lodash-es\";\n\nconst multi_select = (data: any) => {\n const slugger = new Slugger();\n\n const dataReturn = {};\n _map(data.multi_select, (multiSelect: any) => {\n const ms = multiSelect;\n ms.slug = slugger.slug(ms.name);\n dataReturn[ms.id] = ms;\n });\n return dataReturn;\n};\n\nexport default multi_select;\n"],"mappings":"8DAGA,MAAM,EAAgB,GAAc,CAClC,IAAM,EAAU,IAAI,EAEd,EAAa,CAAC,EAMpB,OALA,EAAK,EAAK,aAAe,GAAqB,CAC5C,IAAM,EAAK,EACX,EAAG,KAAO,EAAQ,KAAK,EAAG,IAAI,EAC9B,EAAW,EAAG,IAAM,CACtB,CAAC,EACM,CACT"}
|