flowbite-svelte 0.15.12 → 0.15.13

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/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.15.13](https://github.com/themesberg/flowbite-svelte/compare/v0.15.12...v0.15.13) (2022-05-05)
6
+
7
+
8
+ ### Features
9
+
10
+ * add Checkbox, CheckboxInline, and checkbox page ([baab944](https://github.com/themesberg/flowbite-svelte/commit/baab944e588645bb2fbe751fd5a2beb00b8f6e77))
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * update RadioItem props ([fd2f9a0](https://github.com/themesberg/flowbite-svelte/commit/fd2f9a0c4b3854c3a644710a4cb1df238e1a6af2))
16
+
5
17
  ### [0.15.12](https://github.com/themesberg/flowbite-svelte/compare/v0.15.11...v0.15.12) (2022-05-05)
6
18
 
7
19
 
@@ -1,33 +1,59 @@
1
- <script>export let legend = 'Checkbox variants';
2
- export let divClass = 'flex items-center mb-4';
1
+ <script>export let divClass = 'flex items-center mr-4';
3
2
  export let inputClass = 'w-4 h-4 text-blue-600 bg-gray-100 rounded border-gray-300 focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
4
- export let labelClass = 'ml-3 text-sm font-medium text-gray-900 dark:text-gray-300';
5
- export let helperLabelClass = 'font-medium text-gray-900 dark:text-gray-300';
6
- export let options;
3
+ export let labelClass = 'ml-2 text-sm font-medium text-gray-900 dark:text-gray-300';
4
+ export let disabled = false;
5
+ if (disabled) {
6
+ labelClass = 'ml-2 text-sm font-medium text-gray-400 dark:text-gray-500';
7
+ }
8
+ export let name = '';
9
+ export let divHelperClass = 'flex items-center h-5';
10
+ export let labelHelperClass = 'font-medium text-gray-900 dark:text-gray-300';
11
+ export let helperClass = 'text-xs font-normal text-gray-500 dark:text-gray-300';
12
+ export let color = 'blue';
13
+ if (color === 'red') {
14
+ inputClass = 'w-4 h-4 text-red-600 bg-gray-100 rounded border-gray-300 focus:ring-red-500 dark:focus:ring-red-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
15
+ }
16
+ else if (color === 'green') {
17
+ inputClass = 'w-4 h-4 text-green-600 bg-gray-100 rounded border-gray-300 focus:ring-green-500 dark:focus:ring-green-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
18
+ }
19
+ else if (color === 'purple') {
20
+ inputClass = 'w-4 h-4 text-purple-600 bg-gray-100 rounded border-gray-300 focus:ring-purple-500 dark:focus:ring-purple-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
21
+ }
22
+ else if (color === 'teal') {
23
+ inputClass = 'w-4 h-4 text-teal-600 bg-gray-100 rounded border-gray-300 focus:ring-teal-500 dark:focus:ring-teal-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
24
+ }
25
+ else if (color === 'yellow') {
26
+ inputClass = 'w-4 h-4 text-yellow-400 bg-gray-100 rounded border-gray-300 focus:ring-yellow-500 dark:focus:ring-yellow-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
27
+ }
28
+ else if (color === 'orange') {
29
+ inputClass = 'w-4 h-4 text-orange-500 bg-gray-100 rounded border-gray-300 focus:ring-orange-500 dark:focus:ring-orange-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
30
+ }
31
+ else {
32
+ inputClass = 'w-4 h-4 text-blue-600 bg-gray-100 rounded border-gray-300 focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600';
33
+ }
34
+ export let helper;
35
+ export let id;
36
+ export let value;
37
+ export let label;
7
38
  </script>
8
39
 
9
- <fieldset>
10
- <legend class="sr-only">{legend}</legend>
11
- {#each options as option}
12
- {#if option.helper}
13
- <div class="flex mb-4">
14
- <div class="flex items-center h-5">
15
- <input id={option.id} aria-describedby={option.id} type="checkbox" class={inputClass} bind:checked={option.checked} disabled={option.disabled} />
16
- </div>
17
- <div class="ml-3 text-sm">
18
- <label for={option.id} class={helperLabelClass}>{option.label}</label>
19
- {#if option.helper}
20
- <div class="text-gray-500 dark:text-gray-300">
21
- {@html option.helper}
22
- </div>
23
- {/if}
24
- </div>
25
- </div>
26
- {:else}
27
- <div class={divClass}>
28
- <input id={option.id} aria-describedby={option.id} type="checkbox" class={inputClass} checked={option.checked} disabled={option.disabled} />
29
- <label for={option.id} class={labelClass}>{option.label}</label>
30
- </div>
31
- {/if}
32
- {/each}
33
- </fieldset>
40
+ {#if helper}
41
+ <div class="flex">
42
+ <div class={divHelperClass}>
43
+ <input {id} type="checkbox" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {disabled} {...$$restProps} />
44
+ </div>
45
+ <div class="ml-2 text-sm">
46
+ <label for={id} class={labelHelperClass}>
47
+ {@html label}
48
+ </label>
49
+ <p id="{id}-helper-radio-text" class={helperClass}>{helper}</p>
50
+ </div>
51
+ </div>
52
+ {:else}
53
+ <div class={divClass}>
54
+ <input {id} type="checkbox" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {disabled} {...$$restProps} />
55
+ <label for={id} class={labelClass}>
56
+ {@html label}
57
+ </label>
58
+ </div>
59
+ {/if}
@@ -1,13 +1,21 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
- import type { CheckboxType } from '../types';
2
+ import type { FormColorType } from '../types';
3
3
  declare const __propDef: {
4
4
  props: {
5
- legend?: string;
5
+ [x: string]: any;
6
6
  divClass?: string;
7
7
  inputClass?: string;
8
8
  labelClass?: string;
9
- helperLabelClass?: string;
10
- options: CheckboxType[];
9
+ disabled?: boolean;
10
+ name?: string;
11
+ divHelperClass?: string;
12
+ labelHelperClass?: string;
13
+ helperClass?: string;
14
+ color?: FormColorType;
15
+ helper: string;
16
+ id: string;
17
+ value: string;
18
+ label: string;
11
19
  };
12
20
  events: {
13
21
  [evt: string]: CustomEvent<any>;
@@ -0,0 +1,3 @@
1
+ <div class="flex">
2
+ <slot />
3
+ </div>
@@ -0,0 +1,23 @@
1
+ /** @typedef {typeof __propDef.props} CheckboxInlineProps */
2
+ /** @typedef {typeof __propDef.events} CheckboxInlineEvents */
3
+ /** @typedef {typeof __propDef.slots} CheckboxInlineSlots */
4
+ export default class CheckboxInline extends SvelteComponentTyped<{}, {
5
+ [evt: string]: CustomEvent<any>;
6
+ }, {
7
+ default: {};
8
+ }> {
9
+ }
10
+ export type CheckboxInlineProps = typeof __propDef.props;
11
+ export type CheckboxInlineEvents = typeof __propDef.events;
12
+ export type CheckboxInlineSlots = typeof __propDef.slots;
13
+ import { SvelteComponentTyped } from "svelte";
14
+ declare const __propDef: {
15
+ props: {};
16
+ events: {
17
+ [evt: string]: CustomEvent<any>;
18
+ };
19
+ slots: {
20
+ default: {};
21
+ };
22
+ };
23
+ export {};
@@ -1,8 +1,11 @@
1
1
  <script>export let divClass = 'flex items-center mr-4';
2
2
  export let inputClass = 'w-4 h-4 border-gray-300 focus:ring-2 focus:ring-blue-300 dark:focus:ring-blue-600 dark:focus:bg-blue-600 dark:bg-gray-700 dark:border-gray-600';
3
3
  export let labelClass = 'block ml-2 text-sm font-medium text-gray-900 dark:text-gray-300';
4
+ export let disabled = false;
5
+ if (disabled) {
6
+ labelClass = 'ml-2 text-sm font-medium text-gray-400 dark:text-gray-500';
7
+ }
4
8
  export let name = '';
5
- export let options;
6
9
  export let divHelperClass = 'flex items-center h-5';
7
10
  export let labelHelperClass = 'font-medium text-gray-900 dark:text-gray-300';
8
11
  export let helperClass = 'text-xs font-normal text-gray-500 dark:text-gray-300';
@@ -37,7 +40,7 @@ export let label;
37
40
  {#if helper}
38
41
  <div class="flex">
39
42
  <div class={divHelperClass}>
40
- <input {id} type="radio" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {...$$restProps} />
43
+ <input {id} type="radio" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {disabled} {...$$restProps} />
41
44
  </div>
42
45
  <div class="ml-2 text-sm">
43
46
  <label for={id} class={labelHelperClass}>
@@ -48,7 +51,7 @@ export let label;
48
51
  </div>
49
52
  {:else}
50
53
  <div class={divClass}>
51
- <input {id} type="radio" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {...$$restProps} />
54
+ <input {id} type="radio" {name} {value} class={inputClass} aria-labelledby={id} aria-describedby={id} {disabled} {...$$restProps} />
52
55
  <label for={id} class={labelClass}>
53
56
  {@html label}
54
57
  </label>
@@ -1,17 +1,17 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
- import type { RadioType, RadioColorType } from '../types';
2
+ import type { FormColorType } from '../types';
3
3
  declare const __propDef: {
4
4
  props: {
5
5
  [x: string]: any;
6
6
  divClass?: string;
7
7
  inputClass?: string;
8
8
  labelClass?: string;
9
+ disabled?: boolean;
9
10
  name?: string;
10
- options: RadioType[];
11
11
  divHelperClass?: string;
12
12
  labelHelperClass?: string;
13
13
  helperClass?: string;
14
- color?: RadioColorType;
14
+ color?: FormColorType;
15
15
  helper: string;
16
16
  id: string;
17
17
  value: string;
@@ -22,9 +22,9 @@ declare const __propDef: {
22
22
  };
23
23
  slots: {};
24
24
  };
25
- export declare type RadioItemProps = typeof __propDef.props;
26
- export declare type RadioItemEvents = typeof __propDef.events;
27
- export declare type RadioItemSlots = typeof __propDef.slots;
28
- export default class RadioItem extends SvelteComponentTyped<RadioItemProps, RadioItemEvents, RadioItemSlots> {
25
+ export declare type RadioProps = typeof __propDef.props;
26
+ export declare type RadioEvents = typeof __propDef.events;
27
+ export declare type RadioSlots = typeof __propDef.slots;
28
+ export default class Radio extends SvelteComponentTyped<RadioProps, RadioEvents, RadioSlots> {
29
29
  }
30
30
  export {};
@@ -1,5 +1,3 @@
1
- <script></script>
2
-
3
1
  <div class="flex">
4
2
  <slot />
5
3
  </div>
@@ -1,3 +1,15 @@
1
+ /** @typedef {typeof __propDef.props} RadioInlineProps */
2
+ /** @typedef {typeof __propDef.events} RadioInlineEvents */
3
+ /** @typedef {typeof __propDef.slots} RadioInlineSlots */
4
+ export default class RadioInline extends SvelteComponentTyped<{}, {
5
+ [evt: string]: CustomEvent<any>;
6
+ }, {
7
+ default: {};
8
+ }> {
9
+ }
10
+ export type RadioInlineProps = typeof __propDef.props;
11
+ export type RadioInlineEvents = typeof __propDef.events;
12
+ export type RadioInlineSlots = typeof __propDef.slots;
1
13
  import { SvelteComponentTyped } from "svelte";
2
14
  declare const __propDef: {
3
15
  props: {};
@@ -8,9 +20,4 @@ declare const __propDef: {
8
20
  default: {};
9
21
  };
10
22
  };
11
- export declare type RadioInlineProps = typeof __propDef.props;
12
- export declare type RadioInlineEvents = typeof __propDef.events;
13
- export declare type RadioInlineSlots = typeof __propDef.slots;
14
- export default class RadioInline extends SvelteComponentTyped<RadioInlineProps, RadioInlineEvents, RadioInlineSlots> {
15
- }
16
23
  export {};
package/index.js CHANGED
@@ -58,14 +58,14 @@ export { default as SitemapFooter } from './footer/SitemapFooter.svelte'
58
58
 
59
59
  // Forms
60
60
  export { default as Checkbox } from './forms/Checkbox.svelte'
61
+ export { default as CheckboxInline } from './forms/CheckboxInline.svelte'
61
62
  export { default as Fileupload } from './forms/Fileupload.svelte'
62
63
  export { default as FloatingLabelInput } from './forms/FloatingLabelInput.svelte'
63
64
  export { default as Iconinput } from './forms/Iconinput.svelte'
64
65
  export { default as Input } from './forms/Input.svelte'
65
66
  export { default as RadioInline } from './forms/RadioInline.svelte'
66
- export { default as RadioItem } from './forms/RadioItem.svelte'
67
+ export { default as Radio } from './forms/Radio.svelte'
67
68
  export { default as Range } from './forms/Range.svelte'
68
- export { default as SingleCheckbox } from './forms/SingleCheckbox.svelte'
69
69
  export { default as Search } from './forms/Search.svelte'
70
70
  export { default as Select } from './forms/Select.svelte'
71
71
  export { default as Textarea } from './forms/Textarea.svelte'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowbite-svelte",
3
- "version": "0.15.12",
3
+ "version": "0.15.13",
4
4
  "description": "Flowbite components for Svelte",
5
5
  "main": "./package/index.js",
6
6
  "author": {
@@ -124,16 +124,16 @@
124
124
  "./footer/SitemapFooter.svelte": "./footer/SitemapFooter.svelte",
125
125
  "./footer/SocialMediaFooter.svelte": "./footer/SocialMediaFooter.svelte",
126
126
  "./forms/Checkbox.svelte": "./forms/Checkbox.svelte",
127
+ "./forms/CheckboxInline.svelte": "./forms/CheckboxInline.svelte",
127
128
  "./forms/Fileupload.svelte": "./forms/Fileupload.svelte",
128
129
  "./forms/FloatingLabelInput.svelte": "./forms/FloatingLabelInput.svelte",
129
130
  "./forms/Iconinput.svelte": "./forms/Iconinput.svelte",
130
131
  "./forms/Input.svelte": "./forms/Input.svelte",
132
+ "./forms/Radio.svelte": "./forms/Radio.svelte",
131
133
  "./forms/RadioInline.svelte": "./forms/RadioInline.svelte",
132
- "./forms/RadioItem.svelte": "./forms/RadioItem.svelte",
133
134
  "./forms/Range.svelte": "./forms/Range.svelte",
134
135
  "./forms/Search.svelte": "./forms/Search.svelte",
135
136
  "./forms/Select.svelte": "./forms/Select.svelte",
136
- "./forms/SingleCheckbox.svelte": "./forms/SingleCheckbox.svelte",
137
137
  "./forms/Textarea.svelte": "./forms/Textarea.svelte",
138
138
  "./forms/Toggle.svelte": "./forms/Toggle.svelte",
139
139
  ".": "./index.js",
package/types.d.ts CHANGED
@@ -64,6 +64,7 @@ export interface DropdownType {
64
64
  href: string;
65
65
  divider?: boolean;
66
66
  }
67
+ export declare type FormColorType = 'blue' | 'red' | 'green' | 'purple' | 'teal' | 'yellow' | 'orange';
67
68
  export declare type Gradientduotones = 'purple2blue' | 'cyan2blue' | 'green2blue' | 'purple2pink' | 'pink2orange' | 'teal2lime' | 'red2yellow';
68
69
  export interface GroupTimelineType {
69
70
  title: string | HTMLElement;
@@ -117,17 +118,6 @@ export interface PillTabType {
117
118
  selected: boolean;
118
119
  href: string;
119
120
  }
120
- export declare type RadioColorType = 'blue' | 'red' | 'green' | 'purple' | 'teal' | 'yellow' | 'orange';
121
- export interface RadioType {
122
- id: string;
123
- name: string;
124
- label: string | HTMLElement;
125
- value: string;
126
- checked?: boolean;
127
- disabled?: boolean;
128
- helper?: string;
129
- color?: RadioColorType;
130
- }
131
121
  export declare type SelectOptionType = {
132
122
  name: string;
133
123
  value: string;
@@ -1,18 +0,0 @@
1
- <script>import generateId from '../utils/generateId.js';
2
- export let checked = false;
3
- export let id = generateId();
4
- export let required = false;
5
- export let label;
6
- export let name;
7
- export let inputClass = 'w-4 h-4 bg-gray-50 rounded border border-gray-300 focus:ring-3 focus:ring-blue-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-blue-600 dark:ring-offset-gray-800';
8
- export let labelClass = 'font-medium text-gray-900 dark:text-gray-300';
9
- </script>
10
-
11
- <div class="flex items-start">
12
- <div class="flex items-center h-5">
13
- <input bind:checked {id} aria-describedby={id} {name} type="checkbox" class={inputClass} {required} />
14
- </div>
15
- <div class="ml-3 text-sm">
16
- <label for={id} class={labelClass}>{label}</label>
17
- </div>
18
- </div>
@@ -1,22 +0,0 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- checked?: boolean;
5
- id?: string;
6
- required?: boolean;
7
- label: string;
8
- name: string;
9
- inputClass?: string;
10
- labelClass?: string;
11
- };
12
- events: {
13
- [evt: string]: CustomEvent<any>;
14
- };
15
- slots: {};
16
- };
17
- export declare type SingleCheckboxProps = typeof __propDef.props;
18
- export declare type SingleCheckboxEvents = typeof __propDef.events;
19
- export declare type SingleCheckboxSlots = typeof __propDef.slots;
20
- export default class SingleCheckbox extends SvelteComponentTyped<SingleCheckboxProps, SingleCheckboxEvents, SingleCheckboxSlots> {
21
- }
22
- export {};