From f0132fbc7edae35cb07d9627734c4bdc59827d98 Mon Sep 17 00:00:00 2001 From: artemis prime Date: Tue, 23 Jan 2024 18:16:44 -0800 Subject: [PATCH] verbatimModuleSyntax (so market could build) --- .../ui/blocks/components/banner-block.tsx | 2 +- packages/ui/blocks/components/group-block.tsx | 2 +- packages/ui/blocks/components/image-block.tsx | 1 - packages/ui/blocks/def/card-block.ts | 4 +- packages/ui/common/action-button.tsx | 2 +- .../ui/common/contact-dialog/contact-form.tsx | 2 +- packages/ui/common/footer.tsx | 2 +- packages/ui/common/header/index.tsx | 2 +- packages/ui/common/header/mobile-nav.tsx | 4 +- .../ui/common/mini-chart/mini-chart-props.ts | 2 +- packages/ui/common/nav-items.tsx | 2 +- packages/ui/conf/footer.tsx | 2 +- packages/ui/next/not-found.tsx | 2 +- packages/ui/next/root-layout.tsx | 52 +------------------ packages/ui/package.json | 2 +- packages/ui/primitives/apply-typography.tsx | 2 +- .../ui/primitives/dialog-video-controller.tsx | 2 +- packages/ui/primitives/video-player.tsx | 2 +- packages/ui/tsconfig.json | 1 + packages/ui/util/index.ts | 2 +- 20 files changed, 21 insertions(+), 71 deletions(-) diff --git a/packages/ui/blocks/components/banner-block.tsx b/packages/ui/blocks/components/banner-block.tsx index e550fc24..869eca7a 100644 --- a/packages/ui/blocks/components/banner-block.tsx +++ b/packages/ui/blocks/components/banner-block.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { Dimensions, type TShirtSize } from '../../types' +import type { Dimensions, TShirtSize } from '../../types' import type { Block, BannerBlock } from '../def' import VideoBlockComponent from './video-block' diff --git a/packages/ui/blocks/components/group-block.tsx b/packages/ui/blocks/components/group-block.tsx index 9e27455e..640462fa 100644 --- a/packages/ui/blocks/components/group-block.tsx +++ b/packages/ui/blocks/components/group-block.tsx @@ -21,7 +21,7 @@ const getLayoutInfo = (s: string): { switch (layout) { case 'grid': { const columns = parseInt(subtokens[2], 10) - const starting = subtokens[4] as Breakpoint + const starting = subtokens[4] if (Number.isNaN(columns) || columns < 2 || columns > 6 || !Breakpoints.includes(starting)) { return undefined } diff --git a/packages/ui/blocks/components/image-block.tsx b/packages/ui/blocks/components/image-block.tsx index cf3a99f3..59838c78 100644 --- a/packages/ui/blocks/components/image-block.tsx +++ b/packages/ui/blocks/components/image-block.tsx @@ -4,7 +4,6 @@ import Image from 'next/image' import { constrain } from '../../util' import type { Dimensions } from '../../types' - import type { Block, ImageBlock } from '../def' const ImageBlockComponent: React.FC<{ diff --git a/packages/ui/blocks/def/card-block.ts b/packages/ui/blocks/def/card-block.ts index 77606be3..284901f7 100644 --- a/packages/ui/blocks/def/card-block.ts +++ b/packages/ui/blocks/def/card-block.ts @@ -1,11 +1,11 @@ import React from 'react' -import { Icon } from '../../types' +import { type Icon } from '../../types' import type CTABlock from './cta-block' import type Block from './block' import type ImageBlock from './image-block' -import VideoBlock from './video-block' +import type VideoBlock from './video-block' interface CardBlock extends Block { blockType: 'card' diff --git a/packages/ui/common/action-button.tsx b/packages/ui/common/action-button.tsx index c76db24d..2dcfdc3a 100644 --- a/packages/ui/common/action-button.tsx +++ b/packages/ui/common/action-button.tsx @@ -4,7 +4,7 @@ import dynamic from 'next/dynamic' import { cn } from '../util' import type { ButtonDef, ButtonModalDef } from '../types' -import { ButtonSizes } from '../primitives/button' +import type { ButtonSizes } from '../primitives/button' // The DVC must be rendered client-side since it accesses the DOM directly. // There is no need for a loading UI since the dialog only opens diff --git a/packages/ui/common/contact-dialog/contact-form.tsx b/packages/ui/common/contact-dialog/contact-form.tsx index b1a04b43..2f74f01d 100644 --- a/packages/ui/common/contact-dialog/contact-form.tsx +++ b/packages/ui/common/contact-dialog/contact-form.tsx @@ -3,7 +3,7 @@ import React, { useTransition } from 'react' import { zodResolver } from '@hookform/resolvers/zod' -import { useForm, SubmitHandler, type ControllerRenderProps } from 'react-hook-form' +import { useForm, type SubmitHandler, type ControllerRenderProps } from 'react-hook-form' import * as z from 'zod' // @ts-ignore import validator from 'validator' diff --git a/packages/ui/common/footer.tsx b/packages/ui/common/footer.tsx index 7d1eed04..c26d9543 100644 --- a/packages/ui/common/footer.tsx +++ b/packages/ui/common/footer.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { ButtonVariants } from '../primitives' +import type { ButtonVariants } from '../primitives' import type { LinkDef, SiteConf } from '../types' import { Copyright, NavItems } from '../common' diff --git a/packages/ui/common/header/index.tsx b/packages/ui/common/header/index.tsx index eeb0f44f..5a3de211 100644 --- a/packages/ui/common/header/index.tsx +++ b/packages/ui/common/header/index.tsx @@ -3,7 +3,7 @@ import React from 'react' import type SiteConf from '../../types/site-conf' import Logo from '../logo' -import { ButtonVariants } from '../../primitives' +import type { ButtonVariants } from '../../primitives' import { NavItems, LinkElement, DrawerMenu } from '../../common' import MobileNav from './mobile-nav' diff --git a/packages/ui/common/header/mobile-nav.tsx b/packages/ui/common/header/mobile-nav.tsx index 16599ac4..b71c3f5e 100644 --- a/packages/ui/common/header/mobile-nav.tsx +++ b/packages/ui/common/header/mobile-nav.tsx @@ -2,8 +2,8 @@ import React from 'react' import { LinkElement } from '../../common' -import { ButtonVariants } from '../../primitives' -import { SiteConf } from '../../types' +import type { ButtonVariants } from '../../primitives' +import type { SiteConf } from '../../types' const MobileNav: React.FC<{ conf: SiteConf diff --git a/packages/ui/common/mini-chart/mini-chart-props.ts b/packages/ui/common/mini-chart/mini-chart-props.ts index a86cb177..13e79931 100644 --- a/packages/ui/common/mini-chart/mini-chart-props.ts +++ b/packages/ui/common/mini-chart/mini-chart-props.ts @@ -1,4 +1,4 @@ -import { CSSProperties } from 'react' +import type { CSSProperties } from 'react' // https://www.typescriptlang.org/docs/handbook/enums.html#enums-at-runtime const enum MiniChartDateRangesValues { diff --git a/packages/ui/common/nav-items.tsx b/packages/ui/common/nav-items.tsx index 78ccbb89..38f7e663 100644 --- a/packages/ui/common/nav-items.tsx +++ b/packages/ui/common/nav-items.tsx @@ -1,7 +1,7 @@ import React from 'react' import type { LinkDef } from '../types' -import { ButtonVariants } from '../primitives/button' +import type { ButtonVariants } from '../primitives/button' import { cn } from '../util' import LinkElement from './link-element' diff --git a/packages/ui/conf/footer.tsx b/packages/ui/conf/footer.tsx index 06c2eb85..9ca3ca01 100644 --- a/packages/ui/conf/footer.tsx +++ b/packages/ui/conf/footer.tsx @@ -1,5 +1,5 @@ import { Icons } from '../common' -import { LinkDef } from '../types' +import type { LinkDef } from '../types' const SOC_ICON_SIZE = 18 diff --git a/packages/ui/next/not-found.tsx b/packages/ui/next/not-found.tsx index ca62eef5..d0df9e52 100644 --- a/packages/ui/next/not-found.tsx +++ b/packages/ui/next/not-found.tsx @@ -5,7 +5,7 @@ import Footer from '../common/footer' import { ApplyTypography } from '../primitives' import NotFoundMDX from './not-found-content.mdx' -import { SiteConf } from '../types' +import type { SiteConf } from '../types' const NotFound: React.FC<{ conf: SiteConf diff --git a/packages/ui/next/root-layout.tsx b/packages/ui/next/root-layout.tsx index d35cf416..61c54fff 100644 --- a/packages/ui/next/root-layout.tsx +++ b/packages/ui/next/root-layout.tsx @@ -1,57 +1,8 @@ import React, { type PropsWithChildren } from 'react' -import { Metadata } from 'next' import { inter, drukTextWide } from '../next-fonts' import Header from '../common/header' -import SiteConf from '../types/site-conf' - -const getMetadata = (conf: SiteConf): Metadata => ({ - - title: { - default: conf.title, - template: conf.template, - }, - description: conf.desc, - - // Generated from a 512 original create in GIMP - // at https://favicon.io/favicon-converter/ - - // Next API is poorly documented. - // cf: Next.js repo: packages/next/src/lib/metadata/types/metadata-interface.ts - // and metadata-types.ts - icons: [ - { - rel: 'icon', - type: 'image/png', - sizes: '16x16', - url: '/assets/icon/favicon-16x16.png' - }, - { - rel: 'icon', - type: 'image/png', - sizes: '32x32', - url: '/assets/icon/favicon-32x32.png' - }, - { - rel: 'icon', - type: 'image/png', - sizes: '192x192', - url: '/assets/icon/android-chrome-192x192.png' - }, - { - rel: 'icon', - type: 'image/png', - sizes: '512x512', - url: '/assets/icon/android-chrome-512x512.png' - }, - { - rel: 'apple-touch-icon', - type: 'image/png', - sizes: '180x180', - url: '/assets/icon/apple-touch-icon.png' - }, - ] -}) +import type SiteConf from '../types/site-conf' // Next 14: https://nextjs.org/docs/app/building-your-application/upgrading/codemods#use-viewport-export const viewport = { @@ -95,6 +46,5 @@ const RootLayout: React.FC< export { RootLayout as default, - getMetadata, viewport } diff --git a/packages/ui/package.json b/packages/ui/package.json index 09d0e687..f0768a4b 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,6 +1,6 @@ { "name": "@luxdefi/ui", - "version": "0.1.42", + "version": "0.1.50", "description": "Library that contains shared UI primitives, styles, and core types", "publishConfig": { "registry": "https://registry.npmjs.org/", diff --git a/packages/ui/primitives/apply-typography.tsx b/packages/ui/primitives/apply-typography.tsx index a88a443e..c541e17b 100644 --- a/packages/ui/primitives/apply-typography.tsx +++ b/packages/ui/primitives/apply-typography.tsx @@ -1,4 +1,4 @@ -import React, { PropsWithChildren } from 'react' +import React, { type PropsWithChildren } from 'react' import { cn } from '../util' diff --git a/packages/ui/primitives/dialog-video-controller.tsx b/packages/ui/primitives/dialog-video-controller.tsx index cb1af95d..a595f416 100644 --- a/packages/ui/primitives/dialog-video-controller.tsx +++ b/packages/ui/primitives/dialog-video-controller.tsx @@ -1,6 +1,6 @@ 'use client' -import React, { PropsWithChildren, useState } from 'react' +import React, { type PropsWithChildren, useState } from 'react' const DialogVideoController: React.FC = ({ children, diff --git a/packages/ui/primitives/video-player.tsx b/packages/ui/primitives/video-player.tsx index f0b1c666..66e8e0aa 100644 --- a/packages/ui/primitives/video-player.tsx +++ b/packages/ui/primitives/video-player.tsx @@ -1,7 +1,7 @@ 'use client' import React from 'react' -import { Dimensions } from '../types' +import type { Dimensions } from '../types' interface VideoProps extends React.ComponentPropsWithoutRef<"video"> { sources: string[] diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index 84fc8a88..cf2e89d7 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -19,6 +19,7 @@ "target": "es2020", "declaration": true, "declarationMap": true, + "verbatimModuleSyntax": true, "esModuleInterop": true, "skipLibCheck": true, "outDir": "./dist", diff --git a/packages/ui/util/index.ts b/packages/ui/util/index.ts index 62030fa2..fb910276 100644 --- a/packages/ui/util/index.ts +++ b/packages/ui/util/index.ts @@ -2,7 +2,7 @@ import { compiler as mdCompiler } from 'markdown-to-jsx' import { clsx, type ClassValue } from 'clsx' import { twMerge } from 'tailwind-merge' -import { Dimensions } from '../types' +import type { Dimensions } from '../types' export const cn = (...inputs: ClassValue[]) => ( twMerge(clsx(inputs))