Skip to content

Commit b7d75f9

Browse files
committed
Allows enable save button for new snippets
... and when the parser changes
1 parent 11f91f9 commit b7d75f9

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

website/src/store/selectors.js

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,11 @@ export const canFork = createSelector(
9393
);
9494

9595
const canSaveCode = createSelector(
96-
[isCodeDirty],
97-
dirty => dirty
96+
[getRevision, isCodeDirty],
97+
(revision, dirty) => (
98+
!revision || // can always save if there is no revision
99+
dirty
100+
)
98101
);
99102

100103
export const canSaveTransform = createSelector(
@@ -103,12 +106,17 @@ export const canSaveTransform = createSelector(
103106
);
104107

105108
const didParserSettingsChange = createSelector(
106-
[getParserSettings, getRevision],
107-
(parserSettings, revision) => {
109+
[getParserSettings, getRevision, getParser],
110+
(parserSettings, revision, parser) => {
108111
const savedParserSettings = revision && revision.getParserSettings();
109-
return !!revision &&
110-
!!savedParserSettings &&
111-
!isEqual(parserSettings, savedParserSettings);
112+
return (
113+
!!revision &&
114+
(
115+
parser.id !== revision.getParserID() ||
116+
!!savedParserSettings && !isEqual(parserSettings, savedParserSettings)
117+
)
118+
)
119+
112120
}
113121
);
114122

0 commit comments

Comments
 (0)