@tmlmobilidade/ui 20250828.1453.35 → 20250828.1517.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.
@@ -1,5 +1,6 @@
1
1
  'use client';
2
2
  import { useMeContext } from '../contexts/Me.context.js';
3
+ import { useDebouncedCallback } from '@mantine/hooks';
3
4
  import { useState, useEffect } from 'react';
4
5
 
5
6
  /**
@@ -21,9 +22,12 @@ function useUserPreference(scope, key, defaultValue) {
21
22
  const value = meContext.actions.getPreference(scope, key);
22
23
  setPreferenceValue(value);
23
24
  }, [meContext.data.user]);
24
- const handleSetPreferenceValue = (value) => {
25
+ const savePreferenceValue = useDebouncedCallback((value) => {
25
26
  meContext.actions.updatePreference(scope, key, value);
27
+ }, 500);
28
+ const handleSetPreferenceValue = (value) => {
26
29
  setPreferenceValue(value);
30
+ savePreferenceValue(value);
27
31
  };
28
32
  //
29
33
  // C. Render components
@@ -1 +1 @@
1
- {"version":3,"file":"use-user-preference.js","sources":["../../../src/hooks/use-user-preference.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-user-preference.js","sources":["../../../src/hooks/use-user-preference.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -991,6 +991,7 @@
991
991
  display: grid;
992
992
  grid-template-columns: auto 1fr;
993
993
  gap: var(--size-spacing-sm);
994
+ align-items: center;
994
995
  }
995
996
 
996
997
  /* * */
@@ -2160,6 +2161,7 @@
2160
2161
  display: flex;
2161
2162
  align-items: center;
2162
2163
  justify-content: center;
2164
+ width: 100%;
2163
2165
  border-bottom: 1px solid var(--color-system-border-200);
2164
2166
 
2165
2167
 
package/dist/styles.css CHANGED
@@ -1050,6 +1050,7 @@ figure {
1050
1050
  display: grid;
1051
1051
  grid-template-columns: auto 1fr;
1052
1052
  gap: var(--size-spacing-sm);
1053
+ align-items: center;
1053
1054
  }
1054
1055
 
1055
1056
  /* * */
@@ -2219,6 +2220,7 @@ figure {
2219
2220
  display: flex;
2220
2221
  align-items: center;
2221
2222
  justify-content: center;
2223
+ width: 100%;
2222
2224
  border-bottom: 1px solid var(--color-system-border-200);
2223
2225
 
2224
2226
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tmlmobilidade/ui",
3
3
  "description": "UI components for Transportes Metropolitanos de Lisboa (TML) web applications.",
4
- "version": "20250828.1453.35",
4
+ "version": "20250828.1517.15",
5
5
  "author": "João de Vasconcelos & Jusi Monteiro",
6
6
  "license": "AGPL-3.0-or-later",
7
7
  "publishConfig": {