@licklist/design 0.78.28 → 0.78.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/Trend-Down.svg.js +16 -0
- package/dist/assets/Trend-Up.svg.js +16 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -0
- package/dist/v2/components/Alert/Alert.js +87 -0
- package/dist/v2/components/Alert/Alert.scss.js +6 -0
- package/dist/v2/components/Button/Button.d.ts +8 -4
- package/dist/v2/components/Button/Button.d.ts.map +1 -1
- package/dist/v2/components/Button/Button.js +121 -0
- package/dist/v2/components/Button/Button.scss.js +6 -0
- package/dist/v2/components/Button/index.d.ts +2 -2
- package/dist/v2/components/Button/index.d.ts.map +1 -1
- package/dist/v2/components/Checkbox/Checkbox.d.ts +9 -0
- package/dist/v2/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/v2/components/Checkbox/Checkbox.js +231 -0
- package/dist/v2/components/Checkbox/Checkbox.scss.js +6 -0
- package/dist/v2/components/Checkbox/index.d.ts +3 -0
- package/dist/v2/components/Checkbox/index.d.ts.map +1 -0
- package/dist/v2/components/FormField/FormField.d.ts +10 -0
- package/dist/v2/components/FormField/FormField.d.ts.map +1 -0
- package/dist/v2/components/FormField/FormField.js +98 -0
- package/dist/v2/components/FormField/FormField.scss.js +6 -0
- package/dist/v2/components/FormField/index.d.ts +3 -0
- package/dist/v2/components/FormField/index.d.ts.map +1 -0
- package/dist/v2/components/NPSScore/NPSScore.js +546 -0
- package/dist/v2/components/NPSScore/NPSScore.scss.js +6 -0
- package/dist/v2/components/NewInput/NewInput.d.ts +20 -0
- package/dist/v2/components/NewInput/NewInput.d.ts.map +1 -0
- package/dist/v2/components/NewInput/NewInput.js +134 -0
- package/dist/v2/components/NewInput/index.d.ts +2 -0
- package/dist/v2/components/NewInput/index.d.ts.map +1 -0
- package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts +10 -0
- package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts.map +1 -0
- package/dist/v2/components/NewPageHeader/NewPageHeader.js +36 -0
- package/dist/v2/components/NewPageHeader/NewPageHeader.scss.js +6 -0
- package/dist/v2/components/NewPageHeader/index.d.ts +2 -0
- package/dist/v2/components/NewPageHeader/index.d.ts.map +1 -0
- package/dist/v2/components/SectionHeader/SectionHeader.d.ts +8 -0
- package/dist/v2/components/SectionHeader/SectionHeader.d.ts.map +1 -0
- package/dist/v2/components/SectionHeader/SectionHeader.js +13 -0
- package/dist/v2/components/SectionHeader/SectionHeader.scss.js +6 -0
- package/dist/v2/components/SectionHeader/index.d.ts +3 -0
- package/dist/v2/components/SectionHeader/index.d.ts.map +1 -0
- package/dist/v2/components/Select/Select.js +128 -0
- package/dist/v2/components/Select/Select.scss.js +6 -0
- package/dist/v2/components/WYSIWYGEditor/Icons.d.ts +16 -0
- package/dist/v2/components/WYSIWYGEditor/Icons.d.ts.map +1 -0
- package/dist/v2/components/WYSIWYGEditor/Icons.js +221 -0
- package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.d.ts +14 -0
- package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.d.ts.map +1 -0
- package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.js +358 -0
- package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.scss.js +6 -0
- package/dist/v2/components/WYSIWYGEditor/index.d.ts +3 -0
- package/dist/v2/components/WYSIWYGEditor/index.d.ts.map +1 -0
- package/dist/v2/components/index.d.ts +22 -0
- package/dist/v2/components/index.d.ts.map +1 -0
- package/dist/v2/dashboard-analytics/blog-posts/Blog.js +103 -0
- package/dist/v2/dashboard-analytics/blog-posts/Blog.scss.js +6 -0
- package/dist/v2/dashboard-analytics/chart/Chart.js +733 -0
- package/dist/v2/dashboard-analytics/chart/Chart.scss.js +6 -0
- package/dist/v2/dashboard-analytics/dashboard/Dashboard.js +270 -0
- package/dist/v2/dashboard-analytics/dashboard/Dashboard.scss.js +6 -0
- package/dist/v2/dashboard-analytics/metric-card/MetricCard.js +65 -0
- package/dist/v2/dashboard-analytics/metric-card/MetricCard.scss.js +6 -0
- package/dist/v2/dashboard-analytics/venue-card/VenueCard.js +50 -0
- package/dist/v2/dashboard-analytics/venue-card/VenueCard.scss.js +6 -0
- package/dist/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.js +48 -0
- package/dist/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.scss.js +6 -0
- package/dist/v2/icons/index.js +61 -1
- package/dist/v2/index.d.ts +3 -1
- package/dist/v2/index.d.ts.map +1 -1
- package/dist/v2/navigation/DashboardLayout/TopNavigation.scss.js +1 -1
- package/dist/v2/pages/Settings/SettingsPage.d.ts +13 -0
- package/dist/v2/pages/Settings/SettingsPage.d.ts.map +1 -0
- package/dist/v2/pages/Settings/SettingsPage.js +88 -0
- package/dist/v2/pages/Settings/SettingsPage.scss.js +6 -0
- package/dist/v2/pages/Settings/SettingsTabs.d.ts +14 -0
- package/dist/v2/pages/Settings/SettingsTabs.d.ts.map +1 -0
- package/dist/v2/pages/Settings/SettingsTabs.js +29 -0
- package/dist/v2/pages/Settings/SettingsTabs.scss.js +6 -0
- package/dist/v2/pages/Settings/components/SidebarCustomisation.js +283 -0
- package/dist/v2/pages/Settings/components/SidebarCustomisation.scss.js +6 -0
- package/dist/v2/pages/Settings/components/SidebarNavItem.d.ts +19 -0
- package/dist/v2/pages/Settings/components/SidebarNavItem.d.ts.map +1 -0
- package/dist/v2/pages/Settings/components/SidebarNavItem.js +41 -0
- package/dist/v2/pages/Settings/components/SidebarNavItem.scss.js +6 -0
- package/dist/v2/pages/Settings/components/index.d.ts +5 -0
- package/dist/v2/pages/Settings/components/index.d.ts.map +1 -0
- package/dist/v2/pages/Settings/index.d.ts +7 -0
- package/dist/v2/pages/Settings/index.d.ts.map +1 -0
- package/dist/v2/styles/form/NewInput.scss.js +6 -0
- package/package.json +3 -3
- package/src/index.ts +4 -1
- package/src/v2/components/Alert/Alert.scss +3 -3
- package/src/v2/components/Button/Button.tsx +34 -12
- package/src/v2/components/Button/index.ts +2 -2
- package/src/v2/components/Checkbox/Checkbox.scss +211 -0
- package/src/v2/components/Checkbox/Checkbox.stories.tsx +316 -0
- package/src/v2/components/Checkbox/Checkbox.tsx +106 -0
- package/src/v2/components/Checkbox/index.ts +3 -0
- package/src/v2/components/FormField/FormField.scss +87 -0
- package/src/v2/components/FormField/FormField.stories.tsx +71 -0
- package/src/v2/components/FormField/FormField.tsx +37 -0
- package/src/v2/components/FormField/index.ts +3 -0
- package/src/v2/components/NewInput/NewInput.stories.tsx +433 -0
- package/src/v2/components/NewInput/NewInput.tsx +96 -0
- package/src/v2/components/NewInput/index.ts +1 -0
- package/src/v2/components/NewPageHeader/NewPageHeader.scss +47 -0
- package/src/v2/components/NewPageHeader/NewPageHeader.stories.tsx +44 -0
- package/src/v2/components/NewPageHeader/NewPageHeader.tsx +35 -0
- package/src/v2/components/NewPageHeader/index.ts +1 -0
- package/src/v2/components/SectionHeader/SectionHeader.scss +11 -0
- package/src/v2/components/SectionHeader/SectionHeader.tsx +15 -0
- package/src/v2/components/SectionHeader/index.ts +2 -0
- package/src/v2/components/Select/Select.scss +5 -5
- package/src/v2/components/WYSIWYGEditor/Icons.tsx +93 -0
- package/src/v2/components/WYSIWYGEditor/WYSIWYGEditor.scss +310 -0
- package/src/v2/components/WYSIWYGEditor/WYSIWYGEditor.stories.tsx +252 -0
- package/src/v2/components/WYSIWYGEditor/WYSIWYGEditor.tsx +393 -0
- package/src/v2/components/WYSIWYGEditor/index.ts +3 -0
- package/src/v2/components/index.ts +37 -0
- package/src/v2/index.ts +10 -2
- package/src/v2/navigation/DashboardLayout/TopNavigation.scss +1 -0
- package/src/v2/pages/Settings/SettingsContentPlaceholder.scss +24 -0
- package/src/v2/pages/Settings/SettingsPage.scss +52 -0
- package/src/v2/pages/Settings/SettingsPage.tsx +46 -0
- package/src/v2/pages/Settings/SettingsTabs.scss +44 -0
- package/src/v2/pages/Settings/SettingsTabs.tsx +36 -0
- package/src/v2/pages/Settings/components/SidebarCustomisation.stories.tsx +48 -0
- package/src/v2/pages/Settings/components/SidebarNavItem.scss +76 -0
- package/src/v2/pages/Settings/components/SidebarNavItem.stories.tsx +50 -0
- package/src/v2/pages/Settings/components/SidebarNavItem.tsx +52 -0
- package/src/v2/pages/Settings/components/index.ts +5 -0
- package/src/v2/pages/Settings/index.ts +8 -0
- package/src/v2/styles/components/Button.scss +51 -53
- package/src/v2/styles/form/Layout.scss +15 -0
- package/src/v2/styles/form/NewInput.scss +83 -53
- package/src/v2/styles/index.scss +1 -0
- package/src/v2/styles/tokens/_colors.scss +6 -6
- package/src/v2/styles/tokens/_typography.scss +2 -2
- package/dist/v2/navigation/icons/index.d.ts +0 -12
- package/dist/v2/navigation/icons/index.d.ts.map +0 -1
- package/src/v2/navigation/icons/index.tsx +0 -72
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import React, { useState } from 'react'
|
|
2
|
+
import type { Meta, StoryObj } from '@storybook/react'
|
|
3
|
+
import { SidebarCustomisation, defaultSidebarItems, SidebarItem } from './SidebarCustomisation'
|
|
4
|
+
|
|
5
|
+
const meta: Meta<typeof SidebarCustomisation> = {
|
|
6
|
+
title: 'V2/Pages/Settings/SidebarCustomisation',
|
|
7
|
+
component: SidebarCustomisation,
|
|
8
|
+
parameters: {
|
|
9
|
+
layout: 'padded',
|
|
10
|
+
},
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default meta
|
|
14
|
+
type Story = StoryObj<typeof SidebarCustomisation>
|
|
15
|
+
|
|
16
|
+
const InteractiveSidebarCustomisation = () => {
|
|
17
|
+
const [items, setItems] = useState<SidebarItem[]>(defaultSidebarItems)
|
|
18
|
+
|
|
19
|
+
const handleSave = (updatedItems: SidebarItem[]) => {
|
|
20
|
+
console.log('Saved items:', updatedItems)
|
|
21
|
+
alert('Settings saved!')
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const handleReset = () => {
|
|
25
|
+
setItems(defaultSidebarItems)
|
|
26
|
+
console.log('Reset to defaults')
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const handleCancel = () => {
|
|
30
|
+
console.log('Cancelled')
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return (
|
|
34
|
+
<div style={{ maxWidth: '900px' }}>
|
|
35
|
+
<SidebarCustomisation
|
|
36
|
+
items={items}
|
|
37
|
+
onItemsChange={setItems}
|
|
38
|
+
onSave={handleSave}
|
|
39
|
+
onReset={handleReset}
|
|
40
|
+
onCancel={handleCancel}
|
|
41
|
+
/>
|
|
42
|
+
</div>
|
|
43
|
+
)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export const Default: Story = {
|
|
47
|
+
render: () => <InteractiveSidebarCustomisation />,
|
|
48
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
@import '../../../styles/tokens/typography';
|
|
2
|
+
@import '../../../styles/tokens/colors';
|
|
3
|
+
|
|
4
|
+
.sidebar-nav-item {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
gap: 8px;
|
|
8
|
+
font-family: var(--font-family-sans);
|
|
9
|
+
|
|
10
|
+
&__header {
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
justify-content: space-between;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&__info {
|
|
17
|
+
display: flex;
|
|
18
|
+
align-items: center;
|
|
19
|
+
gap: 8px;
|
|
20
|
+
|
|
21
|
+
&--disabled {
|
|
22
|
+
.sidebar-nav-item__icon {
|
|
23
|
+
color: var(--fill-disabled);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.sidebar-nav-item__name {
|
|
27
|
+
color: var(--label-status-disabled);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&__icon {
|
|
33
|
+
width: 24px;
|
|
34
|
+
height: 24px;
|
|
35
|
+
display: flex;
|
|
36
|
+
align-items: center;
|
|
37
|
+
justify-content: center;
|
|
38
|
+
color: var(--fill-primary);
|
|
39
|
+
|
|
40
|
+
svg {
|
|
41
|
+
width: 24px;
|
|
42
|
+
height: 24px;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
&__name {
|
|
47
|
+
@include typography('text.small.emphasis');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
&__input {
|
|
51
|
+
@include typography('text.small');
|
|
52
|
+
height: 40px;
|
|
53
|
+
width: 100%;
|
|
54
|
+
padding: 8px 12px;
|
|
55
|
+
border: 1px solid var(--border-primary);
|
|
56
|
+
border-radius: 6px;
|
|
57
|
+
background-color: var(--surface-secondary);
|
|
58
|
+
color: var(--label-primary);
|
|
59
|
+
outline: none;
|
|
60
|
+
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
|
61
|
+
|
|
62
|
+
&::placeholder {
|
|
63
|
+
color: var(--label-secondary);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&:focus {
|
|
67
|
+
outline: none;
|
|
68
|
+
box-shadow: 0 0 0 2px var(--surface-primary), 0 0 0 4px var(--actions-regular);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
&--disabled {
|
|
72
|
+
opacity: 0.5;
|
|
73
|
+
cursor: not-allowed;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React, { useState } from 'react'
|
|
2
|
+
import type { Meta, StoryObj } from '@storybook/react'
|
|
3
|
+
import { SidebarNavItem } from './SidebarNavItem'
|
|
4
|
+
|
|
5
|
+
const HomeIcon = () => (
|
|
6
|
+
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
7
|
+
<path d="M17.7273 20.1182H6.27273C5.82086 20.1182 5.45455 19.7423 5.45455 19.2785V11.7207H3L11.4496 3.83661C11.7617 3.54543 12.2383 3.54543 12.5504 3.83661L21 11.7207H18.5455V19.2785C18.5455 19.7423 18.1792 20.1182 17.7273 20.1182ZM7.09091 18.4387H16.9091V10.1734L12 5.59288L7.09091 10.1734V18.4387Z" fill="currentColor" />
|
|
8
|
+
</svg>
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
const meta: Meta<typeof SidebarNavItem> = {
|
|
12
|
+
title: 'V2/Pages/Settings/SidebarNavItem',
|
|
13
|
+
component: SidebarNavItem,
|
|
14
|
+
parameters: {
|
|
15
|
+
layout: 'padded',
|
|
16
|
+
},
|
|
17
|
+
argTypes: {
|
|
18
|
+
label: {
|
|
19
|
+
control: 'text',
|
|
20
|
+
description: 'Display label for the item',
|
|
21
|
+
},
|
|
22
|
+
disabled: {
|
|
23
|
+
control: 'boolean',
|
|
24
|
+
description: 'Whether the input is disabled',
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export default meta
|
|
30
|
+
type Story = StoryObj<typeof SidebarNavItem>
|
|
31
|
+
|
|
32
|
+
const InteractiveSidebarNavItem = () => {
|
|
33
|
+
const [label, setLabel] = useState('Home')
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<div style={{ maxWidth: '300px' }}>
|
|
37
|
+
<SidebarNavItem
|
|
38
|
+
id="home"
|
|
39
|
+
label={label}
|
|
40
|
+
defaultLabel="Home"
|
|
41
|
+
icon={<HomeIcon />}
|
|
42
|
+
onLabelChange={(id, newLabel) => setLabel(newLabel)}
|
|
43
|
+
/>
|
|
44
|
+
</div>
|
|
45
|
+
)
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export const Default: Story = {
|
|
49
|
+
render: () => <InteractiveSidebarNavItem />,
|
|
50
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import './SidebarNavItem.scss'
|
|
3
|
+
|
|
4
|
+
export interface SidebarNavItemProps {
|
|
5
|
+
/** Unique identifier for the item */
|
|
6
|
+
id: string
|
|
7
|
+
/** Display label for the item (editable value) */
|
|
8
|
+
label: string
|
|
9
|
+
/** Default/original label name shown in header */
|
|
10
|
+
defaultLabel: string
|
|
11
|
+
/** Icon to display */
|
|
12
|
+
icon: React.ReactNode
|
|
13
|
+
/** Whether the input is disabled */
|
|
14
|
+
disabled?: boolean
|
|
15
|
+
/** Callback when the label changes */
|
|
16
|
+
onLabelChange?: (id: string, label: string) => void
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const SidebarNavItem: React.FC<SidebarNavItemProps> = ({
|
|
20
|
+
id,
|
|
21
|
+
label,
|
|
22
|
+
defaultLabel,
|
|
23
|
+
icon,
|
|
24
|
+
disabled = false,
|
|
25
|
+
onLabelChange,
|
|
26
|
+
}) => {
|
|
27
|
+
return (
|
|
28
|
+
<div className="sidebar-nav-item">
|
|
29
|
+
<div className="sidebar-nav-item__header">
|
|
30
|
+
<div className={`sidebar-nav-item__info ${disabled ? 'sidebar-nav-item__info--disabled' : ''}`}>
|
|
31
|
+
<div className="sidebar-nav-item__icon">
|
|
32
|
+
{icon}
|
|
33
|
+
</div>
|
|
34
|
+
<span className="sidebar-nav-item__name">
|
|
35
|
+
{defaultLabel}
|
|
36
|
+
</span>
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
<input
|
|
40
|
+
type="text"
|
|
41
|
+
id={id}
|
|
42
|
+
className={`sidebar-nav-item__input ${disabled ? 'sidebar-nav-item__input--disabled' : ''}`}
|
|
43
|
+
value={label}
|
|
44
|
+
onChange={(e) => onLabelChange?.(id, e.target.value)}
|
|
45
|
+
disabled={disabled}
|
|
46
|
+
placeholder={label}
|
|
47
|
+
/>
|
|
48
|
+
</div>
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export default SidebarNavItem
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { SidebarCustomisation, defaultSidebarItems } from './SidebarCustomisation'
|
|
2
|
+
export type { SidebarCustomisationProps, SidebarItem } from './SidebarCustomisation'
|
|
3
|
+
|
|
4
|
+
export { SidebarNavItem } from './SidebarNavItem'
|
|
5
|
+
export type { SidebarNavItemProps } from './SidebarNavItem'
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { SettingsPage } from './SettingsPage'
|
|
2
|
+
export type { SettingsPageProps } from './SettingsPage'
|
|
3
|
+
|
|
4
|
+
export { SettingsTabs } from './SettingsTabs'
|
|
5
|
+
export type { SettingsTabsProps, SettingsTab } from './SettingsTabs'
|
|
6
|
+
|
|
7
|
+
export { SidebarCustomisation, defaultSidebarItems, SidebarNavItem } from './components'
|
|
8
|
+
export type { SidebarCustomisationProps, SidebarItem, SidebarNavItemProps } from './components'
|
|
@@ -2,59 +2,48 @@
|
|
|
2
2
|
|
|
3
3
|
.new-button {
|
|
4
4
|
display: flex;
|
|
5
|
-
gap: var(--spacing-sm
|
|
6
|
-
align-items: center;
|
|
5
|
+
gap: var(--spacing-sm);
|
|
7
6
|
justify-content: center;
|
|
8
|
-
padding:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
font-
|
|
13
|
-
|
|
7
|
+
padding: 12px 24px;
|
|
8
|
+
align-self: flex-start;
|
|
9
|
+
text-align: center;
|
|
10
|
+
align-items: center;
|
|
11
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif), serif;
|
|
12
|
+
font-weight: 600;
|
|
13
|
+
line-height: 20px;
|
|
14
|
+
min-height: 44px;
|
|
14
15
|
border: none;
|
|
16
|
+
border-radius: 8px;
|
|
15
17
|
cursor: pointer;
|
|
16
18
|
transition: all 0.2s ease;
|
|
17
19
|
white-space: nowrap;
|
|
18
20
|
|
|
19
|
-
// Primary Button - Solid
|
|
21
|
+
// Primary Button - Solid purple
|
|
20
22
|
&--primary {
|
|
21
|
-
background:
|
|
22
|
-
|
|
23
|
-
rgba(255, 255, 255, 0.2) 0%,
|
|
24
|
-
var(--purples-purple-500) 5.77%,
|
|
25
|
-
var(--purples-purple-700) 95.19%,
|
|
26
|
-
var(--purples-purple-900) 100%
|
|
27
|
-
),
|
|
28
|
-
linear-gradient(
|
|
29
|
-
180deg,
|
|
30
|
-
var(--purples-purple-50) 0%,
|
|
31
|
-
var(--purples-purple-900) 100%
|
|
32
|
-
),
|
|
33
|
-
linear-gradient(90deg, var(--purples-purple-500) 0%, var(--purples-purple-500) 100%);
|
|
34
|
-
color: var(--labels-main-label-white, #ffffff);
|
|
23
|
+
background: #6200EE;
|
|
24
|
+
color: #ffffff;
|
|
35
25
|
|
|
36
26
|
&:hover {
|
|
37
|
-
background
|
|
27
|
+
background: #360083;
|
|
38
28
|
}
|
|
39
29
|
|
|
40
30
|
&:active,
|
|
41
31
|
&:focus {
|
|
42
|
-
background
|
|
32
|
+
background: #360083;
|
|
43
33
|
}
|
|
44
34
|
}
|
|
45
35
|
|
|
46
|
-
// Primary - Soft
|
|
36
|
+
// Primary - Soft (Light purple)
|
|
47
37
|
&--primary-soft {
|
|
48
|
-
background
|
|
49
|
-
color:
|
|
38
|
+
background: #efeffe;
|
|
39
|
+
color: #5d5bf4;
|
|
50
40
|
|
|
51
41
|
&:hover {
|
|
52
|
-
background
|
|
42
|
+
background: #cdccfc;
|
|
53
43
|
}
|
|
54
44
|
|
|
55
45
|
&:active {
|
|
56
|
-
background
|
|
57
|
-
color: var(--labels-main-label-white, #ffffff);
|
|
46
|
+
background: #b4b4fa;
|
|
58
47
|
}
|
|
59
48
|
}
|
|
60
49
|
|
|
@@ -76,39 +65,32 @@
|
|
|
76
65
|
|
|
77
66
|
// Secondary Button
|
|
78
67
|
&--secondary {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
var(--neutrals-gray-200) 5.77%,
|
|
83
|
-
var(--purples-purple-700) 95.19%,
|
|
84
|
-
var(--purples-purple-900) 100%
|
|
85
|
-
),
|
|
86
|
-
linear-gradient(
|
|
87
|
-
180deg,
|
|
88
|
-
var(--neutrals-gray-200) 0%,
|
|
89
|
-
var(--fills-main-fill-secondary) 100%
|
|
90
|
-
),
|
|
91
|
-
linear-gradient(90deg, var(--fills-main-fill-secondary) 0%, var(--fills-main-fill-secondary) 100%);
|
|
92
|
-
color: var(--labels-main-label-white, #ffffff);
|
|
68
|
+
border-radius: var(--sizes-radius-radius, 8px);
|
|
69
|
+
background: var(--surface-action-soft);
|
|
70
|
+
color: var(--label-action);
|
|
93
71
|
|
|
94
|
-
&:hover
|
|
95
|
-
|
|
96
|
-
|
|
72
|
+
&:hover {
|
|
73
|
+
background: #EFE6FD;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
&:active,
|
|
77
|
+
&:focus {
|
|
78
|
+
background: #EFE6FD;
|
|
97
79
|
}
|
|
98
80
|
}
|
|
99
81
|
|
|
100
82
|
// Destructive - Soft
|
|
101
83
|
&--destructive-soft {
|
|
102
|
-
|
|
103
|
-
|
|
84
|
+
border-radius: var(--radius-reg, 8px);
|
|
85
|
+
background: var(--surface-danger-soft, #fceceb);
|
|
104
86
|
|
|
105
87
|
&:hover {
|
|
106
|
-
background-color: var(--
|
|
88
|
+
background-color: var(--surface-danger-soft-hover, #f5c4c2);
|
|
107
89
|
}
|
|
108
90
|
|
|
109
91
|
&:active {
|
|
110
|
-
background-color: var(--
|
|
111
|
-
color: var(--
|
|
92
|
+
background-color: var(--surface-danger-soft-pressed, #e66861);
|
|
93
|
+
color: var(--label-white, #ffffff);
|
|
112
94
|
}
|
|
113
95
|
}
|
|
114
96
|
|
|
@@ -155,6 +137,22 @@
|
|
|
155
137
|
pointer-events: none;
|
|
156
138
|
}
|
|
157
139
|
|
|
140
|
+
/* Button text styling */
|
|
141
|
+
&__text {
|
|
142
|
+
font-family: 'Geist', sans-serif;
|
|
143
|
+
font-size: 15px;
|
|
144
|
+
font-style: normal;
|
|
145
|
+
font-weight: 600;
|
|
146
|
+
line-height: 20px;
|
|
147
|
+
text-align: center;
|
|
148
|
+
|
|
149
|
+
&--primary { color: var(--label-primary); }
|
|
150
|
+
&--secondary { color: var(--label-secondary); }
|
|
151
|
+
&--danger { color: var(--label-danger); }
|
|
152
|
+
&--white { color: var(--label-white); }
|
|
153
|
+
&--action { color: var(--label-action); }
|
|
154
|
+
}
|
|
155
|
+
|
|
158
156
|
// Text styling
|
|
159
157
|
p {
|
|
160
158
|
margin: 0;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
.waiver-template-form-section {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
align-items: flex-start;
|
|
5
|
+
gap: var(--padding-reg, 16px);
|
|
6
|
+
align-self: stretch;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.waiver-template-form-group {
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
align-items: flex-start;
|
|
13
|
+
gap: var(--padding-lg, 24px);
|
|
14
|
+
align-self: stretch;
|
|
15
|
+
}
|
|
@@ -1,24 +1,28 @@
|
|
|
1
1
|
/* New Form Input Styles based on Figma design tokens */
|
|
2
|
+
@import '../../styles/tokens/typography';
|
|
2
3
|
|
|
3
4
|
.new-form-input {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
align-items: flex-start;
|
|
8
|
+
gap: var(--spacing-sm);
|
|
9
|
+
align-self: stretch;
|
|
10
|
+
width: 100%;
|
|
8
11
|
|
|
9
12
|
&__label {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
14
|
+
font-size: 15px;
|
|
15
|
+
font-style: normal;
|
|
16
|
+
font-weight: 600;
|
|
17
|
+
line-height: 20px;
|
|
18
|
+
color: var(--label-primary, #121E52);
|
|
19
|
+
|
|
16
20
|
}
|
|
17
21
|
|
|
18
22
|
&__label-optional {
|
|
19
|
-
|
|
23
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
20
24
|
font-size: var(--text-xs-size, 11px);
|
|
21
|
-
font-weight:
|
|
25
|
+
font-weight: 400;
|
|
22
26
|
line-height: var(--text-xs-line, 14px);
|
|
23
27
|
color: var(--labels-main-label-secondary, #626a90);
|
|
24
28
|
text-align: right;
|
|
@@ -32,34 +36,37 @@
|
|
|
32
36
|
width: 100%;
|
|
33
37
|
}
|
|
34
38
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
transition: all 0.2s ease;
|
|
39
|
+
&__input {
|
|
40
|
+
@include typography('text.regular');
|
|
41
|
+
flex: 1 0 0;
|
|
42
|
+
background-color: var(--surfaces-main-background-secondary);
|
|
43
|
+
border: 2px solid var(--border-primary);
|
|
44
|
+
border-radius: var(--radius-md);
|
|
45
|
+
padding: 8px 10px;
|
|
46
|
+
min-height: 40px;
|
|
47
|
+
background: var(--surface-secondary);
|
|
48
|
+
width: 100%;
|
|
49
|
+
transition: all 0.2s ease;
|
|
47
50
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
background-color: var(--surfaces-main-background-secondary, #f8f8fa);
|
|
52
|
-
}
|
|
51
|
+
@media (max-width: 768px) {
|
|
52
|
+
font-size: 16px;
|
|
53
|
+
}
|
|
53
54
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
55
|
+
&:focus {
|
|
56
|
+
outline: none;
|
|
57
|
+
border-color: var(--border-selected, #6200EE);
|
|
58
|
+
background-color: var(--surfaces-main-background-secondary, #f8f8fa);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&::placeholder {
|
|
62
|
+
color: var(--labels-main-label-secondary, #626a90);
|
|
57
63
|
}
|
|
64
|
+
}
|
|
58
65
|
|
|
59
66
|
&__textarea {
|
|
60
|
-
|
|
61
|
-
font-size: var(--text-
|
|
62
|
-
line-height: var(--text-
|
|
67
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
68
|
+
font-size: var(--text-regular-size, 15px);
|
|
69
|
+
line-height: var(--text-regular-line, 20px);
|
|
63
70
|
color: var(--labels-main-label-primary, #121e52);
|
|
64
71
|
background-color: var(--surfaces-main-background-secondary, #f8f8fa);
|
|
65
72
|
border: 1px solid var(--borders-main-border-primary, #e8e9ef);
|
|
@@ -70,9 +77,13 @@
|
|
|
70
77
|
resize: vertical;
|
|
71
78
|
transition: all 0.2s ease;
|
|
72
79
|
|
|
80
|
+
@media (max-width: 768px) {
|
|
81
|
+
font-size: 16px;
|
|
82
|
+
}
|
|
83
|
+
|
|
73
84
|
&:focus {
|
|
74
85
|
outline: none;
|
|
75
|
-
border-color: var(--
|
|
86
|
+
border-color: var(--border-selected, #6200EE);
|
|
76
87
|
}
|
|
77
88
|
|
|
78
89
|
&::placeholder {
|
|
@@ -88,16 +99,20 @@
|
|
|
88
99
|
border: 2px solid var(--borders-main-border-primary, #e8e9ef);
|
|
89
100
|
border-radius: var(--radius-md, 4px);
|
|
90
101
|
padding: 5px;
|
|
91
|
-
height: 40px;
|
|
102
|
+
min-height: 40px;
|
|
92
103
|
|
|
93
104
|
input {
|
|
94
105
|
flex: 1;
|
|
95
106
|
border: none;
|
|
96
107
|
background: transparent;
|
|
97
108
|
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
98
|
-
font-size: var(--text-
|
|
99
|
-
line-height: var(--text-
|
|
100
|
-
color: var(--
|
|
109
|
+
font-size: var(--text-regular-size, 15px);
|
|
110
|
+
line-height: var(--text-regular-line, 20px);
|
|
111
|
+
color: var(--label-primary);
|
|
112
|
+
|
|
113
|
+
@media (max-width: 768px) {
|
|
114
|
+
font-size: 16px;
|
|
115
|
+
}
|
|
101
116
|
|
|
102
117
|
&:focus {
|
|
103
118
|
outline: none;
|
|
@@ -134,24 +149,43 @@
|
|
|
134
149
|
|
|
135
150
|
&:focus {
|
|
136
151
|
outline: none;
|
|
137
|
-
border-color: var(--
|
|
152
|
+
border-color: var(--border-selected, #6200EE);
|
|
138
153
|
}
|
|
139
154
|
}
|
|
140
155
|
}
|
|
141
156
|
|
|
142
157
|
&__helper-text {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
158
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
159
|
+
font-size: var(--text-regular-size, 15px);
|
|
160
|
+
font-style: normal;
|
|
161
|
+
font-weight: 400;
|
|
162
|
+
line-height: var(--text-regular-line, 20px);
|
|
163
|
+
margin-top: 2px;
|
|
164
|
+
color: var(--label-secondary, #626A90);
|
|
165
|
+
min-width: max-content;
|
|
166
|
+
white-space: nowrap;
|
|
167
|
+
|
|
168
|
+
@media (max-width: 768px) {
|
|
169
|
+
min-width: unset;
|
|
170
|
+
white-space: normal;
|
|
171
|
+
word-wrap: break-word;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
&__error-text {
|
|
176
|
+
font-family: var(--font-family-sans, 'Geist', sans-serif);
|
|
177
|
+
font-size: 11px;
|
|
178
|
+
font-style: normal;
|
|
179
|
+
font-weight: 400;
|
|
180
|
+
line-height: 14px;
|
|
181
|
+
margin-top: 2px;
|
|
182
|
+
color: var(--labels-status-label-error, #ef4444);
|
|
149
183
|
}
|
|
150
184
|
|
|
151
185
|
// States
|
|
152
186
|
&--active {
|
|
153
187
|
.new-form-input__input {
|
|
154
|
-
border-color: var(--
|
|
188
|
+
border-color: var(--border-selected, #6200EE);
|
|
155
189
|
}
|
|
156
190
|
}
|
|
157
191
|
|
|
@@ -159,14 +193,10 @@
|
|
|
159
193
|
.new-form-input__input {
|
|
160
194
|
border-color: var(--borders-status-border-error, #ef4444);
|
|
161
195
|
}
|
|
162
|
-
|
|
163
|
-
.new-form-input__helper-text {
|
|
164
|
-
color: var(--labels-status-label-error, #ef4444);
|
|
165
|
-
}
|
|
166
196
|
}
|
|
167
197
|
|
|
168
198
|
&--disabled {
|
|
169
199
|
opacity: var(--opacity-50, 0.5);
|
|
170
200
|
pointer-events: none;
|
|
171
201
|
}
|
|
172
|
-
}
|
|
202
|
+
}
|
package/src/v2/styles/index.scss
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
:root {
|
|
7
7
|
/* Base Colors - BKIT */
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
/* Blues */
|
|
10
10
|
--blue-50: #E7F4FC;
|
|
11
11
|
--blue-100: #B4DBF6;
|
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
--neutral-black: #000000;
|
|
145
145
|
|
|
146
146
|
/* Main Color Abstractions */
|
|
147
|
-
|
|
147
|
+
|
|
148
148
|
/* Purple Scale */
|
|
149
149
|
--purple-lightest: var(--purple-50);
|
|
150
150
|
--purple-lighter: var(--purple-100);
|
|
@@ -253,7 +253,7 @@
|
|
|
253
253
|
--shade-darkest: var(--neutral-black);
|
|
254
254
|
|
|
255
255
|
/* Semantic Colors */
|
|
256
|
-
|
|
256
|
+
|
|
257
257
|
/* Highlight Colors */
|
|
258
258
|
--highlight-lightest: var(--cyan-lightest);
|
|
259
259
|
--highlight-lighter: var(--cyan-lighter);
|
|
@@ -326,7 +326,7 @@
|
|
|
326
326
|
--disabled-darkest: var(--shade-regular);
|
|
327
327
|
|
|
328
328
|
/* Light Theme Palette Mappings */
|
|
329
|
-
|
|
329
|
+
|
|
330
330
|
/* Labels */
|
|
331
331
|
--label-primary: var(--shade-light);
|
|
332
332
|
--label-secondary: var(--tone-darkest);
|
|
@@ -387,7 +387,7 @@
|
|
|
387
387
|
/* Borders */
|
|
388
388
|
--border-primary: var(--tone-light);
|
|
389
389
|
--border-secondary: var(--tone-regular);
|
|
390
|
-
--border-selected: var(--
|
|
390
|
+
--border-selected: var(--neutral-600);
|
|
391
391
|
--border-action: var(--actions-regular);
|
|
392
392
|
--border-status-error: var(--errors-lighter);
|
|
393
393
|
--border-status-success: var(--success-lighter);
|
|
@@ -551,4 +551,4 @@
|
|
|
551
551
|
|
|
552
552
|
@mixin color-border($color) {
|
|
553
553
|
border-color: var(--#{$color});
|
|
554
|
-
}
|
|
554
|
+
}
|