@leaflink/stash 43.5.2 → 44.0.0-beta.10

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 (245) hide show
  1. package/README.md +107 -39
  2. package/assets/illustrations/FileUpload/document.svg +1 -17
  3. package/dist/ActionsDropdown.js +25 -25
  4. package/dist/ActionsDropdown.js.map +1 -1
  5. package/dist/AddressSelect.js +12 -11
  6. package/dist/AddressSelect.js.map +1 -1
  7. package/dist/Alert.js +9 -9
  8. package/dist/Alert.js.map +1 -1
  9. package/dist/AppNavigationItem.js +22 -22
  10. package/dist/AppNavigationItem.js.map +1 -1
  11. package/dist/AppSidebar.js +11 -11
  12. package/dist/AppSidebar.js.map +1 -1
  13. package/dist/AppTopbar.js +12 -12
  14. package/dist/Avatar.js +12 -12
  15. package/dist/Avatar.js.map +1 -1
  16. package/dist/Backdrop.js +1 -1
  17. package/dist/Backdrop.js.map +1 -1
  18. package/dist/Badge.js +12 -12
  19. package/dist/Badge.js.map +1 -1
  20. package/dist/Badge.vue.d.ts +1 -1
  21. package/dist/Button.js +1 -1
  22. package/dist/Button.js.map +1 -1
  23. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-63d31dc0.js +17 -0
  24. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-63d31dc0.js.map +1 -0
  25. package/dist/ButtonGroup.js +28 -28
  26. package/dist/ButtonGroup.js.map +1 -1
  27. package/dist/Card.js +3 -3
  28. package/dist/Card.js.map +1 -1
  29. package/dist/CardHeader.js +3 -3
  30. package/dist/CardMedia.js +1 -1
  31. package/dist/CardMedia.js.map +1 -1
  32. package/dist/Carousel.js +260 -248
  33. package/dist/Carousel.js.map +1 -1
  34. package/dist/Checkbox.js +58 -46
  35. package/dist/Checkbox.js.map +1 -1
  36. package/dist/Checkbox.vue.d.ts +2 -0
  37. package/dist/Checkbox.vue_used_vue_type_style_index_0_lang.module-fa8d9c06.js +9 -0
  38. package/dist/Checkbox.vue_used_vue_type_style_index_0_lang.module-fa8d9c06.js.map +1 -0
  39. package/dist/ChevronToggle.js +1 -1
  40. package/dist/Chip.js +1 -1
  41. package/dist/Chip.js.map +1 -1
  42. package/dist/ConfirmationCodeInput.js +21 -21
  43. package/dist/ConfirmationCodeInput.js.map +1 -1
  44. package/dist/ContextSwitcher.js +6 -5
  45. package/dist/ContextSwitcher.js.map +1 -1
  46. package/dist/Copy.js +1 -1
  47. package/dist/CurrencyInput.js +2 -2
  48. package/dist/DataView.js +1 -1
  49. package/dist/DataViewFilters.js +7 -7
  50. package/dist/DataViewFilters.js.map +1 -1
  51. package/dist/DataViewSortButton.js +47 -38
  52. package/dist/DataViewSortButton.js.map +1 -1
  53. package/dist/DataViewToolbar.js +4 -4
  54. package/dist/DataViewToolbar.js.map +1 -1
  55. package/dist/DatePicker.js +12 -15
  56. package/dist/DatePicker.js.map +1 -1
  57. package/dist/DescriptionListTerm.js +8 -8
  58. package/dist/DescriptionListTerm.js.map +1 -1
  59. package/dist/Dialog.js +46 -46
  60. package/dist/Dialog.js.map +1 -1
  61. package/dist/Divider.js +9 -9
  62. package/dist/Divider.js.map +1 -1
  63. package/dist/Dropdown.js +17 -17
  64. package/dist/Dropdown.js.map +1 -1
  65. package/dist/EmptyState.js +1 -1
  66. package/dist/EmptyState.js.map +1 -1
  67. package/dist/Expand.js +1 -1
  68. package/dist/{Expand.vue_vue_type_script_setup_true_lang-5fe03d51.js → Expand.vue_vue_type_script_setup_true_lang-1751f4a6.js} +14 -15
  69. package/dist/Expand.vue_vue_type_script_setup_true_lang-1751f4a6.js.map +1 -0
  70. package/dist/Field.js +2 -2
  71. package/dist/Field.vue.d.ts +1 -1
  72. package/dist/{Field.vue_vue_type_script_setup_true_lang-475832fe.js → Field.vue_vue_type_script_setup_true_lang-42ba3c5a.js} +5 -5
  73. package/dist/Field.vue_vue_type_script_setup_true_lang-42ba3c5a.js.map +1 -0
  74. package/dist/FileUpload.js +49 -47
  75. package/dist/FileUpload.js.map +1 -1
  76. package/dist/FilterChip.js +20 -20
  77. package/dist/FilterChip.js.map +1 -1
  78. package/dist/FilterDrawerItem.js +4 -4
  79. package/dist/FilterDrawerItem.js.map +1 -1
  80. package/dist/FilterDropdown.js +19 -19
  81. package/dist/FilterDropdown.js.map +1 -1
  82. package/dist/FilterSelect.js +27 -27
  83. package/dist/FilterSelect.js.map +1 -1
  84. package/dist/Filters.js +51 -50
  85. package/dist/Filters.js.map +1 -1
  86. package/dist/HttpError.js +28 -28
  87. package/dist/HttpError.js.map +1 -1
  88. package/dist/IconLabel.js +17 -17
  89. package/dist/IconLabel.js.map +1 -1
  90. package/dist/IconLabel.vue.d.ts +1 -1
  91. package/dist/Illustration.js +10 -60
  92. package/dist/Illustration.js.map +1 -1
  93. package/dist/Illustration.vue_vue_type_script_setup_true_lang-d6a94e17.js +56 -0
  94. package/dist/Illustration.vue_vue_type_script_setup_true_lang-d6a94e17.js.map +1 -0
  95. package/dist/Image.js +67 -72
  96. package/dist/Image.js.map +1 -1
  97. package/dist/InlineEdit.js +3 -3
  98. package/dist/InlineEdit.js.map +1 -1
  99. package/dist/Input.js +43 -43
  100. package/dist/Input.js.map +1 -1
  101. package/dist/InputOptions.js +34 -33
  102. package/dist/InputOptions.js.map +1 -1
  103. package/dist/Label.js +1 -1
  104. package/dist/Label.vue.d.ts +13 -2
  105. package/dist/Label.vue_vue_type_script_setup_true_lang-4b02087f.js +38 -0
  106. package/dist/Label.vue_vue_type_script_setup_true_lang-4b02087f.js.map +1 -0
  107. package/dist/ListItem.js +16 -15
  108. package/dist/ListItem.js.map +1 -1
  109. package/dist/ListItemCell.js +9 -9
  110. package/dist/ListItemCell.js.map +1 -1
  111. package/dist/ListView.js +143 -139
  112. package/dist/ListView.js.map +1 -1
  113. package/dist/Loading.js +17 -10
  114. package/dist/Loading.js.map +1 -1
  115. package/dist/Loading.vue_used_vue_type_style_index_0_lang.module-ef5a3bc6.js +8 -0
  116. package/dist/Loading.vue_used_vue_type_style_index_0_lang.module-ef5a3bc6.js.map +1 -0
  117. package/dist/Menu.js +1 -1
  118. package/dist/Menu.js.map +1 -1
  119. package/dist/MenuItem.js +20 -14
  120. package/dist/MenuItem.js.map +1 -1
  121. package/dist/Metric.js +4 -4
  122. package/dist/Metric.js.map +1 -1
  123. package/dist/Modal.js +21 -21
  124. package/dist/Modal.js.map +1 -1
  125. package/dist/Modals.js +13 -13
  126. package/dist/Modals.js.map +1 -1
  127. package/dist/Module.js +2 -2
  128. package/dist/Module.js.map +1 -1
  129. package/dist/ModuleContent.js +2 -2
  130. package/dist/ModuleContent.js.map +1 -1
  131. package/dist/ModuleFooter.js +11 -11
  132. package/dist/ModuleFooter.js.map +1 -1
  133. package/dist/ModuleHeader.js +6 -6
  134. package/dist/ModuleHeader.js.map +1 -1
  135. package/dist/ObfuscateText.js +30 -32
  136. package/dist/ObfuscateText.js.map +1 -1
  137. package/dist/ObfuscateText.vue.d.ts +1 -1
  138. package/dist/PageContent.js +9 -9
  139. package/dist/PageContent.js.map +1 -1
  140. package/dist/PageHeader.js +24 -24
  141. package/dist/PageHeader.js.map +1 -1
  142. package/dist/PageNavigation.js +3 -3
  143. package/dist/PageNavigation.js.map +1 -1
  144. package/dist/Paginate.js +1 -1
  145. package/dist/Paginate.js.map +1 -1
  146. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-18343da7.js +11 -0
  147. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-18343da7.js.map +1 -0
  148. package/dist/QuickAction.js +20 -17
  149. package/dist/QuickAction.js.map +1 -1
  150. package/dist/Radio.js +30 -15
  151. package/dist/Radio.js.map +1 -1
  152. package/dist/RadioGroup.js +177 -148
  153. package/dist/RadioGroup.js.map +1 -1
  154. package/dist/RadioNew.js +118 -91
  155. package/dist/RadioNew.js.map +1 -1
  156. package/dist/SearchBar.js +27 -27
  157. package/dist/SearchBar.js.map +1 -1
  158. package/dist/Select.js +189 -188
  159. package/dist/Select.js.map +1 -1
  160. package/dist/SelectStatus.js +22 -21
  161. package/dist/SelectStatus.js.map +1 -1
  162. package/dist/Step.js +37 -37
  163. package/dist/Step.js.map +1 -1
  164. package/dist/Switch.js +44 -36
  165. package/dist/Switch.js.map +1 -1
  166. package/dist/Tab.js +3 -2
  167. package/dist/Tab.js.map +1 -1
  168. package/dist/{Tab.vue_vue_type_script_setup_true_lang-b810bee8.js → Tab.vue_vue_type_script_setup_true_lang-69d1b046.js} +23 -22
  169. package/dist/Tab.vue_vue_type_script_setup_true_lang-69d1b046.js.map +1 -0
  170. package/dist/Table.js +23 -22
  171. package/dist/Table.js.map +1 -1
  172. package/dist/Table.keys-cf93df19.js +27 -0
  173. package/dist/{Table.keys-1ebe4ecb.js.map → Table.keys-cf93df19.js.map} +1 -1
  174. package/dist/TableCell.js +24 -23
  175. package/dist/TableCell.js.map +1 -1
  176. package/dist/TableHeaderCell.js +37 -36
  177. package/dist/TableHeaderCell.js.map +1 -1
  178. package/dist/TableHeaderRow.js +13 -12
  179. package/dist/TableHeaderRow.js.map +1 -1
  180. package/dist/TableRow.js +36 -34
  181. package/dist/TableRow.js.map +1 -1
  182. package/dist/Tabs.js +2 -2
  183. package/dist/{Tabs.vue_used_vue_type_style_index_0_lang.module-4f247ed7.js → Tabs.vue_used_vue_type_style_index_0_lang.module-2a131332.js} +26 -26
  184. package/dist/Tabs.vue_used_vue_type_style_index_0_lang.module-2a131332.js.map +1 -0
  185. package/dist/Textarea.js +61 -53
  186. package/dist/Textarea.js.map +1 -1
  187. package/dist/Toast.js +23 -23
  188. package/dist/Toast.js.map +1 -1
  189. package/dist/components.css +1 -1
  190. package/dist/constants.d.ts +33 -26
  191. package/dist/constants.js +56 -41
  192. package/dist/constants.js.map +1 -1
  193. package/dist/index.js +21 -20
  194. package/dist/index.js.map +1 -1
  195. package/dist/storage.js +3 -2
  196. package/dist/storage.js.map +1 -1
  197. package/dist/tailwind-base.d.ts +16 -16
  198. package/dist/tailwind-base.js +16 -6
  199. package/dist/tailwind-base.js.map +1 -1
  200. package/dist/useGoogleMaps.js.map +1 -1
  201. package/dist/utils/helpers.js +37 -37
  202. package/dist/utils/helpers.js.map +1 -1
  203. package/dist/utils/storage.js +30 -29
  204. package/dist/utils/storage.js.map +1 -1
  205. package/package.json +2 -2
  206. package/styles/_core.scss +49 -1
  207. package/styles/backwards-compat.css +1467 -106
  208. package/styles/base.css +537 -22
  209. package/tailwind-base.ts +6 -1
  210. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js +0 -17
  211. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js.map +0 -1
  212. package/dist/Checkbox.vue_vue_type_style_index_0_scoped_0d7e7fd0_lang-4ed993c7.js +0 -2
  213. package/dist/Checkbox.vue_vue_type_style_index_0_scoped_0d7e7fd0_lang-4ed993c7.js.map +0 -1
  214. package/dist/Expand.vue_vue_type_script_setup_true_lang-5fe03d51.js.map +0 -1
  215. package/dist/Field.vue_vue_type_script_setup_true_lang-475832fe.js.map +0 -1
  216. package/dist/Label.vue_vue_type_script_setup_true_lang-1d29d98a.js +0 -37
  217. package/dist/Label.vue_vue_type_script_setup_true_lang-1d29d98a.js.map +0 -1
  218. package/dist/Loading.vue_vue_type_style_index_0_scoped_bb8d5f15_lang-4ed993c7.js +0 -2
  219. package/dist/Loading.vue_vue_type_style_index_0_scoped_bb8d5f15_lang-4ed993c7.js.map +0 -1
  220. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-bfccf992.js +0 -11
  221. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-bfccf992.js.map +0 -1
  222. package/dist/Tab.vue_vue_type_script_setup_true_lang-b810bee8.js.map +0 -1
  223. package/dist/Table.keys-1ebe4ecb.js +0 -27
  224. package/dist/Tabs.vue_used_vue_type_style_index_0_lang.module-4f247ed7.js.map +0 -1
  225. package/styles/_base.scss +0 -493
  226. package/styles/components/_all.scss +0 -14
  227. package/styles/components/_box.scss +0 -13
  228. package/styles/components/_item-list.scss +0 -78
  229. package/styles/components/_sidebar.scss +0 -404
  230. package/styles/components/_top-header.scss +0 -219
  231. package/styles/elements/_all.scss +0 -15
  232. package/styles/elements/_buttons.scss +0 -235
  233. package/styles/elements/_forms.scss +0 -300
  234. package/styles/elements/_links.scss +0 -32
  235. package/styles/elements/_lists.scss +0 -31
  236. package/styles/elements/_misc.scss +0 -16
  237. package/styles/elements/_tables.scss +0 -80
  238. package/styles/elements/_tooltips.scss +0 -110
  239. package/styles/main.scss +0 -38
  240. package/styles/utility/_all.scss +0 -12
  241. package/styles/utility/_animations.scss +0 -103
  242. package/styles/utility/_display.scss +0 -167
  243. package/styles/utility/_grid.scss +0 -200
  244. package/styles/utility/_icons.scss +0 -31
  245. package/styles/utility/_transitions.scss +0 -110
package/styles/base.css CHANGED
@@ -1,7 +1,14 @@
1
1
  @tailwind base;
2
-
3
2
  @tailwind components;
4
3
 
4
+ /*
5
+ NOTE: Commenting this out cause packaging tw classes inside of stash's build causes a
6
+ lot of duplication and order issues with downstream applications. You need to configure your
7
+ application downstream to analyze stash files to ensure they are included in your build.
8
+
9
+ @tailwind utilities;
10
+ */
11
+
5
12
  /**
6
13
  * This is a custom .container class that conflicts with tailwinds out of the box container class.
7
14
  * Placed here before tw utilities, and specifically not within @layer components, so that it is
@@ -15,34 +22,157 @@
15
22
  width: 100%;
16
23
  }
17
24
 
18
- /* helpful class to show an emdash when an element like a table cell is empty */
19
- .show-empty:empty::before {
20
- content: "—";
21
- }
22
-
23
- /*
24
- NOTE: Commenting this out cause packaging tw classes inside of stash's build causes a
25
- lot of duplication and order issues with downstream applications. You need to configure your
26
- application downstream to analyze stash files to ensure they are included in your build.
25
+ /**
26
+ * This is a legacy grid class that conflicts with tailwinds out of the box grid class.
27
+ * Placed here before tw utilities, and specifically not within @layer components, so that it is
28
+ * always included in the output css.
29
+ *
30
+ * @deprecated - Todo: Migrate to tailwind grid classes. Too tricky to do in one find/replace cause you may have
31
+ * conflicts with other grid classes meant to override ll-grid.
32
+ */
33
+ .ll-grid {
34
+ @apply tw-grid tw-grid-cols-1 tw-gap-x-gutter tw-gap-y-6 md:tw-grid-cols-12;
27
35
 
28
- @tailwind utilities;
29
- */
36
+ --deprecated: "WARNING: Use `tw-grid` instead";
37
+ }
30
38
 
31
39
  /**
32
- * General styles and/or reset css could go here.
40
+ * Variables
33
41
  */
34
42
 
35
43
  :root {
44
+ --height-topbar: 56px;
36
45
  --grid-gutter: 12px;
37
46
 
38
- @media screen(lg) {
47
+ /* The tooltips position relative to the toggle element */
48
+ --tooltip-position: calc(100% + theme('spacing.3'));
49
+
50
+ /* Centers arrow horizontally or vertically along tooltip on arrow's center */
51
+ --arrow-position-centered: calc(50% - theme('spacing[1.5]'));
52
+
53
+ @media screen('lg') {
39
54
  --grid-gutter: 24px;
40
55
  }
56
+
57
+ /* Stash colors */
58
+ --color-purple-900: #06040F;
59
+ --color-purple-800: #0C091E;
60
+ --color-purple-700: #120D2D;
61
+ --color-purple-600: #18123C;
62
+ --color-purple-500: #1E164B;
63
+ --color-purple-400: #4B456F;
64
+ --color-purple-300: #787393;
65
+ --color-purple-200: #A5A2B7;
66
+ --color-purple-100: #D2D0DB;
67
+
68
+ --color-royal-900: #0A0C24;
69
+ --color-royal-800: #131747;
70
+ --color-royal-700: #1D236B;
71
+ --color-royal-600: #262E8E;
72
+ --color-royal-500: #303AB2;
73
+ --color-royal-400: #5961C1;
74
+ --color-royal-300: #8389D1;
75
+ --color-royal-200: #ACB0E0;
76
+ --color-royal-100: #D6D8F0;
77
+
78
+ --color-blue-900: #001730;
79
+ --color-blue-800: #002E60;
80
+ --color-blue-700: #004490;
81
+ --color-blue-600: #005BC0;
82
+ --color-blue-500: #0072F0;
83
+ --color-blue-400: #338EF3;
84
+ --color-blue-300: #66AAF6;
85
+ --color-blue-200: #99C7F9;
86
+ --color-blue-100: #CCE3FC;
87
+
88
+ --color-teal-900: #002528;
89
+ --color-teal-800: #004B50;
90
+ --color-teal-700: #017078;
91
+ --color-teal-600: #0196A0;
92
+ --color-teal-500: #01BBC8;
93
+ --color-teal-400: #34C9D3;
94
+ --color-teal-300: #67D6DE;
95
+ --color-teal-200: #99E4E9;
96
+ --color-teal-100: #CCF1F4;
97
+
98
+ --color-green-900: #062313;
99
+ --color-green-800: #0C4627;
100
+ --color-green-700: #11683A;
101
+ --color-green-600: #178B4E;
102
+ --color-green-500: #1DAE61;
103
+ --color-green-400: #4ABE81;
104
+ --color-green-300: #77CEA0;
105
+ --color-green-200: #A5DFC0;
106
+ --color-green-100: #D2EFDF;
107
+
108
+ --color-seafoam-900: #0C2C26;
109
+ --color-seafoam-800: #18584D;
110
+ --color-seafoam-700: #248373;
111
+ --color-seafoam-600: #30AF9A;
112
+ --color-seafoam-500: #3CDBC0;
113
+ --color-seafoam-400: #63E2CD;
114
+ --color-seafoam-300: #8AE9D9;
115
+ --color-seafoam-200: #B1F1E6;
116
+ --color-seafoam-100: #D8F8F2;
117
+
118
+ --color-yellow-900: #332A00;
119
+ --color-yellow-800: #650;
120
+ --color-yellow-700: #997F00;
121
+ --color-yellow-600: #CA0;
122
+ --color-yellow-500: #FFD400;
123
+ --color-yellow-400: #FD3;
124
+ --color-yellow-300: #FFE566;
125
+ --color-yellow-200: #FE9;
126
+ --color-yellow-100: #FFF6CC;
127
+
128
+ --color-orange-900: #331E07;
129
+ --color-orange-800: #663B0F;
130
+ --color-orange-700: #995916;
131
+ --color-orange-600: #CC761E;
132
+ --color-orange-500: #FF9425;
133
+ --color-orange-400: #FFA951;
134
+ --color-orange-300: #FFBF7C;
135
+ --color-orange-200: #FFD4A8;
136
+ --color-orange-100: #FFEAD3;
137
+
138
+ --color-red-900: #2E0009;
139
+ --color-red-800: #5B0011;
140
+ --color-red-700: #89001A;
141
+ --color-red-600: #B60022;
142
+ --color-red-500: #E4002B;
143
+ --color-red-400: #E93355;
144
+ --color-red-300: #EF6680;
145
+ --color-red-200: #F499AA;
146
+ --color-red-100: #FACCD5;
147
+
148
+ --color-ice-900: #27282A;
149
+ --color-ice-800: #4F5055;
150
+ --color-ice-700: #76797F;
151
+ --color-ice-600: #9EA1AA;
152
+ --color-ice-500: #C5C9D4;
153
+ --color-ice-400: #D1D4DD;
154
+ --color-ice-300: #DCDFE5;
155
+ --color-ice-200: #E8E9EE;
156
+ --color-ice-100: #F3F4F6;
157
+ --color-white: #fff;
158
+ --color-black: #000;
159
+
160
+ /* Deprecated colors */
161
+ --color-blue-hover: rgb(0 114 240 / 74.9%);
162
+ --color-red-hover: rgb(228 0 43 / 74.9%);
163
+ --color-ice-700-hover: rgb(118 121 127 / 11.8%);
164
+ --color-white-hover: rgb(255 255 255 / 11.8%);
165
+ --button-secondary-blue-hover: rgb(0 114 240 / 11.8%);
166
+ --button-secondary-red-hover: rgb(228 0 43 / 11.8%);
41
167
  }
42
168
 
169
+ /**
170
+ * General styles and/or reset css could go here.
171
+ */
172
+
43
173
  @layer base {
44
174
  @font-face {
45
- font-family: 'Sofia';
175
+ font-family: Sofia;
46
176
  font-style: normal;
47
177
  font-weight: 400;
48
178
  src:
@@ -51,7 +181,7 @@
51
181
  }
52
182
 
53
183
  @font-face {
54
- font-family: 'Sofia';
184
+ font-family: Sofia;
55
185
  font-style: normal;
56
186
  font-weight: 500;
57
187
  src:
@@ -60,7 +190,7 @@
60
190
  }
61
191
 
62
192
  @font-face {
63
- font-family: 'Sofia';
193
+ font-family: Sofia;
64
194
  font-style: normal;
65
195
  font-weight: 600;
66
196
  src:
@@ -79,7 +209,7 @@
79
209
  body {
80
210
  @apply tw-leading-normal tw-text-ice-700 tw-bg-ice-100 tw-font-normal tw-text-sm;
81
211
 
82
- font-family: 'Sofia', sans-serif;
212
+ font-family: Sofia, sans-serif;
83
213
  min-height: 100vh;
84
214
  position: relative;
85
215
  }
@@ -87,7 +217,7 @@
87
217
  *,
88
218
  ::before,
89
219
  ::after {
90
- @apply tw-border-0 tw-border-ice-500;
220
+ @apply tw-border-0 tw-border-solid tw-border-ice-500;
91
221
 
92
222
  background-repeat: no-repeat;
93
223
  box-sizing: border-box;
@@ -126,9 +256,9 @@
126
256
  @apply tw-text-2xl tw-font-medium tw-text-ice-900;
127
257
  }
128
258
 
129
- @media screen(md) {
259
+ @media screen('md') {
130
260
  .heading-jumbo {
131
- font-size: theme(fontSize.5xl);
261
+ font-size: theme('fontSize.5xl');
132
262
  }
133
263
  }
134
264
 
@@ -142,6 +272,8 @@
142
272
 
143
273
  address {
144
274
  font-style: normal;
275
+ line-height: theme('spacing.6');
276
+ white-space: pre-line;
145
277
  }
146
278
 
147
279
  /**
@@ -171,7 +303,7 @@
171
303
  *
172
304
  * Add LeafLink's base styles to fix issues on localhost
173
305
  */
174
- a {
306
+ a, .link {
175
307
  @apply tw-text-blue-500;
176
308
 
177
309
  background-color: transparent;
@@ -258,6 +390,12 @@
258
390
  margin: 0; /* 2 */
259
391
  }
260
392
 
393
+ button {
394
+ display: inline-block;
395
+ font-size: 0.875rem;
396
+ vertical-align: middle;
397
+ }
398
+
261
399
  /**
262
400
  * Show the overflow in IE.
263
401
  * 1. Show the overflow in Edge.
@@ -395,4 +533,381 @@
395
533
  template {
396
534
  display: none;
397
535
  }
536
+
537
+ ul,
538
+ ol {
539
+ list-style-type: none;
540
+ margin: 0;
541
+ padding: 0;
542
+
543
+ &.bullets {
544
+ list-style-type: disc;
545
+ padding-left: theme('spacing.9');
546
+
547
+ li {
548
+ margin-bottom: theme('spacing.3');
549
+ }
550
+ }
551
+ }
552
+
553
+ table {
554
+ border-collapse: collapse;
555
+ border-spacing: 0;
556
+ max-width: 100%;
557
+ width: 100%;
558
+
559
+ td,
560
+ th {
561
+ border-top: 1px solid var(--color-ice-500);
562
+ padding: 0.766rem;
563
+ }
564
+
565
+ thead {
566
+ td,
567
+ th {
568
+ background-color: var(--color-ice-200);
569
+ border-bottom: 2px solid var(--color-ice-500);
570
+ border-top: none;
571
+ color: var(--color-ice-900);
572
+ font-weight: 500;
573
+ text-align: left;
574
+ user-select: none;
575
+ white-space: nowrap;
576
+ }
577
+ }
578
+
579
+ tbody {
580
+ td {
581
+ font-weight: 400;
582
+ }
583
+ }
584
+
585
+ tfoot {
586
+ tr {
587
+ td {
588
+ border: none;
589
+ }
590
+ }
591
+ }
592
+ }
593
+ }
594
+
595
+ /**
596
+ * Custom global classes.
597
+ *
598
+ * These are global classes that are not part of the tailwindcss framework. These should be created & used sparingly
599
+ * and only when using a global class is the best solution.
600
+ */
601
+
602
+ /* helpful class to show an emdash when an element like a table cell is empty */
603
+ .show-empty:empty::before {
604
+ content: "—";
605
+ }
606
+
607
+ /**
608
+ * Legacy button-grid class.
609
+ *
610
+ * Todo: Create ButtonGrid component with styles below and remove button grid styles from Button.vue
611
+ * https://leaflink.atlassian.net/browse/STASH-230
612
+ */
613
+ .button-grid {
614
+ display: flex;
615
+ grid-column-end: -1 !important;
616
+
617
+ > .button {
618
+ width: 50%;
619
+ }
620
+
621
+ > .button + .button {
622
+ margin-left: theme('spacing.6')
623
+ }
624
+
625
+ @media screen('md') {
626
+ display: inline-flex;
627
+
628
+ > .button {
629
+ width: auto;
630
+ }
631
+ }
632
+ }
633
+
634
+ /**
635
+ * Stash's v-tooltip styles.
636
+ */
637
+
638
+ .tooltip {
639
+ --offset: 0;
640
+
641
+ background: var(--color-ice-900);
642
+ border-radius: theme('borderRadius.DEFAULT');
643
+ box-shadow: 0 0 0 1px rgb(255 255 255 / 25%);
644
+ color: var(--color-white);
645
+ font-size: 0.75rem;
646
+ line-height: calc(16 / 12);
647
+ opacity: 0;
648
+ padding: theme('spacing.3');
649
+ pointer-events: none; /* Tooltips should disappear once the user hovers away */
650
+ position: absolute;
651
+ text-align: center;
652
+ transition: opacity theme('transitionDuration.150') theme('transitionTimingFunction.swing'), visibility theme('transitionDuration.150') theme('transitionTimingFunction.swing');
653
+ visibility: hidden;
654
+ white-space: normal;
655
+ width: 148px;
656
+
657
+ &::after {
658
+ background-color: var(--color-ice-900);
659
+ border-radius: 0 2px 0 0;
660
+ clip-path: polygon(100% 0%, 100% 100%, 0% 0%);
661
+ content: '';
662
+ display: inline-block;
663
+ height: 12px;
664
+ position: absolute;
665
+ top: calc(-1 * theme('spacing[1.5]'));
666
+ transform: rotate(135deg);
667
+ z-index: theme('zIndex.behind');
668
+ width: 12px;
669
+ }
670
+ }
671
+
672
+ .tooltip--bottom,
673
+ .tooltip--top {
674
+ left: calc(50% + calc(var(--offset) * 1px));
675
+ transform: translateX(-50%);
676
+
677
+ &::after {
678
+ left: calc(var(--arrow-position-centered) + calc(var(--offset) * -1px));
679
+ }
680
+ }
681
+
682
+ .tooltip--bottom {
683
+ top: var(--tooltip-position);
684
+
685
+ &::after {
686
+ transform: rotate(-45deg);
687
+ }
688
+ }
689
+
690
+ .tooltip--top {
691
+ bottom: var(--tooltip-position);
692
+
693
+ &::after {
694
+ top: calc(100% - theme('spacing[1.5]'));
695
+ }
696
+ }
697
+
698
+ .tooltip--left,
699
+ .tooltip--right {
700
+ top: 50%;
701
+ transform: translateY(-50%);
702
+
703
+ &::after {
704
+ top: var(--arrow-position-centered);
705
+ }
706
+ }
707
+
708
+ .tooltip--left {
709
+ right: var(--tooltip-position);
710
+
711
+ &::after {
712
+ left: calc(100% - theme('spacing[1.5]'));
713
+ transform: rotate(45deg);
714
+ }
715
+ }
716
+
717
+ .tooltip--right {
718
+ left: var(--tooltip-position);
719
+
720
+ &::after {
721
+ left: calc(-1 * theme('spacing[1.5]'));
722
+ transform: rotate(-135deg);
723
+ }
724
+ }
725
+
726
+ .tooltip-toggle {
727
+ display: inline-block;
728
+ position: relative;
729
+ z-index: 0;
730
+
731
+ &:hover {
732
+ outline: none;
733
+ z-index: theme('zIndex.modal');
734
+
735
+ .tooltip {
736
+ opacity: 1;
737
+ visibility: visible;
738
+ }
739
+ }
740
+ }
741
+
742
+ /**
743
+ * Animations
744
+ *
745
+ * Todo: These should be moved to tailwind as custom animations.
746
+ */
747
+
748
+ @keyframes shake {
749
+ 0%,
750
+ 100% {
751
+ transform: translate3d(0, 0, 0);
752
+ }
753
+
754
+ 10%,
755
+ 30%,
756
+ 50%,
757
+ 70%,
758
+ 90% {
759
+ transform: translate3d(-10px, 0, 0);
760
+ }
761
+
762
+ 20%,
763
+ 40%,
764
+ 60%,
765
+ 80% {
766
+ transform: translate3d(10px, 0, 0);
767
+ }
768
+ }
769
+
770
+ .fx-shake {
771
+ animation: 2s shake 1;
772
+ }
773
+
774
+
775
+ @keyframes pulse {
776
+ 0% {
777
+ transform: scale3d(1, 1, 1);
778
+ }
779
+
780
+ 50% {
781
+ transform: scale3d(1.25, 1.25, 1.25);
782
+ }
783
+
784
+ 100% {
785
+ transform: scale3d(1, 1, 1);
786
+ }
787
+ }
788
+
789
+ .fx-pulse {
790
+ animation: 1s pulse;
791
+ }
792
+
793
+ @keyframes spin-loading {
794
+ 0% {
795
+ transform: rotate(0deg);
796
+ }
797
+
798
+ 65% {
799
+ transform: rotate(720deg);
800
+ }
801
+
802
+ 100% {
803
+ transform: rotate(720deg);
804
+ }
805
+ }
806
+
807
+ .fx-spin {
808
+ animation-duration: 1.5s;
809
+ animation-iteration-count: infinite;
810
+ animation-name: spin-loading;
811
+ animation-timing-function: ease-in-out;
812
+ }
813
+
814
+ @keyframes flash {
815
+ 0% {
816
+ opacity: 1;
817
+ }
818
+
819
+ 50% {
820
+ opacity: 0;
821
+ }
822
+
823
+ 100% {
824
+ opacity: 1;
825
+ }
826
+ }
827
+
828
+ .fx-flash {
829
+ animation: 0.5s flash;
830
+ }
831
+
832
+ /**
833
+ * Transitions
834
+ *
835
+ * Todo: These should be moved to tailwind as custom transitions.
836
+ * See: https://tailwindcss.com/docs/transition-property
837
+ */
838
+
839
+ .scale-enter-active,
840
+ .scale-leave-active {
841
+ transition: theme('transitionDuration.300') theme('transitionTimingFunction.ease-in-out');
842
+ }
843
+
844
+ .scale-enter-from,
845
+ .scale-leave-from,
846
+ .scale-leave-to {
847
+ opacity: 0;
848
+ transform: scale(0);
849
+ }
850
+
851
+
852
+ .slide-y-enter-active,
853
+ .slide-y-leave-active {
854
+ transition: theme('transitionDuration.150') theme('transitionTimingFunction.swing');
855
+ }
856
+
857
+ .slide-y-enter-from,
858
+ .slide-y-leave-to {
859
+ opacity: 0;
860
+ transform: translateY(-0.875rem);
861
+ }
862
+
863
+ .slide-x-enter-active,
864
+ .slide-x-leave-active {
865
+ transition: theme('transitionDuration.150') theme('transitionTimingFunction.swing');
866
+ }
867
+
868
+ .slide-x-enter-from,
869
+ .slide-x-leave-to {
870
+ opacity: 0;
871
+ transform: translateX(-0.875rem);
872
+ }
873
+
874
+ .fade-enter-active,
875
+ .fade-leave-active {
876
+ transition: opacity theme('transitionDuration.150') theme('transitionTimingFunction.swing');
877
+ }
878
+
879
+ .fade-enter-from,
880
+ .fade-leave-to {
881
+ opacity: 0;
882
+ }
883
+
884
+ .fade-enter-to {
885
+ opacity: 1;
886
+ }
887
+
888
+ .expand-enter-active,
889
+ .expand-leave-active {
890
+ transition:
891
+ height theme('transitionDuration.300') theme('transitionTimingFunction.ease-in-out'),
892
+ opacity theme('transitionDuration.500') theme('transitionDuration.150'),
893
+ transform theme('transitionDuration.500') theme('transitionDuration.150');
894
+ }
895
+
896
+ .expand-enter-from,
897
+ .expand-leave-to {
898
+ height: 0;
899
+ opacity: 0;
900
+ transform: translateY(-0.875rem);
901
+ transition-delay: 0s;
902
+ }
903
+
904
+ .expand-leave-from,
905
+ .expand-enter-to {
906
+ height: auto;
907
+ opacity: 1;
908
+ transform: translateY(0);
909
+ }
910
+
911
+ .move-move {
912
+ transition: transform theme('transitionDuration.150') theme('transitionTimingFunction.swing');
398
913
  }
package/tailwind-base.ts CHANGED
@@ -22,7 +22,7 @@ export default {
22
22
  // includes a variant modifier like /hover:bg-red-.+/.
23
23
  safelist: [
24
24
  {
25
- pattern: /(bg|text|border)-(purple|royal|blue|seafoam|teal|green|yellow|orange|red|ice)(-[1,5,7]00)?$/,
25
+ pattern: /(bg|text|border)-(purple|royal|blue|seafoam|teal|green|yellow|orange|red|ice)(-[1,5,7]00)$/,
26
26
  },
27
27
  // Illustration.vue stroke color.
28
28
  {
@@ -37,6 +37,8 @@ export default {
37
37
  // These are custom classes that we might not use in our Stash code, but we
38
38
  // define in Stash and want to keep in the final CSS for downstream use.
39
39
  'heading-jumbo',
40
+ // allow white and black to be used dynamically
41
+ 'bg-white', 'bg-black', 'text-white', 'text-black', 'border-white', 'border-black',
40
42
  ],
41
43
 
42
44
  // Conflicts with our own custom classes
@@ -287,6 +289,9 @@ export default {
287
289
  // .tw-leading-*
288
290
  lineHeight: {
289
291
  initial: 'initial',
292
+ '2xl': 'calc(32/24)',
293
+ xl: 'calc(28/20)',
294
+ base: 'calc(24/16)',
290
295
  // for backwards compatibility with LL typography line-heights
291
296
  body: '20/14',
292
297
  small: '16/12',
@@ -1,17 +0,0 @@
1
- const t = "_button_1ocn8_2", o = {
2
- button: t,
3
- "button--solid": "_button--solid_1ocn8_36",
4
- "button--ghost": "_button--ghost_1ocn8_58",
5
- "button--primary": "_button--primary_1ocn8_81 _button--solid_1ocn8_36",
6
- "button--secondary": "_button--secondary_1ocn8_88 _button--ghost_1ocn8_58",
7
- "button--tertiary": "_button--tertiary_1ocn8_95 _button--ghost_1ocn8_58",
8
- "button--icon": "_button--icon_1ocn8_102",
9
- "button--iconLabel": "_button--iconLabel_1ocn8_103",
10
- "button--inline": "_button--inline_1ocn8_143",
11
- "button--blue": "_button--blue_1ocn8_161",
12
- "button--red": "_button--red_1ocn8_175"
13
- };
14
- export {
15
- o as s
16
- };
17
- //# sourceMappingURL=Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=Checkbox.vue_vue_type_style_index_0_scoped_0d7e7fd0_lang-4ed993c7.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Checkbox.vue_vue_type_style_index_0_scoped_0d7e7fd0_lang-4ed993c7.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Expand.vue_vue_type_script_setup_true_lang-5fe03d51.js","sources":["../src/components/Expand/Expand.vue"],"sourcesContent":["<script lang=\"ts\">\n export default {\n name: 'll-expand',\n };\n</script>\n\n<script setup lang=\"ts\">\n import { onMounted, ref } from 'vue';\n\n export type ExpandOuterElement = 'div' | 'td' | 'li';\n\n export interface ExpandProps {\n /**\n * The root element to use as the root element the expand transition gets applied to\n */\n is?: ExpandOuterElement;\n /**\n * Dictates whether the content is expanded or collapsed\n */\n isExpanded?: boolean;\n /**\n * Whether to only render content on expand\n */\n isLazy?: boolean;\n /**\n * The name of the transition to pass to the transition component\n * @see: https://vuejs.org/guide/built-ins/transition.html#css-based-transitions\n */\n transitionName?: string;\n }\n\n const props = withDefaults(defineProps<ExpandProps>(), {\n is: 'div',\n isExpanded: false,\n isLazy: false,\n transitionName: 'expand',\n });\n\n const emit =\n defineEmits<{\n (e: 'after-expand'): void;\n }>();\n\n const contentRef = ref<HTMLElement | null>(null);\n\n onMounted(() => {\n if (!props.isExpanded && contentRef.value) {\n contentRef.value.style.overflow = 'hidden';\n }\n });\n\n /**\n * Expands the element\n * @param {object} element - the element being expanded\n * @returns {void}\n */\n const onExpand = (element) => {\n // Trick to calculate the height of the hidden element\n element.style.visibility = 'hidden';\n element.style.height = 'auto';\n\n const height = element.offsetHeight;\n\n // Restore default styling\n element.style.visibility = '';\n element.style.display = '';\n\n // Set height on the element to zero\n element.style.height = 0;\n\n // Set expanded height after the other height change takes affect\n requestAnimationFrame(() => {\n element.style.height = `${height}px`;\n });\n };\n\n /**\n * Resores default styling after the expand animation is completed\n * @param {object} element - the element being expanded\n * @returns {void}\n */\n const afterExpand = (element) => {\n element.style.height = '';\n element.style.overflow = '';\n emit('after-expand');\n };\n\n /**\n * Collapses the element\n * @param {object} element - the element being expanded\n * @returns {void}\n */\n const onCollapse = (element) => {\n const height = element.offsetHeight;\n\n // Set height to the expanded height\n element.style.height = `${height}px`;\n element.style.overflow = 'hidden';\n\n // Set height to zero after the other height change takes affect\n requestAnimationFrame(() => {\n element.style.height = 0;\n });\n };\n</script>\n\n<template>\n <component\n :is=\"props.is\"\n class=\"stash-expand ll-expand\"\n data-test=\"stash-expand\"\n :class=\"{\n 'is-expanded': isExpanded,\n 'is-collapsed': !isExpanded,\n }\"\n >\n <transition :name=\"transitionName\" @after-enter=\"afterExpand\" @enter=\"onExpand\" @leave=\"onCollapse\">\n <template v-if=\"isLazy\">\n <div v-if=\"isExpanded\" ref=\"contentRef\">\n <slot></slot>\n </div>\n </template>\n <template v-else>\n <div v-show=\"isExpanded\" ref=\"contentRef\">\n <slot></slot>\n </div>\n </template>\n </transition>\n </component>\n</template>\n"],"names":["contentRef","ref","onMounted","props","onExpand","element","height","afterExpand","emit","onCollapse"],"mappings":";AACE,UAAe;AAAA,EACb,MAAM;AACR;;;;;;;;;;iBAwCMA,IAAaC,EAAwB,IAAI;AAE/C,IAAAC,EAAU,MAAM;AACd,MAAI,CAACC,EAAM,cAAcH,EAAW,UACvBA,EAAA,MAAM,MAAM,WAAW;AAAA,IACpC,CACD;AAOK,UAAAI,IAAW,CAACC,MAAY;AAE5B,MAAAA,EAAQ,MAAM,aAAa,UAC3BA,EAAQ,MAAM,SAAS;AAEvB,YAAMC,IAASD,EAAQ;AAGvB,MAAAA,EAAQ,MAAM,aAAa,IAC3BA,EAAQ,MAAM,UAAU,IAGxBA,EAAQ,MAAM,SAAS,GAGvB,sBAAsB,MAAM;AAClB,QAAAA,EAAA,MAAM,SAAS,GAAGC,CAAM;AAAA,MAAA,CACjC;AAAA,IAAA,GAQGC,IAAc,CAACF,MAAY;AAC/B,MAAAA,EAAQ,MAAM,SAAS,IACvBA,EAAQ,MAAM,WAAW,IACzBG,EAAK,cAAc;AAAA,IAAA,GAQfC,IAAa,CAACJ,MAAY;AAC9B,YAAMC,IAASD,EAAQ;AAGf,MAAAA,EAAA,MAAM,SAAS,GAAGC,CAAM,MAChCD,EAAQ,MAAM,WAAW,UAGzB,sBAAsB,MAAM;AAC1B,QAAAA,EAAQ,MAAM,SAAS;AAAA,MAAA,CACxB;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}