fix(my-joy-beta): mark optional sections as proceeded onEdit
@ -11,6 +11,8 @@
|
|||||||
<title>My Joyent Images β</title>
|
<title>My Joyent Images β</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<div id="header"></div>
|
||||||
<div id="root"></div>
|
<div id="root"></div>
|
||||||
|
<script src="/nav-static/main.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
@ -104,7 +104,9 @@ export const Filters = ({ onResetFilters }) => (
|
|||||||
</FormGroup>
|
</FormGroup>
|
||||||
<FormGroup type="checkbox" name="ssd" field={Field}>
|
<FormGroup type="checkbox" name="ssd" field={Field}>
|
||||||
<Checkbox>
|
<Checkbox>
|
||||||
<FormLabel noMargin actionable>SSD</FormLabel>
|
<FormLabel noMargin actionable>
|
||||||
|
SSD
|
||||||
|
</FormLabel>
|
||||||
</Checkbox>
|
</Checkbox>
|
||||||
</FormGroup>
|
</FormGroup>
|
||||||
</Flex>
|
</Flex>
|
||||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
@ -171,6 +171,10 @@ export default compose(
|
|||||||
dispatch(set({ name: `${CNS_FORM}-proceeded`, value: true }));
|
dispatch(set({ name: `${CNS_FORM}-proceeded`, value: true }));
|
||||||
return history.push(`/~create/affinity${history.location.search}`);
|
return history.push(`/~create/affinity${history.location.search}`);
|
||||||
},
|
},
|
||||||
|
handleEdit: () => {
|
||||||
|
dispatch(set({ name: `${CNS_FORM}-proceeded`, value: true }));
|
||||||
|
history.push(`/~create/cns${history.location.search}`);
|
||||||
|
},
|
||||||
shouldAsyncValidate: ({ trigger }) => trigger === 'change',
|
shouldAsyncValidate: ({ trigger }) => trigger === 'change',
|
||||||
handleAsyncValidate: async ({ name = '', value = '' }) => {
|
handleAsyncValidate: async ({ name = '', value = '' }) => {
|
||||||
const isNameValid = /^[a-zA-Z_.-]{1,16}$/.test(name);
|
const isNameValid = /^[a-zA-Z_.-]{1,16}$/.test(name);
|
||||||
@ -185,7 +189,6 @@ export default compose(
|
|||||||
value: isValueValid ? null : fieldError
|
value: isValueValid ? null : fieldError
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
handleEdit: () => history.push(`/~create/cns${history.location.search}`),
|
|
||||||
handleToggleCnsEnabled: ({ target }) =>
|
handleToggleCnsEnabled: ({ target }) =>
|
||||||
dispatch(set({ name: `${CNS_FORM}-enabled`, value: !cnsEnabled })),
|
dispatch(set({ name: `${CNS_FORM}-enabled`, value: !cnsEnabled })),
|
||||||
handleAddService: ({ name }) => {
|
handleAddService: ({ name }) => {
|
||||||
|
@ -168,6 +168,10 @@ export default compose(
|
|||||||
return history.push(`/~create/cns${history.location.search}`);
|
return history.push(`/~create/cns${history.location.search}`);
|
||||||
},
|
},
|
||||||
handleEdit: () => {
|
handleEdit: () => {
|
||||||
|
dispatch(
|
||||||
|
set({ name: 'create-instance-firewall-proceeded', value: true })
|
||||||
|
);
|
||||||
|
|
||||||
return history.push(`/~create/firewall${history.location.search}`);
|
return history.push(`/~create/firewall${history.location.search}`);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -170,6 +170,10 @@ export default compose(
|
|||||||
return history.push(`/~create/user-script${history.location.search}`);
|
return history.push(`/~create/user-script${history.location.search}`);
|
||||||
},
|
},
|
||||||
handleEdit: () => {
|
handleEdit: () => {
|
||||||
|
dispatch(
|
||||||
|
set({ name: 'create-instance-metadata-proceeded', value: true })
|
||||||
|
);
|
||||||
|
|
||||||
return history.push(`/~create/metadata${history.location.search}`);
|
return history.push(`/~create/metadata${history.location.search}`);
|
||||||
},
|
},
|
||||||
shouldAsyncValidate: ({ trigger }) => {
|
shouldAsyncValidate: ({ trigger }) => {
|
||||||
|
@ -116,6 +116,17 @@ export default compose(
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
(dispatch, { history, query }) => ({
|
(dispatch, { history, query }) => ({
|
||||||
|
handleNext: () => {
|
||||||
|
dispatch(set({ name: 'create-instance-name-proceeded', value: true }));
|
||||||
|
return history.push(
|
||||||
|
`/~create/${query.image ? 'package' : 'image'}${
|
||||||
|
history.location.search
|
||||||
|
}`
|
||||||
|
);
|
||||||
|
},
|
||||||
|
handleEdit: () => {
|
||||||
|
history.push(`/~create/name${history.location.search}`);
|
||||||
|
},
|
||||||
shouldAsyncValidate: ({ trigger }) => trigger === 'change',
|
shouldAsyncValidate: ({ trigger }) => trigger === 'change',
|
||||||
handleAsyncValidation: async ({ name }) => {
|
handleAsyncValidation: async ({ name }) => {
|
||||||
const sanitized = punycode.encode(name).replace(/-$/, '');
|
const sanitized = punycode.encode(name).replace(/-$/, '');
|
||||||
@ -159,15 +170,6 @@ export default compose(
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleNext: () => {
|
|
||||||
dispatch(set({ name: 'create-instance-name-proceeded', value: true }));
|
|
||||||
return history.push(
|
|
||||||
`/~create/${query.image ? 'package' : 'image'}${
|
|
||||||
history.location.search
|
|
||||||
}`
|
|
||||||
);
|
|
||||||
},
|
|
||||||
handleEdit: () => history.push(`/~create/name${history.location.search}`),
|
|
||||||
handleRandomize: async () => {
|
handleRandomize: async () => {
|
||||||
dispatch(
|
dispatch(
|
||||||
set({ name: 'create-instance-name-randomizing', value: true })
|
set({ name: 'create-instance-name-randomizing', value: true })
|
||||||
|
@ -186,6 +186,10 @@ export default compose(
|
|||||||
return history.push(`/~create/firewall${history.location.search}`);
|
return history.push(`/~create/firewall${history.location.search}`);
|
||||||
},
|
},
|
||||||
handleEdit: () => {
|
handleEdit: () => {
|
||||||
|
dispatch(
|
||||||
|
set({ name: 'create-instance-networks-proceeded', value: true })
|
||||||
|
);
|
||||||
|
|
||||||
return history.push(`/~create/networks${history.location.search}`);
|
return history.push(`/~create/networks${history.location.search}`);
|
||||||
},
|
},
|
||||||
setInfoExpanded: (id, expanded) => {
|
setInfoExpanded: (id, expanded) => {
|
||||||
|
@ -234,8 +234,9 @@ export default compose(
|
|||||||
|
|
||||||
return history.push(`/~create/tags${history.location.search}`);
|
return history.push(`/~create/tags${history.location.search}`);
|
||||||
},
|
},
|
||||||
handleEdit: () =>
|
handleEdit: () => {
|
||||||
history.push(`/~create/package${history.location.search}`),
|
return history.push(`/~create/package${history.location.search}`);
|
||||||
|
},
|
||||||
handleResetFilters: () => {
|
handleResetFilters: () => {
|
||||||
dispatch(destroy(`${FORM_NAME}-filters`));
|
dispatch(destroy(`${FORM_NAME}-filters`));
|
||||||
},
|
},
|
||||||
|
@ -145,10 +145,10 @@ export default compose(
|
|||||||
connect(null, (dispatch, { tags = [], history }) => ({
|
connect(null, (dispatch, { tags = [], history }) => ({
|
||||||
handleNext: () => {
|
handleNext: () => {
|
||||||
dispatch(set({ name: 'create-instance-tags-proceeded', value: true }));
|
dispatch(set({ name: 'create-instance-tags-proceeded', value: true }));
|
||||||
|
|
||||||
return history.push(`/~create/metadata${history.location.search}`);
|
return history.push(`/~create/metadata${history.location.search}`);
|
||||||
},
|
},
|
||||||
handleEdit: () => {
|
handleEdit: () => {
|
||||||
|
dispatch(set({ name: 'create-instance-tags-proceeded', value: true }));
|
||||||
return history.push(`/~create/tags${history.location.search}`);
|
return history.push(`/~create/tags${history.location.search}`);
|
||||||
},
|
},
|
||||||
shouldAsyncValidate: ({ trigger }) => trigger === 'submit',
|
shouldAsyncValidate: ({ trigger }) => trigger === 'submit',
|
||||||
|
@ -116,8 +116,6 @@ export default compose(
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
(dispatch, { history }) => ({
|
(dispatch, { history }) => ({
|
||||||
handleEdit: () =>
|
|
||||||
history.push(`/~create/user-script${history.location.search}`),
|
|
||||||
handleNext: () => {
|
handleNext: () => {
|
||||||
dispatch(
|
dispatch(
|
||||||
set({ name: 'create-instance-user-script-proceeded', value: true })
|
set({ name: 'create-instance-user-script-proceeded', value: true })
|
||||||
@ -125,6 +123,13 @@ export default compose(
|
|||||||
|
|
||||||
return history.push(`/~create/networks${history.location.search}`);
|
return history.push(`/~create/networks${history.location.search}`);
|
||||||
},
|
},
|
||||||
|
handleEdit: () => {
|
||||||
|
dispatch(
|
||||||
|
set({ name: 'create-instance-user-script-proceeded', value: true })
|
||||||
|
);
|
||||||
|
|
||||||
|
return history.push(`/~create/user-script${history.location.search}`);
|
||||||
|
},
|
||||||
handleChangeOpenForm: value => {
|
handleChangeOpenForm: value => {
|
||||||
return dispatch([
|
return dispatch([
|
||||||
set({ name: `create-instance-user-script-open`, value })
|
set({ name: `create-instance-user-script-open`, value })
|
||||||
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 116 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 122 KiB |
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
@ -63,8 +63,8 @@ const Meta = props => {
|
|||||||
const hasSuccess = Boolean(props.success || meta.success || value.success);
|
const hasSuccess = Boolean(props.success || meta.success || value.success);
|
||||||
const isRight = !props.left;
|
const isRight = !props.left;
|
||||||
|
|
||||||
return (
|
return msg ? (
|
||||||
msg ? <StyledLabel
|
<StyledLabel
|
||||||
{...meta}
|
{...meta}
|
||||||
{...props}
|
{...props}
|
||||||
error={hasError}
|
error={hasError}
|
||||||
@ -73,8 +73,8 @@ const Meta = props => {
|
|||||||
right={isRight}
|
right={isRight}
|
||||||
>
|
>
|
||||||
{msg}
|
{msg}
|
||||||
</StyledLabel> : null
|
</StyledLabel>
|
||||||
);
|
) : null;
|
||||||
};
|
};
|
||||||
|
|
||||||
return <Subscriber channel="input-group">{render}</Subscriber>;
|
return <Subscriber channel="input-group">{render}</Subscriber>;
|
||||||
|