@xh/hoist 67.0.0-SNAPSHOT.1725047531773 → 67.0.0-SNAPSHOT.1725048431197

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.
@@ -35,6 +35,7 @@ export const connPoolMonitorPanel = hoistCmp.factory({
35
35
  omit: readonly,
36
36
  onClick: () => model.takeSnapshotAsync()
37
37
  }),
38
+ '-',
38
39
  button({
39
40
  text: 'Reset Stats',
40
41
  icon: Icon.reset(),
@@ -18,9 +18,9 @@ import {isEmpty} from 'lodash';
18
18
 
19
19
  export class HzObjectModel extends BaseInstanceModel {
20
20
  clearAction: RecordActionSpec = {
21
- icon: Icon.reset(),
22
21
  text: 'Clear Objects',
23
- intent: 'danger',
22
+ icon: Icon.reset(),
23
+ intent: 'warning',
24
24
  actionFn: () => this.clearAsync(),
25
25
  displayFn: ({selectedRecords}) => ({
26
26
  hidden: AppModel.readonly,
@@ -80,8 +80,9 @@ export class HzObjectModel extends BaseInstanceModel {
80
80
  ),
81
81
  confirmProps: {
82
82
  text: 'Clear Objects',
83
+ icon: Icon.reset(),
84
+ intent: 'warning',
83
85
  outlined: true,
84
- intent: 'danger',
85
86
  autoFocus: false
86
87
  }
87
88
  }))
@@ -115,7 +116,8 @@ export class HzObjectModel extends BaseInstanceModel {
115
116
  ),
116
117
  confirmProps: {
117
118
  text: 'Clear Hibernate Caches',
118
- intent: 'danger',
119
+ icon: Icon.reset(),
120
+ intent: 'warning',
119
121
  outlined: true,
120
122
  autoFocus: false
121
123
  }
@@ -25,10 +25,11 @@ export const hzObjectPanel = hoistCmp.factory({
25
25
  selModel: model.gridModel.selModel,
26
26
  actions: [model.clearAction]
27
27
  }),
28
+ '-',
28
29
  button({
29
30
  text: 'Clear Hibernate Caches',
30
31
  icon: Icon.reset(),
31
- intent: 'danger',
32
+ intent: 'warning',
32
33
  tooltip: 'Clear the Hibernate caches using the native Hibernate API',
33
34
  onClick: () => model.clearHibernateCachesAsync()
34
35
  }),
@@ -36,12 +36,14 @@ export const memoryMonitorPanel = hoistCmp.factory({
36
36
  omit: readonly,
37
37
  onClick: () => model.takeSnapshotAsync()
38
38
  }),
39
+ '-',
39
40
  button({
40
41
  text: 'Request GC',
41
42
  icon: Icon.trash(),
42
43
  omit: readonly,
43
44
  onClick: () => model.requestGcAsync()
44
45
  }),
46
+ '-',
45
47
  button({
46
48
  text: 'Dump Heap',
47
49
  icon: Icon.fileArchive(),
@@ -18,9 +18,9 @@ import {isEmpty, lowerFirst} from 'lodash';
18
18
 
19
19
  export class ServiceModel extends BaseInstanceModel {
20
20
  clearCachesAction: RecordActionSpec = {
21
- icon: Icon.reset(),
22
21
  text: 'Clear Caches',
23
- intent: 'danger',
22
+ icon: Icon.reset(),
23
+ intent: 'warning',
24
24
  actionFn: () => this.clearCachesAsync(false),
25
25
  displayFn: () => ({
26
26
  hidden: AppModel.readonly,
@@ -30,9 +30,9 @@ export class ServiceModel extends BaseInstanceModel {
30
30
  };
31
31
 
32
32
  clearClusterCachesAction: RecordActionSpec = {
33
- icon: Icon.reset(),
34
33
  text: 'Clear Caches (entire cluster)',
35
- intent: 'danger',
34
+ icon: Icon.reset(),
35
+ intent: 'warning',
36
36
  actionFn: () => this.clearCachesAsync(true),
37
37
  displayFn: () => ({
38
38
  hidden: AppModel.readonly || !this.parent.isMultiInstance
@@ -91,7 +91,8 @@ export class ServiceModel extends BaseInstanceModel {
91
91
  ),
92
92
  confirmProps: {
93
93
  text: 'Clear Caches',
94
- intent: 'danger',
94
+ icon: Icon.reset(),
95
+ intent: 'warning',
95
96
  outlined: true,
96
97
  autoFocus: false
97
98
  }
@@ -117,8 +117,8 @@ export class WebSocketModel extends BaseInstanceModel {
117
117
  if (isEmpty(selectedRecords)) return;
118
118
 
119
119
  const message = await XH.prompt<string>({
120
- title: 'Force suspend',
121
- icon: Icon.stopCircle(),
120
+ title: 'Please confirm...',
121
+ icon: Icon.warning(),
122
122
  confirmProps: {
123
123
  text: 'Force Suspend',
124
124
  icon: Icon.stopCircle(),
@@ -45,7 +45,12 @@ export const rolePanel = hoistCmp.factory({
45
45
  }),
46
46
  '-',
47
47
  filterChooser({flex: 1}),
48
- switchInput({bind: 'showInGroups', label: 'Show in Groups', labelSide: 'left'})
48
+ '-',
49
+ switchInput({
50
+ bind: 'showInGroups',
51
+ label: 'Group by Category',
52
+ labelSide: 'left'
53
+ })
49
54
  ],
50
55
  item: hframe(vframe(grid(), roleGraph()), detailsPanel())
51
56
  }),
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import {chart} from '@xh/hoist/cmp/chart';
8
8
  import {errorBoundary} from '@xh/hoist/cmp/error';
9
- import {div, hspacer, placeholder} from '@xh/hoist/cmp/layout';
9
+ import {div, filler, placeholder, span} from '@xh/hoist/cmp/layout';
10
10
  import {creates, hoistCmp} from '@xh/hoist/core';
11
11
  import {button} from '@xh/hoist/desktop/cmp/button';
12
12
  import {buttonGroupInput, slider, switchInput} from '@xh/hoist/desktop/cmp/input';
@@ -29,7 +29,7 @@ export const roleGraph = hoistCmp.factory({
29
29
  return panel({
30
30
  compactHeader: true,
31
31
  icon: Icon.treeGraph(),
32
- title: role ? `Relationships - ${role.name} ` : 'Relationships',
32
+ title: role ? `${role.name} Relationships` : 'Relationships',
33
33
  item: div({
34
34
  item: div({
35
35
  style: {margin: 'auto'},
@@ -48,15 +48,31 @@ export const roleGraph = hoistCmp.factory({
48
48
  items: [
49
49
  button({
50
50
  value: 'effective',
51
- text: `Granted to ${role?.effectiveRoles.length} ${pluralize('role', role?.effectiveRoles.length)}`
51
+ text: `Granted to ${pluralize('role', role?.effectiveRoles.length, true)}`
52
52
  }),
53
53
  button({
54
54
  value: 'inherited',
55
- text: `Inheriting from ${role?.inheritedRoles.length} ${pluralize('role', role?.inheritedRoles.length)}`
55
+ text: `Inheriting from ${pluralize('role', role?.inheritedRoles.length, true)}`
56
56
  })
57
57
  ]
58
58
  }),
59
- hspacer(10),
59
+ filler(),
60
+ span('Limit to one level'),
61
+ switchInput({
62
+ bind: 'limitToOneLevel'
63
+ }),
64
+ '-',
65
+ span('Zoom'),
66
+ slider({
67
+ paddingLeft: 2,
68
+ overflow: 'visible',
69
+ bind: 'widthScale',
70
+ min: 0,
71
+ max: 2,
72
+ stepSize: 0.005,
73
+ labelRenderer: false
74
+ }),
75
+ '-',
60
76
  buttonGroupInput({
61
77
  bind: 'inverted',
62
78
  items: [
@@ -69,21 +85,6 @@ export const roleGraph = hoistCmp.factory({
69
85
  icon: Icon.treeGraph({rotation: 270})
70
86
  })
71
87
  ]
72
- }),
73
- hspacer(10),
74
- 'Zoom',
75
- slider({
76
- paddingLeft: 2,
77
- overflow: 'visible',
78
- bind: 'widthScale',
79
- min: 0,
80
- max: 2,
81
- stepSize: 0.005,
82
- labelRenderer: false
83
- }),
84
- 'Limit to one level',
85
- switchInput({
86
- bind: 'limitToOneLevel'
87
88
  })
88
89
  ],
89
90
  omit: !role
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xh/hoist",
3
- "version": "67.0.0-SNAPSHOT.1725047531773",
3
+ "version": "67.0.0-SNAPSHOT.1725048431197",
4
4
  "description": "Hoist add-on for building and deploying React Applications.",
5
5
  "repository": "github:xh/hoist-react",
6
6
  "homepage": "https://xh.io",