@rkosafo/cai.components 0.0.5 → 0.0.7

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 (63) hide show
  1. package/README.md +8 -8
  2. package/dist/baseEditor/index.svelte +32 -32
  3. package/dist/builders/filters/FilterBuilder.svelte +638 -638
  4. package/dist/forms/FormCheckbox/FormCheckbox.svelte +53 -53
  5. package/dist/forms/FormDatepicker/FormDatepicker.svelte +159 -159
  6. package/dist/forms/FormInput/FormInput.svelte +87 -87
  7. package/dist/forms/FormRadio/FormRadio.svelte +53 -53
  8. package/dist/forms/FormSelect/FormSelect.svelte +86 -86
  9. package/dist/forms/FormTextarea/FormTextarea.svelte +77 -77
  10. package/dist/forms/checkbox/Checkbox.svelte +82 -82
  11. package/dist/forms/checkbox/CheckboxButton.svelte +92 -92
  12. package/dist/forms/datepicker/Datepicker.svelte +706 -706
  13. package/dist/forms/form/Form.svelte +69 -69
  14. package/dist/forms/input/Input.svelte +363 -363
  15. package/dist/forms/label/Label.svelte +38 -38
  16. package/dist/forms/radio/Radio.svelte +48 -48
  17. package/dist/forms/radio/RadioButton.svelte +22 -22
  18. package/dist/forms/select/Select.svelte +50 -50
  19. package/dist/forms/textarea/Textarea.svelte +165 -165
  20. package/dist/layout/TF/Content/Content.svelte +28 -28
  21. package/dist/layout/TF/Header/Header.svelte +159 -159
  22. package/dist/layout/TF/Sidebar/Sidebar.svelte +52 -74
  23. package/dist/layout/TF/Sidebar/Sidebar.svelte.d.ts +1 -20
  24. package/dist/layout/TF/Wrapper/Wrapper.svelte +17 -17
  25. package/dist/themes/ThemeProvider.svelte +20 -20
  26. package/dist/types/index.d.ts +19 -0
  27. package/dist/typography/heading/Heading.svelte +35 -35
  28. package/dist/ui/accordion/Accordion.svelte +49 -49
  29. package/dist/ui/accordion/AccordionItem.svelte +173 -173
  30. package/dist/ui/alert/Alert.svelte +83 -83
  31. package/dist/ui/alertDialog/AlertDialog.svelte +40 -40
  32. package/dist/ui/avatar/Avatar.svelte +77 -77
  33. package/dist/ui/buttons/Button.svelte +102 -102
  34. package/dist/ui/buttons/GradientButton.svelte +59 -59
  35. package/dist/ui/datatable/Datatable.svelte +516 -516
  36. package/dist/ui/drawer/Drawer.svelte +280 -280
  37. package/dist/ui/dropdown/Dropdown.svelte +36 -36
  38. package/dist/ui/dropdown/DropdownDivider.svelte +11 -11
  39. package/dist/ui/dropdown/DropdownGroup.svelte +14 -14
  40. package/dist/ui/dropdown/DropdownHeader.svelte +14 -14
  41. package/dist/ui/dropdown/DropdownItem.svelte +52 -52
  42. package/dist/ui/footer/Footer.svelte +15 -15
  43. package/dist/ui/footer/FooterBrand.svelte +37 -37
  44. package/dist/ui/footer/FooterCopyright.svelte +45 -45
  45. package/dist/ui/footer/FooterIcon.svelte +22 -22
  46. package/dist/ui/footer/FooterLink.svelte +33 -33
  47. package/dist/ui/footer/FooterLinkGroup.svelte +13 -13
  48. package/dist/ui/indicator/Indicator.svelte +42 -42
  49. package/dist/ui/modal/Modal.svelte +265 -265
  50. package/dist/ui/notificationList/NotificationList.svelte +123 -123
  51. package/dist/ui/pageLoader/PageLoader.svelte +10 -10
  52. package/dist/ui/paginate/Paginate.svelte +96 -96
  53. package/dist/ui/tab/Tab.svelte +65 -65
  54. package/dist/ui/table/Table.svelte +385 -385
  55. package/dist/ui/tableLoader/TableLoader.svelte +24 -24
  56. package/dist/ui/toolbar/Toolbar.svelte +59 -59
  57. package/dist/ui/toolbar/ToolbarButton.svelte +56 -56
  58. package/dist/ui/toolbar/ToolbarGroup.svelte +43 -43
  59. package/dist/utils/Popper.svelte +257 -257
  60. package/dist/utils/closeButton/CloseButton.svelte +88 -88
  61. package/dist/utils/singleSelection.svelte.js +48 -48
  62. package/dist/youtube/index.svelte +12 -12
  63. package/package.json +2 -2
@@ -1,92 +1,92 @@
1
- <script lang="ts">
2
- import { Button, getTheme, type CheckboxButtonProps } from '../../index.js';
3
- import clsx from 'clsx';
4
- import { checkboxButton } from './index.js';
5
-
6
- let {
7
- children,
8
- class: className,
9
- group = $bindable([]),
10
- value,
11
- checked,
12
- inline,
13
- pill,
14
- outline,
15
- size,
16
- color,
17
- shadow,
18
- ...restProps
19
- }: CheckboxButtonProps = $props();
20
-
21
- const theme = getTheme('checkboxButton');
22
-
23
- // react on external group changes
24
- function init(_: HTMLElement, _group: (string | number)[]) {
25
- group = _group ?? [];
26
-
27
- if (checked === undefined && value !== undefined) checked = group.includes(value);
28
- onChange();
29
-
30
- $effect(() => {
31
- if (value !== undefined) {
32
- checked = group.includes(value);
33
- }
34
- });
35
- }
36
-
37
- function onChange() {
38
- if (!value) return;
39
-
40
- // There's a bug in Svelte and bind:group is not working with wrapped checkbox
41
- // This workaround is taken from:
42
- // https://svelte.dev/repl/de117399559f4e7e9e14e2fc9ab243cc?version=3.12.1
43
- const index = group.indexOf(value);
44
-
45
- if (checked === undefined) checked = index >= 0;
46
-
47
- if (checked) {
48
- if (index < 0) {
49
- group.push(value);
50
- group = group;
51
- }
52
- } else {
53
- if (index >= 0) {
54
- group.splice(index, 1);
55
- group = group;
56
- }
57
- }
58
- }
59
-
60
- let buttonClass: string = $derived(
61
- checkboxButton({ inline, checked, class: clsx(theme, className) })
62
- );
63
- </script>
64
-
65
- <Button tag="label" {checked} {pill} {outline} {size} {color} {shadow} class={buttonClass}>
66
- <input
67
- use:init={group}
68
- type="checkbox"
69
- bind:checked
70
- {value}
71
- {...restProps}
72
- class="sr-only"
73
- onchange={onChange}
74
- />
75
- {@render children?.()}
76
- </Button>
77
-
78
- <!--
79
- @component
80
- @prop children
81
- @prop class: className
82
- @prop group = $bindable([])
83
- @prop value
84
- @prop checked
85
- @prop inline
86
- @prop pill
87
- @prop outline
88
- @prop size
89
- @prop color
90
- @prop shadow
91
- @prop ...restProps
92
- -->
1
+ <script lang="ts">
2
+ import { Button, getTheme, type CheckboxButtonProps } from '../../index.js';
3
+ import clsx from 'clsx';
4
+ import { checkboxButton } from './index.js';
5
+
6
+ let {
7
+ children,
8
+ class: className,
9
+ group = $bindable([]),
10
+ value,
11
+ checked,
12
+ inline,
13
+ pill,
14
+ outline,
15
+ size,
16
+ color,
17
+ shadow,
18
+ ...restProps
19
+ }: CheckboxButtonProps = $props();
20
+
21
+ const theme = getTheme('checkboxButton');
22
+
23
+ // react on external group changes
24
+ function init(_: HTMLElement, _group: (string | number)[]) {
25
+ group = _group ?? [];
26
+
27
+ if (checked === undefined && value !== undefined) checked = group.includes(value);
28
+ onChange();
29
+
30
+ $effect(() => {
31
+ if (value !== undefined) {
32
+ checked = group.includes(value);
33
+ }
34
+ });
35
+ }
36
+
37
+ function onChange() {
38
+ if (!value) return;
39
+
40
+ // There's a bug in Svelte and bind:group is not working with wrapped checkbox
41
+ // This workaround is taken from:
42
+ // https://svelte.dev/repl/de117399559f4e7e9e14e2fc9ab243cc?version=3.12.1
43
+ const index = group.indexOf(value);
44
+
45
+ if (checked === undefined) checked = index >= 0;
46
+
47
+ if (checked) {
48
+ if (index < 0) {
49
+ group.push(value);
50
+ group = group;
51
+ }
52
+ } else {
53
+ if (index >= 0) {
54
+ group.splice(index, 1);
55
+ group = group;
56
+ }
57
+ }
58
+ }
59
+
60
+ let buttonClass: string = $derived(
61
+ checkboxButton({ inline, checked, class: clsx(theme, className) })
62
+ );
63
+ </script>
64
+
65
+ <Button tag="label" {checked} {pill} {outline} {size} {color} {shadow} class={buttonClass}>
66
+ <input
67
+ use:init={group}
68
+ type="checkbox"
69
+ bind:checked
70
+ {value}
71
+ {...restProps}
72
+ class="sr-only"
73
+ onchange={onChange}
74
+ />
75
+ {@render children?.()}
76
+ </Button>
77
+
78
+ <!--
79
+ @component
80
+ @prop children
81
+ @prop class: className
82
+ @prop group = $bindable([])
83
+ @prop value
84
+ @prop checked
85
+ @prop inline
86
+ @prop pill
87
+ @prop outline
88
+ @prop size
89
+ @prop color
90
+ @prop shadow
91
+ @prop ...restProps
92
+ -->