refactor: add 'cetak' channel to migration commands and update channel enum

This commit is contained in:
Yoga Pangestu 2026-04-20 13:51:17 +07:00
parent 516e6b3de5
commit 6252831ac2
4 changed files with 8 additions and 6 deletions

View File

@ -220,6 +220,7 @@ private function mapChannel(?string $legacyChannel): int
'facebook' => Channel::FACEBOOK->value, 'facebook' => Channel::FACEBOOK->value,
'instagram' => Channel::INSTAGRAM->value, 'instagram' => Channel::INSTAGRAM->value,
'twitter' => Channel::TWITTER->value, 'twitter' => Channel::TWITTER->value,
'cetak' => Channel::CETAK->value,
default => Channel::WEBSITE->value, default => Channel::WEBSITE->value,
}; };
} }

View File

@ -222,6 +222,7 @@ private function mapChannel(?string $legacyChannel): int
'facebook' => Channel::FACEBOOK->value, 'facebook' => Channel::FACEBOOK->value,
'instagram' => Channel::INSTAGRAM->value, 'instagram' => Channel::INSTAGRAM->value,
'twitter' => Channel::TWITTER->value, 'twitter' => Channel::TWITTER->value,
'cetak' => Channel::CETAK->value,
default => Channel::WEBSITE->value, default => Channel::WEBSITE->value,
}; };
} }

View File

@ -16,7 +16,7 @@ enum Channel: int implements HasLabel
case FACEBOOK = 4; case FACEBOOK = 4;
case INSTAGRAM = 5; case INSTAGRAM = 5;
case TWITTER = 6; case TWITTER = 6;
case OTHER = 7; case CETAK = 7;
public function getLabel(): ?string public function getLabel(): ?string
{ {
@ -27,7 +27,7 @@ public function getLabel(): ?string
self::FACEBOOK => 'Facebook', self::FACEBOOK => 'Facebook',
self::INSTAGRAM => 'Instagram', self::INSTAGRAM => 'Instagram',
self::TWITTER => 'Twitter', self::TWITTER => 'Twitter',
self::OTHER => 'Other', self::CETAK => 'Cetak',
}; };
} }
@ -40,7 +40,7 @@ public function getColor(): string
self::FACEBOOK => 'danger', self::FACEBOOK => 'danger',
self::INSTAGRAM => 'primary', self::INSTAGRAM => 'primary',
self::TWITTER => 'secondary', self::TWITTER => 'secondary',
self::OTHER => 'gray', self::CETAK => 'gray',
}; };
} }

View File

@ -16,7 +16,7 @@
[Channel::FACEBOOK, 'Facebook', 'danger'], [Channel::FACEBOOK, 'Facebook', 'danger'],
[Channel::INSTAGRAM, 'Instagram', 'primary'], [Channel::INSTAGRAM, 'Instagram', 'primary'],
[Channel::TWITTER, 'Twitter', 'secondary'], [Channel::TWITTER, 'Twitter', 'secondary'],
[Channel::OTHER, 'Other', 'gray'], [Channel::CETAK, 'Cetak', 'gray'],
]); ]);
test('channel enum options', function () { test('channel enum options', function () {
@ -27,11 +27,11 @@
4 => 'Facebook', 4 => 'Facebook',
5 => 'Instagram', 5 => 'Instagram',
6 => 'Twitter', 6 => 'Twitter',
7 => 'Other', 7 => 'Cetak',
]); ]);
}); });
test('channel enum values and comment', function () { test('channel enum values and comment', function () {
expect(Channel::values())->toEqual([1, 2, 3, 4, 5, 6, 7]); expect(Channel::values())->toEqual([1, 2, 3, 4, 5, 6, 7]);
expect(Channel::comment())->toBe('1: Website, 2: Tiktok, 3: Youtube, 4: Facebook, 5: Instagram, 6: Twitter, 7: Other'); expect(Channel::comment())->toBe('1: Website, 2: Tiktok, 3: Youtube, 4: Facebook, 5: Instagram, 6: Twitter, 7: Cetak');
}); });