// SPDX-License-Identifier: AGPL-3.0
import { reduxForm } from 'redux-form';
-import { connect } from 'react-redux';
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 { PermissionLevel } from '~/models/permission';
+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';
+
+interface SaveProps {
+ onSave: () => void;
+}
+
export const SharingPublicAccessForm = compose(
- connect(() => ({
- initialValues: {
- enabled: false,
- permissions: PermissionLevel.CAN_READ,
+ 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 };
}
- })),
- reduxForm({ form: SHARING_PUBLIC_ACCESS_FORM_NAME })
-)(SharingPublicAccessFormComponent);
\ No newline at end of file
+ )
+)(SharingPublicAccessFormComponent);