astro/.changeset
Ben Holmes c6d7ebefdd
Data collections and references (#6850)
* feat: add generated lookup-map

* feat: wire up fast getEntryBySlug() lookup

* fix: consider frontmatter slugs

* chore: changeset

* chore: lint no-shadow

* fix: revert bad rootRelativePath change

* chore: better var name

* refactor: generated `.json` to in-memory map

* chore: removed unneeded await

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>

* chore: removed unneeded await

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>

* Revert "chore: removed unneeded await"

This reverts commit 1b0a8b00c2.

* fix: bad `GetEntryImport` type

* chore: remove unused variable

* refactor: for -> Promise.all

* refactor: replace duplicate parseSlug

* refactor: add cache layer

* Revert "refactor: add cache layer"

This reverts commit 1c3bfdc6b3.

* feat: json collection POC

* wip: add test json file

* wip: playing with api ideas

* refactor: extract getCollectionName

* feat: add defineDataCollection

* refactor: variable destructure

* wip: basic data entry pipeline

* chore: revert fixture playing

* wip: basic entry array parser

* feat: basic data type gen

* chore: add with-data playground

* feat: add error when `defineDataCollection()` isn't used

* fix: missing error message

* feat: data collections are here!

* wip: play with data query APIs

* feat: reference() util!

* fix: Markdoc `$entry` variable

* play: add reference util with markdoc

* chore: delete console logs

* feat: `src/data/`!

* feat: reference() errors

* fix: handle hoisted schema parse errors

* fix: reload config and invalid on collection changes

* feat: separate maps for content and data entries

* feat: new `reference()` API that fixes type inference

* feat: support `defineCollection()` for data config

* fix: defineCollection `type` inferenenceπinference

* chore: lock

* feat: getCollection() for everything!

* feat: get full entry access from reference()

* chore: changeset

* wip: type error on acorn?

* chore: lint

* chore: add slugger to data ID processing

* chore: astro/zod -> zod

* chore: example version

* chore: remove slugifier from data id

* chore: remove dead getDataCollection

* chore: remove dead defineDataCollection

* fix: bad collection import

* chore: lock

* feat: add data collections to lookup map

* refactor: stop resolving data from reference

* feat: introduce getEntry and new reference()

* fix: update config loader

* fix: reference() type

* feat: test self references (they work 🎉)

* fix: use `slug` for content references

* fix: bad getEntry content type

* chroe: remove console logs

* fix: strict null checks on with-data

* feat: add getEntries for ref arrays

* chore: fix type hints for reference strings

* chore: change to type never for clarity

* play: try getEntries

* Return to "everything goes in `src/content/`

This reverts commit cc637ec6db4fc23afab585df5f240b7f7c0abc8a.

* fix: remove old function

* chore: update to AstroErrors

* chore: remove unused fixture files

* play: names

* deps: js-yaml

* feat: data collection YAML with error handling

* refactor: remove console log

* refactor: code cleanup

* fix: allow mixed content to pass through glob imports

* chore: move lookupMap util to virtual-mod

* refactor: new lookupMap logic, better errors

* chore: change MixedContent title

* refactor: remove unneeded try / catch

* fix: use `ws.send` for type gen errors

* fix: bubble `ws.send` errors from astro sync

* refactor: revert verbose astroContentCollectionEntry

* fix: bad with-data package name

* fix: bad virtual mod flag

* chore: remove with-data playground

* test: data collection authors

* test: translations data collection

* fix: add `.yml` support

* refactor: mix in `.yaml` just for fun

* refactor: i18n -> translations

* chore: content-collection-references fixture

* chore: bad lockfile

* fix: bad ContentLookupMap import

* chore: revert back to astroContentCollectionEntry

* test: collection references

* fix: bad error code override

* chore: remove unused asset

* test: sync errors

* chore: remove stray console log

* chore: lock

* chore: revert with-markdoc changes

* chore: doc error states, remove bad merge code

* chore: remove bad `as any`

* chore: lint

* chore: inline ContentLookupMap comments

* chore: settings -> config

* fix: put back `defineCollection()`

* fix: entry.slug for get content collection

* chore: update get-entry-type tests

* docs: totally shorten "missing a `type`"

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>

* docs: truncate share a `schema`

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>

* chore: add `test:unit` and `test:unit:match`to base

* chore:  update changeset

* refactor: cleanup runtime types and inline comments

* nit: [0] instead of shift()

* refactor: `getRelativeEntryPath()` util

* chore: capitalized Collections for test:match

* nit: ?? viteId on split

* nit: separate Params obj

* chore: add try / catch on readFile

* nit: `const data`

* chore: clean up data collection exceptions

* nit: `?? ''` for search params

* chore: remove TODO on hoisted error

---------

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-05-17 11:36:27 -04:00
..
brown-goats-serve.md refactor(assets): Move generation logic out of internal.ts (#7102) 2023-05-16 16:40:32 +02:00
config.json Fix changeset publish (#6923) 2023-04-27 22:55:48 +08:00
early-eyes-bow.md Data collections and references (#6850) 2023-05-17 11:36:27 -04:00
eleven-hotels-roll.md RSS: Fix string validation of pubDate (#7066) 2023-05-15 14:10:32 +08:00
fifty-guests-remember.md Inject analytics env (#6876) 2023-05-15 14:13:47 +08:00
fresh-baboons-switch.md Escape closing script tag when using define:vars (#7044) 2023-05-15 14:35:54 +08:00
hip-bottles-hide.md add warn message when using unsupported file types in pages/ (#6851) 2023-05-17 16:02:33 +02:00
long-starfishes-raise.md fix: middleware for API endpoints (#7106) 2023-05-17 11:48:02 +01:00
mighty-shoes-scream.md feat: hybrid output (#6991) 2023-05-17 09:23:20 -04:00
ninety-sheep-knock.md Fix weird periods in NoMatchingRenderer error (#7110) 2023-05-17 17:30:47 +02:00
pretty-planets-wink.md Add edge-light and worker to vercel edge bundling (#7103) 2023-05-17 09:06:18 -04:00
pretty-students-try.md [Markdoc] headings and heading IDs (#7095) 2023-05-17 09:13:10 -04:00
quiet-gifts-pay.md Build edge/worker runtime with webworker ssr target (#7101) 2023-05-17 15:44:20 +08:00
README.md Migrate to yarn monorepo (#157) 2021-04-30 16:33:35 -05:00
rich-crews-fry.md Add workerd and worker to cloudflare adapter bundling (#7092) 2023-05-16 20:00:29 +08:00
silver-ties-vanish.md Build edge/worker runtime with webworker ssr target (#7101) 2023-05-17 15:44:20 +08:00
swift-moons-drop.md Fix double prepended forward slash in certain cases (#7091) 2023-05-15 08:53:34 -04:00
tall-eyes-vanish.md Implement custom client directives (#7074) 2023-05-17 20:51:27 +08:00
thirty-squids-relax.md Fix imports using ?raw and ?url not working when experimental.assets is enabled (#7108) 2023-05-17 17:07:57 +02:00
tiny-snails-dance.md HTML minification (#6706) 2023-05-17 09:26:49 -04:00
two-carrots-smile.md feat: uncomment polymorphic type (#7069) 2023-05-17 15:38:27 +02:00
unlucky-lamps-remember.md Prevent removal of nested slots within islands (#7093) 2023-05-17 10:18:04 -04:00
young-impalas-boil.md Add files field to packages (#7104) 2023-05-17 16:54:00 +08:00

Changesets

Hello and welcome! This folder has been automatically generated by @changesets/cli, a build tool that works with multi-package repos, or single-package repos to help you version and publish your code. You can find the full documentation for it in our repository

We have a quick list of common questions to get you started engaging with this project in our documentation