// SPDX-License-Identifier: AGPL-3.0
import { reduxForm } from 'redux-form';
+import { compose } from 'redux';
+import { connect } from 'react-redux';
import SharingPublicAccessFormComponent from './sharing-public-access-form-component';
-import { SHARING_PUBLIC_ACCESS_FORM_NAME } from '~/store/sharing-dialog/sharing-dialog-types';
+import { SHARING_PUBLIC_ACCESS_FORM_NAME, VisibilityLevel } from 'store/sharing-dialog/sharing-dialog-types';
+import { RootState } from 'store/store';
+import { getSharingPublicAccessFormData } from '../../store/sharing-dialog/sharing-dialog-types';
-export const SharingPublicAccessForm = reduxForm(
- { form: SHARING_PUBLIC_ACCESS_FORM_NAME }
+interface SaveProps {
+ onSave: () => void;
+}
+
+export const SharingPublicAccessForm = compose(
+ reduxForm<{}, SaveProps>(
+ { form: SHARING_PUBLIC_ACCESS_FORM_NAME }
+ ),
+ connect(
+ (state: RootState) => {
+ const { visibility } = getSharingPublicAccessFormData(state) || { visibility: VisibilityLevel.PRIVATE };
+ const includePublic = state.auth.config.clusterConfig.Users.AnonymousUserToken.length > 0;
+ return { visibility, includePublic };
+ }
+ )
)(SharingPublicAccessFormComponent);