@atlaskit/jql-editor 6.4.7 → 6.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/cjs/analytics/util.js +1 -1
  3. package/dist/cjs/plugins/rich-inline-nodes/nodes/index.js +2 -0
  4. package/dist/cjs/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/index.js +41 -0
  5. package/dist/cjs/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/styled.js +105 -0
  6. package/dist/cjs/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +86 -33
  7. package/dist/cjs/state/hydration/util.js +6 -6
  8. package/dist/cjs/state/index.js +40 -31
  9. package/dist/es2019/analytics/util.js +1 -1
  10. package/dist/es2019/plugins/rich-inline-nodes/nodes/index.js +2 -0
  11. package/dist/es2019/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/index.js +32 -0
  12. package/dist/es2019/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/styled.js +97 -0
  13. package/dist/es2019/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +63 -15
  14. package/dist/es2019/state/hydration/util.js +6 -6
  15. package/dist/es2019/state/index.js +12 -2
  16. package/dist/esm/analytics/util.js +1 -1
  17. package/dist/esm/plugins/rich-inline-nodes/nodes/index.js +2 -0
  18. package/dist/esm/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/index.js +34 -0
  19. package/dist/esm/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/styled.js +96 -0
  20. package/dist/esm/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +86 -33
  21. package/dist/esm/state/hydration/util.js +6 -6
  22. package/dist/esm/state/index.js +39 -30
  23. package/dist/types/plugins/rich-inline-nodes/nodes/index.d.ts +2 -0
  24. package/dist/types/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/index.d.ts +7 -0
  25. package/dist/types/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/styled.d.ts +18 -0
  26. package/dist/types/state/index.d.ts +5 -1
  27. package/dist/types/types.d.ts +1 -1
  28. package/dist/types/ui/jql-editor/types.d.ts +7 -1
  29. package/dist/types/ui/types.d.ts +1 -1
  30. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/index.d.ts +2 -0
  31. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/index.d.ts +7 -0
  32. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/lozenge-with-avatar/styled.d.ts +18 -0
  33. package/dist/types-ts4.5/state/index.d.ts +5 -1
  34. package/dist/types-ts4.5/types.d.ts +1 -1
  35. package/dist/types-ts4.5/ui/jql-editor/types.d.ts +7 -1
  36. package/dist/types-ts4.5/ui/types.d.ts +1 -1
  37. package/package.json +10 -7
@@ -944,16 +944,25 @@ export var useHydratedGoal = createHook(Store, {
944
944
  return goal && goal.type === 'goal' ? goal : undefined;
945
945
  }
946
946
  });
947
+ export var useHydratedLozengeWithAvatar = createHook(Store, {
948
+ selector: function selector(state, _ref43) {
949
+ var _state$hydratedValues0;
950
+ var id = _ref43.id,
951
+ fieldName = _ref43.fieldName;
952
+ var value = (_state$hydratedValues0 = state.hydratedValues[normaliseHydrationKey(fieldName)]) === null || _state$hydratedValues0 === void 0 ? void 0 : _state$hydratedValues0.get(normaliseJqlString(id));
953
+ return value && value.type === 'lozengeWithAvatar' ? value : undefined;
954
+ }
955
+ });
947
956
  export var useHydratedDeprecations = createHook(Store, {
948
957
  selector: function selector(state) {
949
958
  var ast = getJastFromState(state.editorState);
950
959
  var fieldsInQuery = getFieldNodes(ast);
951
960
  var toReturn = [];
952
- Object.entries(state.hydratedValues).forEach(function (_ref43) {
953
- var _state$hydratedValues0;
954
- var _ref44 = _slicedToArray(_ref43, 1),
955
- fieldName = _ref44[0];
956
- (_state$hydratedValues0 = state.hydratedValues[fieldName]) === null || _state$hydratedValues0 === void 0 || _state$hydratedValues0.forEach(function (value) {
961
+ Object.entries(state.hydratedValues).forEach(function (_ref44) {
962
+ var _state$hydratedValues1;
963
+ var _ref45 = _slicedToArray(_ref44, 1),
964
+ fieldName = _ref45[0];
965
+ (_state$hydratedValues1 = state.hydratedValues[fieldName]) === null || _state$hydratedValues1 === void 0 || _state$hydratedValues1.forEach(function (value) {
957
966
  if (value.type === 'deprecated-field') {
958
967
  if (fieldsInQuery.has(value.id.toLowerCase())) {
959
968
  toReturn.push(value);
@@ -976,19 +985,19 @@ export var useOnSyntaxHelp = createHook(Store, {
976
985
  });
977
986
  export var EditorStateContainer = createContainer(Store, {
978
987
  onInit: function onInit() {
979
- return function (_ref45, _ref46) {
980
- var getState = _ref45.getState,
981
- setState = _ref45.setState,
982
- dispatch = _ref45.dispatch;
983
- var intlRef = _ref46.intlRef,
984
- query = _ref46.query,
985
- isSearching = _ref46.isSearching,
986
- autocompleteProvider = _ref46.autocompleteProvider,
987
- externalMessages = _ref46.externalMessages,
988
- enableRichInlineNodes = _ref46.enableRichInlineNodes,
989
- onDebugUnsafeMessage = _ref46.onDebugUnsafeMessage,
990
- onSyntaxHelp = _ref46.onSyntaxHelp,
991
- customComponents = _ref46.customComponents;
988
+ return function (_ref46, _ref47) {
989
+ var getState = _ref46.getState,
990
+ setState = _ref46.setState,
991
+ dispatch = _ref46.dispatch;
992
+ var intlRef = _ref47.intlRef,
993
+ query = _ref47.query,
994
+ isSearching = _ref47.isSearching,
995
+ autocompleteProvider = _ref47.autocompleteProvider,
996
+ externalMessages = _ref47.externalMessages,
997
+ enableRichInlineNodes = _ref47.enableRichInlineNodes,
998
+ onDebugUnsafeMessage = _ref47.onDebugUnsafeMessage,
999
+ onSyntaxHelp = _ref47.onSyntaxHelp,
1000
+ customComponents = _ref47.customComponents;
992
1001
  setState({
993
1002
  controlledQuery: query,
994
1003
  query: query,
@@ -1017,18 +1026,18 @@ export var EditorStateContainer = createContainer(Store, {
1017
1026
  };
1018
1027
  },
1019
1028
  onUpdate: function onUpdate() {
1020
- return function (_ref47, _ref48) {
1021
- var getState = _ref47.getState,
1022
- setState = _ref47.setState,
1023
- dispatch = _ref47.dispatch;
1024
- var controlledQueryProp = _ref48.query,
1025
- isSearching = _ref48.isSearching,
1026
- autocompleteProvider = _ref48.autocompleteProvider,
1027
- externalMessages = _ref48.externalMessages,
1028
- enableRichInlineNodes = _ref48.enableRichInlineNodes,
1029
- onDebugUnsafeMessage = _ref48.onDebugUnsafeMessage,
1030
- onSyntaxHelp = _ref48.onSyntaxHelp,
1031
- customComponents = _ref48.customComponents;
1029
+ return function (_ref48, _ref49) {
1030
+ var getState = _ref48.getState,
1031
+ setState = _ref48.setState,
1032
+ dispatch = _ref48.dispatch;
1033
+ var controlledQueryProp = _ref49.query,
1034
+ isSearching = _ref49.isSearching,
1035
+ autocompleteProvider = _ref49.autocompleteProvider,
1036
+ externalMessages = _ref49.externalMessages,
1037
+ enableRichInlineNodes = _ref49.enableRichInlineNodes,
1038
+ onDebugUnsafeMessage = _ref49.onDebugUnsafeMessage,
1039
+ onSyntaxHelp = _ref49.onSyntaxHelp,
1040
+ customComponents = _ref49.customComponents;
1032
1041
  var _getState12 = getState(),
1033
1042
  controlledQuery = _getState12.controlledQuery,
1034
1043
  query = _getState12.query;
@@ -1,10 +1,12 @@
1
1
  import type { Props as GoalRichInlineProps } from './goal/types';
2
+ import { type Props as LozengeWithAvatarRichInlineProps } from './lozenge-with-avatar';
2
3
  import type { Props as ProjectRichInlineProps } from './project/types';
3
4
  import { type Props as TeamRichInlineProps } from './team';
4
5
  import type { JQLNodeSpec } from './types';
5
6
  import { type Props as UserRichInlineProps } from './user';
6
7
  export declare const richInlineNodes: {
7
8
  goal: JQLNodeSpec<GoalRichInlineProps>;
9
+ lozengeWithAvatar: JQLNodeSpec<LozengeWithAvatarRichInlineProps>;
8
10
  project: JQLNodeSpec<ProjectRichInlineProps>;
9
11
  team: JQLNodeSpec<TeamRichInlineProps>;
10
12
  user: JQLNodeSpec<UserRichInlineProps>;
@@ -0,0 +1,7 @@
1
+ import { type JQLNodeSpec } from '../types';
2
+ export type Props = {
3
+ fieldName: string;
4
+ id: string;
5
+ name: string;
6
+ };
7
+ export declare const lozengeWithAvatar: JQLNodeSpec<Props>;
@@ -0,0 +1,18 @@
1
+ import type { DetailedHTMLProps, HTMLAttributes } from 'react';
2
+ import { type Theme } from '@emotion/react';
3
+ import { type StyledComponent } from '@emotion/styled';
4
+ export declare const LozengeWithAvatarContainer: StyledComponent<{
5
+ as?: React.ElementType;
6
+ theme?: Theme;
7
+ } & {
8
+ error: boolean;
9
+ selected: boolean;
10
+ }, DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
11
+ export declare const NameContainer: StyledComponent<{
12
+ as?: React.ElementType;
13
+ theme?: Theme;
14
+ }, DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
15
+ export declare const AvatarWrapper: StyledComponent<{
16
+ as?: React.ElementType;
17
+ theme?: Theme;
18
+ }, DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -10,7 +10,7 @@ import { type JqlEditorAnalyticsEvent } from '../analytics';
10
10
  import { type AutocompleteOptionGroup, type AutocompleteOptions, type AutocompleteOptionType, type SelectableAutocompleteOption } from '../plugins/autocomplete/components/types';
11
11
  import { type AutocompleteProvider } from '../plugins/types';
12
12
  import { type PortalActions } from '../ui/jql-editor-portal-provider/types';
13
- import { type HydratedDeprecatedField, type HydratedProject, type HydratedGoal, type HydratedTeam, type HydratedUser, type HydratedValue } from '../ui/jql-editor/types';
13
+ import { type HydratedDeprecatedField, type HydratedProject, type HydratedGoal, type HydratedLozengeWithAvatar, type HydratedTeam, type HydratedUser, type HydratedValue } from '../ui/jql-editor/types';
14
14
  import { type AutocompletePosition, type AutocompleteState, type ContextAwareJQLSuggestions, type CustomErrorComponent, type ExternalMessagesNormalized, type OptionsKey, type Props, type State } from './types';
15
15
  export declare const initialState: State;
16
16
  type Actions = {
@@ -91,6 +91,10 @@ export declare const useHydratedGoal: HookFunction<HydratedGoal | undefined, Bou
91
91
  fieldName: string;
92
92
  id: string;
93
93
  }>;
94
+ export declare const useHydratedLozengeWithAvatar: HookFunction<HydratedLozengeWithAvatar | undefined, BoundActions<State, Actions>, {
95
+ fieldName: string;
96
+ id: string;
97
+ }>;
94
98
  export declare const useHydratedDeprecations: HookFunction<HydratedDeprecatedField[], BoundActions<State, Actions>, void>;
95
99
  export declare const useRichInlineNodesEnabled: HookFunction<boolean, BoundActions<State, Actions>, void>;
96
100
  export declare const useOnSyntaxHelp: HookFunction<void | ((e: MouseEvent<HTMLElement>) => boolean), BoundActions<State, Actions>, void>;
@@ -1,5 +1,5 @@
1
1
  export type { JQLClause } from '@atlaskit/jql-autocomplete';
2
- export type { JQLEditorUIProps, JQLEditorProps, HydratedValues, HydratedValue, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, } from './ui/types';
2
+ export type { JQLEditorUIProps, JQLEditorProps, HydratedValues, HydratedValue, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, HydratedLozengeWithAvatar, } from './ui/types';
3
3
  export type { ExternalMessage, ExternalError, ExternalWarning, ExternalInfo, CustomComponents, } from './state/types';
4
4
  export type { AutocompleteProvider, AutocompleteOptions, AutocompleteOption, AutocompleteValueType, } from './plugins/types';
5
5
  export type { ListenerProps, JqlAnalyticsEvent } from './analytics';
@@ -37,7 +37,13 @@ export type HydratedDeprecatedField = {
37
37
  id: string;
38
38
  type: 'deprecated-field';
39
39
  };
40
- export type HydratedValue = HydratedUser | HydratedTeam | HydratedProject | HydratedGoal | HydratedDeprecatedField;
40
+ export type HydratedLozengeWithAvatar = {
41
+ avatarUrl?: string;
42
+ id: string;
43
+ name: string;
44
+ type: 'lozengeWithAvatar';
45
+ };
46
+ export type HydratedValue = HydratedUser | HydratedTeam | HydratedProject | HydratedGoal | HydratedDeprecatedField | HydratedLozengeWithAvatar;
41
47
  export type HydratedValues = {
42
48
  [fieldName: string]: HydratedValue[];
43
49
  };
@@ -1,5 +1,5 @@
1
1
  import { type JQLEditorUIProps } from './jql-editor/types';
2
- export type { JQLEditorUIProps, HydratedValue, HydratedValues, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, } from './jql-editor/types';
2
+ export type { JQLEditorUIProps, HydratedValue, HydratedValues, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, HydratedLozengeWithAvatar, } from './jql-editor/types';
3
3
  export type JQLEditorProps = JQLEditorUIProps & {
4
4
  /**
5
5
  * React-intl locale. This should be set to "en" if alternate message sets are not being loaded higher in the React
@@ -1,10 +1,12 @@
1
1
  import type { Props as GoalRichInlineProps } from './goal/types';
2
+ import { type Props as LozengeWithAvatarRichInlineProps } from './lozenge-with-avatar';
2
3
  import type { Props as ProjectRichInlineProps } from './project/types';
3
4
  import { type Props as TeamRichInlineProps } from './team';
4
5
  import type { JQLNodeSpec } from './types';
5
6
  import { type Props as UserRichInlineProps } from './user';
6
7
  export declare const richInlineNodes: {
7
8
  goal: JQLNodeSpec<GoalRichInlineProps>;
9
+ lozengeWithAvatar: JQLNodeSpec<LozengeWithAvatarRichInlineProps>;
8
10
  project: JQLNodeSpec<ProjectRichInlineProps>;
9
11
  team: JQLNodeSpec<TeamRichInlineProps>;
10
12
  user: JQLNodeSpec<UserRichInlineProps>;
@@ -0,0 +1,7 @@
1
+ import { type JQLNodeSpec } from '../types';
2
+ export type Props = {
3
+ fieldName: string;
4
+ id: string;
5
+ name: string;
6
+ };
7
+ export declare const lozengeWithAvatar: JQLNodeSpec<Props>;
@@ -0,0 +1,18 @@
1
+ import type { DetailedHTMLProps, HTMLAttributes } from 'react';
2
+ import { type Theme } from '@emotion/react';
3
+ import { type StyledComponent } from '@emotion/styled';
4
+ export declare const LozengeWithAvatarContainer: StyledComponent<{
5
+ as?: React.ElementType;
6
+ theme?: Theme;
7
+ } & {
8
+ error: boolean;
9
+ selected: boolean;
10
+ }, DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
11
+ export declare const NameContainer: StyledComponent<{
12
+ as?: React.ElementType;
13
+ theme?: Theme;
14
+ }, DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
15
+ export declare const AvatarWrapper: StyledComponent<{
16
+ as?: React.ElementType;
17
+ theme?: Theme;
18
+ }, DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -10,7 +10,7 @@ import { type JqlEditorAnalyticsEvent } from '../analytics';
10
10
  import { type AutocompleteOptionGroup, type AutocompleteOptions, type AutocompleteOptionType, type SelectableAutocompleteOption } from '../plugins/autocomplete/components/types';
11
11
  import { type AutocompleteProvider } from '../plugins/types';
12
12
  import { type PortalActions } from '../ui/jql-editor-portal-provider/types';
13
- import { type HydratedDeprecatedField, type HydratedProject, type HydratedGoal, type HydratedTeam, type HydratedUser, type HydratedValue } from '../ui/jql-editor/types';
13
+ import { type HydratedDeprecatedField, type HydratedProject, type HydratedGoal, type HydratedLozengeWithAvatar, type HydratedTeam, type HydratedUser, type HydratedValue } from '../ui/jql-editor/types';
14
14
  import { type AutocompletePosition, type AutocompleteState, type ContextAwareJQLSuggestions, type CustomErrorComponent, type ExternalMessagesNormalized, type OptionsKey, type Props, type State } from './types';
15
15
  export declare const initialState: State;
16
16
  type Actions = {
@@ -91,6 +91,10 @@ export declare const useHydratedGoal: HookFunction<HydratedGoal | undefined, Bou
91
91
  fieldName: string;
92
92
  id: string;
93
93
  }>;
94
+ export declare const useHydratedLozengeWithAvatar: HookFunction<HydratedLozengeWithAvatar | undefined, BoundActions<State, Actions>, {
95
+ fieldName: string;
96
+ id: string;
97
+ }>;
94
98
  export declare const useHydratedDeprecations: HookFunction<HydratedDeprecatedField[], BoundActions<State, Actions>, void>;
95
99
  export declare const useRichInlineNodesEnabled: HookFunction<boolean, BoundActions<State, Actions>, void>;
96
100
  export declare const useOnSyntaxHelp: HookFunction<void | ((e: MouseEvent<HTMLElement>) => boolean), BoundActions<State, Actions>, void>;
@@ -1,5 +1,5 @@
1
1
  export type { JQLClause } from '@atlaskit/jql-autocomplete';
2
- export type { JQLEditorUIProps, JQLEditorProps, HydratedValues, HydratedValue, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, } from './ui/types';
2
+ export type { JQLEditorUIProps, JQLEditorProps, HydratedValues, HydratedValue, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, HydratedLozengeWithAvatar, } from './ui/types';
3
3
  export type { ExternalMessage, ExternalError, ExternalWarning, ExternalInfo, CustomComponents, } from './state/types';
4
4
  export type { AutocompleteProvider, AutocompleteOptions, AutocompleteOption, AutocompleteValueType, } from './plugins/types';
5
5
  export type { ListenerProps, JqlAnalyticsEvent } from './analytics';
@@ -37,7 +37,13 @@ export type HydratedDeprecatedField = {
37
37
  id: string;
38
38
  type: 'deprecated-field';
39
39
  };
40
- export type HydratedValue = HydratedUser | HydratedTeam | HydratedProject | HydratedGoal | HydratedDeprecatedField;
40
+ export type HydratedLozengeWithAvatar = {
41
+ avatarUrl?: string;
42
+ id: string;
43
+ name: string;
44
+ type: 'lozengeWithAvatar';
45
+ };
46
+ export type HydratedValue = HydratedUser | HydratedTeam | HydratedProject | HydratedGoal | HydratedDeprecatedField | HydratedLozengeWithAvatar;
41
47
  export type HydratedValues = {
42
48
  [fieldName: string]: HydratedValue[];
43
49
  };
@@ -1,5 +1,5 @@
1
1
  import { type JQLEditorUIProps } from './jql-editor/types';
2
- export type { JQLEditorUIProps, HydratedValue, HydratedValues, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, } from './jql-editor/types';
2
+ export type { JQLEditorUIProps, HydratedValue, HydratedValues, HydratedUser, HydratedTeam, HydratedProject, HydratedGoal, HydratedLozengeWithAvatar, } from './jql-editor/types';
3
3
  export type JQLEditorProps = JQLEditorUIProps & {
4
4
  /**
5
5
  * React-intl locale. This should be set to "en" if alternate message sets are not being loaded higher in the React
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/jql-editor",
3
- "version": "6.4.7",
3
+ "version": "6.5.0",
4
4
  "description": "This package allows consumers to render an advanced JQL editor component to enable autocomplete-assisted authoring and validation of JQL queries.",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -41,16 +41,16 @@
41
41
  "dependencies": {
42
42
  "@atlaskit/afm-i18n-platform-jql-jql-editor": "2.10.0",
43
43
  "@atlaskit/analytics-gas-types": "^5.1.0",
44
- "@atlaskit/analytics-next": "^11.2.0",
44
+ "@atlaskit/analytics-next": "^11.3.0",
45
45
  "@atlaskit/avatar": "^25.15.0",
46
46
  "@atlaskit/button": "^23.11.0",
47
47
  "@atlaskit/css": "^0.19.0",
48
48
  "@atlaskit/editor-prosemirror": "^7.3.0",
49
- "@atlaskit/emoji": "^70.14.0",
49
+ "@atlaskit/emoji": "^70.17.0",
50
50
  "@atlaskit/feature-gate-js-client": "^5.7.0",
51
51
  "@atlaskit/form": "^15.5.0",
52
- "@atlaskit/icon": "^35.3.0",
53
- "@atlaskit/icon-lab": "^6.12.0",
52
+ "@atlaskit/icon": "^35.4.0",
53
+ "@atlaskit/icon-lab": "^6.13.0",
54
54
  "@atlaskit/jql-ast": "^3.5.0",
55
55
  "@atlaskit/jql-autocomplete": "^2.1.0",
56
56
  "@atlaskit/jql-editor-common": "^3.3.0",
@@ -63,8 +63,8 @@
63
63
  "@atlaskit/spinner": "^19.1.0",
64
64
  "@atlaskit/teams-avatar": "^2.7.0",
65
65
  "@atlaskit/theme": "^25.0.0",
66
- "@atlaskit/tokens": "^13.1.0",
67
- "@atlaskit/tooltip": "^22.5.0",
66
+ "@atlaskit/tokens": "^13.3.0",
67
+ "@atlaskit/tooltip": "^22.6.0",
68
68
  "@atlaskit/townsquare-emoji-provider": "^1.0.0",
69
69
  "@babel/runtime": "^7.0.0",
70
70
  "@emotion/react": "^11.7.1",
@@ -152,6 +152,9 @@
152
152
  },
153
153
  "jira_ai_agent_avatar_with_apptype_for_jql": {
154
154
  "type": "boolean"
155
+ },
156
+ "jql-function-arg-hydration": {
157
+ "type": "boolean"
155
158
  }
156
159
  }
157
160
  }