Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add UriComponent schemas and encoding #3982

Open
wants to merge 6 commits into
base: next-minor
Choose a base branch
from

Conversation

titouancreach
Copy link
Contributor

@titouancreach titouancreach commented Nov 21, 2024

Sorry I resubmit #3851
but from a different branch of my fork so that, I can reuse main


Type

  • Refactor
  • Feature
  • Bug Fix
  • Optimization
  • Documentation Update

Description

Add schema (and encoding) for encodeUriComponent and decodeUriComponent.

Very useful for storing data in the url with a Schema :

import { Schema as S } from "effect"

const PaginationSchema = S.Struct({
  maxItemPerPage: S.Number,
  page: S.Number
})

const UrlSchema = S.compose(S.encodeUriComponent, S.parseJson(PaginationSchema))

const queryComponent = S.encodeSync(UrlSchema)({ maxItemPerPage: 10, page: 1 });

Related

  • Related Issue #
  • Closes #

Copy link

changeset-bot bot commented Nov 21, 2024

🦋 Changeset detected

Latest commit: 188a06b

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 34 packages
Name Type
effect Minor
@effect/cli Major
@effect/cluster-browser Major
@effect/cluster-node Major
@effect/cluster-workflow Major
@effect/cluster Major
@effect/experimental Major
@effect/opentelemetry Major
@effect/platform-browser Major
@effect/platform-bun Major
@effect/platform-node-shared Major
@effect/platform-node Major
@effect/platform Major
@effect/printer-ansi Major
@effect/printer Major
@effect/rpc-http Major
@effect/rpc Major
@effect/sql-clickhouse Major
@effect/sql-d1 Major
@effect/sql-drizzle Major
@effect/sql-kysely Major
@effect/sql-libsql Major
@effect/sql-mssql Major
@effect/sql-mysql2 Major
@effect/sql-pg Major
@effect/sql-sqlite-bun Major
@effect/sql-sqlite-node Major
@effect/sql-sqlite-react-native Major
@effect/sql-sqlite-wasm Major
@effect/sql Major
@effect/typeclass Major
@effect/vitest Major
@effect/ai Major
@effect/ai-openai Major

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions bot changed the base branch from main to next-minor November 21, 2024 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Discussion Ongoing
Development

Successfully merging this pull request may close these issues.

1 participant