From 0d44d046d114d7009bd7fe0214128cd3f2b1cbe0 Mon Sep 17 00:00:00 2001 From: svbutko Date: Tue, 14 Sep 2021 15:03:14 +0300 Subject: [PATCH 1/5] Set semantic value when processing iOS colors --- lib/src/commands/OptionsProcessor.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/src/commands/OptionsProcessor.ts b/lib/src/commands/OptionsProcessor.ts index 1c47416ed70..3c374af1927 100644 --- a/lib/src/commands/OptionsProcessor.ts +++ b/lib/src/commands/OptionsProcessor.ts @@ -129,6 +129,8 @@ export class OptionsProcessor { if ('dynamic' in value) { options[key].dynamic.light = this.colorService.toNativeColor(value.dynamic.light); options[key].dynamic.dark = this.colorService.toNativeColor(value.dynamic.dark); + } else if ('semantic' in value) { + options[key] = value; } else { options[key].light = this.colorService.toNativeColor(value.light); options[key].dark = this.colorService.toNativeColor(value.dark); From cdf944c756f88e1366e5dfc86ff3cffa62fe2f04 Mon Sep 17 00:00:00 2001 From: svbutko Date: Tue, 14 Sep 2021 15:11:36 +0300 Subject: [PATCH 2/5] Remove dynamic iOS color assigning --- lib/src/commands/OptionsProcessor.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/src/commands/OptionsProcessor.ts b/lib/src/commands/OptionsProcessor.ts index 3c374af1927..324379bd117 100644 --- a/lib/src/commands/OptionsProcessor.ts +++ b/lib/src/commands/OptionsProcessor.ts @@ -132,9 +132,12 @@ export class OptionsProcessor { } else if ('semantic' in value) { options[key] = value; } else { - options[key].light = this.colorService.toNativeColor(value.light); - options[key].dark = this.colorService.toNativeColor(value.dark); - options[key] = DynamicColorIOS(options[key]); + options[key] = { + dynamic: { + light: this.colorService.toNativeColor(value.light), + dark: this.colorService.toNativeColor(value.dark), + } + }; } } else { options[key] = this.colorService.toNativeColor(value); From 60b28e93237149946bc314b40e33b28887a66fbf Mon Sep 17 00:00:00 2001 From: svbutko Date: Tue, 14 Sep 2021 16:25:23 +0300 Subject: [PATCH 3/5] Replace custom color object creation in favor of DynamicColorIOS --- lib/src/commands/OptionsProcessor.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/lib/src/commands/OptionsProcessor.ts b/lib/src/commands/OptionsProcessor.ts index 324379bd117..7bc5338a48a 100644 --- a/lib/src/commands/OptionsProcessor.ts +++ b/lib/src/commands/OptionsProcessor.ts @@ -132,12 +132,10 @@ export class OptionsProcessor { } else if ('semantic' in value) { options[key] = value; } else { - options[key] = { - dynamic: { - light: this.colorService.toNativeColor(value.light), - dark: this.colorService.toNativeColor(value.dark), - } - }; + options[key] = DynamicColorIOS({ + light: this.colorService.toNativeColor(value.light), + dark: this.colorService.toNativeColor(value.dark) + }); } } else { options[key] = this.colorService.toNativeColor(value); From 19d9d4e27ded1e61d7bce63c909afb2919ba0e06 Mon Sep 17 00:00:00 2001 From: svbutko Date: Fri, 24 Sep 2021 07:50:30 +0300 Subject: [PATCH 4/5] Change colors applying order --- lib/src/commands/OptionsProcessor.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/src/commands/OptionsProcessor.ts b/lib/src/commands/OptionsProcessor.ts index 7bc5338a48a..8d234fc887f 100644 --- a/lib/src/commands/OptionsProcessor.ts +++ b/lib/src/commands/OptionsProcessor.ts @@ -126,11 +126,13 @@ export class OptionsProcessor { if (value === null) { options[key] = 'NoColor'; } else if (value instanceof Object) { - if ('dynamic' in value) { - options[key].dynamic.light = this.colorService.toNativeColor(value.dynamic.light); - options[key].dynamic.dark = this.colorService.toNativeColor(value.dynamic.dark); - } else if ('semantic' in value) { + if ('semantic' in value) { options[key] = value; + } else if ('dynamic' in value) { + options[key] = DynamicColorIOS({ + light: this.colorService.toNativeColor(value.dynamic.light), + dark: this.colorService.toNativeColor(value.dynamic.dark) + }); } else { options[key] = DynamicColorIOS({ light: this.colorService.toNativeColor(value.light), From 8c030fa07476402b09974db94256984c346c915f Mon Sep 17 00:00:00 2001 From: svbutko Date: Wed, 29 Sep 2021 18:29:52 +0300 Subject: [PATCH 5/5] Manually assign types of native color --- lib/src/commands/OptionsProcessor.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/src/commands/OptionsProcessor.ts b/lib/src/commands/OptionsProcessor.ts index 8d234fc887f..8cc2685e352 100644 --- a/lib/src/commands/OptionsProcessor.ts +++ b/lib/src/commands/OptionsProcessor.ts @@ -25,7 +25,7 @@ import { import { Deprecations } from './Deprecations'; import { OptionProcessorsStore } from '../processors/OptionProcessorsStore'; import { CommandName } from '../interfaces/CommandName'; -import { Platform, DynamicColorIOS } from 'react-native'; +import { Platform, DynamicColorIOS, ColorValue } from 'react-native'; export class OptionsProcessor { constructor( @@ -130,13 +130,13 @@ export class OptionsProcessor { options[key] = value; } else if ('dynamic' in value) { options[key] = DynamicColorIOS({ - light: this.colorService.toNativeColor(value.dynamic.light), - dark: this.colorService.toNativeColor(value.dynamic.dark) + light: this.colorService.toNativeColor(value.dynamic.light) as ColorValue, + dark: this.colorService.toNativeColor(value.dynamic.dark) as ColorValue, }); } else { options[key] = DynamicColorIOS({ - light: this.colorService.toNativeColor(value.light), - dark: this.colorService.toNativeColor(value.dark) + light: this.colorService.toNativeColor(value.light) as ColorValue, + dark: this.colorService.toNativeColor(value.dark) as ColorValue }); } } else {