···10101111packages/*/LICENSE
1212exchanges/*/LICENSE
1313+1414+# TODO: Figure out how to remove these:
1515+tmp/
1616+dist/
+12-7
docs/README.md
···11+---
22+title: README
33+order: 1
44+---
55+16# Documentation
2738`urql` is a highly customizable and flexible GraphQL client, that
···914making it suitable for your needs, and experimenting with custom
1015GraphQL clients!
11161212-### [Getting Started](getting-started.md)
1717+### [Getting Started](core/getting-started.md)
13181419Let's get up and running! This section explains how to
1520install `urql` and use its React components and hooks.
1621This contains everything you need to know to get started
1722and just use the default `urql`!
18231919-### [Architecture](architecture.md)
2424+### [Architecture](core/architecture.md)
20252126A quick deep dive into `urql`'s structure, how the
2227client works, and how requests get sent through the
2328exchange pipeline to your GraphQL API.
24292525-### [Basics](basics.md)
3030+### [Basics](core/basics.md)
26312732Everything about the basic & default `urql` behavior
2833that comes with explanations of the `fetchExchange`,
2934the `cacheExchange`, and how to use _Subscriptions_.
30353131-### [Exchanges](exchanges.md)
3636+### [Exchanges](core/exchanges.md)
32373338Here's everything you need to know to customize and augment
3439every aspect of the GraphQL client from how data is cached
3540to how components receive their data.
36413737-### [Extending & Experimenting](extending-and-experimenting.md)
4242+### [Extending & Experimenting](core/extending-and-experimenting.md)
38433944Here's everything you need to know to extend,
4045customise and experiment with `urql`. This section
···4247APIs (Be it for React or not) and how to write
4348new "Exchanges" to customise `urql`'s core behavior!
44494545-### [Guides](guides.md)
5050+### [Guides](core/guides.md)
46514752Here are some guides on how to make common exchanges.
48534949-### [API](api.md)
5454+### [API](core/api.md)
-2
docs/api.md
docs/core/api.md
···33order: 6
44---
5566-<a name="api"></a>
77-86# API
97108## React components and hooks
···33order: 2
44---
5566-<a name="basics"></a>
77-86# Basics
99-1010-<a name="main-file"></a>
117128As mentioned before, `urql`'s core logic is split into exchanges.
139To that end, `urql`'s behavior is completely defined by the exchanges
+8
docs/core/index.md
···11+---
22+title: Core
33+order: 0
44+---
55+66+# Test Core Index Page
77+88+testing
···11+---
22+title: Architecture
33+order: 1
44+---
55+16# Architecture
2738This cache implementation builds on the concept of normalisation,
+5
docs/graphcache/help.md
···11+---
22+title: Help
33+order: 2
44+---
55+16# Help!
2738**This document lists out all errors and warnings in `@urql/exchange-graphcache`.**
+5
docs/graphcache/keys.md
···11+---
22+title: Keys
33+order: 3
44+---
55+16# Keys
2738When resolving entities the graph cache will try to look at the entity
+5
docs/graphcache/optimistic.md
···11+---
22+title: Optimistic
33+order: 3
44+---
55+16# Optimistic
2738Let's say we want to work offline or we don't want to wait for
+5
docs/graphcache/resolvers.md
···11+---
22+title: Resolvers
33+order: 5
44+---
55+16# Resolvers
2738`resolvers` are a way to alter the response you'll receive from the cache.
+5
docs/graphcache/schema.md
···11+---
22+title: Schema
33+order: 6
44+---
55+16# Schema
2738As mentioned in the docs we allow for the schema to be passed
+5
docs/graphcache/updates.md
···11+---
22+title: Updates
33+order: 7
44+---
55+16# Updates
2738When the cache receives a response it will try and do its best to
+5-7
docs/guides.md
docs/core/guides.md
···11---
22-title: guides
22+title: Guides
33order: 4
44---
55-66-<a name="guides"></a>
7586# Guides
97···108106 // and calls composeExchange's ExchangeIO function with it.
109107 // composeExchange forward()s the operation$ stream to dedupeExchange's ExchangeIO function.
110108 // dedupeExchange filters duplicates and forward()s the stream to noopExchange's ExchangeIO function.
111111-109109+112110 // Here, noopExchange forward()s the operation$ stream to fetchExchange's ExchangeIO function
113111 const operationResult$ = forward(operations$);
114114-112112+115113 // fetchExchange receives the operation$ stream, creates an OperationResult object,
116114 // and returns it in an operationResult$ stream.
117115 // finally, noopExchange returns the operationsResult$ stream to dedupeExchange's forward() call.
118118-116116+119117 return operationResult$;
120120-118118+121119 // After this, dedupExchange returns operationResult$ to composeExchange's forward() call.
122120 // urql client receives the operationResult$ from composeExchange and provides data to components.
123121 };
···11+const content = {
22+ features: [
33+ {
44+ title: 'Fully functional GraphQL client with a single import',
55+ description:
66+ 'Urql is a lightweight, powerful, and easy to use alternative to bulky GraphQL clients.',
77+ icon: require('../../assets/gql-tile.svg'),
88+ },
99+ {
1010+ title: 'Logical default behavior and caching',
1111+ description:
1212+ 'Urql helps you to rapidly use GraphQL in your apps without complex configuration or large API overhead.',
1313+ icon: require('../../assets/clock-tile.svg'),
1414+ },
1515+ {
1616+ title: 'Extensible library that grows with you',
1717+ description:
1818+ 'Want to change how you fetch, cache, or subscribe to data? Urql Exchanges allow you to customize your data layer to suit your needs.',
1919+ icon: require('../../assets/eagle-tile.svg'),
2020+ },
2121+ ],
2222+ components: {
2323+ title: 'Minimal React Components and Hooks',
2424+ description:
2525+ "Whether you prefer a <Query> component or useQuery Hook, urql's API is intuitive to use, with full support for GraphQL Queries, Mutations and Subscriptions in both styles!",
2626+ icon: require('../../assets/react-tile.svg'),
2727+ },
2828+ preview: {
2929+ description: '',
3030+ media: '',
3131+ },
3232+ getStarted: {
3333+ description:
3434+ 'Dive into the documentation to see how you can get your urql client up and running.',
3535+ link: '/docs',
3636+ },
3737+ // TODO: This needs to be shared content instead of hardcoded in each site
3838+ /*
3939+ oss: [
4040+ {
4141+ title: 'Victory',
4242+ description:
4343+ 'An ecosystem of modular data visualization components for React. Friendly and flexible.',
4444+ logo: require('../../assets/logo_victory.svg'),
4545+ link: 'https://formidable.com/open-source/victory',
4646+ hasOwnLogo: true,
4747+ },
4848+ {
4949+ title: 'Development Dashboards',
5050+ description:
5151+ 'Dashboards to organize and intuitively display your dev server and tooling output.',
5252+ abbreviation: 'Dd',
5353+ color: '#8bd48b',
5454+ number: '17',
5555+ link: 'https://formidable.com/open-source/development-dashboards/',
5656+ },
5757+ {
5858+ title: 'React Animations',
5959+ description:
6060+ 'A collection of animations that can be used with many inline style libraries, such as Radium or Aphrodite.',
6161+ abbreviation: 'Ra',
6262+ color: '#86b9e6',
6363+ number: '03',
6464+ link: 'https://formidable.com/open-source/react-animations',
6565+ },
6666+ {
6767+ title: 'Enzyme Matchers',
6868+ description:
6969+ 'Run common assertions on your React components using Enzyme in a Jest or Jasmine environment.',
7070+ abbreviation: 'Em',
7171+ color: '#e48055',
7272+ number: '09',
7373+ link: 'https://formidable.com/open-source/jest-enzyme/',
7474+ },
7575+ ],
7676+ */
7777+};
7878+7979+export default content;