@lavalogic/scoria 0.37.45 → 0.37.46
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/dist/Components/Contexts/Toast.svelte +9 -6
- package/dist/Components/Contexts/Toast.svelte.d.ts +8 -5
- package/dist/Components/Nav/Nav.svelte +11 -0
- package/dist/Components/Table/Body/QuickSearchCell.svelte +4 -0
- package/dist/Components/Table/ColumnFactory.svelte.js +12 -28
- package/dist/Helpers/Helpers.svelte.d.ts +45 -0
- package/dist/Helpers/Helpers.svelte.js +95 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/scss/_mixins.scss +10 -0
- package/package.json +7 -6
|
@@ -2,16 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
<!--
|
|
4
4
|
@component
|
|
5
|
-
Single toast rendering. Renders a
|
|
6
|
-
|
|
7
|
-
underlying toast drives both the colouring and the live-region
|
|
5
|
+
Single toast rendering. Renders a pill near the bottom-right of the
|
|
6
|
+
viewport via `ToastContainer`, sliding in vertically. The severity of
|
|
7
|
+
the underlying toast drives both the colouring and the live-region
|
|
8
8
|
semantics:
|
|
9
9
|
|
|
10
10
|
- `Validity.Invalid` -> `role="alert"`, `aria-live="assertive"`.
|
|
11
11
|
- All other severities -> `role="status"`, `aria-live="polite"`.
|
|
12
12
|
|
|
13
|
-
The slide transition
|
|
14
|
-
|
|
13
|
+
The slide transition animates the pill's height (the `y` axis) so the
|
|
14
|
+
message keeps its final width for the whole animation — animating the
|
|
15
|
+
`x` axis instead reflows the text from stacked-and-wrapped to a single
|
|
16
|
+
line as the pill widens. It honours `prefers-reduced-motion` through
|
|
17
|
+
the shared `usePrefersReducedMotion` helper; when the user has opted in
|
|
15
18
|
the duration collapses to zero. The copy action is only shown when
|
|
16
19
|
`navigator.clipboard` is present (HTTPS or `localhost`).
|
|
17
20
|
-->
|
|
@@ -44,7 +47,7 @@ the duration collapses to zero. The copy action is only shown when
|
|
|
44
47
|
class:success={toast.result == Validity.Valid}
|
|
45
48
|
class:warning={toast.result == Validity.Warning}
|
|
46
49
|
class:error={toast.result == Validity.Invalid}
|
|
47
|
-
transition:slide={{ axis: '
|
|
50
|
+
transition:slide={{ axis: 'y', duration: slideDuration }}
|
|
48
51
|
>
|
|
49
52
|
<div>
|
|
50
53
|
<div class="noshrink">
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import type { ToastProps } from './ToastProps.js';
|
|
2
2
|
/**
|
|
3
|
-
* Single toast rendering. Renders a
|
|
4
|
-
*
|
|
5
|
-
* underlying toast drives both the colouring and the live-region
|
|
3
|
+
* Single toast rendering. Renders a pill near the bottom-right of the
|
|
4
|
+
* viewport via `ToastContainer`, sliding in vertically. The severity of
|
|
5
|
+
* the underlying toast drives both the colouring and the live-region
|
|
6
6
|
* semantics:
|
|
7
7
|
*
|
|
8
8
|
* - `Validity.Invalid` -> `role="alert"`, `aria-live="assertive"`.
|
|
9
9
|
* - All other severities -> `role="status"`, `aria-live="polite"`.
|
|
10
10
|
*
|
|
11
|
-
* The slide transition
|
|
12
|
-
*
|
|
11
|
+
* The slide transition animates the pill's height (the `y` axis) so the
|
|
12
|
+
* message keeps its final width for the whole animation — animating the
|
|
13
|
+
* `x` axis instead reflows the text from stacked-and-wrapped to a single
|
|
14
|
+
* line as the pill widens. It honours `prefers-reduced-motion` through
|
|
15
|
+
* the shared `usePrefersReducedMotion` helper; when the user has opted in
|
|
13
16
|
* the duration collapses to zero. The copy action is only shown when
|
|
14
17
|
* `navigator.clipboard` is present (HTTPS or `localhost`).
|
|
15
18
|
*/
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
lang="ts"
|
|
5
5
|
generics="T"
|
|
6
6
|
>
|
|
7
|
+
import { afterNavigate } from '$app/navigation';
|
|
7
8
|
import { Size } from '../../Types/Internal/Size.js';
|
|
8
9
|
import Icon from '../Icon.svelte';
|
|
9
10
|
import type { NavProps } from './NavProps.js';
|
|
@@ -31,6 +32,16 @@
|
|
|
31
32
|
|
|
32
33
|
let showServicesDialog = $state(false);
|
|
33
34
|
let showUserDialog = $state(false);
|
|
35
|
+
|
|
36
|
+
// Close both nav popovers after any navigation. Selecting an item in
|
|
37
|
+
// the Services menu is a navigation, so the menu must dismiss itself —
|
|
38
|
+
// without this it only closed when the consumer happened to remount
|
|
39
|
+
// `<Nav>` (e.g. on a main-area change), leaving it open when the user
|
|
40
|
+
// picked a sibling item within the same area.
|
|
41
|
+
afterNavigate(() => {
|
|
42
|
+
showServicesDialog = false;
|
|
43
|
+
showUserDialog = false;
|
|
44
|
+
});
|
|
34
45
|
</script>
|
|
35
46
|
|
|
36
47
|
<nav class="main-navigation">
|
|
@@ -792,6 +792,10 @@ div.input-wrapper-parent div.input-wrapper.right {
|
|
|
792
792
|
flex-grow: 2;
|
|
793
793
|
--input-padding-right: 2.6rem;
|
|
794
794
|
}
|
|
795
|
+
div.input-wrapper-parent > :global(.select-wrapper) {
|
|
796
|
+
flex: 1 1 auto;
|
|
797
|
+
min-width: 0;
|
|
798
|
+
}
|
|
795
799
|
|
|
796
800
|
[role=cell] {
|
|
797
801
|
--input-width: 100%;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* `minSize`, …) via the `commonProps(...)` helper. `id` is passed explicitly
|
|
12
12
|
* at each call site so its narrowed literal type survives the object spread.
|
|
13
13
|
*/
|
|
14
|
-
import { generateUUID, syntheticColumnId } from '../../Helpers/Helpers.svelte.js';
|
|
14
|
+
import { formatDateTime, generateUUID, syntheticColumnId } from '../../Helpers/Helpers.svelte.js';
|
|
15
15
|
import { CheckboxDef } from './Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js';
|
|
16
16
|
import { DateInputDef } from './Types/Columns/Definitions/Accessors/DateInputDef.svelte.js';
|
|
17
17
|
import { NumberInputDef } from './Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js';
|
|
@@ -172,28 +172,17 @@ function normaliseOptionsLoader(options) {
|
|
|
172
172
|
* tests can exercise individual factory methods without round-tripping
|
|
173
173
|
* through a full `createTable(...)` call.
|
|
174
174
|
*/
|
|
175
|
-
/** Format a Date
|
|
175
|
+
/** Format a Date / ISO-8601 string / epoch number for display. Used by
|
|
176
176
|
* `col.display` when the column declares `filterValueType: 'Date'`, so
|
|
177
|
-
* raw backend timestamps render as localised date+time rather than the
|
|
178
|
-
* ISO payload.
|
|
177
|
+
* raw backend timestamps render as a localised date+time rather than the
|
|
178
|
+
* ISO payload. Delegates to the exported `formatDateTime` helper so table
|
|
179
|
+
* cells and non-table date surfaces format identically. Anything that is
|
|
180
|
+
* not a date-like value (the column was mis-declared) yields `''`. */
|
|
179
181
|
function formatLocaleDate(value) {
|
|
180
|
-
if (value
|
|
181
|
-
return value;
|
|
182
|
+
if (value instanceof Date || typeof value === 'string' || typeof value === 'number') {
|
|
183
|
+
return formatDateTime(value);
|
|
182
184
|
}
|
|
183
|
-
|
|
184
|
-
if (value instanceof Date) {
|
|
185
|
-
d = value;
|
|
186
|
-
}
|
|
187
|
-
else if (typeof value === 'string' || typeof value === 'number') {
|
|
188
|
-
const parsed = new Date(value);
|
|
189
|
-
if (!Number.isNaN(parsed.getTime())) {
|
|
190
|
-
d = parsed;
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
if (d == null) {
|
|
194
|
-
return value;
|
|
195
|
-
}
|
|
196
|
-
return d.toLocaleString();
|
|
185
|
+
return '';
|
|
197
186
|
}
|
|
198
187
|
export function createColumnFactory() {
|
|
199
188
|
const factory = {
|
|
@@ -338,14 +327,9 @@ export function createColumnFactory() {
|
|
|
338
327
|
const dateDisplayValue = opts.filterValueType === 'Date'
|
|
339
328
|
? (row, index) => {
|
|
340
329
|
const v = rawValue(row, index);
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
return formatted == null ? null : String(formatted);
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
const formatted = formatLocaleDate(v);
|
|
348
|
-
return formatted == null ? null : String(formatted);
|
|
330
|
+
return v instanceof Promise
|
|
331
|
+
? v.then((resolved) => formatLocaleDate(resolved))
|
|
332
|
+
: formatLocaleDate(v);
|
|
349
333
|
}
|
|
350
334
|
: undefined;
|
|
351
335
|
const def = new DisplayDef({
|
|
@@ -133,6 +133,51 @@ export declare function SQLFriendlyWithLocalTime(date: InputDate | InputDateWith
|
|
|
133
133
|
* timestamps consistently across scoria.
|
|
134
134
|
*/
|
|
135
135
|
export declare const localTimeFormat: Intl.DateTimeFormat;
|
|
136
|
+
/**
|
|
137
|
+
* Default locale used by {@link formatDate} / {@link formatDateTime}
|
|
138
|
+
* when a caller does not pass one explicitly. UK English — a 24-hour
|
|
139
|
+
* clock and `DD/MM/YYYY` day-first ordering.
|
|
140
|
+
*/
|
|
141
|
+
export declare const defaultDateLocale = "en-GB";
|
|
142
|
+
/**
|
|
143
|
+
* Canonical date + time display formatter. Use this anywhere a
|
|
144
|
+
* timestamp is shown to a user — table cells, cards, modals, headers —
|
|
145
|
+
* so every surface formats identically.
|
|
146
|
+
*
|
|
147
|
+
* The optional `locale` (a BCP-47 tag such as `'en-GB'`, `'en-US'`,
|
|
148
|
+
* `'de-DE'`) selects the display conventions: it drives the
|
|
149
|
+
* day/month/year ordering and separators — `en-GB` → `19/05/2026,
|
|
150
|
+
* 14:30`, `en-US` → `05/19/2026, 14:30`. It defaults to
|
|
151
|
+
* {@link defaultDateLocale}. The clock is always 24-hour and the
|
|
152
|
+
* timezone is the runtime-resolved one regardless of locale.
|
|
153
|
+
*
|
|
154
|
+
* - `Date` values format directly.
|
|
155
|
+
* - `string` / `number` values are parsed via `new Date(...)`. An
|
|
156
|
+
* unparseable string is returned unchanged (so a non-date value is
|
|
157
|
+
* not silently blanked); an unparseable number yields `''`.
|
|
158
|
+
* - `null` / `undefined` / empty string yield `''`.
|
|
159
|
+
*
|
|
160
|
+
* For a time-only render use {@link localTimeFormat}; for a date with
|
|
161
|
+
* no time use {@link formatDate}; for the SQL-backend serialisation
|
|
162
|
+
* shapes use {@link SQLFriendly} / {@link SQLFriendlyWithLocalTime}.
|
|
163
|
+
*/
|
|
164
|
+
export declare function formatDateTime(value: Date | string | number | null | undefined, locale?: string): string;
|
|
165
|
+
/**
|
|
166
|
+
* Canonical date-only display formatter. Use this for values that carry
|
|
167
|
+
* no meaningful time component — due dates, expiry dates, pod-line date
|
|
168
|
+
* attributes — so every surface formats identically. When the value
|
|
169
|
+
* also has a time the user needs to see, use {@link formatDateTime}.
|
|
170
|
+
*
|
|
171
|
+
* The optional `locale` works exactly as in {@link formatDateTime} — it
|
|
172
|
+
* selects the day/month/year ordering and separators and defaults to
|
|
173
|
+
* {@link defaultDateLocale}.
|
|
174
|
+
*
|
|
175
|
+
* Parsing and null-handling match {@link formatDateTime}: a `Date`
|
|
176
|
+
* formats directly; `string` / `number` are parsed via `new Date(...)`;
|
|
177
|
+
* an unparseable string is returned unchanged; `null` / `undefined` /
|
|
178
|
+
* empty string yield `''`.
|
|
179
|
+
*/
|
|
180
|
+
export declare function formatDate(value: Date | string | number | null | undefined, locale?: string): string;
|
|
136
181
|
/**
|
|
137
182
|
* Barcode-scanner helper. Wire as an `onkeydown` on **buttons and
|
|
138
183
|
* other non-text focusable elements** that should yield focus when a
|
|
@@ -245,6 +245,101 @@ export const localTimeFormat = new Intl.DateTimeFormat('en-GB', {
|
|
|
245
245
|
second: '2-digit',
|
|
246
246
|
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
247
247
|
});
|
|
248
|
+
/**
|
|
249
|
+
* Default locale used by {@link formatDate} / {@link formatDateTime}
|
|
250
|
+
* when a caller does not pass one explicitly. UK English — a 24-hour
|
|
251
|
+
* clock and `DD/MM/YYYY` day-first ordering.
|
|
252
|
+
*/
|
|
253
|
+
export const defaultDateLocale = 'en-GB';
|
|
254
|
+
/**
|
|
255
|
+
* Per-locale caches of `Intl.DateTimeFormat` instances. Constructing a
|
|
256
|
+
* formatter is comparatively expensive, so the first call for a given
|
|
257
|
+
* locale builds it and every later call for that locale reuses it. The
|
|
258
|
+
* caches only ever grow and hold immutable formatters, so they are safe
|
|
259
|
+
* to share across SSR requests.
|
|
260
|
+
*/
|
|
261
|
+
const dateTimeFormatters = {};
|
|
262
|
+
const dateFormatters = {};
|
|
263
|
+
/** Build (and cache) a full date + time formatter for `locale`. */
|
|
264
|
+
function dateTimeFormatterFor(locale) {
|
|
265
|
+
return (dateTimeFormatters[locale] ??= new Intl.DateTimeFormat(locale, {
|
|
266
|
+
day: '2-digit',
|
|
267
|
+
month: '2-digit',
|
|
268
|
+
year: 'numeric',
|
|
269
|
+
hour: '2-digit',
|
|
270
|
+
hourCycle: 'h23',
|
|
271
|
+
minute: '2-digit',
|
|
272
|
+
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
273
|
+
}));
|
|
274
|
+
}
|
|
275
|
+
/** Build (and cache) a date-only formatter for `locale`. */
|
|
276
|
+
function dateFormatterFor(locale) {
|
|
277
|
+
return (dateFormatters[locale] ??= new Intl.DateTimeFormat(locale, {
|
|
278
|
+
day: '2-digit',
|
|
279
|
+
month: '2-digit',
|
|
280
|
+
year: 'numeric',
|
|
281
|
+
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
282
|
+
}));
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Canonical date + time display formatter. Use this anywhere a
|
|
286
|
+
* timestamp is shown to a user — table cells, cards, modals, headers —
|
|
287
|
+
* so every surface formats identically.
|
|
288
|
+
*
|
|
289
|
+
* The optional `locale` (a BCP-47 tag such as `'en-GB'`, `'en-US'`,
|
|
290
|
+
* `'de-DE'`) selects the display conventions: it drives the
|
|
291
|
+
* day/month/year ordering and separators — `en-GB` → `19/05/2026,
|
|
292
|
+
* 14:30`, `en-US` → `05/19/2026, 14:30`. It defaults to
|
|
293
|
+
* {@link defaultDateLocale}. The clock is always 24-hour and the
|
|
294
|
+
* timezone is the runtime-resolved one regardless of locale.
|
|
295
|
+
*
|
|
296
|
+
* - `Date` values format directly.
|
|
297
|
+
* - `string` / `number` values are parsed via `new Date(...)`. An
|
|
298
|
+
* unparseable string is returned unchanged (so a non-date value is
|
|
299
|
+
* not silently blanked); an unparseable number yields `''`.
|
|
300
|
+
* - `null` / `undefined` / empty string yield `''`.
|
|
301
|
+
*
|
|
302
|
+
* For a time-only render use {@link localTimeFormat}; for a date with
|
|
303
|
+
* no time use {@link formatDate}; for the SQL-backend serialisation
|
|
304
|
+
* shapes use {@link SQLFriendly} / {@link SQLFriendlyWithLocalTime}.
|
|
305
|
+
*/
|
|
306
|
+
export function formatDateTime(value, locale = defaultDateLocale) {
|
|
307
|
+
if (value == null || value === '') {
|
|
308
|
+
return '';
|
|
309
|
+
}
|
|
310
|
+
// eslint-disable-next-line svelte/prefer-svelte-reactivity
|
|
311
|
+
const date = value instanceof Date ? value : new Date(value);
|
|
312
|
+
if (Number.isNaN(date.getTime())) {
|
|
313
|
+
return typeof value === 'string' ? value : '';
|
|
314
|
+
}
|
|
315
|
+
return dateTimeFormatterFor(locale).format(date);
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Canonical date-only display formatter. Use this for values that carry
|
|
319
|
+
* no meaningful time component — due dates, expiry dates, pod-line date
|
|
320
|
+
* attributes — so every surface formats identically. When the value
|
|
321
|
+
* also has a time the user needs to see, use {@link formatDateTime}.
|
|
322
|
+
*
|
|
323
|
+
* The optional `locale` works exactly as in {@link formatDateTime} — it
|
|
324
|
+
* selects the day/month/year ordering and separators and defaults to
|
|
325
|
+
* {@link defaultDateLocale}.
|
|
326
|
+
*
|
|
327
|
+
* Parsing and null-handling match {@link formatDateTime}: a `Date`
|
|
328
|
+
* formats directly; `string` / `number` are parsed via `new Date(...)`;
|
|
329
|
+
* an unparseable string is returned unchanged; `null` / `undefined` /
|
|
330
|
+
* empty string yield `''`.
|
|
331
|
+
*/
|
|
332
|
+
export function formatDate(value, locale = defaultDateLocale) {
|
|
333
|
+
if (value == null || value === '') {
|
|
334
|
+
return '';
|
|
335
|
+
}
|
|
336
|
+
// eslint-disable-next-line svelte/prefer-svelte-reactivity
|
|
337
|
+
const date = value instanceof Date ? value : new Date(value);
|
|
338
|
+
if (Number.isNaN(date.getTime())) {
|
|
339
|
+
return typeof value === 'string' ? value : '';
|
|
340
|
+
}
|
|
341
|
+
return dateFormatterFor(locale).format(date);
|
|
342
|
+
}
|
|
248
343
|
/**
|
|
249
344
|
* Barcode-scanner helper. Wire as an `onkeydown` on **buttons and
|
|
250
345
|
* other non-text focusable elements** that should yield focus when a
|
package/dist/index.d.ts
CHANGED
|
@@ -167,7 +167,7 @@ export { TooltipContext } from './Contexts/TooltipContext.svelte.js';
|
|
|
167
167
|
export { UntypedInputContext } from './Contexts/UntypedInputContext.svelte.js';
|
|
168
168
|
export { Delay } from './Delay/Delay.js';
|
|
169
169
|
export { DATAMatrix } from './Helpers/Datamatrix.js';
|
|
170
|
-
export { asyncAll, asyncEvery, asyncFilter, asyncFilterIndices, asyncFlatMap, asyncForEach, asyncMap, asyncSleep, asyncSome, autoPluralise, cssLength, devCatch, ellipses, generateShortUUID, generateUUID, generateWeakId, getCanvasContext, getErrorMessage, gridItem, isDateTuple, isNumericArray, isValidEmailAddress, loadingText, localTimeFormat, passthrough, refWrapper, scoriaStorageKey, SQLFriendly, SQLFriendlyWithLocalTime, vowels, } from './Helpers/Helpers.svelte.js';
|
|
170
|
+
export { asyncAll, asyncEvery, asyncFilter, asyncFilterIndices, asyncFlatMap, asyncForEach, asyncMap, asyncSleep, asyncSome, autoPluralise, cssLength, defaultDateLocale, devCatch, ellipses, formatDate, formatDateTime, generateShortUUID, generateUUID, generateWeakId, getCanvasContext, getErrorMessage, gridItem, isDateTuple, isNumericArray, isValidEmailAddress, loadingText, localTimeFormat, passthrough, refWrapper, scoriaStorageKey, SQLFriendly, SQLFriendlyWithLocalTime, vowels, } from './Helpers/Helpers.svelte.js';
|
|
171
171
|
export { type INamed } from './Helpers/INamed.js';
|
|
172
172
|
export { type PrefersReducedMotionResult, usePrefersReducedMotion, } from './Helpers/prefersReducedMotion.svelte.js';
|
|
173
173
|
export { readJSON, readVersionedJSON, writeJSON } from './Helpers/Storage.js';
|
package/dist/index.js
CHANGED
|
@@ -124,7 +124,7 @@ export { TooltipContext } from './Contexts/TooltipContext.svelte.js';
|
|
|
124
124
|
export { UntypedInputContext } from './Contexts/UntypedInputContext.svelte.js';
|
|
125
125
|
export { Delay } from './Delay/Delay.js';
|
|
126
126
|
export { DATAMatrix } from './Helpers/Datamatrix.js';
|
|
127
|
-
export { asyncAll, asyncEvery, asyncFilter, asyncFilterIndices, asyncFlatMap, asyncForEach, asyncMap, asyncSleep, asyncSome, autoPluralise, cssLength, devCatch, ellipses,
|
|
127
|
+
export { asyncAll, asyncEvery, asyncFilter, asyncFilterIndices, asyncFlatMap, asyncForEach, asyncMap, asyncSleep, asyncSome, autoPluralise, cssLength, defaultDateLocale, devCatch, ellipses, formatDate, formatDateTime,
|
|
128
128
|
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
129
129
|
generateShortUUID, generateUUID, generateWeakId, getCanvasContext, getErrorMessage, gridItem, isDateTuple, isNumericArray, isValidEmailAddress, loadingText, localTimeFormat, passthrough, refWrapper, scoriaStorageKey, SQLFriendly, SQLFriendlyWithLocalTime, vowels, } from './Helpers/Helpers.svelte.js';
|
|
130
130
|
export {} from './Helpers/INamed.js';
|
package/dist/scss/_mixins.scss
CHANGED
|
@@ -1981,6 +1981,16 @@
|
|
|
1981
1981
|
--input-padding-right: 2.6rem;
|
|
1982
1982
|
}
|
|
1983
1983
|
}
|
|
1984
|
+
|
|
1985
|
+
// Select-type quick filters (MultiSelect / QuerySelect) render
|
|
1986
|
+
// their `.select-wrapper` root directly as a flex child here.
|
|
1987
|
+
// With no explicit grow it sizes to its content and leaves the
|
|
1988
|
+
// cell's grey background showing alongside it; stretch it to
|
|
1989
|
+
// fill the column the way the text / number filter inputs do.
|
|
1990
|
+
> :global(.select-wrapper) {
|
|
1991
|
+
flex: 1 1 auto;
|
|
1992
|
+
min-width: 0;
|
|
1993
|
+
}
|
|
1984
1994
|
}
|
|
1985
1995
|
}
|
|
1986
1996
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lavalogic/scoria",
|
|
3
3
|
"description": "Svelte components used for the FloWMS Web Frontend",
|
|
4
|
-
"version": "0.37.
|
|
4
|
+
"version": "0.37.46",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "restricted"
|
|
7
7
|
},
|
|
@@ -22,11 +22,12 @@
|
|
|
22
22
|
"types": "./dist/index.d.ts",
|
|
23
23
|
"svelte": "./dist/index.js"
|
|
24
24
|
},
|
|
25
|
-
"./scss
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
"./scss/colours": "./dist/scss/_colours.scss",
|
|
26
|
+
"./scss/sizing": "./dist/scss/_sizing.scss",
|
|
27
|
+
"./scss/mixins": "./dist/scss/_mixins.scss",
|
|
28
|
+
"./scss/basics": "./dist/scss/_basics.scss",
|
|
29
|
+
"./scss/motion": "./dist/scss/_motion.scss",
|
|
30
|
+
"./scss/transitions": "./dist/scss/_transitions.scss"
|
|
30
31
|
},
|
|
31
32
|
"peerDependencies": {
|
|
32
33
|
"@sveltejs/kit": "^2.57.1",
|