Skip to content

Commit

Permalink
@vercel-flags » flags
Browse files Browse the repository at this point in the history
  • Loading branch information
dferber90 committed Feb 20, 2025
1 parent 6a05c04 commit 64330ae
Show file tree
Hide file tree
Showing 82 changed files with 113 additions and 123 deletions.
4 changes: 2 additions & 2 deletions examples/snippets/app/.well-known/vercel/flags/route.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { NextResponse, type NextRequest } from 'next/server';
import { verifyAccess, type ApiData } from '@vercel/flags';
import { getProviderData } from '@vercel/flags/next';
import { verifyAccess, type ApiData } from 'flags';
import { getProviderData } from 'flags/next';
// The @/ import is not working in the ".well-known" folder due do the dot in the path.
// We need to use relative paths instead. This seems like a TypeScript issue.
import * as marketingFlags from '../../../examples/marketing-pages/flags';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { Adapter } from '@vercel/flags';
import type { Adapter } from 'flags';
import { createClient, type EdgeConfigClient } from '@vercel/edge-config';

/**
Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/app/concepts/adapters/flags.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';
import { createEdgeConfigAdapter } from './edge-config-adapter';

const edgeConfigAdapter = createEdgeConfigAdapter(process.env.EDGE_CONFIG!);
Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/app/concepts/dedupe/page.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { dedupe } from '@vercel/flags/next';
import { dedupe } from 'flags/next';

const dedupeExample = dedupe(() => {
return Math.random().toString().substring(0, 8);
Expand Down
4 changes: 2 additions & 2 deletions examples/snippets/app/concepts/identify/basic/flags.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { ReadonlyRequestCookies } from '@vercel/flags';
import { dedupe, flag } from '@vercel/flags/next';
import type { ReadonlyRequestCookies } from 'flags';
import { dedupe, flag } from 'flags/next';

interface Entities {
user?: { id: string };
Expand Down
4 changes: 2 additions & 2 deletions examples/snippets/app/concepts/identify/full/flags.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { ReadonlyRequestCookies } from '@vercel/flags';
import { dedupe, flag } from '@vercel/flags/next';
import type { ReadonlyRequestCookies } from 'flags';
import { dedupe, flag } from 'flags/next';

interface Entities {
user?: { id: string };
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const firstPrecomputedFlag = flag<boolean>({
key: 'first-precomputed-flag',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { precompute } from '@vercel/flags/next';
import { precompute } from 'flags/next';
import { type NextRequest, NextResponse } from 'next/server';
import { marketingFlags } from './flags';

Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/app/concepts/precompute/manual/flags.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const manualPrecomputeFlag = flag<boolean>({
key: 'manual-precompute-flag',
Expand Down
4 changes: 2 additions & 2 deletions examples/snippets/app/examples/dashboard-pages/flags.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { ReadonlyRequestCookies } from '@vercel/flags';
import { flag, dedupe } from '@vercel/flags/next';
import type { ReadonlyRequestCookies } from 'flags';
import { flag, dedupe } from 'flags/next';

interface Entities {
user?: { id: string };
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const basicEdgeMiddlewareFlag = flag<boolean>({
key: 'basic-edge-middleware-flag',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
} from '../flags';
import { DemoFlag } from '@/components/demo-flag';
import { RegenerateIdButton } from '../regenerate-id-button';
import { generatePermutations } from '@vercel/flags/next';
import { generatePermutations } from 'flags/next';

// Ensure the page is static
export const dynamic = 'error';
Expand Down
4 changes: 2 additions & 2 deletions examples/snippets/app/examples/marketing-pages/flags.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { ReadonlyHeaders, ReadonlyRequestCookies } from '@vercel/flags';
import { dedupe, flag } from '@vercel/flags/next';
import type { ReadonlyHeaders, ReadonlyRequestCookies } from 'flags';
import { dedupe, flag } from 'flags/next';
import { getOrGenerateVisitorId } from './get-or-generate-visitor-id';

interface Entities {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { nanoid } from 'nanoid';
import { dedupe } from '@vercel/flags/next';
import type { ReadonlyHeaders, ReadonlyRequestCookies } from '@vercel/flags';
import { dedupe } from 'flags/next';
import type { ReadonlyHeaders, ReadonlyRequestCookies } from 'flags';
import type { NextRequest } from 'next/server';

const generateId = dedupe(async () => nanoid());
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { precompute } from '@vercel/flags/next';
import { precompute } from 'flags/next';
import { type NextRequest, NextResponse } from 'next/server';
import { marketingFlags } from './flags';
import { getOrGenerateVisitorId } from './get-or-generate-visitor-id';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { coreFlags, hasAuthCookieFlag } from '../flags';
import { cookies, headers } from 'next/headers';
import Image from 'next/image';
import { generatePermutations } from '@vercel/flags/next';
import { generatePermutations } from 'flags/next';
import { Suspense } from 'react';

// opt into on parital prerendering for this page, which is necessary while
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const hasAuthCookieFlag = flag<boolean>({
key: 'has-auth-cookie',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { precompute } from '@vercel/flags/next';
import { precompute } from 'flags/next';
import { type NextRequest, NextResponse } from 'next/server';
import { coreFlags } from './flags';

Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/app/getting-started/overview/page.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';
import { DemoFlag } from '@/components/demo-flag';
import { ReloadButton } from './reload-button';

Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/flags.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const exampleFlag = flag<boolean>({
key: 'example-flag',
Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/lib/pages-router-precomputed/flags.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';

export const exampleFlag = flag<boolean>({
key: 'pages-router-precomputed-example-flag',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { precompute } from '@vercel/flags/next';
import { precompute } from 'flags/next';
import { type NextRequest, NextResponse } from 'next/server';
import { exampleFlags } from './flags';

Expand Down
2 changes: 1 addition & 1 deletion examples/snippets/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@
"@radix-ui/react-slot": "1.1.0",
"@radix-ui/react-tooltip": "1.1.4",
"@vercel/edge-config": "1.2.0",
"@vercel/flags": "workspace:*",
"@vercel/toolbar": "0.1.27",
"class-variance-authority": "0.7.1",
"clsx": "2.0.0",
"flags": "workspace:*",
"nanoid": "5.0.7",
"next": "15.2.0-canary.3",
"next-themes": "0.4.4",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import {
exampleFlags,
} from '@/lib/pages-router-precomputed/flags';
import { DemoFlag } from '@/components/demo-flag';
import { generatePermutations } from '@vercel/flags/next';
import { generatePermutations } from 'flags/next';

export const getStaticPaths = (async () => {
const codes = await generatePermutations(exampleFlags);
Expand Down
4 changes: 2 additions & 2 deletions examples/summer-sale/app/.well-known/vercel/flags/route.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { type ApiData, verifyAccess } from '@vercel/flags';
import { getProviderData } from '@vercel/flags/next';
import { type ApiData, verifyAccess } from 'flags';
import { getProviderData } from 'flags/next';
import { NextResponse, type NextRequest } from 'next/server';
import * as flags from '../../../../flags';

Expand Down
6 changes: 3 additions & 3 deletions examples/summer-sale/app/[code]/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { precomputeFlags } from '@/flags';
import { type FlagValuesType, encrypt } from '@vercel/flags';
import { deserialize, generatePermutations } from '@vercel/flags/next';
import { FlagValues } from '@vercel/flags/react';
import { type FlagValuesType, encrypt } from 'flags';
import { deserialize, generatePermutations } from 'flags/next';
import { FlagValues } from 'flags/react';
import { Suspense } from 'react';

async function ConfidentialFlagValues({ values }: { values: FlagValuesType }) {
Expand Down
2 changes: 1 addition & 1 deletion examples/summer-sale/app/[code]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { Materials } from '@/components/materials';
import { ProductHeading } from '@/components/product-heading';
import { Promo } from '@/components/promo';
import { TopBanner } from '@/components/top-banner';
import { getPrecomputed, generatePermutations } from '@vercel/flags/next';
import { getPrecomputed, generatePermutations } from 'flags/next';
import {
showFreeDeliveryBannerFlag,
showSummerBannerFlag,
Expand Down
2 changes: 1 addition & 1 deletion examples/summer-sale/flags.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag, dedupe } from '@vercel/flags/next';
import { flag, dedupe } from 'flags/next';
import { getOrGenerateVisitorId } from './utils/generateVisitorId';

const identify = dedupe(async () => {
Expand Down
2 changes: 1 addition & 1 deletion examples/summer-sale/middleware.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { type NextRequest, NextResponse } from 'next/server';
import { precompute } from '@vercel/flags/next';
import { precompute } from 'flags/next';
import { precomputeFlags, bannerFlags } from '@/flags';
import { getOrGenerateVisitorId } from './utils/generateVisitorId';

Expand Down
2 changes: 1 addition & 1 deletion examples/summer-sale/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
"@vercel/analytics": "https://vercel-analytics-package-ayb1ll9cs.vercel.online/index.tgz",
"@vercel/edge": "1.1.1",
"@vercel/edge-config": "1.2.0",
"@vercel/flags": "workspace:*",
"@vercel/toolbar": "0.1.14",
"clsx": "2.0.0",
"flags": "workspace:*",
"nanoid": "5.0.7",
"next": "15.0.3",
"react": "^18",
Expand Down
2 changes: 1 addition & 1 deletion examples/summer-sale/utils/generateVisitorId.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { cookies } from 'next/headers';
import { dedupe } from '@vercel/flags/next';
import { dedupe } from 'flags/next';
import { nanoid } from 'nanoid';

/**
Expand Down
2 changes: 1 addition & 1 deletion examples/sveltekit-example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"format": "prettier --write ."
},
"dependencies": {
"@vercel/flags": "workspace:*",
"flags": "workspace:*",
"@vercel/toolbar": "0.1.15"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion examples/sveltekit-example/src/hooks.server.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { createHandle } from '@vercel/flags/sveltekit';
import { createHandle } from 'flags/sveltekit';
import { FLAGS_SECRET } from '$env/static/private';
import * as flags from '$lib/flags';

Expand Down
2 changes: 1 addition & 1 deletion examples/sveltekit-example/src/lib/flags.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { flag } from '@vercel/flags/sveltekit';
import { flag } from 'flags/sveltekit';

export const showDashboard = flag<boolean>({
key: 'showDashboard',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
// dot like .well-known cause issues, so we the [x+2e] encoding is necessary.
// See https://github.com/sveltejs/kit/discussions/7562#discussioncomment-4206530
import { json, error } from '@sveltejs/kit';
import { verifyAccess } from '@vercel/flags';
import { getProviderData } from '@vercel/flags/sveltekit';
import { verifyAccess } from 'flags';
import { getProviderData } from 'flags/sveltekit';
import type { RequestHandler } from './$types';
import { FLAGS_SECRET } from '$env/static/private';
import * as flags from '$lib/flags';
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "vercel-variants",
"name": "vercel-flags",
"version": "0.0.1",
"description": "A monorepo for @vercel/flags",
"description": "A monorepo for the Flags SDK",
"homepage": "https://flags-sdk.dev",
"bugs": {
"url": "https://github.com/vercel/flags/issues"
Expand Down
4 changes: 2 additions & 2 deletions packages/adapter-edge-config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ npm install @flags-sdk/edge-config
This adapter will connect to the Edge Config available under the `EDGE_CONFIG` environment variable, and read items from a key in the Edge Config called `flags`.

```ts
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';
import { edgeConfigAdapter } from '@flags-sdk/edge-config';

export const exampleFlag = flag({
Expand All @@ -37,7 +37,7 @@ Your Edge Config should look like this:
You can specify a custom adapter which connects to a different Edge Config, and reads

```ts
import { flag } from '@vercel/flags/next';
import { flag } from 'flags/next';
import { createEdgeConfigAdapter } from '@flags-sdk/edge-config';

const edgeConfigAdapter = createEdgeConfigAdapter(process.env.EDGE_CONFIG, {
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-edge-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@
"devDependencies": {
"@types/node": "20.11.17",
"@vercel/edge-config": "1.2.0",
"@vercel/flags": "workspace:*",
"eslint-config-custom": "workspace:*",
"flags": "workspace:*",
"rimraf": "6.0.1",
"tsconfig": "workspace:*",
"tsup": "8.0.1",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-edge-config/src/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
resetDefaultEdgeConfigAdapter,
} from '.';
import type { EdgeConfigClient } from '@vercel/edge-config';
import type { ReadonlyRequestCookies } from '@vercel/flags';
import type { ReadonlyRequestCookies } from 'flags';

describe('createEdgeConfigAdapter', () => {
it('should allow creating an adapter with a client', () => {
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-edge-config/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { Adapter, ReadonlyHeaders } from '@vercel/flags';
import type { Adapter, ReadonlyHeaders } from 'flags';
import { createClient, type EdgeConfigClient } from '@vercel/edge-config';

export type EdgeConfigFlags = {
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-happykit/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@
"devDependencies": {
"@types/node": "20.11.17",
"@vercel/edge-config": "1.2.0",
"@vercel/flags": "workspace:*",
"eslint-config-custom": "workspace:*",
"flags": "workspace:*",
"msw": "2.6.4",
"rimraf": "6.0.1",
"tsconfig": "workspace:*",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-happykit/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Adapter } from '@vercel/flags';
import { Adapter } from 'flags';
import type { Configuration } from '@happykit/flags/config';
import type { FlagUser, Traits } from '@happykit/flags/client';
import { createGetFlags } from '@happykit/flags/server';
Expand Down
6 changes: 1 addition & 5 deletions packages/adapter-happykit/src/provider/index.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import type {
FlagDefinitionType,
JsonValue,
ProviderData,
} from '@vercel/flags';
import type { FlagDefinitionType, JsonValue, ProviderData } from 'flags';

interface ProjectResponseBody {
project: {
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-hypertune/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@
"dependencies": {},
"devDependencies": {
"@types/node": "20.11.17",
"@vercel/flags": "workspace:*",
"eslint-config-custom": "workspace:*",
"flags": "workspace:*",
"msw": "2.6.4",
"rimraf": "6.0.1",
"tsconfig": "workspace:*",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-hypertune/src/provider/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { ProviderData } from '@vercel/flags';
import type { ProviderData } from 'flags';

export async function getProviderData(options: {
token: string;
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-launchdarkly/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@
"dependencies": {},
"devDependencies": {
"@types/node": "20.11.17",
"@vercel/flags": "workspace:*",
"eslint-config-custom": "workspace:*",
"flags": "workspace:*",
"msw": "2.6.4",
"rimraf": "6.0.1",
"tsconfig": "workspace:*",
Expand Down
6 changes: 1 addition & 5 deletions packages/adapter-launchdarkly/src/provider/index.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import type {
FlagDefinitionsType,
JsonValue,
ProviderData,
} from '@vercel/flags';
import type { FlagDefinitionsType, JsonValue, ProviderData } from 'flags';

// See: https://apidocs.launchdarkly.com/tag/Feature-flags#operation/getFeatureFlags
interface LaunchDarklyApiData {
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-optimizely/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@
"dependencies": {},
"devDependencies": {
"@types/node": "20.11.17",
"@vercel/flags": "workspace:*",
"eslint-config-custom": "workspace:*",
"flags": "workspace:*",
"msw": "2.6.4",
"rimraf": "6.0.1",
"tsconfig": "workspace:*",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapter-optimizely/src/provider/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { JsonValue, ProviderData } from '@vercel/flags';
import type { JsonValue, ProviderData } from 'flags';

// See: https://docs.developers.optimizely.com/feature-experimentation/reference/list_flags
interface OptimizelyFeatureFlagsResponseBody {
Expand Down
Loading

0 comments on commit 64330ae

Please sign in to comment.