@colisweb/rescript-toolkit 4.14.14 → 4.15.0

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.
package/.gitlab-ci.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  include:
2
- - "https://colisweb-idl.gitlab.io/colisweb-open-source/ci-common/v17.1.1/templates/front.yml"
2
+ - "https://colisweb-idl.gitlab.io/colisweb-open-source/ci-common/v17.7.0/templates/front.yml"
3
3
 
4
4
  variables:
5
5
  GIT_COMMIT_FILES: ""
@@ -577,7 +577,7 @@ psql_on_k8() {
577
577
  CONNECTION=$3
578
578
  shift 3
579
579
 
580
- kubectl -n $NAMESPACE run ${SERVICE}-database-init \
580
+ kubectl -n $NAMESPACE run ${SERVICE}-postgres-init \
581
581
  --image jbergknoff/postgresql-client \
582
582
  --restart=Never \
583
583
  --attach --rm \
@@ -588,13 +588,14 @@ psql_on_k8() {
588
588
 
589
589
  mysql_on_k8() {
590
590
  local namespace=$1
591
- local db_host=$2
592
- local db_port=$3
593
- local db_init_username=$4
594
- local db_init_password=$5
595
- local query=$6
596
-
597
- kubectl -n ${namespace} run datadog-database-init \
591
+ local service=$2
592
+ local db_host=$3
593
+ local db_port=$4
594
+ local db_init_username=$5
595
+ local db_init_password=$6
596
+ local query=$7
597
+
598
+ kubectl -n ${namespace} run ${service}-mysql-init \
598
599
  --image widdpim/mysql-client \
599
600
  --restart=Never \
600
601
  --attach --rm \
@@ -679,8 +680,10 @@ kube_init_datadog_in_database() {
679
680
  echo "======================="
680
681
 
681
682
  echo "Checking if User '$db_datadog_username' exists"
683
+ local service="datadog"
684
+ found_db_users=$(mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'SELECT user FROM mysql.user;')
682
685
  set +e
683
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'SELECT user FROM mysql.user;' | grep "^$db_datadog_username$"
686
+ echo $found_db_users | grep "^$db_datadog_username$"
684
687
  return_code=$?
685
688
  set -e
686
689
 
@@ -691,29 +694,29 @@ kube_init_datadog_in_database() {
691
694
 
692
695
  # All the query come from this docs : https://docs.datadoghq.com/fr/database_monitoring/setup_mysql/selfhosted/?tab=mysql56
693
696
 
694
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'CREATE USER '"$db_datadog_username"'@"%" IDENTIFIED BY '"'$db_datadog_password'"';'
697
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'CREATE USER '"$db_datadog_username"'@"%" IDENTIFIED BY '"'$db_datadog_password'"';'
695
698
  echo "USER created $db_datadog_username"
696
699
 
697
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'GRANT REPLICATION CLIENT ON *.* TO datadog@"%" WITH MAX_USER_CONNECTIONS 5;'
700
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'GRANT REPLICATION CLIENT ON *.* TO datadog@"%" WITH MAX_USER_CONNECTIONS 5;'
698
701
  echo "ALTER USER $db_datadog_username"
699
702
 
700
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'GRANT PROCESS ON *.* TO '"$db_datadog_username"'@"%";'
703
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'GRANT PROCESS ON *.* TO '"$db_datadog_username"'@"%";'
701
704
  echo "Granted PROCESS for $db_datadog_username"
702
705
 
703
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'GRANT SELECT ON performance_schema.* TO '"$db_datadog_username"'@"%";'
706
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'GRANT SELECT ON performance_schema.* TO '"$db_datadog_username"'@"%";'
704
707
  echo "Granted SELECT on performance_schema for $db_datadog_username"
705
708
 
706
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'CREATE SCHEMA IF NOT EXISTS datadog;'
709
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'CREATE SCHEMA IF NOT EXISTS datadog;'
707
710
  echo "CREATE SCHEMA datadog"
708
711
 
709
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'GRANT EXECUTE ON datadog.* to '"$db_datadog_username"'@"%";'
712
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'GRANT EXECUTE ON datadog.* to '"$db_datadog_username"'@"%";'
710
713
  echo "Granted 'GRANT EXECUTE for $db_datadog_username on datadog"
711
714
 
712
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'GRANT CREATE TEMPORARY TABLES ON datadog.* TO '"$db_datadog_username"'@"%";'
715
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'GRANT CREATE TEMPORARY TABLES ON datadog.* TO '"$db_datadog_username"'@"%";'
713
716
  echo "Granted CREATE TEMPORARY TABLES for $db_datadog_username"
714
717
 
715
718
 
716
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS datadog.explain_statement;
719
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS datadog.explain_statement;
717
720
  DELIMITER $$
718
721
  CREATE PROCEDURE datadog.explain_statement(IN query TEXT)
719
722
  SQL SECURITY DEFINER
@@ -726,7 +729,7 @@ kube_init_datadog_in_database() {
726
729
  DELIMITER ;'
727
730
  echo "CREATE PROCEDURE PROCEDURE datadog.explain_statement"
728
731
 
729
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS '"$db_datadog_username"'.explain_statement;
732
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS '"$db_datadog_username"'.explain_statement;
730
733
  DELIMITER $$
731
734
  CREATE PROCEDURE '"$db_datadog_username"'.explain_statement(IN query TEXT)
732
735
  SQL SECURITY DEFINER
@@ -740,7 +743,7 @@ kube_init_datadog_in_database() {
740
743
  GRANT EXECUTE ON PROCEDURE '"$db_datadog_username"'.explain_statement TO datadog@"%";'
741
744
  echo "CREATE PROCEDURE on SCHEMA $db_datadog_schema for $db_datadog_username"
742
745
 
743
- mysql_on_k8 $namespace $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS datadog.enable_events_statements_consumers;
746
+ mysql_on_k8 $namespace $service $db_host $db_port $db_init_username $db_init_password 'DROP PROCEDURE IF EXISTS datadog.enable_events_statements_consumers;
744
747
  DELIMITER $$
745
748
  CREATE PROCEDURE datadog.enable_events_statements_consumers()
746
749
  SQL SECURITY DEFINER
@@ -818,7 +821,7 @@ kube_init_datadog_in_postgres_database() {
818
821
  RETURNS NULL ON NULL INPUT
819
822
  SECURITY DEFINER;"
820
823
 
821
- kubectl -n $namespace run $service-database-init \
824
+ kubectl -n $namespace run $service-postgres-init \
822
825
  --image jbergknoff/postgresql-client \
823
826
  --restart=Never \
824
827
  --attach --rm \
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colisweb/rescript-toolkit",
3
- "version": "4.14.14",
3
+ "version": "4.15.0",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "clean": "rescript clean",
@@ -82,9 +82,9 @@ let make = (
82
82
  onClick={event => {
83
83
  switch dropDownRef.current->Js.Nullable.toOption {
84
84
  | None => toggle()
85
- | Some(dropDownRef) => {
86
- let isInDropdown = ReactEvent.Mouse.currentTarget(event)["contains"](. dropDownRef)
87
- if !isInDropdown {
85
+ | Some(_dropDownRef) => {
86
+ let isButton = ReactEvent.Mouse.target(event)["tagName"] === "BUTTON"
87
+ if isButton {
88
88
  toggle()
89
89
  }
90
90
  }
@@ -26,7 +26,12 @@ let make = (
26
26
 
27
27
  Toolkit__Hooks.useOnClickOutside(dropDownRef, _ => {
28
28
  onClickOutside->Option.forEach(fn => fn())
29
- hide()
29
+
30
+ Js.Global.setTimeout(() => {
31
+ if isOpen {
32
+ hide()
33
+ }
34
+ }, 100)->ignore
30
35
  })
31
36
 
32
37
  let (adjustmentStyle, setAdjustmentStyle) = React.useState(() => None)
@@ -91,6 +91,9 @@ let make = (
91
91
  ~validateButtonClassName="",
92
92
  ~cancelButtonClassName="",
93
93
  ~itemClassName="",
94
+ ~buttonColor=?,
95
+ ~buttonSize=?,
96
+ ~buttonVariant=?,
94
97
  ~searchPlaceholder: option<string>=?,
95
98
  ~allowFilter=true,
96
99
  ~defaultValue: option<item>=?,
@@ -116,6 +119,9 @@ let make = (
116
119
 
117
120
  <Toolkit__Ui_Dropdown
118
121
  ?disabled
122
+ ?buttonColor
123
+ ?buttonSize
124
+ ?buttonVariant
119
125
  buttonClassName
120
126
  onClose={_ => setSelectedOption(_ => defaultValue)}
121
127
  dropdownClassName
@@ -10,6 +10,9 @@ let make: (
10
10
  ~validateButtonClassName: string=?,
11
11
  ~cancelButtonClassName: string=?,
12
12
  ~itemClassName: string=?,
13
+ ~buttonColor: Toolkit__Ui_Button.color=?,
14
+ ~buttonSize: Toolkit__Ui_Button.size=?,
15
+ ~buttonVariant: Toolkit__Ui_Button.variant=?,
13
16
  ~searchPlaceholder: string=?,
14
17
  ~allowFilter: bool=?,
15
18
  ~defaultValue: item=?,