@lavalogic/scoria 0.40.13 → 0.40.15

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 (143) hide show
  1. package/README.md +58 -58
  2. package/dist/Components/AccordionGroup.svelte +35 -46
  3. package/dist/Components/AccordionGroupButton.svelte +68 -76
  4. package/dist/Components/Action.svelte +103 -135
  5. package/dist/Components/AlertModal.svelte +171 -190
  6. package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte +614 -697
  7. package/dist/Components/Base/BaseModal.svelte +90 -116
  8. package/dist/Components/Base/ContextWrapper.svelte +67 -72
  9. package/dist/Components/Base/Pagination.svelte +173 -196
  10. package/dist/Components/Base/Snippets.svelte +34 -36
  11. package/dist/Components/BigRadioSet.svelte +36 -38
  12. package/dist/Components/Bubble.svelte +78 -101
  13. package/dist/Components/Button.svelte +175 -208
  14. package/dist/Components/Checkbox.svelte +75 -86
  15. package/dist/Components/CollapsibleCard.svelte +72 -87
  16. package/dist/Components/CollapsibleMenuGroup.svelte +53 -57
  17. package/dist/Components/ConditionBuilder/ConditionBuilder.svelte +39 -64
  18. package/dist/Components/Contexts/ContextMenu.svelte +141 -156
  19. package/dist/Components/Contexts/ContextMenuDivider.svelte +15 -15
  20. package/dist/Components/Contexts/ContextMenuOption.svelte +53 -60
  21. package/dist/Components/Contexts/Toast.svelte +81 -86
  22. package/dist/Components/Contexts/ToastContainer.svelte +58 -62
  23. package/dist/Components/Contexts/Tooltip.svelte +36 -37
  24. package/dist/Components/DataMatrixIcon.svelte +95 -108
  25. package/dist/Components/DateInput.svelte +118 -146
  26. package/dist/Components/DatePicker.svelte +255 -294
  27. package/dist/Components/DesktopModal.svelte +70 -90
  28. package/dist/Components/Dial.svelte +167 -197
  29. package/dist/Components/DimensionInput.svelte +124 -169
  30. package/dist/Components/DragMenu/DragMenuHolder.svelte +98 -114
  31. package/dist/Components/DragMenu/DraggableCard.svelte +64 -76
  32. package/dist/Components/FileCard.svelte +21 -24
  33. package/dist/Components/FileUpload.svelte +190 -225
  34. package/dist/Components/GridInput.svelte +159 -196
  35. package/dist/Components/GridInputSet.svelte +24 -29
  36. package/dist/Components/HorizontalTabGroup.svelte +73 -89
  37. package/dist/Components/HorizontalTabGroupButton.svelte +40 -44
  38. package/dist/Components/Icon.svelte +99 -128
  39. package/dist/Components/Icons.js +357 -357
  40. package/dist/Components/InfoAlert.svelte +35 -38
  41. package/dist/Components/LoadingAnimation.svelte +691 -755
  42. package/dist/Components/LoadingModal.svelte +36 -44
  43. package/dist/Components/LoadingOverlay.svelte +22 -26
  44. package/dist/Components/Modal.svelte +204 -254
  45. package/dist/Components/MultiSelect.svelte +186 -216
  46. package/dist/Components/Nav/Nav.svelte +94 -110
  47. package/dist/Components/Nav/NavServiceMenuList.svelte +57 -61
  48. package/dist/Components/Nav/NavTab.svelte +58 -62
  49. package/dist/Components/Nav/ServiceMenuItem.svelte +103 -111
  50. package/dist/Components/Nav/ServicesNav.svelte +72 -79
  51. package/dist/Components/NumberInput.svelte +121 -155
  52. package/dist/Components/OptionCards.svelte +62 -73
  53. package/dist/Components/PageHeading.svelte +23 -25
  54. package/dist/Components/PasswordInput.svelte +69 -88
  55. package/dist/Components/PopoverButton.svelte +151 -0
  56. package/dist/Components/PopoverButton.svelte.d.ts +9 -0
  57. package/dist/Components/PopoverButtonProps.d.ts +21 -0
  58. package/dist/Components/PopoverButtonProps.js +1 -0
  59. package/dist/Components/Portal.svelte +29 -35
  60. package/dist/Components/ProgressBubble.svelte +91 -106
  61. package/dist/Components/QuerySelect.svelte +260 -346
  62. package/dist/Components/SidebarPanel.svelte +34 -36
  63. package/dist/Components/SingleSelect.svelte +196 -244
  64. package/dist/Components/StepButton.svelte +65 -70
  65. package/dist/Components/StepForm.svelte +115 -135
  66. package/dist/Components/Switch.svelte +57 -69
  67. package/dist/Components/Table/ARCHITECTURE.md +298 -298
  68. package/dist/Components/Table/Body/QuickSearchCell.svelte +578 -655
  69. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +42 -51
  70. package/dist/Components/Table/Body/Rows/ColumnList.svelte +42 -58
  71. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +403 -442
  72. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +51 -78
  73. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +165 -184
  74. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +110 -123
  75. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +134 -160
  76. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +190 -231
  77. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +82 -104
  78. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +52 -87
  79. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +122 -150
  80. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +132 -159
  81. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +190 -236
  82. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +173 -211
  83. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +204 -244
  84. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +140 -177
  85. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +188 -217
  86. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +173 -193
  87. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +166 -187
  88. package/dist/Components/Table/Body/Rows/TableRow.svelte +245 -288
  89. package/dist/Components/Table/Body/TableBody.svelte +141 -154
  90. package/dist/Components/Table/Headers/HighlightAllHeader.svelte +35 -41
  91. package/dist/Components/Table/Headers/SelectAllHeader.svelte +24 -30
  92. package/dist/Components/Table/Headers/TableHead.svelte +348 -402
  93. package/dist/Components/Table/Misc/ColumnPanel.svelte +37 -39
  94. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +35 -39
  95. package/dist/Components/Table/Misc/FilterInput.svelte +556 -619
  96. package/dist/Components/Table/Misc/FilterPanel.svelte +170 -183
  97. package/dist/Components/Table/Misc/FilterPanelModal.svelte +25 -31
  98. package/dist/Components/Table/Misc/ShareViewModal.svelte +252 -281
  99. package/dist/Components/Table/Misc/SidePanel.svelte +32 -35
  100. package/dist/Components/Table/Misc/TableConfigurationModal.svelte +574 -629
  101. package/dist/Components/Table/Misc/TableFooter.svelte +326 -332
  102. package/dist/Components/Table/Misc/TableHorizontalBar.svelte +134 -140
  103. package/dist/Components/Table/Misc/TableSidebar.svelte +183 -198
  104. package/dist/Components/Table/Misc/TableViewDropdown.svelte +83 -103
  105. package/dist/Components/Table/Misc/ToolboxPanel.svelte +83 -100
  106. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +88 -107
  107. package/dist/Components/Table/Misc/UpdateViewOptionsModal.svelte +163 -190
  108. package/dist/Components/Table/NestedTable.svelte +102 -128
  109. package/dist/Components/Table/Table.svelte +531 -663
  110. package/dist/Components/Test/TestContextConsumer.svelte +11 -13
  111. package/dist/Components/TextArea.svelte +95 -130
  112. package/dist/Components/TextInput.svelte +125 -176
  113. package/dist/Components/ThreeStateRadio.svelte +111 -130
  114. package/dist/Components/Touch/BoolCard.svelte +33 -45
  115. package/dist/Components/Touch/DateModal.svelte +164 -204
  116. package/dist/Components/Touch/EditCard.svelte +48 -59
  117. package/dist/Components/Touch/InfoCard.svelte +28 -31
  118. package/dist/Components/Touch/InfoTextCard.svelte +26 -28
  119. package/dist/Components/Touch/ModalExplanation.svelte +15 -17
  120. package/dist/Components/Touch/NumberKeyboard.svelte +181 -218
  121. package/dist/Components/Touch/NumberModal.svelte +59 -79
  122. package/dist/Components/Touch/PlusMinusCard.svelte +43 -46
  123. package/dist/Components/Touch/SelectModal.svelte +111 -126
  124. package/dist/Components/Touch/SummaryCard.svelte +80 -93
  125. package/dist/Components/Touch/TextAreaModal.svelte +72 -94
  126. package/dist/Components/Touch/TextModal.svelte +77 -105
  127. package/dist/Components/Touch/TouchCard.svelte +31 -33
  128. package/dist/Components/Touch/TouchModal.svelte +214 -270
  129. package/dist/Components/Touch/UtilityButton.svelte +88 -109
  130. package/dist/Components/VerticalTabGroup.svelte +60 -78
  131. package/dist/Components/VerticalTabGroupButton.svelte +54 -58
  132. package/dist/Helpers/Datamatrix.d.ts +19 -19
  133. package/dist/Helpers/Datamatrix.js +291 -291
  134. package/dist/Types/Examples/ExampleModal.svelte +31 -35
  135. package/dist/index.d.ts +2 -0
  136. package/dist/index.js +1 -0
  137. package/dist/scss/_basics.scss +12 -12
  138. package/dist/scss/_colours.scss +134 -134
  139. package/dist/scss/_mixins.scss +3392 -3392
  140. package/dist/scss/_motion.scss +57 -57
  141. package/dist/scss/_sizing.scss +85 -85
  142. package/dist/scss/_transitions.scss +8 -8
  143. package/package.json +1 -1
@@ -1,133 +1,114 @@
1
- <svelte:options runes />
2
-
3
- <script
4
- lang="ts"
5
- module
6
- >
7
- import { Colour, ColourSet } from '../scss/colours.js';
8
- import { Ternary } from '../Types/Internal/Ternary.js';
9
- import Action from './Action.svelte';
10
- import type { ThreeStateRadioProps } from './ThreeStateRadioProps.js';
11
- </script>
12
-
13
- <script lang="ts">
14
- let {
15
- value = $bindable(Ternary.Neutral),
16
- label,
17
- disabled,
18
- isValid,
19
- onchange,
20
- noDisabled = false,
21
- yesDisabled = false,
22
- neutralDisabled = false,
23
- noLabel,
24
- yesLabel,
25
- neutralLabel,
26
- noIcon,
27
- yesIcon,
28
- neutralIcon,
29
- }: ThreeStateRadioProps = $props();
30
-
31
- function setValue(next: Ternary): void {
32
- if (next === value) {
33
- return;
34
- }
35
- value = next;
36
- void onchange?.(next);
1
+ <svelte:options runes />
2
+
3
+ <script
4
+ lang="ts"
5
+ module
6
+ >import { Colour, ColourSet } from "../scss/colours.js";
7
+ import { Ternary } from "../Types/Internal/Ternary.js";
8
+ import Action from "./Action.svelte";
9
+ </script>
10
+
11
+ <script lang="ts">let { value = $bindable(Ternary.Neutral), label, disabled, isValid, onchange, noDisabled = false, yesDisabled = false, neutralDisabled = false, noLabel, yesLabel, neutralLabel, noIcon, yesIcon, neutralIcon } = $props();
12
+ function setValue(next) {
13
+ if (next === value) {
14
+ return;
37
15
  }
38
- </script>
39
-
40
- <div
41
- class="text-label"
42
- class:invalid={isValid === false}
43
- >
44
- {#if label != undefined}
45
- <span>{label}</span>
46
- {/if}
47
-
48
- <div
49
- class="radios"
50
- role="radiogroup"
51
- aria-label={label}
52
- >
53
- <label>
54
- <Action
55
- disabled={disabled || noDisabled}
56
- colourSet={value === Ternary.False ? ColourSet.Primary : ColourSet.Auxiliary}
57
- icon={{
58
- name: 'circle-cross',
59
- ...noIcon,
60
- colour: value === Ternary.False ? undefined : Colour['$ui-blue-5'],
61
- }}
62
- label={noLabel ?? 'No'}
63
- onclick={() => {
64
- setValue(Ternary.False);
65
- }}
66
- />
67
- <input
68
- disabled={disabled || noDisabled}
69
- type="radio"
70
- value="0"
71
- checked={value === Ternary.False}
72
- aria-label={noLabel ?? 'No'}
73
- onchange={() => {
74
- setValue(Ternary.False);
75
- }}
76
- />
77
- </label>
78
- <label>
79
- <Action
80
- disabled={disabled || neutralDisabled}
81
- colourSet={value === Ternary.Neutral ? ColourSet.Primary : ColourSet.Auxiliary}
82
- icon={{
83
- name: 'database',
84
- ...neutralIcon,
85
- colour: value === Ternary.Neutral ? undefined : Colour['$ui-blue-5'],
86
- }}
87
- label={neutralLabel ?? 'Allow system to decide'}
88
- onclick={() => {
89
- setValue(Ternary.Neutral);
90
- }}
91
- />
92
- <input
93
- disabled={disabled || neutralDisabled}
94
- type="radio"
95
- value="-1"
96
- checked={value === Ternary.Neutral}
97
- aria-label={neutralLabel ?? 'Allow system to decide'}
98
- onchange={() => {
99
- setValue(Ternary.Neutral);
100
- }}
101
- />
102
- </label>
103
- <label>
104
- <Action
105
- disabled={disabled || yesDisabled}
106
- colourSet={value === Ternary.True ? ColourSet.Primary : ColourSet.Auxiliary}
107
- icon={{
108
- name: 'circle-tick',
109
- ...yesIcon,
110
- colour: value === Ternary.True ? undefined : Colour['$ui-blue-5'],
111
- }}
112
- label={yesLabel ?? 'Yes'}
113
- onclick={() => {
114
- setValue(Ternary.True);
115
- }}
116
- />
117
- <input
118
- disabled={disabled || yesDisabled}
119
- type="radio"
120
- value="1"
121
- checked={value === Ternary.True}
122
- aria-label={yesLabel ?? 'Yes'}
123
- onchange={() => {
124
- setValue(Ternary.True);
125
- }}
126
- />
127
- </label>
128
- </div>
129
- </div>
130
-
16
+ value = next;
17
+ void onchange?.(next);
18
+ }
19
+ </script>
20
+
21
+ <div
22
+ class="text-label"
23
+ class:invalid={isValid === false}
24
+ >
25
+ {#if label != undefined}
26
+ <span>{label}</span>
27
+ {/if}
28
+
29
+ <div
30
+ class="radios"
31
+ role="radiogroup"
32
+ aria-label={label}
33
+ >
34
+ <label>
35
+ <Action
36
+ disabled={disabled || noDisabled}
37
+ colourSet={value === Ternary.False ? ColourSet.Primary : ColourSet.Auxiliary}
38
+ icon={{
39
+ name: 'circle-cross',
40
+ ...noIcon,
41
+ colour: value === Ternary.False ? undefined : Colour['$ui-blue-5'],
42
+ }}
43
+ label={noLabel ?? 'No'}
44
+ onclick={() => {
45
+ setValue(Ternary.False);
46
+ }}
47
+ />
48
+ <input
49
+ disabled={disabled || noDisabled}
50
+ type="radio"
51
+ value="0"
52
+ checked={value === Ternary.False}
53
+ aria-label={noLabel ?? 'No'}
54
+ onchange={() => {
55
+ setValue(Ternary.False);
56
+ }}
57
+ />
58
+ </label>
59
+ <label>
60
+ <Action
61
+ disabled={disabled || neutralDisabled}
62
+ colourSet={value === Ternary.Neutral ? ColourSet.Primary : ColourSet.Auxiliary}
63
+ icon={{
64
+ name: 'database',
65
+ ...neutralIcon,
66
+ colour: value === Ternary.Neutral ? undefined : Colour['$ui-blue-5'],
67
+ }}
68
+ label={neutralLabel ?? 'Allow system to decide'}
69
+ onclick={() => {
70
+ setValue(Ternary.Neutral);
71
+ }}
72
+ />
73
+ <input
74
+ disabled={disabled || neutralDisabled}
75
+ type="radio"
76
+ value="-1"
77
+ checked={value === Ternary.Neutral}
78
+ aria-label={neutralLabel ?? 'Allow system to decide'}
79
+ onchange={() => {
80
+ setValue(Ternary.Neutral);
81
+ }}
82
+ />
83
+ </label>
84
+ <label>
85
+ <Action
86
+ disabled={disabled || yesDisabled}
87
+ colourSet={value === Ternary.True ? ColourSet.Primary : ColourSet.Auxiliary}
88
+ icon={{
89
+ name: 'circle-tick',
90
+ ...yesIcon,
91
+ colour: value === Ternary.True ? undefined : Colour['$ui-blue-5'],
92
+ }}
93
+ label={yesLabel ?? 'Yes'}
94
+ onclick={() => {
95
+ setValue(Ternary.True);
96
+ }}
97
+ />
98
+ <input
99
+ disabled={disabled || yesDisabled}
100
+ type="radio"
101
+ value="1"
102
+ checked={value === Ternary.True}
103
+ aria-label={yesLabel ?? 'Yes'}
104
+ onchange={() => {
105
+ setValue(Ternary.True);
106
+ }}
107
+ />
108
+ </label>
109
+ </div>
110
+ </div>
111
+
131
112
  <style>.text-label {
132
113
  box-sizing: border-box;
133
114
  height: max(var(--input-height, 3rem), 2rem);
@@ -198,4 +179,4 @@ input {
198
179
  clip-path: rect(0 0 0 0);
199
180
  white-space: nowrap;
200
181
  border: 0;
201
- }</style>
182
+ }</style>
@@ -1,47 +1,35 @@
1
- <svelte:options runes />
2
-
3
- <script lang="ts">
4
- import { passthrough } from '../../Helpers/Helpers.svelte.js';
5
- import { Colour } from '../../scss/colours.js';
6
- import { Size } from '../../Types/Internal/Size.js';
7
- import Icon from '../Icon.svelte';
8
- import type { BoolCardProps } from './BoolCardProps.js';
9
- import type { IconProps } from '../IconProps.js';
10
-
11
- let {
12
- value = $bindable(false),
13
- disabled,
14
- onclick,
15
- children,
16
- nowidth,
17
- size = Size.Medium,
18
- }: BoolCardProps = $props();
19
-
20
- const iconName = $derived(value ? 'circle-tick' : ('circle' as IconProps['name']));
21
- </script>
22
-
23
- <button
24
- class:small={size == Size.Small}
25
- onkeydown={passthrough}
26
- disabled={disabled || undefined}
27
- aria-pressed={value}
28
- class:nowidth
29
- type="button"
30
- class="card"
31
- class:ticked={value}
32
- {onclick}
33
- >
34
- {#if children}
35
- <span
36
- class="value"
37
- class:small={size == Size.Small}>{@render children()}</span
38
- >{/if}<Icon
39
- name={iconName}
40
- size={Size.DoubleXLarge}
41
- colour={value ? Colour['$ui-white'] : undefined}
42
- />
43
- </button>
44
-
1
+ <svelte:options runes />
2
+
3
+ <script lang="ts">import { passthrough } from "../../Helpers/Helpers.svelte.js";
4
+ import { Colour } from "../../scss/colours.js";
5
+ import { Size } from "../../Types/Internal/Size.js";
6
+ import Icon from "../Icon.svelte";
7
+ let { value = $bindable(false), disabled, onclick, children, nowidth, size = Size.Medium } = $props();
8
+ const iconName = $derived(value ? "circle-tick" : "circle");
9
+ </script>
10
+
11
+ <button
12
+ class:small={size == Size.Small}
13
+ onkeydown={passthrough}
14
+ disabled={disabled || undefined}
15
+ aria-pressed={value}
16
+ class:nowidth
17
+ type="button"
18
+ class="card"
19
+ class:ticked={value}
20
+ {onclick}
21
+ >
22
+ {#if children}
23
+ <span
24
+ class="value"
25
+ class:small={size == Size.Small}>{@render children()}</span
26
+ >{/if}<Icon
27
+ name={iconName}
28
+ size={Size.DoubleXLarge}
29
+ colour={value ? Colour['$ui-white'] : undefined}
30
+ />
31
+ </button>
32
+
45
33
  <style>button.card {
46
34
  color: #3a4952;
47
35
  fill: #3a4952;
@@ -171,4 +159,4 @@ button.card .value.small {
171
159
  font-size: 1.1875rem;
172
160
  font-weight: 600;
173
161
  padding: 0;
174
- }</style>
162
+ }</style>