@alveole/core 1.3.5 → 1.3.6

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=displayDate.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayDate.test.d.ts","sourceRoot":"","sources":["../../src/date/displayDate.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { displayDate, displayDatetime } from './displayDate';
2
+ describe('displayDate', () => {
3
+ it('formate une date string ISO correctement', () => {
4
+ const result = displayDate('2025-07-22');
5
+ expect(result).toBe('22 July 2025');
6
+ });
7
+ it('formate une date Date correctement', () => {
8
+ const result = displayDate(new Date('2025-07-22T00:00:00Z'));
9
+ expect(result).toBe('22 July 2025');
10
+ });
11
+ it('retourne le fallback si la date est invalide', () => {
12
+ const result = displayDate('invalid-date', { fallback: 'Date inconnue' });
13
+ expect(result).toBe('Date inconnue');
14
+ });
15
+ it('utilise le format personnalisé si fourni', () => {
16
+ const result = displayDate('2025-07-22', { format: 'd MMMM yyyy' });
17
+ expect(result).toBe('22 July 2025');
18
+ });
19
+ });
20
+ describe('displayDatetime', () => {
21
+ it('formate une date string ISO avec heure', () => {
22
+ const result = displayDatetime('2025-07-22T15:30:00');
23
+ expect(result).toBe('22 July 2025 à 15:30');
24
+ });
25
+ it('retourne le fallback si la date est invalide', () => {
26
+ const result = displayDatetime('invalid-date', { fallback: 'Date/heure inconnue' });
27
+ expect(result).toBe('Date/heure inconnue');
28
+ });
29
+ it('fonctionne avec un objet Date', () => {
30
+ const date = new Date('2025-07-22T10:45:00');
31
+ const result = displayDatetime(date);
32
+ expect(result).toBe('22 July 2025 à 10:45');
33
+ });
34
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=formatMs.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatMs.test.d.ts","sourceRoot":"","sources":["../../src/date/formatMs.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { formatMs } from './formatMs';
2
+ describe('formatMs', () => {
3
+ it('formate 0 ms', () => {
4
+ expect(formatMs(0)).toBe('00:00,00');
5
+ });
6
+ it('formate un petit nombre de ms (< 1s)', () => {
7
+ expect(formatMs(90)).toBe('00:00,09');
8
+ expect(formatMs(999)).toBe('00:00,99');
9
+ });
10
+ it('passe correctement la seconde entière', () => {
11
+ expect(formatMs(1000)).toBe('00:01,00');
12
+ expect(formatMs(1599)).toBe('00:01,59');
13
+ });
14
+ it('formate avec padding sur 2 chiffres', () => {
15
+ expect(formatMs(5560)).toBe('00:05,56');
16
+ });
17
+ it('gère les minutes et seconds correctement', () => {
18
+ expect(formatMs(61090)).toBe('01:01,09');
19
+ expect(formatMs(123456)).toBe('02:03,45');
20
+ });
21
+ it('gère des durées plus longues', () => {
22
+ expect(formatMs(10 * 60000 + 1000 + 90)).toBe('10:01,09');
23
+ });
24
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=getDurationBetweenTimes.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDurationBetweenTimes.test.d.ts","sourceRoot":"","sources":["../../src/date/getDurationBetweenTimes.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { getDurationBetweenTimes } from './getDurationBetweenTimes';
2
+ describe('getDurationBetweenTimes', () => {
3
+ it('retourne la durée entre deux heures', () => {
4
+ expect(getDurationBetweenTimes('07:00', '12:00')).toBe('05:00');
5
+ });
6
+ it('retourne la durée avec des minutes', () => {
7
+ expect(getDurationBetweenTimes('01:00', '02:30')).toBe('01:30');
8
+ });
9
+ it('retourne 00:00 si la durée est nulle', () => {
10
+ expect(getDurationBetweenTimes('08:00', '08:00')).toBe('00:00');
11
+ });
12
+ it('retourne 00:00 si end est avant start', () => {
13
+ expect(getDurationBetweenTimes('10:00', '09:00')).toBe('00:00');
14
+ });
15
+ it('retourne la defaultValue si la durée est nulle', () => {
16
+ expect(getDurationBetweenTimes('08:00', '08:00', { defaultValue: '—' })).toBe('—');
17
+ });
18
+ it('retourne la defaultValue si end est avant start', () => {
19
+ expect(getDurationBetweenTimes('10:00', '09:00', { defaultValue: '—' })).toBe('—');
20
+ });
21
+ it('retourne 00:00 si la durée est négative même sans options', () => {
22
+ expect(getDurationBetweenTimes('23:59', '00:00')).toBe('00:00');
23
+ });
24
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=isAfterDate.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isAfterDate.test.d.ts","sourceRoot":"","sources":["../../src/date/isAfterDate.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { isAfterDate } from './isAfterDate';
2
+ describe('isAfterDate', () => {
3
+ it('retourne true pour une date après une date de référence', () => {
4
+ expect(isAfterDate('2025-07-22', '2025-07-21')).toBe(true);
5
+ });
6
+ it('retourne false pour une date avant une date de référence', () => {
7
+ expect(isAfterDate('2025-07-21', '2025-07-22')).toBe(false);
8
+ });
9
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=isBeforeDate.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isBeforeDate.test.d.ts","sourceRoot":"","sources":["../../src/date/isBeforeDate.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { isBeforeDate } from './isBeforeDate';
2
+ describe('isBeforeDate', () => {
3
+ it('retourne true si la première date est avant la seconde', () => {
4
+ expect(isBeforeDate('2025-07-21', '2025-07-22')).toBe(true);
5
+ });
6
+ it('retourne false si la première date est égale à la seconde', () => {
7
+ expect(isBeforeDate('2025-07-22', '2025-07-22')).toBe(false);
8
+ });
9
+ it('retourne false si la première date est après la seconde', () => {
10
+ expect(isBeforeDate('2025-07-23', '2025-07-22')).toBe(false);
11
+ });
12
+ it('gère les dates avec heures correctement', () => {
13
+ expect(isBeforeDate('2025-07-22T10:00:00Z', '2025-07-22T12:00:00Z')).toBe(true);
14
+ expect(isBeforeDate('2025-07-22T14:00:00Z', '2025-07-22T12:00:00Z')).toBe(false);
15
+ });
16
+ it('retourne false si une date est invalide', () => {
17
+ expect(isBeforeDate('invalid-date', '2025-07-22')).toBe(false);
18
+ expect(isBeforeDate('2025-07-22', 'invalid-date')).toBe(false);
19
+ });
20
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=isValidDate.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isValidDate.test.d.ts","sourceRoot":"","sources":["../../src/date/isValidDate.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import { isValidDate } from './isValidDate';
2
+ describe('isValidDate', () => {
3
+ it('retourne true pour une string ISO valide', () => {
4
+ expect(isValidDate('2025-07-22')).toBe(true);
5
+ });
6
+ it('retourne true pour un objet Date valide', () => {
7
+ expect(isValidDate(new Date('2025-07-22T10:00:00Z'))).toBe(true);
8
+ expect(isValidDate('2025-07-22T10:00:00Z')).toBe(true);
9
+ expect(isValidDate('2025-10-16T14:07:54.137+02:00')).toBe(true);
10
+ expect(isValidDate('2025-10-22T12:20')).toBe(true);
11
+ });
12
+ it('retourne false pour un objet Date invalide', () => {
13
+ expect(isValidDate(new Date('invalid-date'))).toBe(false);
14
+ });
15
+ it('retourne false pour une valeur qui n’est ni string ni Date', () => {
16
+ expect(isValidDate(123)).toBe(false);
17
+ expect(isValidDate(null)).toBe(false);
18
+ expect(isValidDate(undefined)).toBe(false);
19
+ expect(isValidDate({})).toBe(false);
20
+ expect(isValidDate('75')).toBe(false);
21
+ });
22
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alveole/core",
3
- "version": "1.3.5",
3
+ "version": "1.3.6",
4
4
  "description": "Core for Alveole.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",