@budibase/bbui 3.12.13 → 3.12.14

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/bbui",
3
3
  "description": "A UI solution used in the different Budibase projects.",
4
- "version": "3.12.13",
4
+ "version": "3.12.14",
5
5
  "license": "MPL-2.0",
6
6
  "svelte": "src/index.ts",
7
7
  "module": "dist/bbui.mjs",
@@ -109,5 +109,5 @@
109
109
  }
110
110
  }
111
111
  },
112
- "gitHead": "3b8f23325e52fad7328a51218d61c171232d9e02"
112
+ "gitHead": "dbe8dd62a6714a1bf0768542434fdeca2f81052b"
113
113
  }
@@ -1,23 +1,40 @@
1
- <script>
1
+ <script lang="ts">
2
2
  import "@spectrum-css/accordion"
3
3
 
4
- export let itemName
5
- export let initialOpen
6
- export let header
7
- export let bold = true
4
+ export let itemName: string | undefined = undefined
5
+ export let initialOpen: boolean = false
6
+ export let header: string | undefined
7
+ export let headerSize: "S" | "M" | "L" = "S"
8
+ export let bold: boolean = true
9
+ export let noPadding: boolean = false
8
10
 
9
11
  let isOpen = initialOpen
10
12
 
11
- function getOpenClass(isOpen) {
12
- return isOpen ? "is-open" : ""
13
+ export function open() {
14
+ isOpen = true
15
+ }
16
+
17
+ export function close() {
18
+ isOpen = false
19
+ }
20
+
21
+ function headerSizeClass(size: "S" | "M" | "L") {
22
+ return size === "S"
23
+ ? "spectrum-Accordion-itemHeaderS"
24
+ : size === "M"
25
+ ? "spectrum-Accordion-itemHeaderM"
26
+ : "spectrum-Accordion-itemHeaderL"
13
27
  }
14
28
  </script>
15
29
 
16
30
  <div class="spectrum-Accordion" role={itemName}>
17
- <div class="spectrum-Accordion-item {getOpenClass(isOpen)}">
18
- <h3 class="spectrum-Accordion-itemHeading">
31
+ <div class="spectrum-Accordion-item" class:is-open={isOpen}>
32
+ <h3
33
+ class="spectrum-Accordion-itemHeading"
34
+ style={noPadding ? "margin-bottom: -10px;" : ""}
35
+ >
19
36
  <button
20
- class="spectrum-Accordion-itemHeader"
37
+ class={`spectrum-Accordion-itemHeader ${headerSizeClass(headerSize)}`}
21
38
  type="button"
22
39
  style="--font-weight: {bold ? 'bold' : 'normal'}"
23
40
  on:click={() => (isOpen = !isOpen)}
@@ -32,7 +49,13 @@
32
49
  <use xlink:href="#spectrum-css-icon-Chevron100" />
33
50
  </svg>
34
51
  </h3>
35
- <div class="spectrum-Accordion-itemContent" role={itemName}>
52
+ <div
53
+ class="spectrum-Accordion-itemContent"
54
+ role={itemName}
55
+ style={noPadding
56
+ ? "padding-left: 20px; padding-bottom: 0;"
57
+ : "padding-left: 30px;"}
58
+ >
36
59
  <slot />
37
60
  </div>
38
61
  </div>
@@ -47,12 +70,20 @@
47
70
  }
48
71
  .spectrum-Accordion-itemContent {
49
72
  width: 97%;
50
- padding-left: 30px;
51
73
  }
52
74
  .spectrum-Accordion-itemHeader {
53
75
  text-transform: none;
54
76
  font-weight: var(--font-weight);
55
- font-size: 0.875rem;
56
77
  min-height: auto;
57
78
  }
79
+ .spectrum-Accordion-itemHeaderS {
80
+ font-size: 0.875rem;
81
+ }
82
+ .spectrum-Accordion-itemHeaderM {
83
+ font-size: 1.2rem;
84
+ font-weight: 500;
85
+ }
86
+ .spectrum-Accordion-itemHeaderL {
87
+ font-size: 1.5rem;
88
+ }
58
89
  </style>