@budibase/bbui 1.58.13 → 2.0.0

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 (181) hide show
  1. package/LICENSE +375 -0
  2. package/dist/bbui.es.js +14 -0
  3. package/dist/bbui.es.js.map +1 -0
  4. package/package.json +68 -32
  5. package/src/ActionButton/ActionButton.svelte +102 -0
  6. package/src/ActionGroup/ActionGroup.svelte +26 -0
  7. package/src/ActionMenu/ActionMenu.svelte +44 -0
  8. package/src/Actions/autoresize_textarea.js +9 -9
  9. package/src/Actions/click_outside.js +5 -5
  10. package/src/Actions/position_dropdown.js +46 -37
  11. package/src/Avatar/Avatar.svelte +62 -0
  12. package/src/Badge/Badge.svelte +29 -0
  13. package/src/Banner/Banner.svelte +72 -0
  14. package/src/Banner/BannerDisplay.svelte +41 -0
  15. package/src/Button/Button.svelte +102 -200
  16. package/src/ButtonGroup/ButtonGroup.svelte +30 -0
  17. package/src/ClearButton/ClearButton.svelte +19 -0
  18. package/src/ColorPicker/ColorPicker.svelte +297 -0
  19. package/src/DetailSummary/DetailSummary.svelte +83 -0
  20. package/src/Divider/Divider.svelte +28 -0
  21. package/src/Drawer/Drawer.svelte +76 -51
  22. package/src/Drawer/DrawerContent.svelte +46 -0
  23. package/src/Form/Checkbox.svelte +21 -132
  24. package/src/Form/Combobox.svelte +45 -0
  25. package/src/Form/Core/Checkbox.svelte +69 -0
  26. package/src/Form/Core/CheckboxGroup.svelte +68 -0
  27. package/src/Form/Core/Combobox.svelte +142 -0
  28. package/src/Form/Core/DatePicker.svelte +257 -0
  29. package/src/Form/Core/Dropzone.svelte +453 -0
  30. package/src/Form/Core/InputDropdown.svelte +228 -0
  31. package/src/Form/Core/Multiselect.svelte +90 -0
  32. package/src/Form/Core/Picker.svelte +259 -0
  33. package/src/Form/Core/PickerDropdown.svelte +415 -0
  34. package/src/Form/Core/RadioGroup.svelte +48 -0
  35. package/src/Form/Core/RichTextField.svelte +42 -0
  36. package/src/Form/Core/Search.svelte +105 -0
  37. package/src/Form/Core/Select.svelte +75 -0
  38. package/src/Form/Core/Slider.svelte +86 -0
  39. package/src/Form/Core/Stepper.svelte +172 -0
  40. package/src/Form/Core/Switch.svelte +37 -0
  41. package/src/Form/Core/TextArea.svelte +78 -0
  42. package/src/Form/Core/TextField.svelte +119 -0
  43. package/src/Form/Core/index.js +15 -0
  44. package/src/Form/DatePicker.svelte +39 -0
  45. package/src/Form/Dropzone.svelte +42 -0
  46. package/src/Form/Field.svelte +42 -0
  47. package/src/Form/FieldLabel.svelte +32 -0
  48. package/src/Form/Input.svelte +41 -187
  49. package/src/Form/InputDropdown.svelte +55 -0
  50. package/src/Form/Multiselect.svelte +36 -320
  51. package/src/Form/PickerDropdown.svelte +132 -0
  52. package/src/Form/RadioGroup.svelte +42 -0
  53. package/src/Form/RichTextField.svelte +36 -0
  54. package/src/Form/Search.svelte +36 -0
  55. package/src/Form/Select.svelte +48 -88
  56. package/src/Form/Slider.svelte +16 -91
  57. package/src/Form/Stepper.svelte +45 -0
  58. package/src/Form/TextArea.svelte +30 -128
  59. package/src/Form/Toggle.svelte +20 -110
  60. package/src/Icon/Icon.svelte +91 -0
  61. package/src/Icon/IconAvatar.svelte +58 -0
  62. package/src/IconPicker/IconPicker.svelte +177 -0
  63. package/src/IconSideNav/IconSideNav.svelte +14 -0
  64. package/src/IconSideNav/IconSideNavItem.svelte +56 -0
  65. package/src/InlineAlert/InlineAlert.svelte +60 -0
  66. package/src/Label/Label.svelte +29 -0
  67. package/src/Layout/Layout.svelte +94 -0
  68. package/src/Layout/Page.svelte +32 -0
  69. package/src/Link/Link.svelte +24 -0
  70. package/src/List/List.svelte +28 -0
  71. package/src/List/ListItem.svelte +90 -0
  72. package/src/Markdown/MarkdownEditor.svelte +60 -0
  73. package/src/Markdown/MarkdownViewer.svelte +70 -0
  74. package/src/Markdown/SpectrumMDE.svelte +184 -0
  75. package/src/Menu/Item.svelte +96 -0
  76. package/src/Menu/Menu.svelte +7 -0
  77. package/src/Menu/Menu.svench +19 -0
  78. package/src/Menu/Section.svelte +10 -0
  79. package/src/Menu/Separator.svelte +1 -0
  80. package/src/Modal/Content.svelte +0 -11
  81. package/src/Modal/CustomContent.svelte +9 -6
  82. package/src/Modal/Modal.svelte +104 -51
  83. package/src/Modal/ModalContent.svelte +131 -73
  84. package/src/Modal/QuizModal.svelte +16 -17
  85. package/src/Notification/Notification.svelte +70 -0
  86. package/src/Notification/NotificationDisplay.svelte +43 -0
  87. package/src/Pagination/Pagination.svelte +57 -0
  88. package/src/Popover/Popover.svelte +43 -33
  89. package/src/ProgressBar/ProgressBar.svelte +67 -0
  90. package/src/ProgressCircle/ProgressCircle.svelte +62 -0
  91. package/src/SideNavigation/Item.svelte +61 -0
  92. package/src/SideNavigation/Navigation.svelte +12 -0
  93. package/src/StatusLight/StatusLight.svelte +80 -0
  94. package/src/Stores/Notifications.svench.svx +1 -1
  95. package/src/Stores/banner.js +65 -0
  96. package/src/Stores/notifications.js +75 -38
  97. package/src/Table/ArrayRenderer.svelte +17 -0
  98. package/src/Table/AttachmentRenderer.svelte +73 -0
  99. package/src/Table/BoldRenderer.svelte +15 -0
  100. package/src/Table/BooleanRenderer.svelte +42 -0
  101. package/src/Table/CellRenderer.svelte +69 -0
  102. package/src/Table/CodeRenderer.svelte +14 -0
  103. package/src/Table/DateTimeRenderer.svelte +29 -0
  104. package/src/Table/InternalRenderer.svelte +24 -0
  105. package/src/Table/RelationshipRenderer.svelte +40 -0
  106. package/src/Table/SelectEditRenderer.svelte +28 -0
  107. package/src/Table/StringRenderer.svelte +14 -0
  108. package/src/Table/Table.svelte +635 -0
  109. package/src/Table/index.js +1 -0
  110. package/src/Tabs/Tab.svelte +88 -0
  111. package/src/Tabs/Tabs.svelte +130 -0
  112. package/src/Tags/Tag.svelte +43 -0
  113. package/src/Tags/Tags.svelte +7 -0
  114. package/src/Tooltip/Tooltip.svelte +34 -0
  115. package/src/Tooltip/TooltipWrapper.svelte +60 -0
  116. package/src/TreeView/Item.svelte +41 -0
  117. package/src/TreeView/Tree.svelte +16 -0
  118. package/src/Typography/Body.svelte +21 -0
  119. package/src/Typography/Code.svelte +10 -0
  120. package/src/Typography/Detail.svelte +19 -0
  121. package/src/Typography/Heading.svelte +17 -0
  122. package/{dist → src}/bbui.css +2 -99
  123. package/src/context.js +1 -1
  124. package/src/helpers.js +134 -0
  125. package/src/index.js +95 -40
  126. package/src/spectrum-icons-rollup.js +31 -0
  127. package/src/spectrum-icons-vite.js +31 -0
  128. package/dist/dist/bundle.css +0 -42
  129. package/dist/dist/bundle.css.map +0 -64
  130. package/dist/index.js +0 -36193
  131. package/dist/index.mjs +0 -36147
  132. package/src/Button/Close.svelte +0 -59
  133. package/src/Button/Close.svench +0 -36
  134. package/src/Button/TextButton.svelte +0 -128
  135. package/src/Button/TextButton.svench +0 -69
  136. package/src/DatePicker/DatePicker.svelte +0 -45
  137. package/src/DatePicker/DatePicker.svench +0 -17
  138. package/src/DropdownMenu/DropdownMenu.svelte +0 -77
  139. package/src/DropdownMenu/DropdownMenu.svench +0 -161
  140. package/src/Dropzone/Dropzone.svelte +0 -294
  141. package/src/Dropzone/Dropzone.svench +0 -17
  142. package/src/Dropzone/fileTypes.js +0 -5
  143. package/src/Form/Checkbox.svench.svx +0 -67
  144. package/src/Form/DataList.svelte +0 -158
  145. package/src/Form/DataList.svench +0 -57
  146. package/src/Form/Input.svench +0 -62
  147. package/src/Form/Multiselect.svench +0 -63
  148. package/src/Form/Radio.svelte +0 -133
  149. package/src/Form/Radio.svench.svx +0 -64
  150. package/src/Form/RichText.svelte +0 -61
  151. package/src/Form/RichText.svench.svx +0 -40
  152. package/src/Form/Select.svench +0 -62
  153. package/src/Form/Slider.svench +0 -26
  154. package/src/Form/TextArea.svench +0 -30
  155. package/src/Form/Toggle.svench +0 -21
  156. package/src/Icons/Contribution.svelte +0 -14
  157. package/src/Icons/Icon.svelte +0 -36
  158. package/src/Icons/Icon.svench +0 -109
  159. package/src/Icons/icon-paths.js +0 -136
  160. package/src/Links/Home.svelte +0 -51
  161. package/src/Links/Home.svench +0 -19
  162. package/src/List/Items/DetailSummary.svelte +0 -85
  163. package/src/List/Items/DetailSummary.svench +0 -53
  164. package/src/List/Search.svelte +0 -34
  165. package/src/List/Search.svench +0 -8
  166. package/src/Spacer/Spacer.svelte +0 -50
  167. package/src/Spacer/Spacer.svench +0 -51
  168. package/src/Styleguide/Body.svelte +0 -72
  169. package/src/Styleguide/Borders.svench +0 -175
  170. package/src/Styleguide/Budibase-logo.svelte +0 -68
  171. package/src/Styleguide/Color.svench +0 -201
  172. package/src/Styleguide/Heading.svelte +0 -74
  173. package/src/Styleguide/Label.svelte +0 -70
  174. package/src/Styleguide/Logo.svelte +0 -16
  175. package/src/Styleguide/Logo.svench +0 -8
  176. package/src/Styleguide/Spacing.svench +0 -191
  177. package/src/Styleguide/Typography.svench +0 -227
  178. package/src/Switcher/Switcher.svelte +0 -47
  179. package/src/Switcher/Switcher.svench +0 -27
  180. package/src/index.svench.svx +0 -35
  181. package/src/utils/buildStyle.js +0 -14
@@ -1,59 +0,0 @@
1
- <script>
2
- export let onClose;
3
- export let dark = false;
4
- export let small = false;
5
- </script>
6
-
7
- <style>
8
- button {
9
- display: block;
10
- box-sizing: border-box;
11
- position: absolute;
12
- font-size: var(--font-size-l);
13
- z-index: 1000;
14
- top: var(--spacing-l);
15
- right: var(--spacing-l);
16
- margin: 0;
17
- padding: 0;
18
- width: 1.5rem;
19
- height: 1.5rem;
20
- border: 0;
21
- color: black;
22
- border-radius: var(--border-radius-xl);
23
- background: white;
24
- transition: transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1),
25
- background 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
26
- -webkit-appearance: none;
27
- outline: none;
28
- }
29
-
30
- button:hover {
31
- background-color: var(--grey-2);
32
- cursor: pointer;
33
- }
34
-
35
- button:active {
36
- background-color: var(--grey-4);
37
- cursor: pointer;
38
- }
39
- .small {
40
- font-size: var(--font-size-m);
41
- line-height: 110%;
42
- width: 1.3rem;
43
- height: 1.3rem;
44
- }
45
- .dark {
46
- color: white;
47
- background: black;
48
- }
49
- .dark:hover {
50
- background-color: var(--grey-8);
51
- cursor: pointer;
52
- }
53
- .dark:active {
54
- background-color: var(--grey-9);
55
- cursor: pointer;
56
- }
57
- </style>
58
-
59
- <button class:small class:dark on:click={onClose}>×</button>
@@ -1,36 +0,0 @@
1
- <script>
2
- import { View } from "svench";
3
- import Close from "./Close.svelte";
4
- </script>
5
-
6
- <style>
7
- div {
8
- display: block;
9
- position: relative;
10
- min-width: 400px;
11
- height: 200px;
12
- border: var(--border-dark);
13
- border-radius: var(--border-radius-l);
14
- }
15
- </style>
16
-
17
- <View name="default">
18
- <div>
19
- <Close />
20
- </div>
21
- </View>
22
- <View name="dark color">
23
- <div>
24
- <Close dark />
25
- </div>
26
- </View>
27
- <View name="small">
28
- <div>
29
- <Close small />
30
- </div>
31
- </View>
32
- <View name="small dark">
33
- <div>
34
- <Close small dark />
35
- </div>
36
- </View>
@@ -1,128 +0,0 @@
1
- <script>
2
- export let active = false,
3
- text = false,
4
- small = false,
5
- medium = false,
6
- large = false,
7
- blue = false,
8
- green = false,
9
- yellow = false,
10
- purple = false,
11
- red = false,
12
- orange = false,
13
- disabled = false,
14
- href = false;
15
- </script>
16
-
17
- <style>
18
- button,
19
- a {
20
- font-family: var(--font-sans);
21
- cursor: pointer;
22
- font-weight: 600;
23
- box-sizing: border-box;
24
- overflow: hidden;
25
- transition: all 0.08s ease 0s;
26
- display: inline-flex;
27
- align-items: center;
28
- text-rendering: optimizeLegibility;
29
- text-decoration: none;
30
- outline: none;
31
- -webkit-box-align: center;
32
- user-select: none;
33
- margin: 0;
34
- padding: 0;
35
- }
36
-
37
- .text {
38
- background-color: transparent;
39
- color: var(--grey-7);
40
- border: none;
41
- font-weight: 500;
42
- }
43
- button.text:hover:not([disabled]) {
44
- color: var(--ink);
45
- }
46
- button.text:active:not([disabled]) {
47
- color: var(--blue);
48
- }
49
- button.text.active:not([disabled]) {
50
- color: var(--blue);
51
- }
52
- button.text:disabled {
53
- cursor: not-allowed;
54
- color: var(--grey-4);
55
- }
56
-
57
- .blue {
58
- color: var(--blue);
59
- }
60
-
61
- .green {
62
- color: var(--green);
63
- }
64
-
65
- .red {
66
- color: var(--red);
67
- }
68
-
69
- .purple {
70
- color: var(--purple);
71
- }
72
-
73
- .yellow {
74
- color: var(--yellow);
75
- }
76
-
77
- .orange {
78
- color: var(--orange);
79
- }
80
-
81
- .small {
82
- font-size: var(--font-size-xs);
83
- margin: 0;
84
- }
85
-
86
- .medium {
87
- font-size: var(--font-size-s);
88
- margin: 0;
89
- }
90
-
91
- .large {
92
- font-size: var(--font-size-m);
93
- margin: 0;
94
- }
95
- </style>
96
-
97
- {#if href}
98
- <a
99
- {href}
100
- class:active
101
- class:small
102
- class:medium
103
- class:large
104
- class:text
105
- class:blue
106
- class:green
107
- class:yellow
108
- class:purple
109
- class:red
110
- class:orange><slot /></a>
111
- {:else}
112
- <button
113
- class:active
114
- class:small
115
- class:medium
116
- class:large
117
- class:text
118
- class:blue
119
- class:green
120
- class:yellow
121
- class:purple
122
- class:red
123
- class:orange
124
- {disabled}
125
- on:click|preventDefault>
126
- <slot />
127
- </button>
128
- {/if}
@@ -1,69 +0,0 @@
1
- <script>
2
- import { View } from "svench";
3
- import TextButton from "./TextButton.svelte";
4
- import Icon from "../Icons/Icon.svelte";
5
- </script>
6
-
7
- <style>
8
- div {
9
- display: grid;
10
- grid-template-columns: 1fr 1fr 1fr 1fr;
11
- gap: var(--spacing-xl);
12
- }
13
- </style>
14
-
15
- <View name="Text">
16
- <div>
17
- <TextButton text small on:click={() => alert('Clicked!')}>
18
- <Icon name="view" />
19
- Add View
20
- </TextButton>
21
- <TextButton text medium on:click={() => alert('Clicked!')}>
22
- <Icon name="addcolumn" />
23
- Add Column
24
- </TextButton>
25
- <TextButton text large on:click={() => alert('Clicked!')}>
26
- <Icon name="addrow" />
27
- Add Row
28
- </TextButton>
29
- <TextButton text disabled on:click={() => alert('Clicked!')}>
30
- <Icon name="arrow" direction="w" />
31
- Disabled Text Button
32
- </TextButton>
33
- <TextButton active text on:click={() => alert('Clicked!')}>
34
- <Icon name="calculate" />
35
- Active Calculation
36
- </TextButton>
37
- </div>
38
- </View>
39
-
40
- <View name="Colours">
41
- <div>
42
- <TextButton text medium yellow on:click={() => alert('Clicked!')}>
43
- <Icon name="view" />
44
- Add View
45
- </TextButton>
46
- <TextButton text medium blue on:click={() => alert('Clicked!')}>
47
- <Icon name="addcolumn" />
48
- Add Column
49
- </TextButton>
50
- <TextButton text medium purple on:click={() => alert('Clicked!')}>
51
- <Icon name="addrow" />
52
- Add Row
53
- </TextButton>
54
- <TextButton text medium red on:click={() => alert('Clicked!')}>
55
- <Icon name="arrow" />
56
- Delete
57
- </TextButton>
58
- <TextButton text medium green on:click={() => alert('Clicked!')}>
59
- <Icon name="calculate" />
60
- Calculate
61
- </TextButton>
62
- </div>
63
- </View>
64
-
65
- <View name="Usage as a link">
66
- <div>
67
- <TextButton green text href="https://google.com">This is a link</TextButton>
68
- </div>
69
- </View>
@@ -1,45 +0,0 @@
1
- <script>
2
- import Flatpickr from "svelte-flatpickr";
3
- import { Label, Input } from "../";
4
- import "flatpickr/dist/flatpickr.css";
5
-
6
- const PICKER_OPTIONS = {
7
- enableTime: true
8
- };
9
-
10
- export let label;
11
- export let placeholder;
12
- export let value;
13
- export let thin = false;
14
- </script>
15
-
16
- <style>
17
- :global(.flatpickr-input) {
18
- width: 100%;
19
- min-width: 0;
20
- box-sizing: border-box;
21
- color: var(--ink);
22
- border-radius: 5px;
23
- border: none;
24
- background-color: var(--grey-2);
25
- padding: var(--spacing-m);
26
- font-size: var(--font-size-s);
27
- margin: 0;
28
- outline: none;
29
- border: var(--border-transparent);
30
- }
31
- :global(.flatpickr-input:focus) {
32
- border: var(--border-blue);
33
- }
34
-
35
- div.thin :global(.flatpickr-input) {
36
- font-size: var(--font-size-xs);
37
- }
38
- </style>
39
-
40
- <div class:thin>
41
- {#if label}
42
- <Label extraSmall grey>{label}</Label>
43
- {/if}
44
- <Flatpickr {placeholder} options={PICKER_OPTIONS} on:change bind:value />
45
- </div>
@@ -1,17 +0,0 @@
1
- <script>
2
- import { View } from "svench";
3
- import DatePicker from "./DatePicker.svelte";
4
-
5
- function handleChange(event) {
6
- const [fullDate, shortDate, instance] = event.detail
7
- alert("Date is " + fullDate)
8
- }
9
- </script>
10
-
11
- <View name="default">
12
- <DatePicker on:change={handleChange} label="Start Date" placeholder="Pick a date" />
13
- </View>
14
-
15
- <View name="thin">
16
- <DatePicker on:change={handleChange} label="Start Date" thin placeholder="Pick a date" />
17
- </View>
@@ -1,77 +0,0 @@
1
- <script>
2
- import Portal from "svelte-portal";
3
- import { createEventDispatcher } from "svelte";
4
- import buildStyle from "../utils/buildStyle"
5
- import positionDropdown from '../Actions/position_dropdown'
6
- import clickOutside from '../Actions/click_outside'
7
-
8
- const dispatch = createEventDispatcher();
9
-
10
- export let anchor;
11
- export let align = "right";
12
- export let borderColor = "";
13
-
14
- export const show = () => {
15
- dispatch("open");
16
- open = true;
17
- };
18
-
19
- export const hide = () => {
20
- dispatch("close");
21
- open = false;
22
- };
23
-
24
- let open = null;
25
-
26
- function handleEscape(e) {
27
- if (open && e.key === "Escape") {
28
- hide();
29
- }
30
- }
31
-
32
- $: menuStyle = buildStyle({
33
- borderColor,
34
- });
35
- </script>
36
-
37
- <style>
38
- .menu-container {
39
- position: fixed;
40
- margin-top: var(--spacing-xs);
41
- outline: none;
42
- box-sizing: border-box;
43
- opacity: 0;
44
- min-width: 200px;
45
- z-index: 2;
46
- color: var(--ink);
47
- font-weight: 400;
48
- height: fit-content !important;
49
- border: var(--border-dark);
50
- border-radius: var(--border-radius-m);
51
- transform: scale(0);
52
- transition: opacity 0.13s linear, transform 0.12s cubic-bezier(0, 0, 0.2, 1);
53
- overflow-y: auto;
54
- background: var(--background);
55
- box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
56
- }
57
-
58
- .open {
59
- transform: scale(1);
60
- opacity: 1;
61
- }
62
- </style>
63
-
64
- {#if open}
65
- <Portal>
66
- <div
67
- tabindex="0"
68
- class:open
69
- use:positionDropdown={{anchor, align}}
70
- use:clickOutside={hide}
71
- style={menuStyle}
72
- on:keydown={handleEscape}
73
- class="menu-container">
74
- <slot />
75
- </div>
76
- </Portal>
77
- {/if}
@@ -1,161 +0,0 @@
1
- <script>
2
- import { View } from "svench";
3
- import DropdownMenu from "./DropdownMenu.svelte";
4
- import Button from "../Button/Button.svelte";
5
- import Icon from "../Icons/Icon.svelte";
6
-
7
- let anchorRight;
8
- let anchorLeft;
9
- let dropdownRight;
10
- let dropdownLeft;
11
- </script>
12
-
13
- <style>
14
- ul {
15
- list-style: none;
16
- padding-left: 0;
17
- margin: 0;
18
- padding: var(--spacing-s) 0;
19
- }
20
-
21
- li {
22
- display: flex;
23
- font-family: var(--font-sans);
24
- font-size: var(--font-size-xs);
25
- color: var(--ink);
26
- padding: var(--spacing-s) var(--spacing-m);
27
- margin: auto 0px;
28
- align-items: center;
29
- cursor: pointer;
30
- }
31
-
32
- li:hover {
33
- background-color: var(--grey-2);
34
- }
35
-
36
- li:active {
37
- color: var(--blue);
38
- }
39
- </style>
40
-
41
- <View name="Right Align (default)">
42
- <div bind:this={anchorRight}>
43
- <Button primary on:click={dropdownRight.show}>Right Align</Button>
44
- </div>
45
- <DropdownMenu bind:this={dropdownRight} anchor={anchorRight}>
46
- <ul>
47
- <li>Item 1</li>
48
- <li>Item 2</li>
49
- <li>Item 3</li>
50
- </ul>
51
- </DropdownMenu>
52
- </View>
53
-
54
- <View name="Left Align">
55
- <div bind:this={anchorLeft}>
56
- <Button primary on:click={dropdownLeft.show}>Left Align</Button>
57
- </div>
58
- <DropdownMenu bind:this={dropdownLeft} anchor={anchorLeft} align="left">
59
- <ul>
60
- <li>Item 1</li>
61
- <li>Item 2</li>
62
- <li>Item 3</li>
63
- </ul>
64
- </DropdownMenu>
65
- </View>
66
-
67
- <View name="Left Align, TextButton, Small, Icons">
68
- <div bind:this={anchorLeft}>
69
- <Button text on:click={dropdownLeft.show}>
70
- Field Name
71
- <Icon name="arrowdown" />
72
- </Button>
73
- </div>
74
- <DropdownMenu bind:this={dropdownLeft} anchor={anchorLeft} align="left">
75
- <ul>
76
- <li>
77
- <Icon name="edit" />
78
- Edit
79
- </li>
80
- <li>
81
- <Icon name="delete" />
82
- Delete
83
- </li>
84
- <li>
85
- <Icon name="sortascending" />
86
- Sort A - Z
87
- </li>
88
- <li>
89
- <Icon name="sortdescending" />
90
- Sort Z - A
91
- </li>
92
- </ul>
93
- </DropdownMenu>
94
- </View>
95
- <View name="Dropdown menu with slim menu and border color">
96
- <div bind:this={anchorLeft}>
97
- <Button primary on:click={dropdownLeft.show}>
98
- Field Name
99
- <Icon name="arrowdown" />
100
- </Button>
101
- </div>
102
- <DropdownMenu
103
- bind:this={dropdownLeft}
104
- width="175px"
105
- borderColor="#d1d1d1ff"
106
- anchor={anchorLeft}
107
- align="left">
108
- <ul>
109
- <li>
110
- <Icon name="edit" />
111
- Edit
112
- </li>
113
- <li>
114
- <Icon name="delete" />
115
- Delete
116
- </li>
117
- <li>
118
- <Icon name="sortascending" />
119
- Sort A - Z
120
- </li>
121
- <li>
122
- <Icon name="sortdescending" />
123
- Sort Z - A
124
- </li>
125
- </ul>
126
- </DropdownMenu>
127
- </View>
128
- <View name="Dropdown on close event example">
129
- <div bind:this={anchorLeft}>
130
- <Button primary on:click={dropdownLeft.show}>
131
- Field Name
132
- <Icon name="arrowdown" />
133
- </Button>
134
- </div>
135
- <DropdownMenu
136
- on:close={() => alert('Closed!')}
137
- bind:this={dropdownLeft}
138
- width="175px"
139
- borderColor="#d1d1d1ff"
140
- anchor={anchorLeft}
141
- align="left">
142
- <ul>
143
- <li>
144
- <Icon name="edit" />
145
- Edit
146
- </li>
147
- <li>
148
- <Icon name="delete" />
149
- Delete
150
- </li>
151
- <li>
152
- <Icon name="sortascending" />
153
- Sort A - Z
154
- </li>
155
- <li>
156
- <Icon name="sortdescending" />
157
- Sort Z - A
158
- </li>
159
- </ul>
160
- </DropdownMenu>
161
- </View>