@tactics/toddle-styleguide 5.4.14 → 5.4.16

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 (33) hide show
  1. package/index.tsx +1 -2
  2. package/package.json +41 -45
  3. package/src/components/atoms/calendar/calendar.component.tsx +3 -2
  4. package/src/components/atoms/calendar/calendar.preview.tsx +2 -0
  5. package/src/components/molecules/calendar-select/calendar-select.component.tsx +4 -3
  6. package/src/components/molecules/calendar-select/calendar-select.preview.tsx +3 -2
  7. package/src/components/molecules/date-input/date-input.preview.tsx +2 -0
  8. package/src/components/molecules/day/day.component.tsx +4 -4
  9. package/src/components/molecules/select-picker/select-picker.component.tsx +3 -0
  10. package/src/components/organisms/text-bubble/text-bubble.preview.tsx +1 -1
  11. package/src/utilities/datetime/clock.class.tsx +1 -15
  12. package/ios/.xcode.env +0 -11
  13. package/ios/Podfile +0 -60
  14. package/ios/Podfile.lock +0 -2731
  15. package/ios/Podfile.properties.json +0 -4
  16. package/ios/Styleguide/AppDelegate.swift +0 -70
  17. package/ios/Styleguide/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png +0 -0
  18. package/ios/Styleguide/Images.xcassets/AppIcon.appiconset/Contents.json +0 -14
  19. package/ios/Styleguide/Images.xcassets/Contents.json +0 -6
  20. package/ios/Styleguide/Images.xcassets/SplashScreenBackground.colorset/Contents.json +0 -20
  21. package/ios/Styleguide/Images.xcassets/SplashScreenLegacy.imageset/Contents.json +0 -23
  22. package/ios/Styleguide/Images.xcassets/SplashScreenLegacy.imageset/image.png +0 -0
  23. package/ios/Styleguide/Images.xcassets/SplashScreenLegacy.imageset/image@2x.png +0 -0
  24. package/ios/Styleguide/Images.xcassets/SplashScreenLegacy.imageset/image@3x.png +0 -0
  25. package/ios/Styleguide/Info.plist +0 -97
  26. package/ios/Styleguide/PrivacyInfo.xcprivacy +0 -48
  27. package/ios/Styleguide/SplashScreen.storyboard +0 -48
  28. package/ios/Styleguide/Styleguide-Bridging-Header.h +0 -3
  29. package/ios/Styleguide/Styleguide.entitlements +0 -5
  30. package/ios/Styleguide/Supporting/Expo.plist +0 -12
  31. package/ios/Styleguide.xcodeproj/project.pbxproj +0 -558
  32. package/ios/Styleguide.xcodeproj/xcshareddata/xcschemes/Styleguide.xcscheme +0 -88
  33. package/ios/Styleguide.xcworkspace/contents.xcworkspacedata +0 -10
package/index.tsx CHANGED
@@ -111,7 +111,7 @@ import CreateResponsiveStyle from './src/theme/responsive/index';
111
111
  // ================================
112
112
  // Date / Time Utilities
113
113
  // ================================
114
- import { ClockInterface, SystemClock, UTCSystemClock } from './src/utilities/datetime/clock.class';
114
+ import { ClockInterface, SystemClock } from './src/utilities/datetime/clock.class';
115
115
  import { YearAndMonth, YearAndMonthInterface, YearAndMonthLocaleAwareOutputFormat, YearAndMonthOutputFormat } from './src/utilities/datetime/yearandmonth.class';
116
116
  import { Year, YearInterface, YearOutputFormat } from './src/utilities/datetime/year.class';
117
117
  import { SystemTimezone, TimeZone, TimeZoneInterface, UTCTimezone } from './src/utilities/datetime/timezone.class';
@@ -232,7 +232,6 @@ export {
232
232
  // Date / Time Utilities
233
233
  ClockInterface,
234
234
  SystemClock,
235
- UTCSystemClock,
236
235
  DateOnly,
237
236
  DateOnlyInterface,
238
237
  DateOnlyLocaleAwareOutputFormat,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tactics/toddle-styleguide",
3
- "version": "5.4.14",
3
+ "version": "5.4.16",
4
4
  "main": "index.tsx",
5
5
  "types": "index.d.ts",
6
6
  "prepublish": "tsc",
@@ -21,64 +21,60 @@
21
21
  "packageManager": "yarn@3.3.1",
22
22
  "dependencies": {
23
23
  "@callstack/react-theme-provider": "^3.0.8",
24
- "@expo/metro-runtime": "~6.1.2",
25
- "@expo/webpack-config": "~19.0.1",
26
24
  "@lottiefiles/dotlottie-react": "^0.14.3",
27
25
  "@miblanchard/react-native-slider": "^2.3.1",
28
- "@react-native-picker/picker": "2.11.1",
29
- "@react-navigation/bottom-tabs": "^6.5.8",
30
- "@react-navigation/drawer": "^6.6.3",
31
- "@react-navigation/native": "^6.1.7",
32
- "@react-navigation/native-stack": "^6.9.13",
33
- "@react-navigation/stack": "^6.3.17",
34
26
  "@tactics/kinderopvang-branding": "1.0.3",
35
- "@testing-library/react-native": "^12.1.2",
36
- "@types/luxon": "^3.3.0",
37
- "@types/xdate": "^0.8.32",
38
27
  "dayjs": "^1.11.18",
39
28
  "dayjs-plugin-utc": "^0.1.2",
40
- "expo": "54.0.12",
41
- "expo-application": "~7.0.7",
42
- "expo-background-task": "~1.0.8",
43
- "expo-camera": "~17.0.8",
44
- "expo-crypto": "~15.0.7",
45
- "expo-dev-client": "~6.0.13",
46
- "expo-device": "~8.0.9",
47
- "expo-font": "~14.0.8",
48
- "expo-haptics": "~15.0.7",
49
- "expo-linear-gradient": "~15.0.7",
50
- "expo-localization": "~17.0.7",
51
- "expo-secure-store": "~15.0.7",
52
- "expo-splash-screen": "~31.0.10",
53
- "expo-status-bar": "~3.0.8",
54
29
  "intl": "^1.2.5",
55
- "jsc-android": "^250231.0.0",
56
- "lottie-ios": "4.5.0",
57
- "lottie-react-native": "~7.3.1",
58
- "react": "19.1.0",
59
- "react-dom": "19.1.0",
60
30
  "react-i18next": "^13.0.1",
61
- "react-native": "0.81.4",
62
31
  "react-native-calendar-strip": "^2.2.6",
63
32
  "react-native-calendars": "^1.1299.0",
64
- "react-native-dotenv": "^3.4.9",
65
- "react-native-gesture-handler": "~2.28.0",
66
- "react-native-keychain": "^8.1.1",
67
- "react-native-pager-view": "6.9.1",
68
33
  "react-native-picker-select": "^8.0.4",
69
- "react-native-reanimated": "~4.1.1",
70
- "react-native-safe-area-context": "~5.6.0",
71
- "react-native-screens": "~4.16.0",
72
- "react-native-svg": "15.12.1",
73
34
  "react-native-swipe-gestures": "^1.0.5",
74
35
  "react-native-toast-message": "^2.1.6",
75
- "react-native-translation": "^1.1.0",
76
- "react-native-web": "^0.21.0",
77
36
  "react-native-wheel-picker-expo": "^0.5.4",
78
37
  "react-native-wheely": "^0.6.0",
79
- "react-native-worklets": "0.5.1",
80
- "react-redux": "^8.1.1",
81
- "react-test-renderer": "^18.2.0"
38
+ "react-redux": "^8.1.1"
39
+ },
40
+ "peerDependencies": {
41
+ "@expo/metro-runtime": "*",
42
+ "@expo/vector-icons": "*",
43
+ "@react-navigation/bottom-tabs": "*",
44
+ "@react-navigation/drawer": "*",
45
+ "@react-navigation/native": "*",
46
+ "@react-navigation/native-stack": "*",
47
+ "@react-navigation/stack": "*",
48
+ "expo": "*",
49
+ "expo-application": "*",
50
+ "expo-asset": "*",
51
+ "expo-background-task": "*",
52
+ "expo-camera": "*",
53
+ "expo-constants": "*",
54
+ "expo-crypto": "*",
55
+ "expo-dev-client": "*",
56
+ "expo-device": "*",
57
+ "expo-font": "*",
58
+ "expo-haptics": "*",
59
+ "expo-keep-awake": "*",
60
+ "expo-linear-gradient": "*",
61
+ "expo-localization": "*",
62
+ "expo-modules-core": "*",
63
+ "expo-secure-store": "*",
64
+ "expo-splash-screen": "*",
65
+ "expo-status-bar": "*",
66
+ "expo-task-manager": "*",
67
+ "expo-updates-interface": "*",
68
+ "react": "*",
69
+ "react-dom": "*",
70
+ "react-native": "*",
71
+ "react-native-gesture-handler": "*",
72
+ "react-native-pager-view": "*",
73
+ "react-native-reanimated": "*",
74
+ "react-native-safe-area-context": "*",
75
+ "react-native-screens": "*",
76
+ "react-native-svg": "*",
77
+ "react-native-web": "*"
82
78
  },
83
79
  "devDependencies": {
84
80
  "@babel/core": "^7.26.0",
@@ -4,7 +4,7 @@ import {ThemeCtx} from '../../../context/theme.context';
4
4
  import {Stylesheet} from './calendar.styles';
5
5
  import {Icon} from '../../../icons';
6
6
  import {DateTime, DateTimeInterface} from '../../../utilities/datetime/datetime.class';
7
- import {SystemClock} from '../../../utilities/datetime/clock.class';
7
+ import {ClockInterface, SystemClock} from '../../../utilities/datetime/clock.class';
8
8
  import {UTCTimezone} from '../../../utilities/datetime/timezone.class';
9
9
 
10
10
  LocaleConfig.locales['nl'] = {
@@ -55,6 +55,7 @@ type CalendarProps = {
55
55
  selected: DateTimeInterface;
56
56
  minDate?: string;
57
57
  maxDate?: string;
58
+ clock: ClockInterface;
58
59
  };
59
60
 
60
61
  export const Calendar = ({
@@ -62,10 +63,10 @@ export const Calendar = ({
62
63
  selected,
63
64
  minDate,
64
65
  maxDate,
66
+ clock,
65
67
  }: CalendarProps) => {
66
68
  const context = useContext(ThemeCtx);
67
69
  const styles = Stylesheet(context);
68
- const clock = new SystemClock();
69
70
  const initDate = clock.now().toDateOnlyIso8601() || undefined;
70
71
 
71
72
  const today = selected.toDateOnlyIso8601();
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import {Calendar} from './calendar.component';
3
3
  import {useWindowDimensions} from 'react-native';
4
4
  import {SystemClock} from '../../../utilities/datetime/clock.class';
5
+ import {SystemTimezone} from '../../../utilities/datetime/timezone.class';
5
6
 
6
7
  const {View} = require('react-native');
7
8
 
@@ -29,6 +30,7 @@ export const CalendarPreview = ({}: {}) => {
29
30
  }}
30
31
  >
31
32
  <Calendar
33
+ clock={Clock}
32
34
  selected={selectedDay}
33
35
  onDayPress={setSelectedDay}
34
36
  minDate={calendarStartDate}
@@ -7,7 +7,7 @@ import {Paragraph} from '../../atoms/paragraph-components';
7
7
  import {Icon} from '../../../icons/index';
8
8
  import {useDebounce} from '../../../hooks/use-debounce';
9
9
  import {DateTimeInterface, DateTimeOutputFormat} from '../../../utilities/datetime/datetime.class';
10
- import {SystemClock} from '../../../utilities/datetime/clock.class';
10
+ import {ClockInterface, SystemClock} from '../../../utilities/datetime/clock.class';
11
11
  import {DateOnlyLocaleAwareOutputFormat} from '../../../utilities/datetime/dateonly.class';
12
12
  import {Locale} from '../../../utilities/datetime/locale';
13
13
 
@@ -17,6 +17,7 @@ type CalendarSelectProps = {
17
17
  onUpdateDate: (date: DateTimeInterface) => void;
18
18
  labelForToday?: string | undefined;
19
19
  locale: Locale;
20
+ clock: ClockInterface;
20
21
  };
21
22
 
22
23
  const CalendarSelect = ({
@@ -24,7 +25,8 @@ const CalendarSelect = ({
24
25
  startDate,
25
26
  onUpdateDate,
26
27
  labelForToday,
27
- locale
28
+ locale,
29
+ clock
28
30
  }: CalendarSelectProps) => {
29
31
  const context = useContext(ThemeCtx);
30
32
  const styles = Stylesheet(context);
@@ -32,7 +34,6 @@ const CalendarSelect = ({
32
34
  const [visibleDate, setVisibleDate] = useState(startDate);
33
35
  const debouncedVisibleDate = useDebounce<DateTimeInterface>(visibleDate, 500);
34
36
 
35
- const clock = new SystemClock();
36
37
  const today = clock.now();
37
38
  const isToday = today.isSameDay(visibleDate);
38
39
 
@@ -3,13 +3,13 @@ import {View} from 'react-native';
3
3
  import {CalendarSelect} from './calendar-select.component';
4
4
  import {Locale} from '../../../utilities/datetime/locale';
5
5
  import {SystemClock} from '../../../utilities/datetime/clock.class';
6
- import {TimeZone} from '../../../utilities/datetime/timezone.class';
6
+ import {SystemTimezone, TimeZone} from '../../../utilities/datetime/timezone.class';
7
7
 
8
8
  export const CalendarSelectPreview = () => {
9
9
 
10
10
  const clock = new SystemClock();
11
11
 
12
- const startDate = clock.now().inTimezone(TimeZone.from('America/Los_Angeles'));
12
+ const startDate = clock.now().inTimezone(SystemTimezone);
13
13
 
14
14
  const [date, setDate] = useState(
15
15
  startDate
@@ -25,6 +25,7 @@ export const CalendarSelectPreview = () => {
25
25
  }}
26
26
  locale={Locale.nl}
27
27
  labelForToday={'Today'}
28
+ clock={clock}
28
29
  />
29
30
  </View>
30
31
  );
@@ -8,6 +8,7 @@ import {Popover} from '../../templates/popover/popover.component';
8
8
  import {Calendar} from '../../atoms/calendar/calendar.component';
9
9
  import {View} from 'react-native';
10
10
  import {SystemClock} from '../../../utilities/datetime/clock.class';
11
+ import {SystemTimezone} from '../../../utilities/datetime/timezone.class';
11
12
 
12
13
  export const DateInputPreview = () => {
13
14
 
@@ -49,6 +50,7 @@ export const DateInputPreview = () => {
49
50
  >
50
51
  <View>
51
52
  <Calendar
53
+ clock={clock}
52
54
  selected={selectedDate}
53
55
  onDayPress={(day) => {
54
56
  setSelectedDate(day);
@@ -5,7 +5,7 @@ import {Stylesheet} from './day.styles';
5
5
  import {Heading4} from '../../atoms/heading-components';
6
6
  import {TinyText} from '../../atoms/paragraph-components';
7
7
  import {DateTimeInterface} from '../../../utilities/datetime/datetime.class';
8
- import {SystemClock} from '../../../utilities/datetime/clock.class';
8
+ import {ClockInterface, SystemClock} from '../../../utilities/datetime/clock.class';
9
9
  import {DayOfWeekLocaleAwareOutputFormat} from '../../../utilities/datetime/dayoftheweek.class';
10
10
  import {Locale} from '../../../utilities/datetime/locale';
11
11
  import {DayOutputFormat} from '../../../utilities/datetime/day.class';
@@ -15,13 +15,13 @@ type DayProps = {
15
15
  date: DateTimeInterface;
16
16
  onSelect: (date: DateTimeInterface) => void;
17
17
  isSelected?: boolean;
18
- locale: Locale
18
+ locale: Locale;
19
+ clock: ClockInterface;
19
20
  };
20
21
 
21
- const Day = ({onSelect, date, isSelected, locale}: DayProps) => {
22
+ const Day = ({onSelect, date, isSelected, locale, clock}: DayProps) => {
22
23
  const context = useContext(ThemeCtx);
23
24
 
24
- const clock = new SystemClock();
25
25
  const today = clock.now();
26
26
  const isToday = today.isSameDay(date);
27
27
 
@@ -34,6 +34,9 @@ export const SelectPicker = ({
34
34
  }
35
35
  };
36
36
 
37
+ console.log(data);
38
+ console.log(defaultValue);
39
+
37
40
  return (
38
41
  <View style={styles.container}>
39
42
  <View style={styles.pickerContainer}>
@@ -4,7 +4,7 @@ import {TextBubble} from './text-bubble.component';
4
4
  import {ScrollView} from 'react-native';
5
5
  import {DateTime, DateTimeInterface} from '../../../utilities/datetime/datetime.class';
6
6
  import {SystemClock} from '../../../utilities/datetime/clock.class';
7
- import {UTCTimezone} from '../../../utilities/datetime/timezone.class';
7
+ import {SystemTimezone, UTCTimezone} from '../../../utilities/datetime/timezone.class';
8
8
  import {Locale} from '../../../utilities/datetime/locale';
9
9
 
10
10
  const {View} = require('react-native');
@@ -1,27 +1,13 @@
1
1
  import {DateTime, DateTimeInterface} from './datetime.class';
2
2
  import dayjs from './dayjs-config';
3
- import {TimeZoneInterface} from './timezone.class';
4
3
 
5
4
  export interface ClockInterface {
6
5
  now(): DateTimeInterface;
7
6
  }
8
7
 
9
8
  export class SystemClock implements ClockInterface {
10
- private readonly timezone: TimeZoneInterface;
11
-
12
- constructor(timezone: TimeZoneInterface) {
13
- this.timezone = timezone;
14
- }
15
-
16
- public now(): DateTimeInterface {
17
- const nowInTimezone = dayjs();
18
- return DateTime.fromIso8601(nowInTimezone.toISOString(), this.timezone);
19
- }
20
- }
21
-
22
- export class UTCSystemClock implements ClockInterface {
23
9
  public now(): DateTimeInterface {
24
10
  const nowInTimezone = dayjs();
25
11
  return DateTime.fromTimestamp(nowInTimezone.unix());
26
12
  }
27
- }
13
+ }
package/ios/.xcode.env DELETED
@@ -1,11 +0,0 @@
1
- # This `.xcode.env` file is versioned and is used to source the environment
2
- # used when running script phases inside Xcode.
3
- # To customize your local environment, you can create an `.xcode.env.local`
4
- # file that is not versioned.
5
-
6
- # NODE_BINARY variable contains the PATH to the node executable.
7
- #
8
- # Customize the NODE_BINARY variable here.
9
- # For example, to use nvm with brew, add the following line
10
- # . "$(brew --prefix nvm)/nvm.sh" --no-use
11
- export NODE_BINARY=$(command -v node)
package/ios/Podfile DELETED
@@ -1,60 +0,0 @@
1
- require File.join(File.dirname(`node --print "require.resolve('expo/package.json')"`), "scripts/autolinking")
2
- require File.join(File.dirname(`node --print "require.resolve('react-native/package.json')"`), "scripts/react_native_pods")
3
-
4
- require 'json'
5
- podfile_properties = JSON.parse(File.read(File.join(__dir__, 'Podfile.properties.json'))) rescue {}
6
-
7
- def ccache_enabled?(podfile_properties)
8
- # Environment variable takes precedence
9
- return ENV['USE_CCACHE'] == '1' if ENV['USE_CCACHE']
10
-
11
- # Fall back to Podfile properties
12
- podfile_properties['apple.ccacheEnabled'] == 'true'
13
- end
14
-
15
- ENV['RCT_NEW_ARCH_ENABLED'] ||= '0' if podfile_properties['newArchEnabled'] == 'false'
16
- ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] ||= podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR']
17
- ENV['RCT_USE_RN_DEP'] ||= '1' if podfile_properties['ios.buildReactNativeFromSource'] != 'true' && podfile_properties['newArchEnabled'] != 'false'
18
- ENV['RCT_USE_PREBUILT_RNCORE'] ||= '1' if podfile_properties['ios.buildReactNativeFromSource'] != 'true' && podfile_properties['newArchEnabled'] != 'false'
19
- platform :ios, podfile_properties['ios.deploymentTarget'] || '15.1'
20
-
21
- prepare_react_native_project!
22
-
23
- target 'Styleguide' do
24
- use_expo_modules!
25
-
26
- if ENV['EXPO_USE_COMMUNITY_AUTOLINKING'] == '1'
27
- config_command = ['node', '-e', "process.argv=['', '', 'config'];require('@react-native-community/cli').run()"];
28
- else
29
- config_command = [
30
- 'npx',
31
- 'expo-modules-autolinking',
32
- 'react-native-config',
33
- '--json',
34
- '--platform',
35
- 'ios'
36
- ]
37
- end
38
-
39
- config = use_native_modules!(config_command)
40
-
41
- use_frameworks! :linkage => podfile_properties['ios.useFrameworks'].to_sym if podfile_properties['ios.useFrameworks']
42
- use_frameworks! :linkage => ENV['USE_FRAMEWORKS'].to_sym if ENV['USE_FRAMEWORKS']
43
-
44
- use_react_native!(
45
- :path => config[:reactNativePath],
46
- :hermes_enabled => podfile_properties['expo.jsEngine'] == nil || podfile_properties['expo.jsEngine'] == 'hermes',
47
- # An absolute path to your application root.
48
- :app_path => "#{Pod::Config.instance.installation_root}/..",
49
- :privacy_file_aggregation_enabled => podfile_properties['apple.privacyManifestAggregationEnabled'] != 'false',
50
- )
51
-
52
- post_install do |installer|
53
- react_native_post_install(
54
- installer,
55
- config[:reactNativePath],
56
- :mac_catalyst_enabled => false,
57
- :ccache_enabled => ccache_enabled?(podfile_properties),
58
- )
59
- end
60
- end