@licklist/design 0.78.5-dev.45 → 0.78.5-dev.47

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.
Files changed (62) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -0
  4. package/dist/v2/components/WYSIWYGEditor/Icons.d.ts +2 -0
  5. package/dist/v2/components/WYSIWYGEditor/Icons.d.ts.map +1 -1
  6. package/dist/v2/components/WYSIWYGEditor/Icons.js +28 -2
  7. package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.d.ts +1 -0
  8. package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.d.ts.map +1 -1
  9. package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.js +156 -17
  10. package/dist/v2/components/WYSIWYGEditor/WYSIWYGEditor.scss.js +1 -1
  11. package/dist/v2/{navigation/icons → icons}/index.d.ts +6 -0
  12. package/dist/v2/icons/index.d.ts.map +1 -0
  13. package/dist/v2/icons/index.js +115 -0
  14. package/dist/v2/index.d.ts +3 -1
  15. package/dist/v2/index.d.ts.map +1 -1
  16. package/dist/v2/navigation/DashboardLayout/TopNavigation.scss.js +1 -1
  17. package/dist/v2/pages/Settings/SettingsPage.d.ts +13 -0
  18. package/dist/v2/pages/Settings/SettingsPage.d.ts.map +1 -0
  19. package/dist/v2/pages/Settings/SettingsPage.js +88 -0
  20. package/dist/v2/pages/Settings/SettingsPage.scss.js +6 -0
  21. package/dist/v2/pages/Settings/SettingsTabs.d.ts +14 -0
  22. package/dist/v2/pages/Settings/SettingsTabs.d.ts.map +1 -0
  23. package/dist/v2/pages/Settings/SettingsTabs.js +29 -0
  24. package/dist/v2/pages/Settings/SettingsTabs.scss.js +6 -0
  25. package/dist/v2/pages/Settings/components/SidebarCustomisation.d.ts +20 -0
  26. package/dist/v2/pages/Settings/components/SidebarCustomisation.d.ts.map +1 -0
  27. package/dist/v2/pages/Settings/components/SidebarCustomisation.js +276 -0
  28. package/dist/v2/pages/Settings/components/SidebarCustomisation.scss.js +6 -0
  29. package/dist/v2/pages/Settings/components/SidebarNavItem.d.ts +19 -0
  30. package/dist/v2/pages/Settings/components/SidebarNavItem.d.ts.map +1 -0
  31. package/dist/v2/pages/Settings/components/SidebarNavItem.js +41 -0
  32. package/dist/v2/pages/Settings/components/SidebarNavItem.scss.js +6 -0
  33. package/dist/v2/pages/Settings/components/index.d.ts +5 -0
  34. package/dist/v2/pages/Settings/components/index.d.ts.map +1 -0
  35. package/dist/v2/pages/Settings/index.d.ts +7 -0
  36. package/dist/v2/pages/Settings/index.d.ts.map +1 -0
  37. package/dist/v2/styles/form/NewInput.scss +2 -3
  38. package/dist/v2/styles/form/NewInput.scss.js +1 -1
  39. package/package.json +3 -3
  40. package/src/index.ts +1 -0
  41. package/src/v2/components/WYSIWYGEditor/Icons.tsx +13 -1
  42. package/src/v2/components/WYSIWYGEditor/WYSIWYGEditor.scss +40 -58
  43. package/src/v2/components/WYSIWYGEditor/WYSIWYGEditor.tsx +166 -10
  44. package/src/v2/icons/index.tsx +105 -0
  45. package/src/v2/index.ts +10 -2
  46. package/src/v2/navigation/DashboardLayout/TopNavigation.scss +1 -0
  47. package/src/v2/pages/Settings/SettingsContentPlaceholder.scss +24 -0
  48. package/src/v2/pages/Settings/SettingsPage.scss +52 -0
  49. package/src/v2/pages/Settings/SettingsPage.tsx +46 -0
  50. package/src/v2/pages/Settings/SettingsTabs.scss +44 -0
  51. package/src/v2/pages/Settings/SettingsTabs.tsx +36 -0
  52. package/src/v2/pages/Settings/components/SidebarCustomisation.scss +150 -0
  53. package/src/v2/pages/Settings/components/SidebarCustomisation.stories.tsx +48 -0
  54. package/src/v2/pages/Settings/components/SidebarCustomisation.tsx +166 -0
  55. package/src/v2/pages/Settings/components/SidebarNavItem.scss +76 -0
  56. package/src/v2/pages/Settings/components/SidebarNavItem.stories.tsx +50 -0
  57. package/src/v2/pages/Settings/components/SidebarNavItem.tsx +52 -0
  58. package/src/v2/pages/Settings/components/index.ts +5 -0
  59. package/src/v2/pages/Settings/index.ts +8 -0
  60. package/src/v2/styles/form/NewInput.scss +2 -3
  61. package/dist/v2/navigation/icons/index.d.ts.map +0 -1
  62. package/src/v2/navigation/icons/index.tsx +0 -72
@@ -0,0 +1,150 @@
1
+ @import '../../../styles/tokens/typography';
2
+ @import '../../../styles/tokens/colors';
3
+
4
+ .sidebar-customisation {
5
+ display: flex;
6
+ flex-direction: column;
7
+ gap: 16px;
8
+ width: 100%;
9
+ font-family: var(--font-family-sans);
10
+
11
+ &__header {
12
+ display: flex;
13
+ justify-content: space-between;
14
+ align-items: center;
15
+ }
16
+
17
+ &__title {
18
+ @include typography('text.small.bold');
19
+ margin: 0;
20
+ }
21
+
22
+ &__cancel-btn {
23
+ @include typography('text.regular');
24
+ color: var(--label-danger);
25
+ background: none;
26
+ border: none;
27
+ cursor: pointer;
28
+ padding: 0;
29
+
30
+ &:hover {
31
+ text-decoration: underline;
32
+ }
33
+ }
34
+
35
+ &__edit-btn {
36
+ display: flex;
37
+ align-items: center;
38
+ gap: 6px;
39
+ @include typography('text.regular');
40
+ color: var(--label-primary);
41
+ background: none;
42
+ border: none;
43
+ cursor: pointer;
44
+ padding: 0;
45
+
46
+ svg {
47
+ color: var(--fill-primary);
48
+ }
49
+
50
+ &:hover {
51
+ text-decoration: underline;
52
+ }
53
+ }
54
+
55
+ // Edit mode grid
56
+ &__grid {
57
+ display: grid;
58
+ grid-template-columns: repeat(3, 1fr);
59
+ gap: 16px;
60
+ width: 100%;
61
+ }
62
+
63
+ // View mode grid
64
+ &__view-grid {
65
+ display: grid;
66
+ grid-template-columns: repeat(3, 1fr);
67
+ gap: 12px;
68
+ width: 100%;
69
+ }
70
+
71
+ &__view-item {
72
+ display: flex;
73
+ align-items: center;
74
+ gap: 12px;
75
+ padding: 12px;
76
+ border: 1px solid var(--border-primary);
77
+ border-radius: 8px;
78
+ background-color: var(--surface-secondary);
79
+ min-width: 0;
80
+
81
+ &--hidden {
82
+ opacity: 0.5;
83
+ }
84
+ }
85
+
86
+ &__view-icon {
87
+ width: 24px;
88
+ height: 24px;
89
+ display: flex;
90
+ align-items: center;
91
+ justify-content: center;
92
+ color: var(--fill-primary);
93
+ flex-shrink: 0;
94
+
95
+ svg {
96
+ width: 24px;
97
+ height: 24px;
98
+ }
99
+ }
100
+
101
+ &__view-label {
102
+ @include typography('text.small.emphasis');
103
+ overflow: hidden;
104
+ text-overflow: ellipsis;
105
+ white-space: nowrap;
106
+ }
107
+
108
+ &__actions {
109
+ display: flex;
110
+ align-items: center;
111
+ gap: 12px;
112
+ margin-top: 8px;
113
+ }
114
+
115
+ &__save-btn {
116
+ @include typography('text.regular');
117
+ font-weight: 600;
118
+ padding: 10px 20px;
119
+ border-radius: 8px;
120
+ border: none;
121
+ background-color: var(--fill-action);
122
+ color: var(--label-white);
123
+ cursor: pointer;
124
+ transition: background-color 0.2s ease;
125
+
126
+ &:hover {
127
+ background-color: var(--actions-dark);
128
+ }
129
+
130
+ &:focus-visible {
131
+ outline: 2px solid var(--border-action);
132
+ outline-offset: 2px;
133
+ }
134
+ }
135
+
136
+ &__reset-btn {
137
+ @include typography('text.small');
138
+ font-weight: 500;
139
+ color: var(--label-secondary);
140
+ background: none;
141
+ border: none;
142
+ cursor: pointer;
143
+ padding: 0;
144
+
145
+ &:hover {
146
+ color: var(--label-primary);
147
+ text-decoration: underline;
148
+ }
149
+ }
150
+ }
@@ -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,166 @@
1
+ import React, { useEffect, useState } from 'react'
2
+ import { SidebarNavItem } from './SidebarNavItem'
3
+ import './SidebarCustomisation.scss'
4
+ import {
5
+ CalendarIcon,
6
+ BookingsIcon,
7
+ BookingTypesIcon,
8
+ LoyaltyIcon,
9
+ CustomersIcon,
10
+ MarketingIcon,
11
+ WaiversIcon,
12
+ SettingsIcon,
13
+ EditIcon,
14
+ } from '../../../icons'
15
+
16
+ export interface SidebarItem {
17
+ id: string
18
+ label: string
19
+ icon: React.ReactNode
20
+ visible: boolean
21
+ locked?: boolean
22
+ }
23
+
24
+ export interface SidebarCustomisationProps {
25
+ items: SidebarItem[]
26
+ onItemsChange?: (items: SidebarItem[]) => void
27
+ onSave?: (items: SidebarItem[]) => void
28
+ onReset?: () => void
29
+ onCancel?: () => void
30
+ }
31
+
32
+ // Default sidebar items - IDs must match useProviderNavigation.tsx
33
+ export const defaultSidebarItems: SidebarItem[] = [
34
+ { id: 'events', label: 'Dates & Events', icon: <CalendarIcon />, visible: true },
35
+ { id: 'sales', label: 'Bookings & Enquiries', icon: <BookingsIcon />, visible: true },
36
+ { id: 'product-sets', label: 'Booking Types', icon: <BookingTypesIcon />, visible: true },
37
+ { id: 'loyalty', label: 'Loyalty', icon: <LoyaltyIcon />, visible: true },
38
+ { id: 'customers', label: 'Customers', icon: <CustomersIcon />, visible: true },
39
+ { id: 'emails', label: 'Email & SMS', icon: <MarketingIcon />, visible: true },
40
+ { id: 'waivers', label: 'Waivers', icon: <WaiversIcon />, visible: true },
41
+ { id: 'settings', label: 'Settings', icon: <SettingsIcon />, visible: true, locked: true },
42
+ ]
43
+
44
+ export const SidebarCustomisation: React.FC<SidebarCustomisationProps> = ({
45
+ items: initialItems,
46
+ onItemsChange,
47
+ onSave,
48
+ onReset,
49
+ onCancel,
50
+ }) => {
51
+ const [items, setItems] = useState<SidebarItem[]>(initialItems)
52
+ const [isEditing, setIsEditing] = useState(false)
53
+
54
+ useEffect(() => {
55
+ setItems(initialItems)
56
+ }, [initialItems])
57
+
58
+ const handleLabelChange = (id: string, newLabel: string) => {
59
+ const updatedItems = items.map((item) =>
60
+ item.id === id ? { ...item, label: newLabel } : item
61
+ )
62
+ setItems(updatedItems)
63
+ onItemsChange?.(updatedItems)
64
+ }
65
+
66
+ const handleSave = () => {
67
+ onSave?.(items)
68
+ setIsEditing(false)
69
+ }
70
+
71
+ const handleReset = () => {
72
+ setItems(defaultSidebarItems)
73
+ onReset?.()
74
+ }
75
+
76
+ const handleCancel = () => {
77
+ setItems(initialItems)
78
+ onCancel?.()
79
+ setIsEditing(false)
80
+ }
81
+
82
+ const handleEdit = () => {
83
+ setIsEditing(true)
84
+ }
85
+
86
+ return (
87
+ <div className="sidebar-customisation">
88
+ <div className="sidebar-customisation__header">
89
+ <h3 className="sidebar-customisation__title">Sidebar Customisation</h3>
90
+ {isEditing ? (
91
+ <button
92
+ type="button"
93
+ className="sidebar-customisation__cancel-btn"
94
+ onClick={handleCancel}
95
+ >
96
+ Cancel
97
+ </button>
98
+ ) : (
99
+ <button
100
+ type="button"
101
+ className="sidebar-customisation__edit-btn"
102
+ onClick={handleEdit}
103
+ >
104
+ <EditIcon />
105
+ <span>Edit Side Bar</span>
106
+ </button>
107
+ )}
108
+ </div>
109
+
110
+ {isEditing ? (
111
+ <>
112
+ <div className="sidebar-customisation__grid">
113
+ {items.map((item) => {
114
+ const defaultItem = defaultSidebarItems.find(d => d.id === item.id)
115
+ return (
116
+ <SidebarNavItem
117
+ key={item.id}
118
+ id={item.id}
119
+ label={item.label}
120
+ defaultLabel={defaultItem?.label || item.label}
121
+ icon={item.icon}
122
+ onLabelChange={handleLabelChange}
123
+ />
124
+ )
125
+ })}
126
+ </div>
127
+
128
+ <div className="sidebar-customisation__actions">
129
+ <button
130
+ type="button"
131
+ className="sidebar-customisation__save-btn"
132
+ onClick={handleSave}
133
+ >
134
+ Save Changes
135
+ </button>
136
+ <button
137
+ type="button"
138
+ className="sidebar-customisation__reset-btn"
139
+ onClick={handleReset}
140
+ >
141
+ Reset to defaults
142
+ </button>
143
+ </div>
144
+ </>
145
+ ) : (
146
+ <div className="sidebar-customisation__view-grid">
147
+ {items.map((item) => (
148
+ <div
149
+ key={item.id}
150
+ className={`sidebar-customisation__view-item ${!item.visible ? 'sidebar-customisation__view-item--hidden' : ''}`}
151
+ >
152
+ <span className="sidebar-customisation__view-icon">
153
+ {item.icon}
154
+ </span>
155
+ <span className="sidebar-customisation__view-label">
156
+ {item.label}
157
+ </span>
158
+ </div>
159
+ ))}
160
+ </div>
161
+ )}
162
+ </div>
163
+ )
164
+ }
165
+
166
+ export default SidebarCustomisation
@@ -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'
@@ -1,4 +1,5 @@
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
  display: flex;
@@ -36,9 +37,7 @@
36
37
  }
37
38
 
38
39
  &__input {
39
- font-family: var(--font-family-sans, 'Geist', sans-serif);
40
- font-size: var(--text-regular-size, 15px);
41
- line-height: var(--text-regular-line, 20px);
40
+ @include typography('text.regular');
42
41
  flex: 1 0 0;
43
42
  background-color: var(--surfaces-main-background-secondary);
44
43
  border: 2px solid var(--border-primary);
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2/navigation/icons/index.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,+CAOzB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,SAAS,+CAKrB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,SAAS,+CAIrB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA"}
@@ -1,72 +0,0 @@
1
- import React from 'react'
2
-
3
- export const DashboardIcon = () => (
4
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
5
- <path
6
- fill="var(--fills-main-fill-primary, #14215A)"
7
- d="M17.727 20.118H6.273a.83.83 0 0 1-.818-.84v-7.557H3l8.45-7.884a.803.803 0 0 1 1.1 0L21 11.72h-2.454v7.557a.83.83 0 0 1-.819.84Zm-10.636-1.68h9.818v-8.265L12 5.593l-4.91 4.58v8.266Z"
8
- />
9
- </svg>
10
- )
11
-
12
- export const CompanyIcon = () => (
13
- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
14
- <path d="M19.5 18.75H4.5V17.25H5.25V6C5.25 5.58579 5.58579 5.25 6 5.25H16.5C16.9142 5.25 17.25 5.58579 17.25 6V9.75H18.75V17.25H19.5V18.75ZM15.75 17.25H17.25V11.25H12.75V17.25H14.25V12.75H15.75V17.25ZM15.75 9.75V6.75H6.75V17.25H11.25V9.75H15.75ZM8.25 11.25H9.75V12.75H8.25V11.25ZM8.25 14.25H9.75V15.75H8.25V14.25ZM8.25 8.25H9.75V9.75H8.25V8.25Z" fill="var(--fills-main-fill-primary, #14215A)" />
15
- </svg>
16
- )
17
-
18
- export const VenueIcon = () => (
19
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
20
- <path fill="#000" fillOpacity=".1" d="m6 7.5 6.75-2.625V18H6V7.5Z" />
21
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M5.25 17.25V7.275a.75.75 0 0 1 .494-.704l7.253-2.638a.375.375 0 0 1 .503.353V8l4.737 1.58a.75.75 0 0 1 .513.71v6.96h1.5v1.5H3.75v-1.5h1.5Zm1.5 0H12V5.892L6.75 7.8v9.45Zm10.5 0v-6.419l-3.75-1.25v7.67h3.75Z" />
22
- </svg>
23
- )
24
-
25
- export const MarketingIcon = () => (
26
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
27
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M10.72 16.363s5.264-.634 8.02.957l.725-.194a.75.75 0 0 0 .53-.919l-1.177-4.392a1.5 1.5 0 0 0-.752-2.807L16.89 4.616a.75.75 0 0 0-.918-.53l-.725.194c-1.59 2.755-6.468 4.839-6.468 4.839l-2.898.776a1.5 1.5 0 0 0-1.06 1.837l1.164 4.347a1.5 1.5 0 0 0 1.838 1.06l.724-.194 1.695 3.428 1.449-.388-.97-3.622Zm-.17-6.43a25.444 25.444 0 0 0 1.647-.92c1.12-.683 2.514-1.66 3.549-2.868l2.494 9.31c-1.5-.529-3.196-.678-4.507-.71-.713-.017-1.364 0-1.887.026L10.55 9.934Zm-4.281 1.41 2.897-.775 1.165 4.346-2.898.777-1.164-4.347Z" />
28
- </svg>
29
- )
30
-
31
- export const AdminIcon = () => (
32
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
33
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M12 13.5V15a4.5 4.5 0 0 0-4.5 4.5H6a6 6 0 0 1 6-6Zm0-.75a4.499 4.499 0 0 1-4.5-4.5c0-2.486 2.014-4.5 4.5-4.5s4.5 2.014 4.5 4.5-2.014 4.5-4.5 4.5Zm0-1.5a3 3 0 1 0 0-6 3 3 0 1 0 0 6Zm4.5 7.875-2.204 1.159.42-2.455-1.782-1.738 2.464-.358L16.5 13.5l1.102 2.233 2.465.358-1.784 1.738.421 2.455-2.204-1.159Z" />
34
- </svg>
35
- )
36
-
37
- export const ProfileIcon = () => (
38
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
39
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M6 19.5a6 6 0 0 1 12 0h-1.5a4.5 4.5 0 1 0-9 0H6Zm6-6.75a4.499 4.499 0 0 1-4.5-4.5c0-2.486 2.014-4.5 4.5-4.5s4.5 2.014 4.5 4.5-2.014 4.5-4.5 4.5Zm0-1.5a3 3 0 1 0 0-6 3 3 0 1 0 0 6Z" />
40
- </svg>
41
- )
42
-
43
- export const CustomersIcon = () => (
44
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
45
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M4.5 19.5a6 6 0 0 1 12 0H15a4.5 4.5 0 1 0-9 0H4.5Zm6-6.75A4.499 4.499 0 0 1 6 8.25c0-2.486 2.014-4.5 4.5-4.5S15 5.764 15 8.25s-2.014 4.5-4.5 4.5Zm0-1.5a3 3 0 1 0 0-6 3 3 0 1 0 0 6Zm6.213 2.777A6.001 6.001 0 0 1 20.25 19.5h-1.5c0-1.827-1.089-3.4-2.653-4.105l.616-1.368Zm-.516-8.467A4.125 4.125 0 0 1 15 13.483v-1.51a2.625 2.625 0 0 0 .78-4.956l.417-1.457Z" />
46
- </svg>
47
- )
48
-
49
- export const ReportsIcon = () => (
50
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
51
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M11.25 8.25h1.5v7.5h-1.5v-7.5Zm3 3h1.5v4.5h-1.5v-4.5Zm-6 1.5h1.5v3h-1.5v-3Zm6-6.75h-7.5v12h10.5V9h-3V6Zm-9-.756c0-.411.336-.744.749-.744H15l3.75 3.75v10.494a.75.75 0 0 1-.745.756H5.995a.75.75 0 0 1-.745-.744V5.244Z" />
52
- </svg>
53
- )
54
-
55
- export const AnalyticsIcon = () => (
56
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
57
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M6.75 5.25v12h12v1.5H5.25V5.25h1.5Zm11.47 2.47 1.06 1.06L15 13.06l-2.25-2.249-3.22 3.22-1.06-1.061 4.28-4.28L15 10.938l3.22-3.22Z" />
58
- </svg>
59
- )
60
-
61
- export const PaymentsIcon = () => (
62
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
63
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M12.004 19.502a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Zm0-1.5a6 6 0 1 0 0-12 6 6 0 0 0 0 12Zm-2.25-5.25h-.75v-1.5h.75v-.75a2.625 2.625 0 0 1 5.06-.984l-1.49.373a1.124 1.124 0 0 0-2.07.61v.75h2.25v1.5h-2.25v1.5h3.75v1.5h-6v-1.5h.75v-1.5Z" />
64
- </svg>
65
- )
66
-
67
- export const SettingsIcon = () => (
68
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none">
69
- <path fill="var(--fills-main-fill-primary, #14215A)" d="M4.5 11.729c0-.648.082-1.278.237-1.878A2.25 2.25 0 0 0 6.743 6.38 7.492 7.492 0 0 1 9.995 4.5a2.25 2.25 0 0 0 4.01 0c1.244.344 2.357 1 3.252 1.88a2.25 2.25 0 0 0 2.006 3.471c.155.6.237 1.23.237 1.878a7.51 7.51 0 0 1-.237 1.878 2.25 2.25 0 0 0-2.006 3.471 7.492 7.492 0 0 1-3.252 1.88 2.25 2.25 0 0 0-4.01 0 7.492 7.492 0 0 1-3.252-1.88 2.25 2.25 0 0 0-2.006-3.471 7.514 7.514 0 0 1-.237-1.878Zm3.603 2.25c.472.818.608 1.76.423 2.643.306.217.632.406.973.563A3.745 3.745 0 0 1 12 16.229c.946 0 1.829.353 2.501.956a5.99 5.99 0 0 0 .973-.563 3.744 3.744 0 0 1 .423-2.643 3.744 3.744 0 0 1 2.077-1.688 6.099 6.099 0 0 0 0-1.124 3.744 3.744 0 0 1-2.077-1.688 3.744 3.744 0 0 1-.423-2.643 5.997 5.997 0 0 0-.973-.563A3.745 3.745 0 0 1 12 7.23a3.745 3.745 0 0 1-2.501-.956 5.993 5.993 0 0 0-.973.563c.185.883.05 1.824-.423 2.643a3.745 3.745 0 0 1-2.077 1.688 6.097 6.097 0 0 0 0 1.124c.857.282 1.604.87 2.077 1.688Zm3.897 0a2.25 2.25 0 1 1 0-4.5 2.25 2.25 0 0 1 0 4.5Zm0-1.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z" />
70
- </svg>
71
- )
72
-