@invopop/popui 0.1.4-beta.42 → 0.1.4-beta.44

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.
@@ -120,7 +120,8 @@
120
120
  stackLeft = false,
121
121
  stackRight = false,
122
122
  icon = undefined,
123
- iconTheme = 'default'
123
+ iconTheme = 'default',
124
+ isOpen = $bindable(false)
124
125
  }: DatePickerProps = $props()
125
126
 
126
127
  const [floatingRef, floatingContent] = createFloatingActions({
@@ -140,7 +141,6 @@
140
141
  start: undefined,
141
142
  end: undefined
142
143
  })
143
- let isOpen = $state(false)
144
144
  let selectedLabel = $state(label)
145
145
  let isStacked = $derived(stackLeft || stackRight)
146
146
  let hasSelectedDates = $derived(value.start !== undefined)
@@ -219,6 +219,19 @@
219
219
 
220
220
  onSelect?.({ from: value.start?.toString() || '', to: value.end?.toString() || '' })
221
221
  }
222
+
223
+ // Exposed methods
224
+ export function open() {
225
+ isOpen = true
226
+ }
227
+
228
+ export function close() {
229
+ isOpen = false
230
+ }
231
+
232
+ export function toggle() {
233
+ isOpen = !isOpen
234
+ }
222
235
  </script>
223
236
 
224
237
  <div>
@@ -1,4 +1,8 @@
1
1
  import type { DatePickerProps } from './types';
2
- declare const DatePicker: import("svelte").Component<DatePickerProps, {}, "">;
2
+ declare const DatePicker: import("svelte").Component<DatePickerProps, {
3
+ open: () => void;
4
+ close: () => void;
5
+ toggle: () => void;
6
+ }, "isOpen">;
3
7
  type DatePicker = ReturnType<typeof DatePicker>;
4
8
  export default DatePicker;
@@ -20,6 +20,8 @@
20
20
  'bg-transparent text-foreground hover:shadow-button-default active:shadow-button-pressed hover:bg-background-default-tertiary-hover active:bg-background-default-tertiary-hover [&_svg]:text-icon',
21
21
  secondary:
22
22
  'bg-background-default-tertiary text-foreground shadow-button-default hover:bg-background-default-tertiary-hover active:bg-background-default-tertiary-hover active:shadow-button-pressed [&_svg]:text-icon',
23
+ selected:
24
+ 'bg-background-selected border border-border-selected text-foreground-selected shadow-button-default hover:bg-background-selected-hover active:bg-background-selected-hover active:shadow-button-pressed [&_svg]:text-icon-selected',
23
25
  dark: 'bg-transparent text-foreground-inverse border border-border-inverse-secondary hover:bg-background-selected-inverse active:bg-background-inverse-tertiary active:shadow-button-dark-pressed [&_svg]:text-icon-inverse',
24
26
  'dark-ghost':
25
27
  'bg-transparent text-foreground-inverse hover:bg-background-selected-inverse active:bg-background-inverse-tertiary active:shadow-button-dark-pressed [&_svg]:text-icon-inverse'
@@ -106,6 +108,11 @@
106
108
  iconOnly: true,
107
109
  class: '[&_svg]:!text-icon-default-bold'
108
110
  },
111
+ {
112
+ variant: 'selected',
113
+ iconOnly: true,
114
+ class: '[&_svg]:!text-icon-selected'
115
+ },
109
116
  {
110
117
  variant: ['primary', 'warning', 'dark-ghost'],
111
118
  iconOnly: true,
@@ -10,6 +10,7 @@ export declare const buttonVariants: import("tailwind-variants").TVReturnType<{
10
10
  outline: string;
11
11
  ghost: string;
12
12
  secondary: string;
13
+ selected: string;
13
14
  dark: string;
14
15
  'dark-ghost': string;
15
16
  };
@@ -42,6 +43,7 @@ export declare const buttonVariants: import("tailwind-variants").TVReturnType<{
42
43
  outline: string;
43
44
  ghost: string;
44
45
  secondary: string;
46
+ selected: string;
45
47
  dark: string;
46
48
  'dark-ghost': string;
47
49
  };
@@ -74,6 +76,7 @@ export declare const buttonVariants: import("tailwind-variants").TVReturnType<{
74
76
  outline: string;
75
77
  ghost: string;
76
78
  secondary: string;
79
+ selected: string;
77
80
  dark: string;
78
81
  'dark-ghost': string;
79
82
  };
@@ -36,7 +36,7 @@ export interface UuidCellConfig {
36
36
  }
37
37
  export type CellConfig = TextCellConfig | BooleanCellConfig | TagCellConfig | DateCellConfig | CurrencyCellConfig | UuidCellConfig;
38
38
  export interface DataTableColumnMeta {
39
- filterType?: string;
39
+ filterType?: 'select' | 'text' | 'numeric' | 'date' | 'uuid';
40
40
  filterIcon?: IconSource;
41
41
  filterLabel?: string;
42
42
  dbField?: string;
@@ -24,7 +24,7 @@ export function getHeaderClasses(header, isLastScrollable, isFirstHeader = false
24
24
  return clsx('relative whitespace-nowrap overflow-hidden before:content-[""] before:absolute before:inset-x-0 before:top-0 before:h-px before:bg-border', {
25
25
  'sticky right-0 text-right bg-background before:z-20': header.id === 'actions',
26
26
  'sticky left-0 bg-background z-10 before:z-20': header.id === 'select' || isFrozen,
27
- 'after:content-[""] after:absolute after:right-0 after:top-1/2 after:-translate-y-1/2 after:h-4 after:w-px after:bg-background-default-tertiary after:z-20': isResizable && (header.id !== 'actions' && header.id !== 'select'),
27
+ 'after:content-[""] after:absolute after:right-0 after:top-1/2 after:-translate-y-1/2 after:h-4 after:w-px after:bg-background-default-tertiary after:z-20': isResizable && (header.id !== 'actions' && header.id !== 'select') && !isLastFrozen,
28
28
  'w-full': isLastScrollable,
29
29
  '!pr-4': isLastHeader && !isSticky,
30
30
  'px-3': isSticky,
@@ -621,7 +621,7 @@
621
621
  --color-background-warning-bold: var(--color-warning-60);
622
622
  --color-background-warning-inverse: var(--color-warning-50);
623
623
 
624
- --color-background-critical-default: var(--color-critical-alpha-10);
624
+ --color-background-critical-default: var(--color-critical-alpha-5);
625
625
  --color-background-critical-bold: var(--color-critical-50);
626
626
  --color-background-critical-inverse: var(--color-critical-40);
627
627
 
@@ -672,7 +672,7 @@
672
672
  --color-icon-inverse-secondary: var(--color-neutral-white-alpha-40);
673
673
  --color-icon-inverse-bold: var(--color-neutral-white-alpha-100);
674
674
 
675
- --color-icon-selected-default: var(--color-positive-50);
675
+ --color-icon-selected-default: var(--color-accent-50);
676
676
  --color-icon-accent-default: var(--color-accent-50);
677
677
 
678
678
  --color-icon-success-default: var(--color-positive-50);
@@ -887,7 +887,7 @@
887
887
  --color-background-selected-default-hover: var(--color-accent-alpha-30);
888
888
  --color-background-selected-default-press: var(--color-accent-alpha-40);
889
889
  --color-background-selected-inverse: var(--color-white-10);
890
- --color-background-selected-inverse-hover: var(--color-nwhite-20);
890
+ --color-background-selected-inverse-hover: var(--color-white-20);
891
891
  --color-background-selected-inverse-press: var(--color-white-30);
892
892
 
893
893
  --color-background-accent-default: var(--color-accent-60);
@@ -957,7 +957,7 @@
957
957
  --color-icon-inverse-secondary: var(--color-neutral-white-alpha-40);
958
958
  --color-icon-inverse-bold: var(--color-neutral-white-alpha-100);
959
959
 
960
- --color-icon-selected-default: var(--color-positive-50);
960
+ --color-icon-selected-default: var(--color-accent-50);
961
961
  --color-icon-accent-default: var(--color-white);
962
962
  --color-icon-success-default: var(--color-positive-50);
963
963
 
package/dist/types.d.ts CHANGED
@@ -397,6 +397,7 @@ export interface DatePickerProps {
397
397
  stackRight?: boolean;
398
398
  icon?: IconSource | string;
399
399
  iconTheme?: IconTheme;
400
+ isOpen?: boolean;
400
401
  }
401
402
  export interface DrawerContextProps {
402
403
  items?: DrawerOption[];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@invopop/popui",
3
3
  "license": "MIT",
4
- "version": "0.1.4-beta.42",
4
+ "version": "0.1.4-beta.44",
5
5
  "repository": {
6
6
  "url": "https://github.com/invopop/popui"
7
7
  },