@lavalogic/scoria 0.40.32 → 0.40.33

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 (135) hide show
  1. package/README.md +58 -58
  2. package/dist/Components/AccordionGroup.svelte +28 -28
  3. package/dist/Components/AccordionGroupButton.svelte +60 -60
  4. package/dist/Components/Action.svelte +48 -48
  5. package/dist/Components/AlertModal.svelte +102 -102
  6. package/dist/Components/Base/ContextWrapper.svelte +45 -45
  7. package/dist/Components/Base/Pagination.svelte +135 -135
  8. package/dist/Components/Base/Snippets.svelte +25 -25
  9. package/dist/Components/BigRadioSet.svelte +34 -34
  10. package/dist/Components/Bubble.svelte +38 -38
  11. package/dist/Components/Button.svelte +83 -83
  12. package/dist/Components/Checkbox.svelte +71 -71
  13. package/dist/Components/CollapsibleCard.svelte +59 -59
  14. package/dist/Components/CollapsibleMenuGroup.svelte +43 -43
  15. package/dist/Components/ConditionBuilder/ConditionBuilder.svelte +101 -101
  16. package/dist/Components/Contexts/ContextMenu.svelte +76 -76
  17. package/dist/Components/Contexts/ContextMenuDivider.svelte +15 -15
  18. package/dist/Components/Contexts/ContextMenuOption.svelte +38 -38
  19. package/dist/Components/Contexts/Toast.svelte +71 -71
  20. package/dist/Components/Contexts/ToastContainer.svelte +34 -34
  21. package/dist/Components/Contexts/Tooltip.svelte +32 -32
  22. package/dist/Components/DataMatrixIcon.svelte +37 -37
  23. package/dist/Components/DateInput.svelte +80 -80
  24. package/dist/Components/DatePicker.svelte +86 -86
  25. package/dist/Components/DesktopModal.svelte +65 -65
  26. package/dist/Components/Dial.svelte +35 -35
  27. package/dist/Components/DimensionInput.svelte +95 -95
  28. package/dist/Components/DragMenu/DragMenuHolder.svelte +53 -53
  29. package/dist/Components/DragMenu/DraggableCard.svelte +49 -49
  30. package/dist/Components/FileCard.svelte +18 -18
  31. package/dist/Components/FileUpload.svelte +115 -115
  32. package/dist/Components/GridInput.svelte +123 -123
  33. package/dist/Components/GridInputSet.svelte +21 -21
  34. package/dist/Components/HorizontalTabGroup.svelte +54 -54
  35. package/dist/Components/HorizontalTabGroupButton.svelte +32 -32
  36. package/dist/Components/Icon.svelte +68 -68
  37. package/dist/Components/InfoAlert.svelte +32 -32
  38. package/dist/Components/LoadingAnimation.svelte +228 -227
  39. package/dist/Components/LoadingModal.svelte +19 -19
  40. package/dist/Components/LoadingOverlay.svelte +20 -20
  41. package/dist/Components/Modal.svelte +127 -127
  42. package/dist/Components/MultiSelect.svelte +126 -126
  43. package/dist/Components/Nav/Nav.svelte +71 -71
  44. package/dist/Components/Nav/NavServiceMenuList.svelte +37 -37
  45. package/dist/Components/Nav/NavTab.svelte +46 -46
  46. package/dist/Components/Nav/ServiceMenuItem.svelte +62 -62
  47. package/dist/Components/Nav/ServicesNav.svelte +50 -50
  48. package/dist/Components/NumberInput.svelte +98 -98
  49. package/dist/Components/OptionCards.svelte +58 -58
  50. package/dist/Components/PageHeading.svelte +21 -21
  51. package/dist/Components/PasswordInput.svelte +61 -61
  52. package/dist/Components/PopoverButton.svelte +53 -53
  53. package/dist/Components/Portal.svelte +7 -7
  54. package/dist/Components/ProgressBubble.svelte +42 -42
  55. package/dist/Components/QuerySelect.svelte +102 -102
  56. package/dist/Components/ResourceCalendar/ResourceCalendar.svelte +241 -241
  57. package/dist/Components/SidebarPanel.svelte +32 -32
  58. package/dist/Components/SingleSelect.svelte +122 -122
  59. package/dist/Components/StepButton.svelte +48 -48
  60. package/dist/Components/StepForm.svelte +58 -58
  61. package/dist/Components/Switch.svelte +43 -43
  62. package/dist/Components/Table/ARCHITECTURE.md +298 -298
  63. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +30 -30
  64. package/dist/Components/Table/Body/Rows/ColumnList.svelte +24 -24
  65. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +165 -165
  66. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +13 -13
  67. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +120 -120
  68. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +81 -81
  69. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +92 -92
  70. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +110 -110
  71. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +54 -54
  72. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +35 -35
  73. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +64 -64
  74. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +82 -82
  75. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +88 -88
  76. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +90 -90
  77. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +96 -96
  78. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +71 -71
  79. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +124 -124
  80. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +91 -91
  81. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +88 -88
  82. package/dist/Components/Table/Body/Rows/TableRow.svelte +127 -127
  83. package/dist/Components/Table/Body/TableBody.svelte +92 -92
  84. package/dist/Components/Table/Headers/HighlightAllHeader.svelte +25 -25
  85. package/dist/Components/Table/Headers/SelectAllHeader.svelte +20 -20
  86. package/dist/Components/Table/Headers/TableHead.svelte +175 -175
  87. package/dist/Components/Table/Misc/ColumnPanel.svelte +32 -32
  88. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +29 -29
  89. package/dist/Components/Table/Misc/FilterInput.svelte +326 -326
  90. package/dist/Components/Table/Misc/FilterPanel.svelte +79 -79
  91. package/dist/Components/Table/Misc/FilterPanelModal.svelte +21 -21
  92. package/dist/Components/Table/Misc/ShareViewModal.svelte +118 -118
  93. package/dist/Components/Table/Misc/SidePanel.svelte +24 -24
  94. package/dist/Components/Table/Misc/TableConfigurationModal.svelte +318 -318
  95. package/dist/Components/Table/Misc/TableFooter.svelte +201 -201
  96. package/dist/Components/Table/Misc/TableHorizontalBar.svelte +112 -112
  97. package/dist/Components/Table/Misc/TableSidebar.svelte +116 -116
  98. package/dist/Components/Table/Misc/TableViewDropdown.svelte +25 -25
  99. package/dist/Components/Table/Misc/ToolboxPanel.svelte +60 -60
  100. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +63 -63
  101. package/dist/Components/Table/Misc/UpdateViewOptionsModal.svelte +101 -101
  102. package/dist/Components/Table/NestedTable.svelte +29 -29
  103. package/dist/Components/Table/Table.svelte +140 -140
  104. package/dist/Components/Test/TestContextConsumer.svelte +8 -8
  105. package/dist/Components/TextArea.svelte +92 -90
  106. package/dist/Components/TextInput.svelte +128 -117
  107. package/dist/Components/ThreeStateRadio.svelte +101 -101
  108. package/dist/Components/Touch/BoolCard.svelte +27 -27
  109. package/dist/Components/Touch/DateModal.svelte +98 -98
  110. package/dist/Components/Touch/EditCard.svelte +44 -44
  111. package/dist/Components/Touch/InfoCard.svelte +25 -25
  112. package/dist/Components/Touch/InfoTextCard.svelte +22 -22
  113. package/dist/Components/Touch/ModalExplanation.svelte +13 -13
  114. package/dist/Components/Touch/NumberKeyboard.svelte +81 -81
  115. package/dist/Components/Touch/NumberModal.svelte +49 -49
  116. package/dist/Components/Touch/PlusMinusCard.svelte +40 -40
  117. package/dist/Components/Touch/SelectModal.svelte +86 -86
  118. package/dist/Components/Touch/SummaryCard.svelte +74 -74
  119. package/dist/Components/Touch/TextAreaModal.svelte +53 -53
  120. package/dist/Components/Touch/TextModal.svelte +56 -56
  121. package/dist/Components/Touch/TouchCard.svelte +28 -28
  122. package/dist/Components/Touch/TouchModal.svelte +141 -141
  123. package/dist/Components/Touch/UtilityButton.svelte +63 -63
  124. package/dist/Components/VerticalTabGroup.svelte +38 -38
  125. package/dist/Components/VerticalTabGroupButton.svelte +46 -46
  126. package/dist/Helpers/Datamatrix.d.ts +19 -19
  127. package/dist/Helpers/Datamatrix.js +291 -291
  128. package/dist/Types/Examples/ExampleModal.svelte +27 -27
  129. package/dist/paraglide/README.md +1 -1
  130. package/dist/scss/_basics.scss +12 -12
  131. package/dist/scss/_colours.scss +140 -140
  132. package/dist/scss/_motion.scss +57 -57
  133. package/dist/scss/_sizing.scss +85 -85
  134. package/dist/scss/_transitions.scss +8 -8
  135. package/package.json +1 -1
@@ -1,82 +1,82 @@
1
- <svelte:options runes />
2
-
3
- <script
4
- module
5
- lang="ts"
1
+ <svelte:options runes />
2
+
3
+ <script
4
+ module
5
+ lang="ts"
6
6
  >import { passthrough } from "../../Helpers/Helpers.svelte.js";
7
7
  import { Size } from "../../Types/Internal/Size.js";
8
8
  import Icon from "../Icon.svelte";
9
9
  // CSS handles the dot-leader rendering via a flex pseudo element. We no
10
10
  // longer interpolate a 108-character literal of dots into the markup.
11
- </script>
12
-
11
+ </script>
12
+
13
13
  <script lang="ts">const { bubbles, desktop = false, heading, icon, keyValues, editable = false, error = false, onclick } = $props();
14
- </script>
15
-
16
- {#snippet _heading()}
17
- {#if desktop}
18
- <span
19
- class="desktop-heading"
20
- class:invalid={error}>{heading}</span
21
- >
22
- <span
23
- class="desktop-heading-border"
24
- class:invalid={error}>{heading}</span
25
- >
26
- {:else}
27
- {#if bubbles}
28
- {#each bubbles as bubble (bubble)}
29
- <div class="card-detail">{bubble}</div>
30
- {/each}
31
- {/if}
32
-
33
- <div class="card-row heading">
34
- <h3>{heading}</h3>
35
- {#if editable}
36
- <Icon
37
- name="edit"
38
- size={Size.DoubleXLarge}
39
- />
40
- {/if}
41
- </div>
42
- {/if}
43
- {/snippet}
44
-
45
- <button
46
- class:desktop
47
- onkeydown={passthrough}
48
- {onclick}
49
- class="summary-card"
50
- class:error
51
- aria-label={onclick ? heading : undefined}
52
- type="button"
53
- >
54
- <!-- eslint-disable-next-line @typescript-eslint/no-confusing-void-expression -->
55
- {@render _heading()}
56
- <div class="columns">
57
- <div class="left">
58
- {#each keyValues as { key, value } (key)}
59
- <div class="card-row detail">
60
- <span class="key">{key}</span>
61
- <span
62
- class="leader"
63
- aria-hidden="true"
64
- ></span>
65
- <span class="value">{value}</span>
66
- </div>
67
- {/each}
68
- </div>
69
- {#if icon}
70
- <div class="right">
71
- <Icon
72
- name={icon}
73
- size={Size.Medium}
74
- />
75
- </div>
76
- {/if}
77
- </div>
78
- </button>
79
-
14
+ </script>
15
+
16
+ {#snippet _heading()}
17
+ {#if desktop}
18
+ <span
19
+ class="desktop-heading"
20
+ class:invalid={error}>{heading}</span
21
+ >
22
+ <span
23
+ class="desktop-heading-border"
24
+ class:invalid={error}>{heading}</span
25
+ >
26
+ {:else}
27
+ {#if bubbles}
28
+ {#each bubbles as bubble (bubble)}
29
+ <div class="card-detail">{bubble}</div>
30
+ {/each}
31
+ {/if}
32
+
33
+ <div class="card-row heading">
34
+ <h3>{heading}</h3>
35
+ {#if editable}
36
+ <Icon
37
+ name="edit"
38
+ size={Size.DoubleXLarge}
39
+ />
40
+ {/if}
41
+ </div>
42
+ {/if}
43
+ {/snippet}
44
+
45
+ <button
46
+ class:desktop
47
+ onkeydown={passthrough}
48
+ {onclick}
49
+ class="summary-card"
50
+ class:error
51
+ aria-label={onclick ? heading : undefined}
52
+ type="button"
53
+ >
54
+ <!-- eslint-disable-next-line @typescript-eslint/no-confusing-void-expression -->
55
+ {@render _heading()}
56
+ <div class="columns">
57
+ <div class="left">
58
+ {#each keyValues as { key, value } (key)}
59
+ <div class="card-row detail">
60
+ <span class="key">{key}</span>
61
+ <span
62
+ class="leader"
63
+ aria-hidden="true"
64
+ ></span>
65
+ <span class="value">{value}</span>
66
+ </div>
67
+ {/each}
68
+ </div>
69
+ {#if icon}
70
+ <div class="right">
71
+ <Icon
72
+ name={icon}
73
+ size={Size.Medium}
74
+ />
75
+ </div>
76
+ {/if}
77
+ </div>
78
+ </button>
79
+
80
80
  <style>ul {
81
81
  list-style: none;
82
82
  display: flex;
@@ -357,4 +357,4 @@ button.summary-card h3 {
357
357
  border-bottom: 1px dotted #647d8e;
358
358
  margin: 0 0.375rem;
359
359
  transform: translateY(-0.25em);
360
- }</style>
360
+ }</style>
@@ -1,5 +1,5 @@
1
- <svelte:options runes />
2
-
1
+ <svelte:options runes />
2
+
3
3
  <script lang="ts">import { m as i18n } from "../../paraglide/messages.js";
4
4
  import { useAsyncFlag } from "../../Helpers/AsyncFlag.svelte.js";
5
5
  import { devCatch, passthrough } from "../../Helpers/Helpers.svelte.js";
@@ -21,56 +21,56 @@ async function resetValue() {
21
21
  textAreaRef?.select();
22
22
  }
23
23
  const isValid = useAsyncFlag(() => typeof _isValid === "function" ? _isValid(value) : _isValid, true);
24
- </script>
25
-
26
- <TouchModal
27
- onclose={() => {
28
- cancelEditing();
29
- }}
30
- {header}
31
- mandatory
32
- minHeight="400px"
33
- minWidth="600px"
34
- onsubmit={(e: SubmitEvent) => {
35
- e.preventDefault();
36
- confirm(value);
37
- }}
38
- {explanation}
39
- >
40
- <TextArea
41
- {uppercase}
42
- labelTop={label}
43
- {placeholder}
44
- bind:value
45
- variant={InputVariant.Modal}
46
- bind:textAreaRef
47
- invalid={!isValid.value}
48
- rightIcon={{
49
- name: 'cross',
50
- size: Size.Large,
51
- colour: Colour['$font-primary'],
52
- }}
53
- onRightIconClick={resetValue}
54
- />
55
-
56
- {#snippet footer()}
57
- <div class="modal-footer">
58
- <button
59
- onkeydown={passthrough}
60
- type="submit"
61
- disabled={!isValid.value}>{i18n['scoria.action.confirm']()}</button
62
- >
63
- <button
64
- onkeydown={passthrough}
65
- type="button"
66
- onclick={() => {
67
- cancelEditing();
68
- }}>{i18n['scoria.action.cancel']()}</button
69
- >
70
- </div>
71
- {/snippet}
72
- </TouchModal>
73
-
24
+ </script>
25
+
26
+ <TouchModal
27
+ onclose={() => {
28
+ cancelEditing();
29
+ }}
30
+ {header}
31
+ mandatory
32
+ minHeight="400px"
33
+ minWidth="600px"
34
+ onsubmit={(e: SubmitEvent) => {
35
+ e.preventDefault();
36
+ confirm(value);
37
+ }}
38
+ {explanation}
39
+ >
40
+ <TextArea
41
+ {uppercase}
42
+ labelTop={label}
43
+ {placeholder}
44
+ bind:value
45
+ variant={InputVariant.Modal}
46
+ bind:textAreaRef
47
+ invalid={!isValid.value}
48
+ rightIcon={{
49
+ name: 'cross',
50
+ size: Size.Large,
51
+ colour: Colour['$font-primary'],
52
+ }}
53
+ onRightIconClick={resetValue}
54
+ />
55
+
56
+ {#snippet footer()}
57
+ <div class="modal-footer">
58
+ <button
59
+ onkeydown={passthrough}
60
+ type="submit"
61
+ disabled={!isValid.value}>{i18n['scoria.action.confirm']()}</button
62
+ >
63
+ <button
64
+ onkeydown={passthrough}
65
+ type="button"
66
+ onclick={() => {
67
+ cancelEditing();
68
+ }}>{i18n['scoria.action.cancel']()}</button
69
+ >
70
+ </div>
71
+ {/snippet}
72
+ </TouchModal>
73
+
74
74
  <style>dialog {
75
75
  overflow: clip;
76
76
  background-color: #e9ecf1;
@@ -318,4 +318,4 @@ button {
318
318
  display: block;
319
319
  border-width: 2px;
320
320
  border-radius: 4px;
321
- }</style>
321
+ }</style>
@@ -1,5 +1,5 @@
1
- <svelte:options runes />
2
-
1
+ <svelte:options runes />
2
+
3
3
  <script lang="ts">import { m as i18n } from "../../paraglide/messages.js";
4
4
  import { useAsyncFlag } from "../../Helpers/AsyncFlag.svelte.js";
5
5
  import { devCatch, passthrough } from "../../Helpers/Helpers.svelte.js";
@@ -23,59 +23,59 @@ async function resetValue() {
23
23
  inputRef?.select();
24
24
  }
25
25
  const isValid = useAsyncFlag(() => typeof _isValid === "function" ? _isValid(value) : _isValid, true);
26
- </script>
27
-
28
- <TouchModal
29
- onclose={() => {
30
- cancelEditing();
31
- }}
32
- {header}
33
- {mandatory}
34
- {width}
35
- {minWidth}
36
- {staticWidth}
37
- {minHeight}
38
- {height}
39
- onsubmit={(e: SubmitEvent) => {
40
- e.preventDefault();
41
- confirm(value);
42
- }}
43
- {explanation}
44
- >
45
- <TextInput
46
- {uppercase}
47
- labelTop={label}
48
- {placeholder}
49
- variant={InputVariant.Modal}
50
- bind:inputRef
51
- bind:value
52
- showErrorColours
53
- invalid={!isValid.value}
54
- rightIcon={{
55
- name: 'cross',
56
- size: Size.Large,
57
- colour: Colour['$font-primary'],
58
- }}
59
- onRightIconClick={resetValue}
60
- />
61
- {#snippet footer()}
62
- <div class="modal-footer">
63
- <button
64
- onkeydown={passthrough}
65
- type="submit"
66
- disabled={!isValid.value}>{i18n['scoria.action.confirm']()}</button
67
- >
68
- <button
69
- onkeydown={passthrough}
70
- type="button"
71
- onclick={() => {
72
- cancelEditing();
73
- }}>{i18n['scoria.action.cancel']()}</button
74
- >
75
- </div>
76
- {/snippet}
77
- </TouchModal>
78
-
26
+ </script>
27
+
28
+ <TouchModal
29
+ onclose={() => {
30
+ cancelEditing();
31
+ }}
32
+ {header}
33
+ {mandatory}
34
+ {width}
35
+ {minWidth}
36
+ {staticWidth}
37
+ {minHeight}
38
+ {height}
39
+ onsubmit={(e: SubmitEvent) => {
40
+ e.preventDefault();
41
+ confirm(value);
42
+ }}
43
+ {explanation}
44
+ >
45
+ <TextInput
46
+ {uppercase}
47
+ labelTop={label}
48
+ {placeholder}
49
+ variant={InputVariant.Modal}
50
+ bind:inputRef
51
+ bind:value
52
+ showErrorColours
53
+ invalid={!isValid.value}
54
+ rightIcon={{
55
+ name: 'cross',
56
+ size: Size.Large,
57
+ colour: Colour['$font-primary'],
58
+ }}
59
+ onRightIconClick={resetValue}
60
+ />
61
+ {#snippet footer()}
62
+ <div class="modal-footer">
63
+ <button
64
+ onkeydown={passthrough}
65
+ type="submit"
66
+ disabled={!isValid.value}>{i18n['scoria.action.confirm']()}</button
67
+ >
68
+ <button
69
+ onkeydown={passthrough}
70
+ type="button"
71
+ onclick={() => {
72
+ cancelEditing();
73
+ }}>{i18n['scoria.action.cancel']()}</button
74
+ >
75
+ </div>
76
+ {/snippet}
77
+ </TouchModal>
78
+
79
79
  <style>dialog {
80
80
  overflow: clip;
81
81
  background-color: #e9ecf1;
@@ -323,4 +323,4 @@ button {
323
323
  display: block;
324
324
  border-width: 2px;
325
325
  border-radius: 4px;
326
- }</style>
326
+ }</style>
@@ -1,34 +1,34 @@
1
- <svelte:options runes />
2
-
1
+ <svelte:options runes />
2
+
3
3
  <script lang="ts">import { m as i18n } from "../../paraglide/messages.js";
4
4
  import { Colour } from "../../scss/colours.js";
5
5
  import Action from "../Action.svelte";
6
6
  let { children, additionalButtons, highlighted = $bindable(false) } = $props();
7
- </script>
8
-
9
- <div
10
- class="card"
11
- class:highlighted
12
- >
13
- <div class="float-right">
14
- {#if additionalButtons}
15
- {@render additionalButtons()}
16
- {/if}
17
- <Action
18
- icon={{
19
- name: 'star-banner',
20
- colour: highlighted ? Colour['$brand-primary'] : Colour['$ui-blue-4'],
21
- }}
22
- backgroundColour={Colour['$transparent-0']}
23
- label={i18n['scoria.action.highlight_card']()}
24
- onclick={() => {
25
- highlighted = !highlighted;
26
- }}
27
- />
28
- </div>
29
- {@render children()}
30
- </div>
31
-
7
+ </script>
8
+
9
+ <div
10
+ class="card"
11
+ class:highlighted
12
+ >
13
+ <div class="float-right">
14
+ {#if additionalButtons}
15
+ {@render additionalButtons()}
16
+ {/if}
17
+ <Action
18
+ icon={{
19
+ name: 'star-banner',
20
+ colour: highlighted ? Colour['$brand-primary'] : Colour['$ui-blue-4'],
21
+ }}
22
+ backgroundColour={Colour['$transparent-0']}
23
+ label={i18n['scoria.action.highlight_card']()}
24
+ onclick={() => {
25
+ highlighted = !highlighted;
26
+ }}
27
+ />
28
+ </div>
29
+ {@render children()}
30
+ </div>
31
+
32
32
  <style>.card {
33
33
  color: #3a4952;
34
34
  fill: #3a4952;
@@ -118,4 +118,4 @@ let { children, additionalButtons, highlighted = $bindable(false) } = $props();
118
118
  padding: 0.375rem 0.5rem;
119
119
  margin-inline-start: 0;
120
120
  width: fit-content;
121
- }</style>
121
+ }</style>