def get_default()

in source/idea/idea-data-model/src/ideadatamodel/user_input/user_input_model.py [0:0]


    def get_default(self) -> Optional[Any]:

        multiple = ModelUtils.get_as_bool(self.multiple, False)
        if self.data_type == 'bool':
            if multiple:
                default = ModelUtils.get_as_bool_list(self.default)
            else:
                default = self.default
                if default == '$first':
                    default = self.get_first_choice()
                default = ModelUtils.get_as_bool(default)
        elif self.data_type == 'int':
            if multiple:
                default = ModelUtils.get_as_int_list(self.default)
            else:
                default = self.default
                if default == '$first':
                    default = self.get_first_choice()
                default = ModelUtils.get_as_int(default)
        elif self.data_type == 'float':
            if multiple:
                default = ModelUtils.get_as_float_list(self.default)
            else:
                default = self.default
                if default == '$first':
                    default = self.get_first_choice()
                default = ModelUtils.get_as_float(default)
        else:
            if multiple:
                default = ModelUtils.get_as_string_list(self.default)
            else:
                default = self.default
                if default == '$first':
                    default = self.get_first_choice()

        if multiple:
            first = ModelUtils.get_first(self.default)
            if first is not None:
                if first == '$all':
                    default = []
                    choices = ModelUtils.get_as_list(self.choices, [])
                    for choice in choices:
                        default.append(self.get_choice_value(choice))
                if first == '$first':
                    default = self.get_first_choice()
                    if default is not None:
                        default = [default]

        return default