From db1be6333186d8f7621d55a70cc59cc0da9833ec Mon Sep 17 00:00:00 2001 From: Ethan Look Date: Wed, 17 Jan 2024 12:57:17 -0500 Subject: [PATCH] 2024-01-10 PRIME design maintenance (#467) --- packages/core/package.json | 2 +- packages/core/src/lib/__tests__/radio.spec.ts | 11 +-- .../core/src/lib/input/numeric-input.svelte | 1 + packages/core/src/lib/radio.svelte | 10 +-- packages/storybook/src/stories/input.mdx | 2 +- .../src/stories/input.stories.svelte | 27 ++++--- packages/storybook/src/stories/label.mdx | 4 +- packages/storybook/src/stories/modal.mdx | 4 +- .../src/stories/modal.stories.svelte | 37 +++++----- packages/storybook/src/stories/pill.mdx | 17 ++++- .../storybook/src/stories/pill.stories.svelte | 74 +++++++++++++++---- packages/storybook/src/stories/radio.mdx | 4 - .../src/stories/radio.stories.svelte | 33 +++------ 13 files changed, 137 insertions(+), 89 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 5ec0993d..a0da4a6e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@viamrobotics/prime-core", - "version": "0.0.83", + "version": "0.0.84", "publishConfig": { "access": "public" }, diff --git a/packages/core/src/lib/__tests__/radio.spec.ts b/packages/core/src/lib/__tests__/radio.spec.ts index 9b3feaf3..520f9a5d 100644 --- a/packages/core/src/lib/__tests__/radio.spec.ts +++ b/packages/core/src/lib/__tests__/radio.spec.ts @@ -67,20 +67,11 @@ describe('Radio', () => { expect(screen.getByText('Test radio options')).toBeVisible(); }); - it('Renders the legend correctly when disabled', () => { - render(Radio, { ...common, disabled: true }); - - const legend = screen.getByText('Test radio options'); - expect(legend).toHaveClass('text-disabled-dark cursor-not-allowed'); - }); - it('Renders the legend correctly when required', () => { render(Radio, { ...common, required: true }); const legend = screen.getByText('Test radio options'); - expect(legend).toHaveClass( - 'after:ml-1 after:text-danger-dark after:content-["*"]' - ); + expect(legend).toHaveClass('after:text-danger-dark after:content-["*"]'); }); it('Renders in a row if specified', () => { diff --git a/packages/core/src/lib/input/numeric-input.svelte b/packages/core/src/lib/input/numeric-input.svelte index d729152e..9a1da90d 100644 --- a/packages/core/src/lib/input/numeric-input.svelte +++ b/packages/core/src/lib/input/numeric-input.svelte @@ -40,6 +40,7 @@ $: pattern = isNumber ? '^([-+,0-9.]+)' : '[0-9]+'; {pattern} {step} {...$$restProps} + placeholder={$$restProps.placeholder ?? 0} bind:value bind:input on:input diff --git a/packages/core/src/lib/radio.svelte b/packages/core/src/lib/radio.svelte index 24e5a486..122a2aae 100644 --- a/packages/core/src/lib/radio.svelte +++ b/packages/core/src/lib/radio.svelte @@ -56,10 +56,8 @@ $: getIcon = (option: string): IconName => {#if $$slots.legend} @@ -105,9 +103,11 @@ $: getIcon = (option: string): IconName => name={getIcon(option)} cx={cx({ 'text-disabled-dark': disabled, + 'text-gray-9': !disabled && option === selected, + 'text-gray-6': !disabled && option !== selected, })} /> - + {option} diff --git a/packages/storybook/src/stories/input.mdx b/packages/storybook/src/stories/input.mdx index f6c83920..d7ef7707 100644 --- a/packages/storybook/src/stories/input.mdx +++ b/packages/storybook/src/stories/input.mdx @@ -37,7 +37,7 @@ An opinionated input for text values that only allows specified regex. The allow import { RestrictedTextInput } from '@viamrobotics/prime-core'; const restrictInput = (inputValue: string) => - inputValue.replaceAll(/[^a-n]/gu, ''); + inputValue.replaceAll(/[^a-zA-Z0-9]/gu, ''); ``` diff --git a/packages/storybook/src/stories/input.stories.svelte b/packages/storybook/src/stories/input.stories.svelte index 6e1cb5c5..b76fe5de 100644 --- a/packages/storybook/src/stories/input.stories.svelte +++ b/packages/storybook/src/stories/input.stories.svelte @@ -10,7 +10,7 @@ import { } from '@viamrobotics/prime-core'; const restrictInput = (inputValue: string) => - inputValue.replaceAll(/[^a-n]/gu, ''); + inputValue.replaceAll(/[^a-zA-Z0-9]/gu, ''); @@ -34,21 +34,28 @@ const restrictInput = (inputValue: string) => -
- -
+
- + - + diff --git a/packages/storybook/src/stories/label.mdx b/packages/storybook/src/stories/label.mdx index 34207006..ad42bce8 100644 --- a/packages/storybook/src/stories/label.mdx +++ b/packages/storybook/src/stories/label.mdx @@ -12,5 +12,7 @@ import { Label } from '@viamrobotics/prime-core'; ``` - + + +TODO(ethanlook): add other input types here! diff --git a/packages/storybook/src/stories/modal.mdx b/packages/storybook/src/stories/modal.mdx index f6007dfd..3224e7ac 100644 --- a/packages/storybook/src/stories/modal.mdx +++ b/packages/storybook/src/stories/modal.mdx @@ -12,9 +12,9 @@ import { Modal } from '@viamrobotics/prime-core'; ``` - + - + diff --git a/packages/storybook/src/stories/modal.stories.svelte b/packages/storybook/src/stories/modal.stories.svelte index 3e16c6e9..558705ee 100644 --- a/packages/storybook/src/stories/modal.stories.svelte +++ b/packages/storybook/src/stories/modal.stories.svelte @@ -8,17 +8,16 @@ let smallModalOpen = false; - -
- + +
+ (defaultModalOpen = false)} + isOpen={smallModalOpen} + variant="small" + on:close={() => (smallModalOpen = false)} > - Default title - This is the default modal. + Small modal title + This is a small modal.
- -
- + +
+ (smallModalOpen = false)} + isOpen={defaultModalOpen} + on:close={() => (defaultModalOpen = false)} > - Small modal title - This is a small modal. + Default title +
+ This is a large modal. +