From 8ff304d5c104812b4d49a2e158f97cc411bc5b9a Mon Sep 17 00:00:00 2001 From: Bryan Robinson Date: Wed, 30 Dec 2020 11:05:34 -0500 Subject: [PATCH 1/3] Converts function and11ty to look to Sanity --- package-lock.json | 282 ++++++++++++++++++++++++++++++++++++-- package.json | 3 +- src/_data/bookmarks.js | 49 ++----- src/_data/oldBookmarks.js | 42 ++++++ 4 files changed, 322 insertions(+), 54 deletions(-) create mode 100644 src/_data/oldBookmarks.js diff --git a/package-lock.json b/package-lock.json index d7510e6..158a817 100644 --- a/package-lock.json +++ b/package-lock.json @@ -887,6 +887,63 @@ "fastq": "^1.6.0" } }, + "@rexxars/eventsource-polyfill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@rexxars/eventsource-polyfill/-/eventsource-polyfill-1.0.0.tgz", + "integrity": "sha512-YnrybIoM9WFqmeK1D8p/gutqjJnmXCVFWAU3ucka9M7Dzpen3f2Dy4KsC6k1wDHrCtHQuUHHwZovh3i5UPDaZw==" + }, + "@sanity/client": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sanity/client/-/client-2.1.0.tgz", + "integrity": "sha512-CrxBa0h8Ov0cW09w35dh8gYOMyMlC6g/rqPQpyUS6Yo08uUOO/6nX8cJh+jug+TBb/V72yD0WpxRNhBWAFXU7w==", + "requires": { + "@sanity/eventsource": "2.0.1", + "@sanity/generate-help-url": "2.0.9", + "@sanity/observable": "2.0.9", + "deep-assign": "^2.0.0", + "get-it": "^5.0.3", + "make-error": "^1.3.0", + "object-assign": "^4.1.1" + } + }, + "@sanity/eventsource": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@sanity/eventsource/-/eventsource-2.0.1.tgz", + "integrity": "sha512-5FjMSEdXEv8QDyHeY82SMqL95wmGkDtLT5VPOrok/hqmc5MyfH0g/yo6HLfVwZbqmdQxnCZ37YUJ5vkyixfLTw==", + "requires": { + "@rexxars/eventsource-polyfill": "^1.0.0", + "eventsource": "^1.0.6" + } + }, + "@sanity/generate-help-url": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@sanity/generate-help-url/-/generate-help-url-2.0.9.tgz", + "integrity": "sha512-Ibr4fEL3McAtvScwVPi5IpnLT+fXfY5NMxjmX0IyLHTod1iwOVpVlPBjWdLiiWiaMqX7Kf9CtoNcjFhtsVj2UA==" + }, + "@sanity/observable": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@sanity/observable/-/observable-2.0.9.tgz", + "integrity": "sha512-IUpzsEbhOhofTBUu2tiQ4Ymbkmhr6oe4UC4Ds1khZ9Td4t4mzzPGmGQIr5SBEDawz0UD7ZgZAb4LeEzV3hUrtA==", + "requires": { + "object-assign": "^4.1.1", + "rxjs": "^6.5.3" + }, + "dependencies": { + "rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@sanity/timed-out": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@sanity/timed-out/-/timed-out-4.0.2.tgz", + "integrity": "sha512-NBDKGj14g9Z+bopIvZcQKWCzJq5JSrdmzRR1CS+iyA3Gm8SnIWBfZa7I3mTg2X6Nu8LQXG0EPKXdOGozLS4i3w==" + }, "@types/babel-types": { "version": "7.0.7", "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.7.tgz", @@ -2164,6 +2221,11 @@ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz", "integrity": "sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw==" }, + "capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==" + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -2654,6 +2716,14 @@ "elliptic": "^6.0.0" } }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, "create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", @@ -2754,6 +2824,22 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "deep-assign": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/deep-assign/-/deep-assign-2.0.0.tgz", + "integrity": "sha1-6+BrHwfwja5ZdiDj3RYi83GhxXI=", + "requires": { + "is-obj": "^1.0.0" + } + }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -3090,9 +3176,9 @@ } }, "dotenv": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.1.0.tgz", - "integrity": "sha512-GUE3gqcDCaMltj2++g6bRQ5rBJWtkWTmqmD0fo1RnnMuUqHNCt2oTPeDnS9n6fKYvlhn7AeBkb38lymBtWBQdA==" + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" }, "duplexify": { "version": "3.7.1", @@ -3420,6 +3506,14 @@ "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==" }, + "eventsource": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", + "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "requires": { + "original": "^1.0.0" + } + }, "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", @@ -3841,6 +3935,11 @@ "mime-types": "^2.1.12" } }, + "form-urlencoded": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/form-urlencoded/-/form-urlencoded-2.0.9.tgz", + "integrity": "sha512-fWUzNiOnYa126vFAT6TFXd1mhJrvD8IqmQ9ilZPjkLYQfaRreBr5fIUoOpPlWtqaAG64nzoE7u5zSetifab9IA==" + }, "formidable": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", @@ -3926,7 +4025,8 @@ }, "ansi-regex": { "version": "2.1.1", - "bundled": true + "bundled": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3944,11 +4044,13 @@ }, "balanced-match": { "version": "1.0.0", - "bundled": true + "bundled": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3961,15 +4063,18 @@ }, "code-point-at": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "concat-map": { "version": "0.0.1", - "bundled": true + "bundled": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -4072,7 +4177,8 @@ }, "inherits": { "version": "2.0.3", - "bundled": true + "bundled": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -4082,6 +4188,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -4094,17 +4201,20 @@ "minimatch": { "version": "3.0.4", "bundled": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "bundled": true + "bundled": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -4121,6 +4231,7 @@ "mkdirp": { "version": "0.5.1", "bundled": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -4193,7 +4304,8 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true + "bundled": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -4203,6 +4315,7 @@ "once": { "version": "1.4.0", "bundled": true, + "optional": true, "requires": { "wrappy": "1" } @@ -4278,7 +4391,8 @@ }, "safe-buffer": { "version": "5.1.2", - "bundled": true + "bundled": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -4308,6 +4422,7 @@ "string-width": { "version": "1.0.2", "bundled": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -4325,6 +4440,7 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -4363,11 +4479,13 @@ }, "wrappy": { "version": "1.0.2", - "bundled": true + "bundled": true, + "optional": true }, "yallist": { "version": "3.0.3", - "bundled": true + "bundled": true, + "optional": true } } }, @@ -4390,6 +4508,47 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, + "get-it": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/get-it/-/get-it-5.0.3.tgz", + "integrity": "sha512-S/QxA9/P4e0tHPILIdf92FVYrE0vre7ChXXMZoILuU4/keatMqnW1KAzCEOH8toJVbj+hgrOnZdUxd9ruG7lsQ==", + "requires": { + "@sanity/timed-out": "^4.0.2", + "create-error-class": "^3.0.2", + "debug": "^2.6.8", + "decompress-response": "^3.3.0", + "follow-redirects": "^1.2.4", + "form-urlencoded": "^2.0.7", + "in-publish": "^2.0.0", + "into-stream": "^3.1.0", + "is-plain-object": "^2.0.4", + "is-retry-allowed": "^1.1.0", + "is-stream": "^1.1.0", + "nano-pubsub": "^1.0.2", + "object-assign": "^4.1.1", + "parse-headers": "^2.0.1", + "progress-stream": "^2.0.0", + "same-origin": "^0.1.1", + "simple-concat": "^1.0.0", + "tunnel-agent": "^0.6.0", + "url-parse": "^1.1.9" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, "get-own-enumerable-property-symbols": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz", @@ -4749,6 +4908,11 @@ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, + "in-publish": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", + "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==" + }, "indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", @@ -4783,6 +4947,15 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, + "into-stream": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", + "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", + "requires": { + "from2": "^2.1.1", + "p-is-promise": "^1.1.0" + } + }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", @@ -5001,6 +5174,16 @@ "resolved": "https://registry.npmjs.org/is-relative-path/-/is-relative-path-1.0.2.tgz", "integrity": "sha1-CRtGoNZ8HtD+hfH4z93gBrslHUY=" }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5365,6 +5548,11 @@ "semver": "^5.6.0" } }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, "mamacro": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", @@ -5506,6 +5694,11 @@ "mime-db": "1.40.0" } }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -5663,6 +5856,11 @@ "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", "optional": true }, + "nano-pubsub": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nano-pubsub/-/nano-pubsub-1.0.2.tgz", + "integrity": "sha1-NM53b3r5WZFbj3rP6N1rnGbzvek=" + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -5994,6 +6192,14 @@ "wordwrap": "~1.0.0" } }, + "original": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "requires": { + "url-parse": "^1.4.3" + } + }, "os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", @@ -6026,6 +6232,11 @@ "os-tmpdir": "^1.0.0" } }, + "p-is-promise": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" + }, "p-limit": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", @@ -6085,6 +6296,11 @@ "path-root": "^0.1.1" } }, + "parse-headers": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz", + "integrity": "sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==" + }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -6368,6 +6584,15 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "progress-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", + "integrity": "sha1-+sY6Cz0R3qy7CWmrzJOyFLzhntU=", + "requires": { + "speedometer": "~1.0.0", + "through2": "~2.0.3" + } + }, "promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", @@ -6635,6 +6860,11 @@ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -7189,6 +7419,11 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "same-origin": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/same-origin/-/same-origin-0.1.1.tgz", + "integrity": "sha1-wih9MZJXffUXrLvW0UUanDw5FPU=" + }, "sass-lookup": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/sass-lookup/-/sass-lookup-3.0.0.tgz", @@ -7399,6 +7634,11 @@ "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -7768,6 +8008,11 @@ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" }, + "speedometer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", + "integrity": "sha1-zWccsGdSwivKM3Di8zREC+T8YuI=" + }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -8425,6 +8670,15 @@ } } }, + "url-parse": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", + "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", diff --git a/package.json b/package.json index 2a40922..4601e20 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,9 @@ "license": "ISC", "dependencies": { "@11ty/eleventy": "^0.9.0", + "@sanity/client": "^2.1.0", "cheerio": "^1.0.0-rc.3", - "dotenv": "^8.1.0", + "dotenv": "^8.2.0", "faunadb": "^2.8.0", "netlify-lambda": "^1.6.3", "request": "^2.88.0", diff --git a/src/_data/bookmarks.js b/src/_data/bookmarks.js index acb66e0..7a47eaf 100644 --- a/src/_data/bookmarks.js +++ b/src/_data/bookmarks.js @@ -1,41 +1,12 @@ -var faunadb = require('faunadb'), - q = faunadb.query; - -var adminClient = new faunadb.Client({ - secret: process.env.FAUNADB_SERVER_SECRET -}); - -function getBookmarks() { - return adminClient.query(q.Paginate( - q.Match( - q.Ref("indexes/all_links") - ) - )) - .then((response) => { - const linkRefs = response.data; - const getAllLinksDataQuery = linkRefs.map((ref) => { - return q.Get(ref) - }) - - return adminClient.query(getAllLinksDataQuery).then(ret => { - return ret - }) - }).catch(error => { - return error - }) -} - -function mapBookmarks(data) { - return data.map(bookmark => { - const dateTime = new Date(bookmark.ts / 1000); - - return { time: dateTime, ...bookmark.data } - }) -} - +const sanityClient = require('@sanity/client') +const client = sanityClient({ + projectId: 'myf3wh95', + dataset: 'production', + useCdn: true // `false` if you want to ensure fresh data +}) + +const query = `*[_type == "bookmark"] | order(_createdAt desc)` module.exports = async function() { - const data = mapBookmarks(await getBookmarks()); - - return data.reverse() - + const data = await client.fetch(query) + return data } \ No newline at end of file diff --git a/src/_data/oldBookmarks.js b/src/_data/oldBookmarks.js new file mode 100644 index 0000000..c3340df --- /dev/null +++ b/src/_data/oldBookmarks.js @@ -0,0 +1,42 @@ +require('dotenv').config() + +var faunadb = require('faunadb'), + q = faunadb.query; + +var adminClient = new faunadb.Client({ + secret: process.env.FAUNADB_SERVER_SECRET +}); + +function getBookmarks() { + return adminClient.query(q.Paginate( + q.Match( + q.Ref("indexes/all_links") + ) + )) + .then((response) => { + const linkRefs = response.data; + const getAllLinksDataQuery = linkRefs.map((ref) => { + return q.Get(ref) + }) + + return adminClient.query(getAllLinksDataQuery).then(ret => { + return ret + }) + }).catch(error => { + return error + }) +} + +function mapBookmarks(data) { + return data.map(bookmark => { + const dateTime = new Date(bookmark.ts / 1000); + + return { time: dateTime, ...bookmark.data } + }) +} + +module.exports = async function() { + const data = mapBookmarks(await getBookmarks()); + return data.reverse() + +} \ No newline at end of file From b8f3bfdad89e63f88522c9f8df4d338a64f94685 Mon Sep 17 00:00:00 2001 From: Bryan Robinson Date: Wed, 30 Dec 2020 11:06:59 -0500 Subject: [PATCH 2/3] Updates serverless function --- lambda/bookmarks/create.js | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/lambda/bookmarks/create.js b/lambda/bookmarks/create.js index 078e85c..f261031 100644 --- a/lambda/bookmarks/create.js +++ b/lambda/bookmarks/create.js @@ -1,11 +1,13 @@ const rp = require('request-promise'); const cheerio = require('cheerio'); -var faunadb = require('faunadb'), - q = faunadb.query; -var adminClient = new faunadb.Client({ - secret: process.env.FAUNADB_SERVER_SECRET -}); +const sanityClient = require('@sanity/client') +const client = sanityClient({ + projectId: process.env.SANITY_PROJECT, + dataset: 'production', + token: process.env.SANITY_KEY, // or leave blank to be anonymous user + useCdn: true // `false` if you want to ensure fresh data +}) const getDetails = async function(url) { @@ -23,21 +25,22 @@ const getDetails = async function(url) { const saveBookmark = async function(details) { const data = { - data: details + ...details, + _type: "bookmark" }; - return adminClient.query(q.Create(q.Collection("links"), data)) - .then((response) => { - /* Success! return the response with statusCode 200 */ - console.log("success", response) + return client.create(data) + .then(res => { + console.log("success", res) return { statusCode: 200, - body: JSON.stringify(response) + body: JSON.stringify(res) } - }).catch((error) => { - /* Error! return the error with statusCode 400 */ - return { + }) + .catch(err => { + console.log(err) + return { statusCode: 400, - body: JSON.stringify(error) + body: JSON.stringify(err) } }) } From 851e2d7f4b76a8a34ef4180912122cfe2c1f2187 Mon Sep 17 00:00:00 2001 From: Bryan Robinson Date: Wed, 30 Dec 2020 11:17:22 -0500 Subject: [PATCH 3/3] Fixes time --- src/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.html b/src/index.html index 1ae5d9b..b268612 100644 --- a/src/index.html +++ b/src/index.html @@ -34,7 +34,7 @@

Bookmarks by @Brob

{% if link.url and link.pageTitle %}
  • {{ link.pageTitle }}

    - Saved on {{ link.time | date: "%b %d, %Y" }} + Saved on {{ link._createdAt | date: "%b %d, %Y" }} {% if link.description != "" %}

    {{ link.description }}

    {% endif %}