From 17a0965f060eae7f4a8a8c5b2baa93c5dee92df1 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:01:07 +0100 Subject: [PATCH 01/16] vault backup: 2024-07-03T16:01:07 Affected files: content/blog/will.faithfull/2024/07/AI probably isn't the hard part.md --- .../will.faithfull/2024/07/AI probably isn't the hard part.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/blog/will.faithfull/2024/07/AI probably isn't the hard part.md b/content/blog/will.faithfull/2024/07/AI probably isn't the hard part.md index 99c1555..6613490 100644 --- a/content/blog/will.faithfull/2024/07/AI probably isn't the hard part.md +++ b/content/blog/will.faithfull/2024/07/AI probably isn't the hard part.md @@ -4,7 +4,7 @@ aliases: [] tags: - breadboard created: 2024-07-03T14:00:10 -modified: 2024-07-03T15:43:53 +modified: 2024-07-03T16:00:07 --- We're all frogs in the AI pot and it's surprising how much the temperature of the water has increased recently. The commoditisation of LLMs-as-a-service and the proliferation of their capabilities has thrown people's understanding of how difficult some problems are into disarray. Sure, this isn't a new problem, as [XKCD](https://xkcd.com/1425/) famously remarked on, but recently I think the dial has moved again. From 834e50ae594e4d41a640c92045ee387b0f4ac6fd Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:15:54 +0100 Subject: [PATCH 02/16] there was a typo --- url-check.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url-check.ts b/url-check.ts index 375f6f5..bc0708a 100755 --- a/url-check.ts +++ b/url-check.ts @@ -114,7 +114,7 @@ function cacheUrlStatus(url: string, result: UrlCheckType) { timestamp: Date.now(), result, } - fs.writeFileSync(cacheFilePath, JSON.stringify(cacheContent, null, "'t"), "utf8") + fs.writeFileSync(cacheFilePath, JSON.stringify(cacheContent, null, "\t"), "utf8") } type UrlCheckType = { From 9721cd201f238e1a78b5e20a5be2c54112abaedb Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:24:20 +0100 Subject: [PATCH 03/16] chore: Refactor URL check script for better error handling and logging --- url-check.ts | 47 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 32 insertions(+), 15 deletions(-) diff --git a/url-check.ts b/url-check.ts index bc0708a..e3fe083 100755 --- a/url-check.ts +++ b/url-check.ts @@ -1,7 +1,7 @@ #!/usr/bin/env -S npx -y tsx --no-cache -import * as crypto from "crypto" -import * as fs from "fs" -import * as path from "path" +import * as crypto from "crypto"; +import * as fs from "fs"; +import * as path from "path"; const CACHE_DIR = "./.url-cache" const CACHE_DURATION = 24 * 60 * 60 * 1000 // 24 hours in milliseconds @@ -94,12 +94,19 @@ async function checkUrlStatus(url: string) { } function getCachedUrlStatus(url: string): UrlCheckType | null { - const cacheFilePath = path.join(CACHE_DIR, hashUrl(url)) + const fileHash = hashUrl(url) + const cacheFilePath = path.join(CACHE_DIR, fileHash) if (fs.existsSync(cacheFilePath)) { - const cacheContent = JSON.parse(fs.readFileSync(cacheFilePath, "utf8")) - const age = Date.now() - cacheContent.timestamp - if (age < CACHE_DURATION) { - return cacheContent.result + const cacheData = fs.readFileSync(cacheFilePath, "utf8") + try { + const cacheContent = JSON.parse(cacheData) + const age = Date.now() - cacheContent.timestamp + if (age < CACHE_DURATION) { + return cacheContent.result + } + } catch (error) { + console.error(`Error reading cache file for URL: ${url} from ${cacheFilePath}\n${cacheData}`) + throw error } } return null @@ -243,8 +250,9 @@ const directoryPath = "./content" const fileExtensions = ["md"] const ignoreUrls: string[] = ["https://distill.pub/2017/aia/"] -await checkUrlsInDirectory(directoryPath, fileExtensions, ignoreUrls) - .then((results: Set): void => { +const errors: any[] = [] +await checkUrlsInDirectory(directoryPath, fileExtensions, ignoreUrls).then( + (results: Set): void => { console.log("URL check completed.\n") const resultsArray = Array.from(results) const failedUrls = resultsArray.filter( @@ -267,7 +275,7 @@ await checkUrlsInDirectory(directoryPath, fileExtensions, ignoreUrls) ) .join("\n\n"), ) - process.exit(1) + errors.push(...failedUrls) } else { console.debug( applyStyles(["=".repeat(80), `SUCCESS`].join("\n"), [ @@ -276,7 +284,16 @@ await checkUrlsInDirectory(directoryPath, fileExtensions, ignoreUrls) ]), ) } - }) - .catch((error) => { - console.error("Error occurred:", error) - }) + }, +) + +console.log("URL check completed.\n") + +if (errors.length) { + console.error("Errors occurred:") + // errors.forEach((error) => console.error(error)) + // console.error(errors) + process.exit(1) +} else { + console.log("No errors occurred.") +} From db1f8c71127db75949145b88be31b3711c0afdc6 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:46:24 +0100 Subject: [PATCH 04/16] Update urls https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/ --- .../projects/Breadboard/Phase 2/Board for Each.md | 4 ++-- .../Phase 2/Google Custom Search Engine Tool.md | 4 ++-- .../Hacker News/Hacker News Algolia Items.md | 4 ++-- .../Hacker News/Hacker News Algolia Search.md | 4 ++-- .../Hacker News/Hacker News Firebase Boards.md | 4 ++-- .../simplified/Simple Hacker News Search.md | 4 ++-- content/projects/Breadboard/Phase 2/Holidays.md | 12 ++++++------ .../Breadboard/Phase 2/Object Manipulator Board.md | 14 +++++++------- 8 files changed, 25 insertions(+), 25 deletions(-) diff --git a/content/projects/Breadboard/Phase 2/Board for Each.md b/content/projects/Breadboard/Phase 2/Board for Each.md index 5671999..464b163 100644 --- a/content/projects/Breadboard/Phase 2/Board for Each.md +++ b/content/projects/Breadboard/Phase 2/Board for Each.md @@ -63,8 +63,8 @@ The "Board for Each" is a versatile tool designed to simplify data processing ta This board is used with the [Object Manipulator Board](projects/Breadboard/Phase%202/Object%20Manipulator%20Board.md) in the [Simple Hacker News Search](projects/Breadboard/Phase%202/Hacker%20News/simplified/Simple%20Hacker%20News%20Search.md) board to remove unnecessary attributes from the results array. -- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/board-for-each.ts) -- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/board-for-each.json) +- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/board-for-each.ts) +- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/board-for-each.json) - [Open in Breadboard Web](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/board-for-each.json) ## Breadboard Web diff --git a/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md b/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md index 7a416c5..b880900 100644 --- a/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md +++ b/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md @@ -14,8 +14,8 @@ modified: 2024-06-12T11:04:49 A tool worker board for retrieving search results from Google Custom Search Engine. -- [github.com/breadboard-ai/breadboard/packages/breadboard-web/src/boards/google-custom-search-engingine.ts](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/google-custom-search-engingine.ts) -- [github.com/breadboard-ai/breadboard/packages/breadboard-web/public/graphs/google-custom-search-engingine.json](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/google-custom-search-engingine.json) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/google-custom-search-engingine.json) +- [github.com/breadboard-ai/breadboard/packages/breadboard-web/src/boards/google-custom-search-engingine.ts](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/google-custom-search-engingine.ts) +- [github.com/breadboard-ai/breadboard/packages/breadboard-web/public/graphs/google-custom-search-engingine.json](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/google-custom-search-engingine.json) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/google-custom-search-engingine.json) ## References diff --git a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Items.md b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Items.md index c9efcd6..a0b7fd8 100644 --- a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Items.md +++ b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Items.md @@ -9,8 +9,8 @@ created: 2024-06-13T09:21:01 modified: 2024-06-13T09:49:19 --- -- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/hacker-news-firebase-story-from-id.ts) -- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/hacker-news-firebase-story-from-id.json) +- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/hacker-news-firebase-story-from-id.ts) +- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/hacker-news-firebase-story-from-id.json) [Open in Breadboard Web](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/hacker-news-algolia-story-from-id.json) diff --git a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Search.md b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Search.md index f30be0c..0d4bab4 100644 --- a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Search.md +++ b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Algolia Search.md @@ -9,8 +9,8 @@ created: 2024-06-13T09:19:11 modified: 2024-06-14T21:48:07 --- -- [TypeScrtipt](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/hacker-news-algolia-search.ts) -- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/hacker-news-algolia-search.json) +- [TypeScrtipt](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/hacker-news-algolia-search.ts) +- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/hacker-news-algolia-search.json) [Open in Breadboard Web](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/hacker-news-algolia-search.json) diff --git a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Firebase Boards.md b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Firebase Boards.md index 0fca601..ad49016 100644 --- a/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Firebase Boards.md +++ b/content/projects/Breadboard/Phase 2/Hacker News/Hacker News Firebase Boards.md @@ -7,7 +7,7 @@ created: 2024-06-13T09:22:10 modified: 2024-06-13T09:36:56 --- -- [Firebase Story](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/hacker-news-firebase-story-from-id.ts) +- [Firebase Story](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/hacker-news-firebase-story-from-id.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/hacker-news-firebase-story-from-id.json) -- [Firebase Top Stories](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/hacker-news-firebase-top-story-ids.ts) +- [Firebase Top Stories](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/hacker-news-firebase-top-story-ids.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/hacker-news-firebase-top-story-ids.json) diff --git a/content/projects/Breadboard/Phase 2/Hacker News/simplified/Simple Hacker News Search.md b/content/projects/Breadboard/Phase 2/Hacker News/simplified/Simple Hacker News Search.md index ce4c636..eedcaee 100644 --- a/content/projects/Breadboard/Phase 2/Hacker News/simplified/Simple Hacker News Search.md +++ b/content/projects/Breadboard/Phase 2/Hacker News/simplified/Simple Hacker News Search.md @@ -107,8 +107,8 @@ classDef slotted stroke:#a64d79 ## Source -- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/hacker-news-simplified-algolia-search.json) -- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/hacker-news-simplified-algolia-search.ts) +- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/hacker-news-simplified-algolia-search.json) +- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/hacker-news-simplified-algolia-search.ts) - [Open in Breadboard Web](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/hacker-news-simplified-algolia-search.json) ## Preview Mode diff --git a/content/projects/Breadboard/Phase 2/Holidays.md b/content/projects/Breadboard/Phase 2/Holidays.md index 36ff656..7a6569b 100644 --- a/content/projects/Breadboard/Phase 2/Holidays.md +++ b/content/projects/Breadboard/Phase 2/Holidays.md @@ -12,17 +12,17 @@ Holiday Tool Tool-worker boards using the free public [Nager.Date](https://date.nager.at/Api) API for holiday information. Useful for boards that are used for planning and/or scheduling. -- [Available Countries](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/available-countries.ts) +- [Available Countries](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/available-countries.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/available-countries.json) -- [Country Info](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/country-info.ts) +- [Country Info](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/country-info.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/country-info.json) -- [Is Today A Holiday](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/is-today-public-holiday.ts) +- [Is Today A Holiday](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/is-today-public-holiday.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/is-today-public-holiday.json) -- [Long Weekend](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/long-weekend.ts) +- [Long Weekend](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/long-weekend.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/long-weekend.json) -- [Next Worldwide Holiday](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/next-holiday-worldwide.ts) +- [Next Worldwide Holiday](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/next-holiday-worldwide.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/next-holiday-worldwide.json) -- [Public Holidays](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/nager.date/public-holidays.ts) +- [Public Holidays](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/nager.date/public-holidays.ts) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/nager.date/public-holidays.json)
diff --git a/content/projects/Breadboard/Phase 2/Object Manipulator Board.md b/content/projects/Breadboard/Phase 2/Object Manipulator Board.md index f495685..9a4da4b 100644 --- a/content/projects/Breadboard/Phase 2/Object Manipulator Board.md +++ b/content/projects/Breadboard/Phase 2/Object Manipulator Board.md @@ -21,12 +21,12 @@ The Object Manipulator board was developed to work initially with the [For Each ## How It Works -1. **Input Configuration**: +1. **Input Configuration**: - Define the keys you are interested in. - Choose between pick and omit modes based on your requirements. -1. **Sample Object Handling**: +1. **Sample Object Handling**: - Apply the configuration to a sample object to observe the effects. -2. **Strict Mode Activation**: +2. **Strict Mode Activation**: - Enable strict mode to ensure keys' presence according to the chosen operation mode. ## Usage Example @@ -34,7 +34,7 @@ The Object Manipulator board was developed to work initially with the [For Each ### Pick Mode - **Configuration**: Picking `name` and `surname` from the input object. -- **Output**: +- **Output**: ```json { @@ -46,7 +46,7 @@ The Object Manipulator board was developed to work initially with the [For Each ### Omit Mode - **Configuration**: Omitting `surname` from the input object. -- **Output**: +- **Output**: ```json { @@ -73,8 +73,8 @@ This board is used in the [Simple Hacker News Search](projects/Breadboard/Phase% ## Source -- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/src/boards/object-manipulator.ts) -- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/breadboard-web/public/graphs/object-manipulator.json) +- [TypeScript](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/object-manipulator.ts) +- [JSON](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/object-manipulator.json) ## Breadboard Web From 5fb07191b68469750847318a5fedad4aa42ff5c5 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:46:47 +0100 Subject: [PATCH 05/16] chore: Update URL check script to ignore additional URLs --- url-check.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/url-check.ts b/url-check.ts index e3fe083..8eb97b3 100755 --- a/url-check.ts +++ b/url-check.ts @@ -1,7 +1,7 @@ #!/usr/bin/env -S npx -y tsx --no-cache -import * as crypto from "crypto"; -import * as fs from "fs"; -import * as path from "path"; +import * as crypto from "crypto" +import * as fs from "fs" +import * as path from "path" const CACHE_DIR = "./.url-cache" const CACHE_DURATION = 24 * 60 * 60 * 1000 // 24 hours in milliseconds @@ -248,7 +248,10 @@ function logWithStyles(message: string, styles: string[], log = console.log): vo const directoryPath = "./content" const fileExtensions = ["md"] -const ignoreUrls: string[] = ["https://distill.pub/2017/aia/"] +const ignoreUrls: string[] = [ + "https://distill.pub/2017/aia/", + "https://www.healthline.com/health/fitness-exercise/benefits-of-exercise", +] const errors: any[] = [] await checkUrlsInDirectory(directoryPath, fileExtensions, ignoreUrls).then( From 7910d5af3a04a55b99cf943d49d08a83efcb950d Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:51:52 +0100 Subject: [PATCH 06/16] update ignored urls --- url-check.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/url-check.ts b/url-check.ts index 8eb97b3..8939fa5 100755 --- a/url-check.ts +++ b/url-check.ts @@ -1,7 +1,7 @@ #!/usr/bin/env -S npx -y tsx --no-cache -import * as crypto from "crypto" -import * as fs from "fs" -import * as path from "path" +import * as crypto from "crypto"; +import * as fs from "fs"; +import * as path from "path"; const CACHE_DIR = "./.url-cache" const CACHE_DURATION = 24 * 60 * 60 * 1000 // 24 hours in milliseconds @@ -251,6 +251,9 @@ const fileExtensions = ["md"] const ignoreUrls: string[] = [ "https://distill.pub/2017/aia/", "https://www.healthline.com/health/fitness-exercise/benefits-of-exercise", + "https://huggingface.co/settings/tokens", + "https://www.mayoclinic.org/healthy-lifestyle/fitness/in-depth/exercise/art-20048389", + "https://www.cdc.gov/physicalactivity/basics/pa-health/index.htm", ] const errors: any[] = [] From b8b0108af244935a6a67bf674f9844779889adb9 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:52:46 +0100 Subject: [PATCH 07/16] chore: Update Google Custom Search Engine Tool URLs --- .../Breadboard/Phase 2/Google Custom Search Engine Tool.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md b/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md index b880900..dfb66e6 100644 --- a/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md +++ b/content/projects/Breadboard/Phase 2/Google Custom Search Engine Tool.md @@ -14,8 +14,8 @@ modified: 2024-06-12T11:04:49 A tool worker board for retrieving search results from Google Custom Search Engine. -- [github.com/breadboard-ai/breadboard/packages/breadboard-web/src/boards/google-custom-search-engingine.ts](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/google-custom-search-engingine.ts) -- [github.com/breadboard-ai/breadboard/packages/breadboard-web/public/graphs/google-custom-search-engingine.json](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/google-custom-search-engingine.json) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/google-custom-search-engingine.json) +- [github.com/breadboard-ai/breadboard/packages/visual-editor/src/boards/google-custom-search-engine.ts](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/src/boards/google-custom-search-engine.ts) +- [github.com/breadboard-ai/breadboard/packages/visual-editor/public/graphs/google-custom-search-engine.json](https://github.com/breadboard-ai/breadboard/blob/main/packages/visual-editor/public/graphs/google-custom-search-engine.json) [๐Ÿ”—](https://breadboard-ai.web.app/?board=https://raw.githubusercontent.com/breadboard-ai/breadboard/main/packages/breadboard-web/public/graphs/google-custom-search-engingine.json) ## References From 3b1845a7f7a3035d11a2db41be492fa488f022ab Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 16:58:00 +0100 Subject: [PATCH 08/16] vault backup: 2024-07-03T16:58:00 Affected files: content/projects/Breadboard/Phase 2/Review Reply Board.md --- content/projects/Breadboard/Phase 2/Review Reply Board.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/content/projects/Breadboard/Phase 2/Review Reply Board.md b/content/projects/Breadboard/Phase 2/Review Reply Board.md index 18b40df..39835f8 100644 --- a/content/projects/Breadboard/Phase 2/Review Reply Board.md +++ b/content/projects/Breadboard/Phase 2/Review Reply Board.md @@ -4,12 +4,12 @@ aliases: - Automated Business Review Responses - Review Reply Board tags: + - board - breadboard/phase/2 - business - marketing - - board created: 2024-06-12T09:26:13 -modified: 2024-06-14T21:28:06 +modified: 2024-07-03T16:57:00 --- A prototype has been developed for automating responses to business reviews using Googleโ€™s Gemini model. This prototype is particularly useful for businesses managing their reviews via the Google Business Profile API. @@ -52,8 +52,6 @@ This demo board is a wrapper board to pass a sample review to the `business-revi #### Edit Mode - - ## Source Code - [business-review-replier.ts](https://github.com/ExaDev/breadboard/blob/business-review-reply/packages/breadboard-web/src/boards/business-review-replier.ts) From 88f8cb34d09368bf2eaf2fc40283f924622a44c4 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 17:06:16 +0100 Subject: [PATCH 09/16] vault backup: 2024-07-03T17:06:16 Affected files: content/projects/Breadboard/Phase 2/Review Reply Board.md --- content/projects/Breadboard/Phase 2/Review Reply Board.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/content/projects/Breadboard/Phase 2/Review Reply Board.md b/content/projects/Breadboard/Phase 2/Review Reply Board.md index 39835f8..18b40df 100644 --- a/content/projects/Breadboard/Phase 2/Review Reply Board.md +++ b/content/projects/Breadboard/Phase 2/Review Reply Board.md @@ -4,12 +4,12 @@ aliases: - Automated Business Review Responses - Review Reply Board tags: - - board - breadboard/phase/2 - business - marketing + - board created: 2024-06-12T09:26:13 -modified: 2024-07-03T16:57:00 +modified: 2024-06-14T21:28:06 --- A prototype has been developed for automating responses to business reviews using Googleโ€™s Gemini model. This prototype is particularly useful for businesses managing their reviews via the Google Business Profile API. @@ -52,6 +52,8 @@ This demo board is a wrapper board to pass a sample review to the `business-revi #### Edit Mode + + ## Source Code - [business-review-replier.ts](https://github.com/ExaDev/breadboard/blob/business-review-reply/packages/breadboard-web/src/boards/business-review-replier.ts) From 15a730fecb089156a869c2fea585cfbf7bacce6c Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 17:09:36 +0100 Subject: [PATCH 10/16] vault backup: 2024-07-03T17:09:36 Affected files: content/projects/Breadboard/Phase 2/Review Reply Board.md --- content/projects/Breadboard/Phase 2/Review Reply Board.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/projects/Breadboard/Phase 2/Review Reply Board.md b/content/projects/Breadboard/Phase 2/Review Reply Board.md index 18b40df..47cf5d5 100644 --- a/content/projects/Breadboard/Phase 2/Review Reply Board.md +++ b/content/projects/Breadboard/Phase 2/Review Reply Board.md @@ -4,12 +4,12 @@ aliases: - Automated Business Review Responses - Review Reply Board tags: + - board - breadboard/phase/2 - business - marketing - - board created: 2024-06-12T09:26:13 -modified: 2024-06-14T21:28:06 +modified: 2024-07-03T17:08:36 --- A prototype has been developed for automating responses to business reviews using Googleโ€™s Gemini model. This prototype is particularly useful for businesses managing their reviews via the Google Business Profile API. From e7db78f313af84f9f2e95088eb153225d34eebb4 Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Wed, 3 Jul 2024 17:19:47 +0100 Subject: [PATCH 11/16] vault backup: 2024-07-03T17:19:47 Affected files: content/projects/Breadboard/Phase 2/Review Reply Board.md --- content/projects/Breadboard/Phase 2/Review Reply Board.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/projects/Breadboard/Phase 2/Review Reply Board.md b/content/projects/Breadboard/Phase 2/Review Reply Board.md index 47cf5d5..c1acbcd 100644 --- a/content/projects/Breadboard/Phase 2/Review Reply Board.md +++ b/content/projects/Breadboard/Phase 2/Review Reply Board.md @@ -9,7 +9,7 @@ tags: - business - marketing created: 2024-06-12T09:26:13 -modified: 2024-07-03T17:08:36 +modified: 2024-07-03T17:18:47 --- A prototype has been developed for automating responses to business reviews using Googleโ€™s Gemini model. This prototype is particularly useful for businesses managing their reviews via the Google Business Profile API. @@ -54,6 +54,8 @@ This demo board is a wrapper board to pass a sample review to the `business-revi + + ## Source Code - [business-review-replier.ts](https://github.com/ExaDev/breadboard/blob/business-review-reply/packages/breadboard-web/src/boards/business-review-replier.ts) From ec2d966aa5a5b42de3924d83ff54bb13abfab54b Mon Sep 17 00:00:00 2001 From: Joseph mearman Date: Thu, 4 Jul 2024 10:58:07 +0100 Subject: [PATCH 12/16] vault backup: 2024-07-04T10:58:07 Affected files: content/boards/exam-coach.bgl.json --- content/boards/exam-coach.bgl.json | 164 ----------------------------- 1 file changed, 164 deletions(-) delete mode 100644 content/boards/exam-coach.bgl.json diff --git a/content/boards/exam-coach.bgl.json b/content/boards/exam-coach.bgl.json deleted file mode 100644 index 0219212..0000000 --- a/content/boards/exam-coach.bgl.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "title": "IELTS-exam-practice", - "description": "A board to act as a coach / practice tool for exam questions. It can be seeded with a question, answer and marking scheme and will then give constructive feedback about the student's answer.", - "version": "0.0.1", - "metadata": { - "comments": [], - "tags": [] - }, - "edges": [ - { - "from": "promptTemplate-f5db9f16", - "to": "specialist-3a9247e9", - "out": "prompt", - "in": "task" - }, - { - "from": "input", - "to": "specialist-3a9247e9", - "out": "property-2", - "in": "in" - }, - { - "from": "input", - "to": "specialist-3a9247e9", - "out": "property-4", - "in": "persona" - }, - { - "from": "input", - "to": "promptTemplate-f5db9f16", - "out": "property-3", - "in": "MarkingScheme" - }, - { - "from": "input", - "to": "promptTemplate-f5db9f16", - "out": "context", - "in": "Question" - }, - { - "from": "specialist-3a9247e9", - "to": "output", - "out": "out", - "in": "context" - } - ], - "nodes": [ - { - "type": "input", - "id": "input", - "configuration": { - "schema": { - "properties": { - "context": { - "type": "object", - "title": "Question", - "examples": [], - "default": "{\"role\":\"user\",\"parts\":[{\"text\":\"In the last few decades there has been a significant increase in the number of opportunities for international travel, with more transport routes and cheaper fares.\\n\\nThere are undoubtedly benefits flowing from this growth in international tourism. People now have a greater awareness of other cultures than was the case even one generation ago. Travelling widely to enjoy such things as the art, customs and cuisine of different countries used to be the preserve of the wealthy classes. Now even the less well-off have access to them.\\n\\nThere are, however, drawbacks associated with this level of mobility. Firstly, a number of resorts, even whole countries, have so many tourists that the culture and environment are severely damaged. For example, traditional crafts are replaced by the manufacturing of cheap trinkets and local singing and dancing are packaged for tourist consumption. Because tourists stay for only a short time they often don't care if they behave badly or litter the streets. Secondly, although the hospitality industry does bring employment, it tends to be precarious because much of it is seasonal, with long periods of the year offering no work. The income from tourism is unevenly distributed, with a small number of big businesses (e.g. property developers) making a lot of money but the majority of people working for low wages as waiters or guides. Related to this is the fact that money spent by tourists is seldom retained by the local economy: profits are frequently taken out by multinational corporations. Finally, international travel adds to greenhouse gases, leading to harmful climate change.\\n\\nIn my view, despite the advantages of travel to both tourists and host countries, these do not compensate for the damage inflicted on the environment, social structures and individuals by mass tourism.\"}]}", - "behavior": [ - "llm-content" - ], - "format": "text-inline" - }, - "property-2": { - "type": "object", - "behavior": [ - "llm-content" - ], - "title": "Answer", - "examples": [], - "default": "{\"role\":\"user\",\"parts\":[{\"text\":\"In the last few decades there has been a significant increase in the number of opportunities for international travel, with more transport routes and cheaper fares.\\n\\nThere are undoubtedly benefits flowing from this growth in international tourism. People now have a greater awareness of other cultures than was the case even one generation ago. Travelling widely to enjoy such things as the art, customs and cuisine of different countries used to be the preserve of the wealthy classes. Now even the less well-off have access to them.\\n\\nThere are, however, drawbacks associated with this level of mobility. Firstly, a number of resorts, even whole countries, have so many tourists that the culture and environment are severely damaged. For example, traditional crafts are replaced by the manufacturing of cheap trinkets and local singing and dancing are packaged for tourist consumption. Because tourists stay for only a short time they often don't care if they behave badly or litter the streets. Secondly, although the hospitality industry does bring employment, it tends to be precarious because much of it is seasonal, with long periods of the year offering no work. The income from tourism is unevenly distributed, with a small number of big businesses (e.g. property developers) making a lot of money but the majority of people working for low wages as waiters or guides. Related to this is the fact that money spent by tourists is seldom retained by the local economy: profits are frequently taken out by multinational corporations. Finally, international travel adds to greenhouse gases, leading to harmful climate change.\\n\\nIn my view, despite the advantages of travel to both tourists and host countries, these do not compensate for the damage inflicted on the environment, social structures and individuals by mass tourism.\"}]}", - "format": "text-inline" - }, - "property-3": { - "type": "object", - "behavior": [ - "llm-content" - ], - "title": "MarkingScheme", - "examples": [], - "default": "{\"role\":\"user\",\"parts\":[{\"text\":\"## Band 9\\n\\n**Task achievement**\\nAll the requirements of the task are fully and appropriately satisfied.\\n\\nThere may be extremely rare lapses in content.\\n\\n**Coherence and cohesion**\\nThe message can be followed effortlessly.\\n\\nCohesion is used in such a way that it very rarely attracts attention.\\n\\nAny lapses in coherence or cohesion are minimal.\\n\\nParagraphing is skilfully managed.\\n\\n**Lexical resource**\\nFull flexibility and precise use are evident within the scope of the task.\\n\\nA wide range of vocabulary is used accurately and appropriately with very natural and sophisticated control of lexical features.\\n\\nMinor errors in spelling and word formation are extremely rare and have minimal impact on communication.\\n\\n**Grammatical range and accuracy**\\nA wide range of structures within the scope of the task is used with full flexibility and control.\\n\\nPunctuation and grammar are used appropriately throughout.\\n\\nMinor errors are extremely rare and have minimal impact on communication.\\n\\n## Band 8\\n\\n**Task achievement**\\nThe response covers all the requirements of the task appropriately, relevantly and sufficiently.\\n\\n(Academic) Key features are skilfully selected, and clearly presented, highlighted and illustrated.\\n\\n(General Training) All bullet points are clearly presented, and appropriately illustrated or extended.\\n\\nThere may be occasional omissions or lapses in content.\\n**Coherence and cohesion**\\nThe message can be followed with ease.\\n\\nInformation and ideas are logically sequenced, and cohesion is well managed.\\n\\nOccasional lapses in coherence or cohesion may occur.\\n\\nParagraphing is used sufficiently and appropriately.\\n**Lexical resource**\\nA wide resource is fluently and flexibly used to convey precise meanings within the scope of the task.\\n\\nThere is a skilful use of uncommon and/or idiomatic items when appropriate, despite occasional inaccuracies in word choice and collocation.\\n\\nOccasional errors in spelling and/or word formation may occur, but have minimal impact on communication.\\n**Grammatical range and accuracy**\\nA wide range of structures within the scope of the task is flexibly and accurately used.\\n\\nThe majority of sentences are error-free, and punctuation is well managed.\\n\\nOccasional, non-systematic errors and inappropriacies occur, but have minimal impact on communication.\\n\\n## Band 7\\n\\n**Task achievement**\\nThe response covers the requirements of the task.\\n\\nThe content is relevant and accurate โ€“ there may be a few omissions or lapses. The format is appropriate.\\n\\n(Academic) Key features which are selected are covered and clearly highlighted but could be more fully or more appropriately illustrated or extended.\\n\\n(Academic) It presents a clear overview, the data are appropriately categorised, and main trends or differences are identified.\\n\\n(General Training) All bullet points are covered and clearly highlighted but could be more fully or more appropriately illustrated or extended. It presents a clear purpose. The tone is consistent and appropriate to the task. Any lapses are minimal.\\n**Coherence and cohesion**\\nInformation and ideas are logically organised and there is a clear progression throughout the response. A few lapses may occur.\\n\\nA range of cohesive devices including reference and substitution is used flexibly but with some inaccuracies or some over/under use.\\n**Lexical resource**\\nThe resource is sufficient to allow some flexibility and precision.\\n\\nThere is some ability to use less common and/or idiomatic items.\\n\\nAn awareness of style and collocation is evident, though inappropriacies occur.\\n\\nThere are only a few errors in spelling and/or word formation, and they do not detract from overall clarity.\\n**Grammatical range and accuracy**\\nA variety of complex structures is used with some flexibility and accuracy.\\n\\nGrammar and punctuation are generally well controlled, and error-free sentences are frequent.\\n\\nA few errors in grammar may persist, but these do not impede communication\\n\\n## Band 6\\n\\n**Task achievement**\\nThe response focuses on the requirements of the task and an appropriate format is used.\\n\\n(Academic) Key features which are selected are covered and adequately highlighted. A relevant overview is attempted. Information is appropriately selected and supported using figures/data.\\n\\n(General Training) All bullet points are covered and adequately highlighted. The purpose is generally clear. There may be minor inconsistencies in tone.\\n\\nSome irrelevant, inappropriate or inaccurate information may occur in areas of detail or when illustrating or extending the main points.\\n\\nSome details may be missing (or excessive) and further extension or illustration may be needed.\\n\\n**Coherence and cohesion**\\nInformation and ideas are generally arranged coherently and there is a clear overall progression.\\n\\nCohesive devices are used to some good effect but cohesion within and/or between sentences may be faulty or mechanical due to misuse, overuse or omission.\\n\\nThe use of reference and substitution may lack flexibility or clarity and result in some repetition or error.\\n\\n**Lexical resource**\\nThe resource is generally adequate and appropriate for the task.\\n\\nThe meaning is generally clear in spite of a rather restricted range or a lack of precision in word choice.\\n\\nIf the writer is a risk-taker, there will be a wider range of vocabulary used but higher degrees of inaccuracy or inappropriacy.\\n\\nThere are some errors in spelling and/or word formation, but these do not impede communication.\\n\\n**Grammatical range and accuracy**\\nA mix of simple and complex sentence forms is used but flexibility is limited.\\n\\nExamples of more complex structures are not marked by the same level of accuracy as in simple structures.\\n\\nErrors in grammar and punctuation occur, but rarely impede communication.\\n\\n## Band 5\\n\\n**Task achievement**\\nThe response generally addresses the requirements of the task. The format may be inappropriate in places.\\n\\n(Academic) Key features which are selected are not adequately covered. The recounting of detail is mainly mechanical. There may be no data to support the description.\\n\\n(General Training) All bullet points are presented but one or more may not be adequately covered. The purpose may be unclear at times. The tone may be variable and sometimes inappropriate.\\n\\nThere may be a tendency to focus on details (without referring to the bigger picture).\\n\\nThe inclusion of irrelevant, inappropriate or inaccurate material in key areas detracts from the task achievement.\\n\\nThere is limited detail when extending and illustrating the main points\\n\\n**Coherence and cohesion**\\nOrganisation is evident but is not wholly logical and there may be a lack of overall progression. Nevertheless, there is a sense of underlying coherence to the response.\\n\\nThe relationship of ideas can be followed but the sentences are not fluently linked to each other.\\n\\nThere may be limited/overuse of cohesive devices with some inaccuracy.\\n\\nThe writing may be repetitive due to inadequate and/or inaccurate use of reference and substitution.\\n\\n**Lexical resource**\\nThe resource is limited but minimally adequate for the task.\\n\\nSimple vocabulary may be used accurately but the range does not permit much variation in expression.\\n\\nThere may be frequent lapses in the appropriacy of word choice, and a lack of flexibility is apparent in frequent simplifications and/or repetitions.\\n\\nErrors in spelling and/or word formation may be noticeable and may cause some difficulty for the reader.\\n\\n**Grammatical range and accuracy**\\nThe range of structures is limited and rather repetitive.\\n\\nAlthough complex sentences are attempted, they tend to be faulty, and the greatest accuracy is achieved on simple sentences.\\n\\nGrammatical errors may be frequent and cause some difficulty for the reader.\\n\\nPunctuation may be faulty.\\n\\n## Band 4\\n\\n**Task achievement**\\nThe response is an attempt to address the task.\\n\\n(Academic) Few key features have been selected.\\n\\n(General Training) Not all bullet points are presented.\\n\\n(General Training) The purpose of the letter is not clearly explained and may be confused.The tone may be inappropriate.\\n\\nThe format may be inappropriate.\\n\\nKey features/bullet points which are presented may be irrelevant, repetitive, inaccurate or inappropriate.\\n\\n**Coherence and cohesion**\\nInformation and ideas are evident but not arranged coherently, and there is no clear progression within the response.\\n\\nRelationships between ideas can be unclear and/or inadequately marked. There is some use of basic cohesive devices, which may be inaccurate or repetitive.\\n\\nThere is inaccurate use or a lack of substitution or referencing\\n\\n**Lexical resource**\\nThe resource is limited and inadequate for or unrelated to the task. Vocabulary is basic and may be used repetitively.\\n\\nThere may be inappropriate use of lexical chunks (e.g. memorised phrases, formulaic language and/or language from the input material).\\n\\nInappropriate word choice and/or errors in word formation and/or in spelling may impede meaning\\n\\n**Grammatical range and accuracy**\\nA very limited range of structures is used.\\n\\nSubordinate clauses are rare and simple sentences predominate.\\n\\nSome structures are produced accurately but grammatical errors are frequent and may impede meaning.\\n\\nPunctuation is often faulty or inadequate\\n\\n## Band 3\\n\\n**Task achievement**\\nThe response does not address the requirements of the task (possibly because of misunderstanding of the data/diagram/situation).\\n\\nKey features/bullet points which are presented may be largely irrelevant.\\n\\nLimited information is presented, and this may be used repetitively\\n\\n**Coherence and cohesion**\\nThere is no apparent logical organisation. Ideas are discernible but difficult to relate to each other.\\n\\nMinimal use of sequencers or cohesive devices. Those used do not necessarily indicate a logical relationship between ideas.\\n\\nThere is difficulty in identifying referencing.\\n\\n**Lexical resource**\\nThe resource is inadequate (which may be due to the response being significantly underlength).\\n\\nPossible over-dependence on input material or memorised language.\\n\\nControl of word choice and/or spelling is very limited, and errors predominate. These errors may severely impede meaning.\\n\\n**Grammatical range and accuracy**\\nSentence forms are attempted, but errors in grammar and punctuation predominate (except in memorised phrases or those taken from the input material). This prevents most meaning from coming through.\\n\\nLength may be insufficient to provide evidence of control of sentence forms.\\n\\n## Band 2\\n\\n**Task achievement**\\nThe content barely relates to the task.\\n\\n**Coherence and cohesion**\\nThere is little relevant message, or the entire response may be off-topic.\\n\\nThere is little evidence of control of organisational features.\\n\\n**Lexical resource**\\nThe resource is extremely limited with few recognisable strings, apart from memorised phrases.\\n\\nThere is no apparent control of word formation and/or spelling.\\n\\n**Grammatical range and accuracy**\\nThere is little or no evidence of sentence forms (except in memorised phrases).\\n\\n## Band 1\\n\\n**Task achievement**\\nResponses of 20 words or fewer are rated at Band 1.\\n\\nThe content is wholly unrelated to the task.\\n\\nAny copied rubric must be discounted.\\n\\n**Coherence and cohesion**\\nResponses of 20 words or fewer are rated at Band 1.\\n\\nThe writing fails to communicate any message and appears to be by a virtual non-writer.\\n\\n**Lexical resource**\\nResponses of 20 words or fewer are rated at Band 1.\\n\\nNo resource is apparent, except for a few isolated words.\\n\\n**Grammatical range and accuracy**\\nResponses of 20 words or fewer are rated at Band 1.\\n\\nNo rateable language is evident\\n\\n## Band 0\\n\\nShould only be used where a candidate did not attend or attempt the question in any way, used a language other than English throughout, or where there is proof that a candidateโ€™s answer has been totally memorised.\"}]}", - "format": "text-inline" - }, - "property-4": { - "type": "object", - "behavior": [ - "llm-content" - ], - "title": "Persona", - "examples": [], - "default": "{\"role\":\"user\",\"parts\":[{\"text\":\"You are a friendly, but objective and constructive english tutor, who is helping one of your students prepare for a writing exam. You are always polite and constructive in your feedback to the students, but equally you do not shy away from being honest and objective about their shortcomings. \\n\\nThey will answer a practice question. You will read their answer, and mark it according to the marking scheme that follows, providing constructive feedback.\\n\\nProvide a specific grade, mark or band if the marking scheme provides them.\"}]}", - "format": "text-inline" - } - }, - "type": "object", - "required": [] - } - }, - "metadata": { - "visual": { - "x": -442, - "y": -154, - "collapsed": false - } - } - }, - { - "type": "output", - "id": "output", - "configuration": { - "schema": { - "properties": { - "context": { - "type": "array", - "title": "Context", - "examples": [], - "items": { - "type": "object", - "behavior": [ - "llm-content" - ] - }, - "default": "null" - } - }, - "type": "object", - "required": [] - } - }, - "metadata": { - "visual": { - "x": 552, - "y": 84, - "collapsed": false - } - } - }, - { - "id": "specialist-3a9247e9", - "type": "specialist", - "metadata": { - "visual": { - "x": 95, - "y": -123, - "collapsed": false - } - } - }, - { - "id": "promptTemplate-f5db9f16", - "type": "promptTemplate", - "metadata": { - "visual": { - "x": -323, - "y": 158, - "collapsed": false - } - }, - "configuration": { - "template": "## Question\n{{Question}}\n## Marking Scheme\n{{MarkingScheme}}" - } - } - ] -} From af1fdaac0ab7181934aa5e99473039d77d7cb4e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Jul 2024 22:47:20 -0400 Subject: [PATCH 13/16] chore(deps-dev): bump tsx from 4.11.2 to 4.16.0 (#1256) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.11.2 to 4.16.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.11.2...v4.16.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 200 +++++++++++++++++++++++----------------------- package.json | 2 +- 2 files changed, 101 insertions(+), 101 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1e42c45..918f890 100644 --- a/package-lock.json +++ b/package-lock.json @@ -81,7 +81,7 @@ "@types/yargs": "^17.0.32", "esbuild": "^0.19.9", "prettier": "^3.3.2", - "tsx": "^4.11.2", + "tsx": "^4.16.0", "typescript": "^5.4.5" }, "engines": { @@ -5895,12 +5895,12 @@ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsx": { - "version": "4.11.2", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.11.2.tgz", - "integrity": "sha512-V5DL5v1BuItjsQ2FN9+4OjR7n5cr8hSgN+VGmm/fd2/0cgQdBIWHcQ3bFYm/5ZTmyxkTDBUIaRuW2divgfPe0A==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.0.tgz", + "integrity": "sha512-MPgN+CuY+4iKxGoJNPv+1pyo5YWZAQ5XfsyobUG+zoKG7IkvCPLZDEyoIb8yLS2FcWci1nlxAqmvPlFWD5AFiQ==", "dev": true, "dependencies": { - "esbuild": "~0.20.2", + "esbuild": "~0.21.5", "get-tsconfig": "^4.7.5" }, "bin": { @@ -5914,9 +5914,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", "cpu": [ "ppc64" ], @@ -5930,9 +5930,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", "cpu": [ "arm" ], @@ -5946,9 +5946,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", "cpu": [ "arm64" ], @@ -5962,9 +5962,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", "cpu": [ "x64" ], @@ -5978,9 +5978,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", "cpu": [ "arm64" ], @@ -5994,9 +5994,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", "cpu": [ "x64" ], @@ -6010,9 +6010,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", "cpu": [ "arm64" ], @@ -6026,9 +6026,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", "cpu": [ "x64" ], @@ -6042,9 +6042,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", "cpu": [ "arm" ], @@ -6058,9 +6058,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", "cpu": [ "arm64" ], @@ -6074,9 +6074,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", "cpu": [ "ia32" ], @@ -6090,9 +6090,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", "cpu": [ "loong64" ], @@ -6106,9 +6106,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", "cpu": [ "mips64el" ], @@ -6122,9 +6122,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", "cpu": [ "ppc64" ], @@ -6138,9 +6138,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", "cpu": [ "riscv64" ], @@ -6154,9 +6154,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", "cpu": [ "s390x" ], @@ -6170,9 +6170,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", "cpu": [ "x64" ], @@ -6186,9 +6186,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", "cpu": [ "x64" ], @@ -6202,9 +6202,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", "cpu": [ "x64" ], @@ -6218,9 +6218,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", "cpu": [ "x64" ], @@ -6234,9 +6234,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", "cpu": [ "arm64" ], @@ -6250,9 +6250,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", "cpu": [ "ia32" ], @@ -6266,9 +6266,9 @@ } }, "node_modules/tsx/node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", "cpu": [ "x64" ], @@ -6282,9 +6282,9 @@ } }, "node_modules/tsx/node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", "dev": true, "hasInstallScript": true, "bin": { @@ -6294,29 +6294,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" } }, "node_modules/typescript": { diff --git a/package.json b/package.json index 6460458..516fd1b 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "@types/yargs": "^17.0.32", "esbuild": "^0.19.9", "prettier": "^3.3.2", - "tsx": "^4.11.2", + "tsx": "^4.16.0", "typescript": "^5.4.5" } } From e20dee28508bba8420eb1fb01e43dc23aeaf27f4 Mon Sep 17 00:00:00 2001 From: MassiveJuice <122503558+MasssiveJuice08@users.noreply.github.com> Date: Sat, 6 Jul 2024 04:25:29 +1200 Subject: [PATCH 14/16] Fix: Table `overflow-wrap: anywhere` breaks words on mobile (#1259) Closes #1258 --- quartz/styles/base.scss | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/quartz/styles/base.scss b/quartz/styles/base.scss index b023b27..37aa8ce 100644 --- a/quartz/styles/base.scss +++ b/quartz/styles/base.scss @@ -43,10 +43,22 @@ ul, .math { color: var(--darkgray); fill: var(--darkgray); - overflow-wrap: anywhere; hyphens: auto; } +p, +ul, +text, +a, +li, +ol, +ul, +.katex, +.math { + overflow-wrap: anywhere; + /* tr and td removed from list of selectors for overflow-wrap, allowing them to use default 'normal' property value */ +} + .math { &.math-display { text-align: center; From 6245935c8c51868da1061d6cf4c344027b4b68f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Jul 2024 13:34:04 -0700 Subject: [PATCH 15/16] chore(deps): bump shiki from 1.6.0 to 1.10.3 (#1264) Bumps [shiki](https://github.com/shikijs/shiki/tree/HEAD/packages/shiki) from 1.6.0 to 1.10.3. - [Release notes](https://github.com/shikijs/shiki/releases) - [Changelog](https://github.com/shikijs/shiki/blob/main/CHANGELOG.md) - [Commits](https://github.com/shikijs/shiki/commits/v1.10.3/packages/shiki) --- updated-dependencies: - dependency-name: shiki dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 20 ++++++++++++-------- package.json | 2 +- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 918f890..a8afd03 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "rfdc": "^1.3.1", "rimraf": "^5.0.7", "serve-handler": "^6.1.5", - "shiki": "^1.6.0", + "shiki": "^1.10.3", "source-map-support": "^0.5.21", "to-vfile": "^8.0.0", "toml": "^3.0.0", @@ -820,9 +820,12 @@ } }, "node_modules/@shikijs/core": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.6.0.tgz", - "integrity": "sha512-NIEAi5U5R7BLkbW1pG/ZKu3eb1lzc3/+jD0lFsuxMT7zjaf9bbNwdNyMr7zh/Zl8EXQtQ+MYBAt5G+JLu+5DlA==" + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.10.3.tgz", + "integrity": "sha512-D45PMaBaeDHxww+EkcDQtDAtzv00Gcsp72ukBtaLSmqRvh0WgGMq3Al0rl1QQBZfuneO75NXMIzEZGFitThWbg==", + "dependencies": { + "@types/hast": "^3.0.4" + } }, "node_modules/@sindresorhus/merge-streams": { "version": "2.3.0", @@ -5563,11 +5566,12 @@ } }, "node_modules/shiki": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.6.0.tgz", - "integrity": "sha512-P31ROeXcVgW/k3Z+vUUErcxoTah7ZRaimctOpzGuqAntqnnSmx1HOsvnbAB8Z2qfXPRhw61yptAzCsuKOhTHwQ==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.10.3.tgz", + "integrity": "sha512-eneCLncGuvPdTutJuLyUGS8QNPAVFO5Trvld2wgEq1e002mwctAhJKeMGWtWVXOIEzmlcLRqcgPSorR6AVzOmQ==", "dependencies": { - "@shikijs/core": "1.6.0" + "@shikijs/core": "1.10.3", + "@types/hast": "^3.0.4" } }, "node_modules/signal-exit": { diff --git a/package.json b/package.json index 516fd1b..a9d0683 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "rfdc": "^1.3.1", "rimraf": "^5.0.7", "serve-handler": "^6.1.5", - "shiki": "^1.6.0", + "shiki": "^1.10.3", "source-map-support": "^0.5.21", "to-vfile": "^8.0.0", "toml": "^3.0.0", From 4eeacb7fbf0059f47317d813a9077437c75ce2f6 Mon Sep 17 00:00:00 2001 From: Cao Mingjun Date: Tue, 9 Jul 2024 04:34:43 +0800 Subject: [PATCH 16/16] Fix Non-English Anchor Popover Positioning Issue and Update Type Hint (#1252) - [Major] Changed `hash` passed to `querySelector` to `decodeURIComponent(hash)` to fix the issue where non-English anchors were not correctly positioning the popover content to the corresponding title. - [Minor] Updated the type hint from `HTMLLinkElement` to `HTMLAnchorElement` as the passed element is an `` element, not a `` element (reference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLLinkElement). --- quartz/components/scripts/popover.inline.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/quartz/components/scripts/popover.inline.ts b/quartz/components/scripts/popover.inline.ts index 972d3c6..49f4382 100644 --- a/quartz/components/scripts/popover.inline.ts +++ b/quartz/components/scripts/popover.inline.ts @@ -3,7 +3,7 @@ import { normalizeRelativeURLs } from "../../util/path" const p = new DOMParser() async function mouseEnterHandler( - this: HTMLLinkElement, + this: HTMLAnchorElement, { clientX, clientY }: { clientX: number; clientY: number }, ) { const link = this @@ -33,7 +33,7 @@ async function mouseEnterHandler( thisUrl.hash = "" thisUrl.search = "" const targetUrl = new URL(link.href) - const hash = targetUrl.hash + const hash = decodeURIComponent(targetUrl.hash) targetUrl.hash = "" targetUrl.search = "" @@ -100,7 +100,7 @@ async function mouseEnterHandler( } document.addEventListener("nav", () => { - const links = [...document.getElementsByClassName("internal")] as HTMLLinkElement[] + const links = [...document.getElementsByClassName("internal")] as HTMLAnchorElement[] for (const link of links) { link.addEventListener("mouseenter", mouseEnterHandler) window.addCleanup(() => link.removeEventListener("mouseenter", mouseEnterHandler))