@theia/core 1.27.0-next.7 → 1.27.0-next.8

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.
package/README.md CHANGED
@@ -86,12 +86,12 @@ export class SomeClass {
86
86
  - `@phosphor/signaling` (from [`@phosphor/signaling@1`](https://www.npmjs.com/package/@phosphor/signaling))
87
87
  - `@phosphor/virtualdom` (from [`@phosphor/virtualdom@1`](https://www.npmjs.com/package/@phosphor/virtualdom))
88
88
  - `@phosphor/widgets` (from [`@phosphor/widgets@1`](https://www.npmjs.com/package/@phosphor/widgets))
89
- - `@theia/application-package` (from [`@theia/application-package@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.7))
90
- - `@theia/application-package/lib/api` (from [`@theia/application-package@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.7))
91
- - `@theia/application-package/lib/environment` (from [`@theia/application-package@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.7))
92
- - `@theia/request` (from [`@theia/request@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.7))
93
- - `@theia/request/lib/proxy` (from [`@theia/request@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.7))
94
- - `@theia/request/lib/node-request-service` (from [`@theia/request@1.27.0-next.7+5f887e22825`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.7))
89
+ - `@theia/application-package` (from [`@theia/application-package@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.8))
90
+ - `@theia/application-package/lib/api` (from [`@theia/application-package@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.8))
91
+ - `@theia/application-package/lib/environment` (from [`@theia/application-package@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/application-package/v/1.27.0-next.8))
92
+ - `@theia/request` (from [`@theia/request@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.8))
93
+ - `@theia/request/lib/proxy` (from [`@theia/request@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.8))
94
+ - `@theia/request/lib/node-request-service` (from [`@theia/request@1.27.0-next.8+e1e200a7bfb`](https://www.npmjs.com/package/@theia/request/v/1.27.0-next.8))
95
95
  - `fs-extra` (from [`fs-extra@^4.0.2`](https://www.npmjs.com/package/fs-extra))
96
96
  - `fuzzy` (from [`fuzzy@^0.1.3`](https://www.npmjs.com/package/fuzzy))
97
97
  - `inversify` (from [`inversify@^5.1.1`](https://www.npmjs.com/package/inversify))
@@ -11,8 +11,10 @@ export interface SelectOption {
11
11
  }
12
12
  export interface SelectComponentProps {
13
13
  options: SelectOption[];
14
- value?: string | number;
14
+ defaultValue?: string | number;
15
15
  onChange?: (option: SelectOption, index: number) => void;
16
+ onBlur?: () => void;
17
+ onFocus?: () => void;
16
18
  }
17
19
  export interface SelectComponentDropdownDimensions {
18
20
  top: number;
@@ -41,6 +43,7 @@ export declare class SelectComponent extends React.Component<SelectComponentProp
41
43
  protected attachListeners(): void;
42
44
  componentWillUnmount(): void;
43
45
  render(): React.ReactNode;
46
+ protected nextNotSeparator(direction: 'forwards' | 'backwards'): number;
44
47
  protected handleKeypress(ev: React.KeyboardEvent<HTMLDivElement>): void;
45
48
  protected handleClickEvent(event: React.MouseEvent<HTMLElement>): void;
46
49
  protected toggleVisibility(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"select-component.d.ts","sourceRoot":"","sources":["../../../src/browser/widgets/select-component.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,iDAAiD,CAAC;AAEzD,MAAM,WAAW,YAAY;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3D;AAED,MAAM,WAAW,iCAAiC;IAC9C,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,CAAC,EAAE,iCAAiC,CAAA;IAC9C,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AAEvE,qBAAa,eAAgB,SAAQ,KAAK,CAAC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5F,SAAS,CAAC,eAAe,EAAE,WAAW,CAAC;IACvC,SAAS,CAAC,QAAQ,kCAAqC;IACvD,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,kCAAkC,CAAC,CAAa;IACxF,SAAS,CAAC,YAAY,SAAK;IAC3B,SAAS,CAAC,aAAa,SAAK;gBAEhB,KAAK,EAAE,oBAAoB;IAuBvC,IAAI,KAAK,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,CAEvC;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAc3C;IAED,SAAS,CAAC,eAAe,IAAI,MAAM;IAKnC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAcrD,SAAS,CAAC,eAAe,IAAI,IAAI;IAsBxB,oBAAoB,IAAI,IAAI;IAc5B,MAAM,IAAI,KAAK,CAAC,SAAS;IAwBlC,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,IAAI;IA2CvE,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;IAMtE,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAmBlC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAUpC,SAAS,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS;IAgD3C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,KAAK,CAAC,SAAS;IAwB5E,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;CAIpE"}
1
+ {"version":3,"file":"select-component.d.ts","sourceRoot":"","sources":["../../../src/browser/widgets/select-component.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,iDAAiD,CAAC;AAEzD,MAAM,WAAW,YAAY;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,iCAAiC;IAC9C,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,CAAC,EAAE,iCAAiC,CAAA;IAC9C,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AAEvE,qBAAa,eAAgB,SAAQ,KAAK,CAAC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5F,SAAS,CAAC,eAAe,EAAE,WAAW,CAAC;IACvC,SAAS,CAAC,QAAQ,kCAAqC;IACvD,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,kCAAkC,CAAC,CAAa;IACxF,SAAS,CAAC,YAAY,SAAK;IAC3B,SAAS,CAAC,aAAa,SAAK;gBAEhB,KAAK,EAAE,oBAAoB;IAuBvC,IAAI,KAAK,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,CAEvC;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAc3C;IAED,SAAS,CAAC,eAAe,IAAI,MAAM;IAKnC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAcrD,SAAS,CAAC,eAAe,IAAI,IAAI;IAsBxB,oBAAoB,IAAI,IAAI;IAc5B,MAAM,IAAI,KAAK,CAAC,SAAS;IA8BlC,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM;IAiBvE,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,IAAI;IAsCvE,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;IAMtE,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAmBlC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAUpC,SAAS,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS;IAgD3C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,KAAK,CAAC,SAAS;IAwB5E,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;CAIpE"}
@@ -32,11 +32,11 @@ class SelectComponent extends React.Component {
32
32
  this.optimalWidth = 0;
33
33
  this.optimalHeight = 0;
34
34
  let selected = 0;
35
- if (typeof props.value === 'number') {
36
- selected = props.value;
35
+ if (typeof props.defaultValue === 'number') {
36
+ selected = props.defaultValue;
37
37
  }
38
- else if (typeof props.value === 'string') {
39
- selected = Math.max(props.options.findIndex(e => e.value === props.value), 0);
38
+ else if (typeof props.defaultValue === 'string') {
39
+ selected = Math.max(props.options.findIndex(e => e.value === props.defaultValue), 0);
40
40
  }
41
41
  this.state = {
42
42
  selected,
@@ -126,28 +126,42 @@ class SelectComponent extends React.Component {
126
126
  var _a, _b;
127
127
  const { options } = this.props;
128
128
  let { selected } = this.state;
129
- while ((_a = options[selected]) === null || _a === void 0 ? void 0 : _a.separator) {
130
- selected = (selected + 1) % this.props.options.length;
129
+ if ((_a = options[selected]) === null || _a === void 0 ? void 0 : _a.separator) {
130
+ selected = this.nextNotSeparator('forwards');
131
131
  }
132
132
  const selectedItemLabel = (_b = options[selected].label) !== null && _b !== void 0 ? _b : options[selected].value;
133
133
  return React.createElement(React.Fragment, null,
134
- React.createElement("div", { key: "select-component", ref: this.fieldRef, tabIndex: 0, className: "theia-select-component", onClick: e => this.handleClickEvent(e), onBlur: () => this.hide(), onKeyDown: e => this.handleKeypress(e) },
134
+ React.createElement("div", { key: "select-component", ref: this.fieldRef, tabIndex: 0, className: "theia-select-component", onClick: e => this.handleClickEvent(e), onBlur: () => {
135
+ var _a, _b;
136
+ this.hide();
137
+ (_b = (_a = this.props).onBlur) === null || _b === void 0 ? void 0 : _b.call(_a);
138
+ }, onFocus: () => { var _a, _b; return (_b = (_a = this.props).onFocus) === null || _b === void 0 ? void 0 : _b.call(_a); }, onKeyDown: e => this.handleKeypress(e) },
135
139
  React.createElement("div", { key: "label", className: "theia-select-component-label" }, selectedItemLabel),
136
140
  React.createElement("div", { key: "icon", className: `theia-select-component-chevron ${(0, widget_1.codicon)('chevron-down')}` })),
137
141
  ReactDOM.createPortal(this.renderDropdown(), this.dropdownElement));
138
142
  }
143
+ nextNotSeparator(direction) {
144
+ var _a;
145
+ const { options } = this.props;
146
+ const step = direction === 'forwards' ? 1 : -1;
147
+ const length = this.props.options.length;
148
+ let selected = this.state.selected;
149
+ let count = 0;
150
+ do {
151
+ selected = (selected + step) % length;
152
+ if (selected < 0) {
153
+ selected = length - 1;
154
+ }
155
+ count++;
156
+ } while (((_a = options[selected]) === null || _a === void 0 ? void 0 : _a.separator) && count < length);
157
+ return selected;
158
+ }
139
159
  handleKeypress(ev) {
140
160
  if (!this.fieldRef.current) {
141
161
  return;
142
162
  }
143
163
  if (ev.key === 'ArrowUp') {
144
- let selected = this.state.selected;
145
- if (selected <= 0) {
146
- selected = this.props.options.length - 1;
147
- }
148
- else {
149
- selected--;
150
- }
164
+ const selected = this.nextNotSeparator('backwards');
151
165
  this.setState({
152
166
  selected,
153
167
  hover: selected
@@ -155,7 +169,7 @@ class SelectComponent extends React.Component {
155
169
  }
156
170
  else if (ev.key === 'ArrowDown') {
157
171
  if (this.state.dimensions) {
158
- const selected = (this.state.selected + 1) % this.props.options.length;
172
+ const selected = this.nextNotSeparator('forwards');
159
173
  this.setState({
160
174
  selected,
161
175
  hover: selected
@@ -164,8 +178,8 @@ class SelectComponent extends React.Component {
164
178
  else {
165
179
  this.toggleVisibility();
166
180
  this.setState({
181
+ selected: 0,
167
182
  hover: 0,
168
- selected: 0
169
183
  });
170
184
  }
171
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"select-component.js","sourceRoot":"","sources":["../../../src/browser/widgets/select-component.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select-component.js","sourceRoot":"","sources":["../../../src/browser/widgets/select-component.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/core",
3
- "version": "1.27.0-next.7+5f887e22825",
3
+ "version": "1.27.0-next.8+e1e200a7bfb",
4
4
  "description": "Theia is a cloud & desktop IDE framework implemented in TypeScript.",
5
5
  "main": "lib/common/index.js",
6
6
  "typings": "lib/common/index.d.ts",
@@ -16,8 +16,8 @@
16
16
  "@phosphor/signaling": "1",
17
17
  "@phosphor/virtualdom": "1",
18
18
  "@phosphor/widgets": "1",
19
- "@theia/application-package": "1.27.0-next.7+5f887e22825",
20
- "@theia/request": "1.27.0-next.7+5f887e22825",
19
+ "@theia/application-package": "1.27.0-next.8+e1e200a7bfb",
20
+ "@theia/request": "1.27.0-next.8+e1e200a7bfb",
21
21
  "@types/body-parser": "^1.16.4",
22
22
  "@types/cookie": "^0.3.3",
23
23
  "@types/dompurify": "^2.2.2",
@@ -203,5 +203,5 @@
203
203
  "nyc": {
204
204
  "extends": "../../configs/nyc.json"
205
205
  },
206
- "gitHead": "5f887e22825c7284b16104b517678ca0a2824319"
206
+ "gitHead": "e1e200a7bfb9c7b9b87bf63dd8e101e734281222"
207
207
  }
@@ -34,8 +34,10 @@ export interface SelectOption {
34
34
 
35
35
  export interface SelectComponentProps {
36
36
  options: SelectOption[]
37
- value?: string | number
38
- onChange?: (option: SelectOption, index: number) => void
37
+ defaultValue?: string | number
38
+ onChange?: (option: SelectOption, index: number) => void,
39
+ onBlur?: () => void,
40
+ onFocus?: () => void
39
41
  }
40
42
 
41
43
  export interface SelectComponentDropdownDimensions {
@@ -64,10 +66,10 @@ export class SelectComponent extends React.Component<SelectComponentProps, Selec
64
66
  constructor(props: SelectComponentProps) {
65
67
  super(props);
66
68
  let selected = 0;
67
- if (typeof props.value === 'number') {
68
- selected = props.value;
69
- } else if (typeof props.value === 'string') {
70
- selected = Math.max(props.options.findIndex(e => e.value === props.value), 0);
69
+ if (typeof props.defaultValue === 'number') {
70
+ selected = props.defaultValue;
71
+ } else if (typeof props.defaultValue === 'string') {
72
+ selected = Math.max(props.options.findIndex(e => e.value === props.defaultValue), 0);
71
73
  }
72
74
  this.state = {
73
75
  selected,
@@ -162,8 +164,8 @@ export class SelectComponent extends React.Component<SelectComponentProps, Selec
162
164
  override render(): React.ReactNode {
163
165
  const { options } = this.props;
164
166
  let { selected } = this.state;
165
- while (options[selected]?.separator) {
166
- selected = (selected + 1) % this.props.options.length;
167
+ if (options[selected]?.separator) {
168
+ selected = this.nextNotSeparator('forwards');
167
169
  }
168
170
  const selectedItemLabel = options[selected].label ?? options[selected].value;
169
171
  return <>
@@ -173,7 +175,13 @@ export class SelectComponent extends React.Component<SelectComponentProps, Selec
173
175
  tabIndex={0}
174
176
  className="theia-select-component"
175
177
  onClick={e => this.handleClickEvent(e)}
176
- onBlur={() => this.hide()}
178
+ onBlur={
179
+ () => {
180
+ this.hide();
181
+ this.props.onBlur?.();
182
+ }
183
+ }
184
+ onFocus={() => this.props.onFocus?.()}
177
185
  onKeyDown={e => this.handleKeypress(e)}
178
186
  >
179
187
  <div key="label" className="theia-select-component-label">{selectedItemLabel}</div>
@@ -183,24 +191,36 @@ export class SelectComponent extends React.Component<SelectComponentProps, Selec
183
191
  </>;
184
192
  }
185
193
 
194
+ protected nextNotSeparator(direction: 'forwards' | 'backwards'): number {
195
+ const { options } = this.props;
196
+ const step = direction === 'forwards' ? 1 : -1;
197
+ const length = this.props.options.length;
198
+ let selected = this.state.selected;
199
+ let count = 0;
200
+ do {
201
+ selected = (selected + step) % length;
202
+ if (selected < 0) {
203
+ selected = length - 1;
204
+ }
205
+ count++;
206
+ }
207
+ while (options[selected]?.separator && count < length);
208
+ return selected;
209
+ }
210
+
186
211
  protected handleKeypress(ev: React.KeyboardEvent<HTMLDivElement>): void {
187
212
  if (!this.fieldRef.current) {
188
213
  return;
189
214
  }
190
215
  if (ev.key === 'ArrowUp') {
191
- let selected = this.state.selected;
192
- if (selected <= 0) {
193
- selected = this.props.options.length - 1;
194
- } else {
195
- selected--;
196
- }
216
+ const selected = this.nextNotSeparator('backwards');
197
217
  this.setState({
198
218
  selected,
199
219
  hover: selected
200
220
  });
201
221
  } else if (ev.key === 'ArrowDown') {
202
222
  if (this.state.dimensions) {
203
- const selected = (this.state.selected + 1) % this.props.options.length;
223
+ const selected = this.nextNotSeparator('forwards');
204
224
  this.setState({
205
225
  selected,
206
226
  hover: selected
@@ -208,8 +228,8 @@ export class SelectComponent extends React.Component<SelectComponentProps, Selec
208
228
  } else {
209
229
  this.toggleVisibility();
210
230
  this.setState({
231
+ selected: 0,
211
232
  hover: 0,
212
- selected: 0
213
233
  });
214
234
  }
215
235
  } else if (ev.key === 'Enter') {