@licklist/design 0.78.5-dev.70 → 0.78.5-dev.72

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 (51) hide show
  1. package/dist/index.d.ts +20 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +35 -29
  4. package/dist/static/index.js +0 -1
  5. package/dist/v2/components/AvatarUpload/AvatarUpload.js +62 -0
  6. package/dist/v2/components/AvatarUpload/AvatarUpload.scss.js +6 -0
  7. package/dist/v2/components/Button/GhostButton.scss.js +1 -1
  8. package/dist/v2/components/DataTable/DataTable.js +221 -0
  9. package/dist/v2/components/DataTable/DataTable.scss.js +6 -0
  10. package/dist/v2/components/EmptyState/EmptyState.js +36 -0
  11. package/dist/v2/components/EmptyState/EmptyState.scss.js +6 -0
  12. package/dist/v2/components/InfoGrid/InfoGrid.js +27 -0
  13. package/dist/v2/components/InfoGrid/InfoGrid.scss.js +6 -0
  14. package/dist/v2/components/QuickFilter/QuickFilter.scss.js +1 -1
  15. package/dist/v2/components/RadioCard/RadioCard.js +58 -0
  16. package/dist/v2/components/RadioCard/RadioCard.scss.js +6 -0
  17. package/dist/v2/components/StatusBadge/StatusBadge.js +22 -0
  18. package/dist/v2/components/StatusBadge/StatusBadge.scss.js +6 -0
  19. package/dist/v2/components/StepIndicator/StepIndicator.js +38 -0
  20. package/dist/v2/components/StepIndicator/StepIndicator.scss.js +6 -0
  21. package/dist/v2/components/TableControls/TableControls.js +83 -0
  22. package/dist/v2/components/TableControls/TableControls.scss.js +6 -0
  23. package/dist/v2/components/Tabs/Tabs.js +32 -0
  24. package/dist/v2/components/Tabs/Tabs.scss.js +6 -0
  25. package/dist/v2/components/index.d.ts +19 -1
  26. package/dist/v2/components/index.d.ts.map +1 -1
  27. package/dist/v2/icons/index.d.ts +3 -1
  28. package/dist/v2/icons/index.d.ts.map +1 -1
  29. package/dist/v2/icons/index.js +274 -1
  30. package/dist/v2/index.d.ts +2 -2
  31. package/dist/v2/index.d.ts.map +1 -1
  32. package/dist/v2/navigation/DashboardLayout/ProviderSidebar.js +1 -13
  33. package/dist/v2/pages/Settings/components/SidebarCustomisation.js +9 -0
  34. package/dist/v2/pages/Settings/components/SidebarNavItem.js +9 -0
  35. package/dist/v2/pages/auth/CreatePassword/CreatePasswordPage.d.ts.map +1 -1
  36. package/dist/v2/pages/auth/Login/LoginPage.d.ts.map +1 -1
  37. package/dist/v2/pages/auth/ResetPassword/ResetPasswordPage.d.ts.map +1 -1
  38. package/package.json +3 -3
  39. package/src/index.ts +33 -3
  40. package/src/v2/components/Button/GhostButton.scss +1 -1
  41. package/src/v2/components/Customer/CustomersList.scss +20 -8
  42. package/src/v2/components/QuickFilter/QuickFilter.scss +0 -1
  43. package/src/v2/components/index.ts +52 -1
  44. package/src/v2/icons/index.tsx +2 -2
  45. package/src/v2/index.ts +4 -65
  46. package/src/v2/pages/auth/CreatePassword/CreatePasswordPage.tsx +1 -3
  47. package/src/v2/pages/auth/Login/LoginPage.tsx +1 -3
  48. package/src/v2/pages/auth/ResetPassword/ResetPasswordPage.tsx +1 -2
  49. package/dist/radio-card/RadioCard.js +0 -64
  50. package/dist/static/tabs/Tab.js +0 -18
  51. package/dist/static/tabs/Tabs.js +0 -105
@@ -10,6 +10,33 @@ export type { QuickFilterProps, QuickFilterOption } from './QuickFilter'
10
10
  export { NewTable } from './NewTable'
11
11
  export type { NewTableProps, NewTableColumn } from './NewTable'
12
12
 
13
+ export { DataTable } from './DataTable'
14
+ export type { DataTableColumn, DataTableRowAction, DataTableProps, DataTableSortDirection } from './DataTable'
15
+
16
+ export { TableControls } from './TableControls'
17
+ export type { TableControlsProps, TableSearchConfig, TableFilterConfig, TableHeaderAction } from './TableControls'
18
+
19
+ export { EmptyState } from './EmptyState'
20
+ export type { EmptyStateProps } from './EmptyState'
21
+
22
+ export { RadioCard } from './RadioCard'
23
+ export type { RadioCardProps, RadioCardOption } from './RadioCard'
24
+
25
+ export { Tabs } from './Tabs'
26
+ export type { TabsProps, TabItem } from './Tabs'
27
+
28
+ export { StepIndicator } from './StepIndicator'
29
+ export type { StepIndicatorProps, StepItem } from './StepIndicator'
30
+
31
+ export { AvatarUpload } from './AvatarUpload'
32
+ export type { AvatarUploadProps } from './AvatarUpload'
33
+
34
+ export { InfoGrid } from './InfoGrid'
35
+ export type { InfoGridProps, InfoGridItem } from './InfoGrid'
36
+
37
+ export { StatusBadge } from './StatusBadge'
38
+ export type { StatusBadgeProps, StatusBadgeStatus } from './StatusBadge'
39
+
13
40
  export { TableSortIcon } from './TableSortIcon'
14
41
  export type { TableSortIconProps } from './TableSortIcon'
15
42
 
@@ -77,6 +104,8 @@ export {
77
104
  EditIcon,
78
105
  ArrowLeftIcon,
79
106
  ArrowRightIcon,
107
+ ChevronLeftIcon,
108
+ ChevronRightIcon,
80
109
  SearchIcon,
81
110
  RefreshIcon,
82
111
  SendIcon,
@@ -89,6 +118,28 @@ export {
89
118
  GripVerticalIcon,
90
119
  PlusIcon,
91
120
  DeleteIcon,
92
- ClockIcon
121
+ ClockIcon,
122
+ AdminIcon,
123
+ ProfileIcon,
124
+ SettingsIcon,
125
+ LoyaltyIcon,
126
+ WaiversIcon,
127
+ SlidersIcon,
128
+ UserAddIcon,
129
+ UserImportIcon,
130
+ ProviderPlusIcon,
131
+ DashboardIcon,
132
+ CompanyIcon,
133
+ VenueIcon,
134
+ MarketingIcon,
135
+ CustomersIcon,
136
+ ReportsIcon,
137
+ AnalyticsIcon,
138
+ PaymentsIcon,
139
+ CalendarIcon,
140
+ BookingsIcon,
141
+ BookingTypesIcon,
142
+ SecurityIcon,
143
+ UploadIcon,
93
144
  } from '../icons'
94
145
 
@@ -384,8 +384,8 @@ export const ClockIcon = ({ width = 20, height = 20 }: { width?: number; height?
384
384
  </svg>
385
385
  )
386
386
 
387
- export const WarningTriangleIcon = () => (
388
- <svg width="32" height="32" viewBox="0 0 32 32" fill="none">
387
+ export const WarningTriangleIcon = ({ size = 32 }: { size?: number } = {}) => (
388
+ <svg width={size} height={size} viewBox="0 0 32 32" fill="none">
389
389
  <path
390
390
  d="M15.3496 8.46973C15.7414 7.84329 16.6543 7.84314 17.0459 8.46973L25.2412 21.583C25.6574 22.249 25.1788 23.113 24.3936 23.1133H8.00195C7.21654 23.1133 6.73711 22.249 7.15332 21.583L15.3496 8.46973ZM16.1973 19.1133C15.6451 19.1134 15.1973 19.5611 15.1973 20.1133C15.1973 20.6654 15.6451 21.1132 16.1973 21.1133C16.7495 21.1133 17.1972 20.6655 17.1973 20.1133C17.1973 19.561 16.7496 19.1133 16.1973 19.1133ZM15.1973 18.1133H17.1973V13.1133H15.1973V18.1133Z"
391
391
  fill="currentColor"
package/src/v2/index.ts CHANGED
@@ -89,6 +89,10 @@ export type { AvatarUploadProps } from './components/AvatarUpload'
89
89
  export { InfoGrid } from './components/InfoGrid'
90
90
  export type { InfoGridProps, InfoGridItem } from './components/InfoGrid'
91
91
 
92
+ // QuickFilter Component
93
+ export { QuickFilter } from './components/QuickFilter'
94
+ export type { QuickFilterProps, QuickFilterOption } from './components/QuickFilter'
95
+
92
96
 
93
97
  // ============================================================================
94
98
  // Navigation Components
@@ -188,71 +192,6 @@ export type { SettingsPageProps, SettingsTabsProps, SettingsTab, SidebarCustomis
188
192
  export { AuthLayout, LoginPage, ResetPasswordPage, CreatePasswordPage, VerifyEmailPage } from './pages/auth'
189
193
  export type { AuthLayoutProps, LoginPageProps, ResetPasswordPageProps, CreatePasswordPageProps, VerifyEmailPageProps } from './pages/auth'
190
194
 
191
- // ============================================================================
192
- // Admin Section
193
- // ============================================================================
194
-
195
- export {
196
- // Home
197
- AdminHomePage,
198
- // Companies
199
- AdminCompaniesPage, AdminCompanyDetailPage, AddCompanyPage,
200
- // Providers
201
- AdminProvidersPage, AdminProviderDetailPage, AddProviderPage, UpdateVenuePage,
202
- // Users
203
- AdminUsersPage, AdminUserDetailPage, AdminRolesPage,
204
- EditRolePermissionsPage, EditUserPage, ChangeUserRolePage, CreateRolePage,
205
- AdminPermissionsPage, CreatePermissionPage,
206
- AddUserToProviderCompanyPage, UserActivityHistory,
207
- // Customers
208
- AdminCustomersPage,
209
- // Analytics
210
- AdminAnalyticsPage,
211
- // Reports
212
- AdminReportsPage,
213
- // Payments
214
- AdminPaymentsPage,
215
- // Settings
216
- AdminSettingsPage, AdminFeesPage,
217
- } from './admin'
218
-
219
- export type {
220
- // Home
221
- AdminHomePageProps, NPSSummaryData, NPSTrend, OnlineUsersData, BookingsSummaryData, BookingRow,
222
- // Companies
223
- AdminCompaniesPageProps, AdminCompanyRow, CompanyStatus,
224
- AdminCompanyDetailPageProps, AdminCompanyDetailData, CompanyProvider,
225
- AddCompanyPageProps, AddCompanyFormData, AddCompanyProvider, AddCompanyStep,
226
- // Providers
227
- AdminProvidersPageProps, AdminProviderRow, ProviderStatus, ProviderType,
228
- AdminProviderDetailPageProps, AdminProviderDetailData, ProviderCompany, AccountManagerInfo,
229
- AddProviderPageProps, AddProviderFormData, AddProviderCompany, AddProviderType, AddProviderStep,
230
- UpdateVenuePageProps, VenueFormData, VenueWorkHour, VenueLocation, CategoryOption, TimezoneOption,
231
- // Users
232
- AdminUsersPageProps, AdminUserRow, UserStatus, UserPrimaryRole,
233
- AdminUserDetailPageProps, AdminUserDetailData, DetailUserAssignment, DetailUserStatus,
234
- AdminRolesPageProps, RoleRow,
235
- EditRolePermissionsPageProps, PermissionItem, PermissionCategory, PermissionValues,
236
- EditUserPageProps, EditUserFormData,
237
- CreateRolePageProps, CreateRoleFormData,
238
- AdminPermissionsPageProps, PermissionRow,
239
- CreatePermissionPageProps, CreatePermissionFormData,
240
- ChangeUserRolePageProps,
241
- AddUserToProviderCompanyPageProps, AssignmentCandidate, NewAssignment, AssignmentRole, AssignmentRoleOption,
242
- UserActivityHistoryProps, ActivityEntry,
243
- // Customers
244
- AdminCustomersPageProps, AdminCustomerRow, CustomerWaiverStatus,
245
- // Analytics
246
- AdminAnalyticsPageProps, AnalyticsTab, NPSMetrics, NPSResponseRow, NPSScoreFilter, NPSTrendDirection,
247
- // Reports
248
- AdminReportsPageProps,
249
- // Payments
250
- AdminPaymentsPageProps,
251
- // Settings
252
- AdminSettingsPageProps, SettingsLink,
253
- AdminFeesPageProps, FeeSettings, FeeStructure, PercentageConfig, FixedConfig, FixedPercentageConfig,
254
- } from './admin'
255
-
256
195
  // ============================================================================
257
196
  // Design Tokens
258
197
  // ============================================================================
@@ -26,7 +26,7 @@ export const CreatePasswordPage: React.FC<CreatePasswordPageProps> = ({
26
26
  error,
27
27
  }) => {
28
28
  const { t } = useTranslation(['Validation', 'User'])
29
- const { register, handleSubmit, watch, formState: { errors } } = useForm<FormValues>({ mode: 'onChange' })
29
+ const { register, handleSubmit, watch } = useForm<FormValues>()
30
30
 
31
31
  const password = watch('password', '')
32
32
  const confirmPassword = watch('confirmPassword', '')
@@ -100,7 +100,6 @@ export const CreatePasswordPage: React.FC<CreatePasswordPageProps> = ({
100
100
  label={t('User:password')}
101
101
  type="password"
102
102
  disabled={isLoading}
103
- error={errors.password?.message}
104
103
  {...register('password', {
105
104
  required: t('Validation:fieldRequired', { attribute: t('User:password') }) as string,
106
105
  minLength: {
@@ -133,7 +132,6 @@ export const CreatePasswordPage: React.FC<CreatePasswordPageProps> = ({
133
132
  label={t('User:confirmPassword')}
134
133
  type="password"
135
134
  disabled={isLoading}
136
- error={errors.confirmPassword?.message}
137
135
  {...register('confirmPassword', {
138
136
  required: t('Validation:fieldRequired', { attribute: t('User:confirmPassword') }) as string,
139
137
  validate: (value) =>
@@ -29,7 +29,7 @@ export const LoginPage: React.FC<LoginPageProps> = ({
29
29
  version,
30
30
  }) => {
31
31
  const { t } = useTranslation(['Validation', 'User'])
32
- const { register, handleSubmit, formState: { errors } } = useForm<FormValues>({ mode: 'onChange' })
32
+ const { register, handleSubmit } = useForm<FormValues>()
33
33
 
34
34
  const onFormSubmit = async (data: FormValues) => {
35
35
  await onSubmit(data.email, data.password)
@@ -50,7 +50,6 @@ export const LoginPage: React.FC<LoginPageProps> = ({
50
50
  label={t('User:emailAddress')}
51
51
  type="email"
52
52
  disabled={isLoading}
53
- error={errors.email?.message}
54
53
  {...register('email', {
55
54
  required: t('Validation:fieldRequired', { attribute: t('User:email') }) as string,
56
55
  pattern: {
@@ -65,7 +64,6 @@ export const LoginPage: React.FC<LoginPageProps> = ({
65
64
  label={t('User:password')}
66
65
  type="password"
67
66
  disabled={isLoading}
68
- error={errors.password?.message}
69
67
  {...register('password', {
70
68
  required: t('Validation:fieldRequired', { attribute: t('User:password') }) as string,
71
69
  })}
@@ -30,7 +30,7 @@ export const ResetPasswordPage: React.FC<ResetPasswordPageProps> = ({
30
30
  version,
31
31
  }) => {
32
32
  const { t } = useTranslation(['Validation', 'User'])
33
- const { register, handleSubmit, formState: { errors } } = useForm<FormValues>({ mode: 'onChange' })
33
+ const { register, handleSubmit } = useForm<FormValues>()
34
34
 
35
35
  const onFormSubmit = async (data: FormValues) => {
36
36
  await onSubmit(data.email)
@@ -56,7 +56,6 @@ export const ResetPasswordPage: React.FC<ResetPasswordPageProps> = ({
56
56
  label={t('User:emailAddress')}
57
57
  type="email"
58
58
  disabled={isLoading}
59
- error={errors.email?.message}
60
59
  {...register('email', {
61
60
  required: t('Validation:fieldRequired', { attribute: t('User:email') }) as string,
62
61
  pattern: {
@@ -1,64 +0,0 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import clsx from 'clsx';
3
- import { Form } from 'react-bootstrap';
4
- import { useFormContext } from 'react-hook-form';
5
-
6
- function _define_property(obj, key, value) {
7
- if (key in obj) {
8
- Object.defineProperty(obj, key, {
9
- value: value,
10
- enumerable: true,
11
- configurable: true,
12
- writable: true
13
- });
14
- } else {
15
- obj[key] = value;
16
- }
17
- return obj;
18
- }
19
- function _object_spread(target) {
20
- for(var i = 1; i < arguments.length; i++){
21
- var source = arguments[i] != null ? arguments[i] : {};
22
- var ownKeys = Object.keys(source);
23
- if (typeof Object.getOwnPropertySymbols === "function") {
24
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
25
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
26
- }));
27
- }
28
- ownKeys.forEach(function(key) {
29
- _define_property(target, key, source[key]);
30
- });
31
- }
32
- return target;
33
- }
34
- var RadioCard = function(param) {
35
- var label = param.label, description = param.description, name = param.name, value = param.value, rules = param.rules, inputProps = param.inputProps;
36
- var _useFormContext = useFormContext(), register = _useFormContext.register, errors = _useFormContext.formState.errors;
37
- var isInvalid = !!errors[name] || (inputProps === null || inputProps === void 0 ? void 0 : inputProps.isInvalid);
38
- return /*#__PURE__*/ jsx(Form.Check, {
39
- className: clsx('radio-card', isInvalid && 'invalid'),
40
- children: /*#__PURE__*/ jsxs(Form.Check.Label, {
41
- children: [
42
- /*#__PURE__*/ jsxs("div", {
43
- className: "radio-card-controls",
44
- children: [
45
- /*#__PURE__*/ jsx(Form.Check.Input, _object_spread({
46
- type: "radio",
47
- isInvalid: isInvalid,
48
- value: value
49
- }, register(name, rules), inputProps)),
50
- /*#__PURE__*/ jsx("span", {
51
- children: label
52
- })
53
- ]
54
- }),
55
- /*#__PURE__*/ jsx("p", {
56
- className: "radio-card-description",
57
- children: description
58
- })
59
- ]
60
- })
61
- });
62
- };
63
-
64
- export { RadioCard };
@@ -1,18 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { useId } from '@react-aria/utils';
3
- import { Tab as Tab$1 } from 'react-bootstrap';
4
-
5
- // eslint-disable-next-line react/function-component-definition
6
- var Tab = function(param) {
7
- var eventKey = param.eventKey, title = param.title, tabClassName = param.tabClassName, children = param.children;
8
- var tabId = useId();
9
- return /*#__PURE__*/ jsx(Tab$1, {
10
- id: tabId,
11
- eventKey: eventKey,
12
- title: title,
13
- tabClassName: tabClassName,
14
- children: children
15
- }, tabId);
16
- };
17
-
18
- export { Tab };
@@ -1,105 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { useId } from '@react-aria/utils';
3
- import { Tabs as Tabs$1 } from 'react-bootstrap';
4
- import { Tab } from './Tab.js';
5
-
6
- function _define_property(obj, key, value) {
7
- if (key in obj) {
8
- Object.defineProperty(obj, key, {
9
- value: value,
10
- enumerable: true,
11
- configurable: true,
12
- writable: true
13
- });
14
- } else {
15
- obj[key] = value;
16
- }
17
- return obj;
18
- }
19
- function _object_spread(target) {
20
- for(var i = 1; i < arguments.length; i++){
21
- var source = arguments[i] != null ? arguments[i] : {};
22
- var ownKeys = Object.keys(source);
23
- if (typeof Object.getOwnPropertySymbols === "function") {
24
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
25
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
26
- }));
27
- }
28
- ownKeys.forEach(function(key) {
29
- _define_property(target, key, source[key]);
30
- });
31
- }
32
- return target;
33
- }
34
- function ownKeys(object, enumerableOnly) {
35
- var keys = Object.keys(object);
36
- if (Object.getOwnPropertySymbols) {
37
- var symbols = Object.getOwnPropertySymbols(object);
38
- if (enumerableOnly) {
39
- symbols = symbols.filter(function(sym) {
40
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
41
- });
42
- }
43
- keys.push.apply(keys, symbols);
44
- }
45
- return keys;
46
- }
47
- function _object_spread_props(target, source) {
48
- source = source != null ? source : {};
49
- if (Object.getOwnPropertyDescriptors) {
50
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
51
- } else {
52
- ownKeys(Object(source)).forEach(function(key) {
53
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
54
- });
55
- }
56
- return target;
57
- }
58
- function _object_without_properties(source, excluded) {
59
- if (source == null) return {};
60
- var target = _object_without_properties_loose(source, excluded);
61
- var key, i;
62
- if (Object.getOwnPropertySymbols) {
63
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
64
- for(i = 0; i < sourceSymbolKeys.length; i++){
65
- key = sourceSymbolKeys[i];
66
- if (excluded.indexOf(key) >= 0) continue;
67
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
68
- target[key] = source[key];
69
- }
70
- }
71
- return target;
72
- }
73
- function _object_without_properties_loose(source, excluded) {
74
- if (source == null) return {};
75
- var target = {};
76
- var sourceKeys = Object.keys(source);
77
- var key, i;
78
- for(i = 0; i < sourceKeys.length; i++){
79
- key = sourceKeys[i];
80
- if (excluded.indexOf(key) >= 0) continue;
81
- target[key] = source[key];
82
- }
83
- return target;
84
- }
85
- function Tabs(_param) {
86
- var defaultActiveKey = _param.defaultActiveKey, activeKey = _param.activeKey, onSelect = _param.onSelect, children = _param.children, props = _object_without_properties(_param, [
87
- "defaultActiveKey",
88
- "activeKey",
89
- "onSelect",
90
- "children"
91
- ]);
92
- var tabsId = useId();
93
- return /*#__PURE__*/ jsx(Tabs$1, _object_spread_props(_object_spread({
94
- defaultActiveKey: defaultActiveKey,
95
- activeKey: activeKey,
96
- onSelect: onSelect,
97
- id: tabsId,
98
- className: "licklist-tabs"
99
- }, props), {
100
- children: children
101
- }));
102
- }
103
- Tabs.Tab = Tab;
104
-
105
- export { Tabs };