@operato/board 2.0.0-alpha.7 → 2.0.0-alpha.71

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 (91) hide show
  1. package/CHANGELOG.md +428 -0
  2. package/demo/index-modeller.html +13 -2
  3. package/demo/index-player.html +13 -2
  4. package/demo/index-viewer.html +13 -2
  5. package/demo/index.html +13 -2
  6. package/dist/src/component/etc.js +2 -2
  7. package/dist/src/component/etc.js.map +1 -1
  8. package/dist/src/modeller/component-toolbar/component-detail.d.ts +1 -1
  9. package/dist/src/modeller/component-toolbar/component-menu.d.ts +1 -1
  10. package/dist/src/modeller/component-toolbar/component-menu.js +9 -4
  11. package/dist/src/modeller/component-toolbar/component-menu.js.map +1 -1
  12. package/dist/src/modeller/component-toolbar/component-toolbar.d.ts +1 -1
  13. package/dist/src/modeller/edit-toolbar.d.ts +1 -1
  14. package/dist/src/modeller/property-sidebar/data-binding/data-binding-mapper.d.ts +1 -1
  15. package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-map.d.ts +1 -1
  16. package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-range.d.ts +1 -1
  17. package/dist/src/modeller/property-sidebar/data-binding/data-binding.d.ts +2 -2
  18. package/dist/src/modeller/property-sidebar/data-binding/data-binding.js +19 -19
  19. package/dist/src/modeller/property-sidebar/data-binding/data-binding.js.map +1 -1
  20. package/dist/src/modeller/property-sidebar/effects/effects.d.ts +1 -1
  21. package/dist/src/modeller/property-sidebar/effects/property-animation.d.ts +1 -1
  22. package/dist/src/modeller/property-sidebar/effects/property-animations.d.ts +2 -2
  23. package/dist/src/modeller/property-sidebar/effects/property-animations.js +4 -4
  24. package/dist/src/modeller/property-sidebar/effects/property-animations.js.map +1 -1
  25. package/dist/src/modeller/property-sidebar/effects/property-event-hover.d.ts +1 -1
  26. package/dist/src/modeller/property-sidebar/effects/property-event-tap.d.ts +1 -1
  27. package/dist/src/modeller/property-sidebar/effects/property-event.d.ts +1 -1
  28. package/dist/src/modeller/property-sidebar/effects/property-shadow.d.ts +1 -1
  29. package/dist/src/modeller/property-sidebar/inspector/inspector.js +1 -1
  30. package/dist/src/modeller/property-sidebar/inspector/inspector.js.map +1 -1
  31. package/dist/src/modeller/property-sidebar/property-sidebar.d.ts +2 -2
  32. package/dist/src/modeller/property-sidebar/property-sidebar.js +8 -8
  33. package/dist/src/modeller/property-sidebar/property-sidebar.js.map +1 -1
  34. package/dist/src/modeller/property-sidebar/shapes/shapes.d.ts +2 -2
  35. package/dist/src/modeller/property-sidebar/shapes/shapes.js +15 -4
  36. package/dist/src/modeller/property-sidebar/shapes/shapes.js.map +1 -1
  37. package/dist/src/modeller/property-sidebar/specifics/specific-properties-builder.d.ts +1 -1
  38. package/dist/src/modeller/property-sidebar/specifics/specifics.d.ts +1 -1
  39. package/dist/src/modeller/property-sidebar/specifics/specifics.js +4 -1
  40. package/dist/src/modeller/property-sidebar/specifics/specifics.js.map +1 -1
  41. package/dist/src/modeller/property-sidebar/styles/styles.d.ts +1 -1
  42. package/dist/src/modeller/scene-viewer/ox-scene-handler.d.ts +1 -1
  43. package/dist/src/modeller/scene-viewer/ox-scene-layer.d.ts +1 -1
  44. package/dist/src/modeller/scene-viewer/ox-scene-viewer.d.ts +1 -1
  45. package/dist/src/ox-board-component-info.d.ts +2 -3
  46. package/dist/src/ox-board-component-info.js +5 -6
  47. package/dist/src/ox-board-component-info.js.map +1 -1
  48. package/dist/src/ox-board-list.js +14 -14
  49. package/dist/src/ox-board-list.js.map +1 -1
  50. package/dist/src/ox-board-modeller.d.ts +4 -3
  51. package/dist/src/ox-board-modeller.js +6 -3
  52. package/dist/src/ox-board-modeller.js.map +1 -1
  53. package/dist/src/ox-board-player-style.js +10 -10
  54. package/dist/src/ox-board-player-style.js.map +1 -1
  55. package/dist/src/ox-board-player.d.ts +2 -3
  56. package/dist/src/ox-board-player.js +17 -18
  57. package/dist/src/ox-board-player.js.map +1 -1
  58. package/dist/src/ox-board-template-list.d.ts +1 -1
  59. package/dist/src/ox-board-viewer.d.ts +3 -3
  60. package/dist/src/ox-board-viewer.js +16 -15
  61. package/dist/src/ox-board-viewer.js.map +1 -1
  62. package/dist/src/ox-editor-board-selector.d.ts +2 -2
  63. package/dist/src/ox-editor-board-selector.js +3 -3
  64. package/dist/src/ox-editor-board-selector.js.map +1 -1
  65. package/dist/src/selector/board-creation-popup.d.ts +1 -1
  66. package/dist/src/selector/board-thumbnail-card.d.ts +1 -1
  67. package/dist/src/selector/board-thumbnail-card.js +2 -2
  68. package/dist/src/selector/board-thumbnail-card.js.map +1 -1
  69. package/dist/src/selector/ox-board-creation-card.d.ts +2 -2
  70. package/dist/src/selector/ox-board-creation-card.js +7 -3
  71. package/dist/src/selector/ox-board-creation-card.js.map +1 -1
  72. package/dist/src/selector/ox-board-selector.d.ts +1 -1
  73. package/dist/tsconfig.tsbuildinfo +1 -1
  74. package/package.json +26 -27
  75. package/src/component/etc.ts +2 -2
  76. package/src/modeller/component-toolbar/component-menu.ts +9 -5
  77. package/src/modeller/property-sidebar/data-binding/data-binding.ts +19 -19
  78. package/src/modeller/property-sidebar/effects/property-animations.ts +4 -4
  79. package/src/modeller/property-sidebar/inspector/inspector.ts +1 -1
  80. package/src/modeller/property-sidebar/property-sidebar.ts +8 -8
  81. package/src/modeller/property-sidebar/shapes/shapes.ts +15 -4
  82. package/src/modeller/property-sidebar/specifics/specifics.ts +5 -1
  83. package/src/ox-board-component-info.ts +5 -6
  84. package/src/ox-board-list.ts +14 -17
  85. package/src/ox-board-modeller.ts +6 -3
  86. package/src/ox-board-player-style.ts +10 -10
  87. package/src/ox-board-player.ts +18 -20
  88. package/src/ox-board-viewer.ts +16 -15
  89. package/src/ox-editor-board-selector.ts +3 -3
  90. package/src/selector/board-thumbnail-card.ts +2 -2
  91. package/src/selector/ox-board-creation-card.ts +7 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@operato/board",
3
- "version": "2.0.0-alpha.7",
3
+ "version": "2.0.0-alpha.71",
4
4
  "description": "Webcomponent for board following open-wc recommendations",
5
5
  "author": "heartyoh",
6
6
  "main": "dist/src/index.js",
@@ -92,50 +92,49 @@
92
92
  },
93
93
  "dependencies": {
94
94
  "@open-wc/scoped-elements": "^2.0.0-next.6",
95
- "@operato/app": "^2.0.0-alpha.7",
96
- "@operato/data-grist": "^2.0.0-alpha.7",
97
- "@operato/font": "^2.0.0-alpha.7",
98
- "@operato/graphql": "^2.0.0-alpha.0",
99
- "@operato/i18n": "^2.0.0-alpha.0",
100
- "@operato/input": "^2.0.0-alpha.4",
101
- "@operato/layout": "^2.0.0-alpha.4",
102
- "@operato/markdown": "^2.0.0-alpha.0",
103
- "@operato/popup": "^2.0.0-alpha.4",
104
- "@operato/property-editor": "^2.0.0-alpha.7",
105
- "@operato/styles": "^2.0.0-alpha.0",
106
- "@operato/utils": "^2.0.0-alpha.0",
95
+ "@operato/app": "^2.0.0-alpha.71",
96
+ "@operato/data-grist": "^2.0.0-alpha.68",
97
+ "@operato/font": "^2.0.0-alpha.71",
98
+ "@operato/graphql": "^2.0.0-alpha.57",
99
+ "@operato/i18n": "^2.0.0-alpha.59",
100
+ "@operato/input": "^2.0.0-alpha.68",
101
+ "@operato/layout": "^2.0.0-alpha.69",
102
+ "@operato/markdown": "^2.0.0-alpha.68",
103
+ "@operato/popup": "^2.0.0-alpha.68",
104
+ "@operato/property-editor": "^2.0.0-alpha.71",
105
+ "@operato/styles": "^2.0.0-alpha.68",
106
+ "@operato/utils": "^2.0.0-alpha.68",
107
107
  "@polymer/paper-dropdown-menu": "^3.2.0",
108
108
  "@types/file-saver": "^2.0.4",
109
109
  "@types/sortablejs": "^1.10.7",
110
110
  "dexie": "^3.2.2",
111
111
  "file-saver": "^2.0.5",
112
- "lit": "^2.5.0",
112
+ "lit": "^3.1.2",
113
113
  "lodash-es": "^4.17.21",
114
114
  "sortablejs": "^1.14.0"
115
115
  },
116
116
  "devDependencies": {
117
- "@custom-elements-manifest/analyzer": "^0.8.1",
117
+ "@custom-elements-manifest/analyzer": "^0.9.2",
118
118
  "@hatiolab/prettier-config": "^1.0.0",
119
119
  "@hatiolab/things-scene": "^3.2.0",
120
- "@material/mwc-fab": "^0.27.0",
121
- "@material/mwc-icon": "^0.27.0",
122
- "@open-wc/eslint-config": "^10.0.0",
120
+ "@material/web": "^1.4.0",
121
+ "@open-wc/eslint-config": "^12.0.3",
123
122
  "@open-wc/testing": "^3.1.6",
124
123
  "@rollup/plugin-image": "^2.1.1",
125
124
  "@rollup/plugin-json": "^4.1.0",
126
125
  "@types/lodash-es": "^4.17.6",
127
126
  "@types/w3c-web-usb": "^1.0.5",
128
- "@typescript-eslint/eslint-plugin": "^5.59.1",
129
- "@typescript-eslint/parser": "^5.59.1",
127
+ "@typescript-eslint/eslint-plugin": "^7.0.1",
128
+ "@typescript-eslint/parser": "^7.0.1",
130
129
  "@web/dev-server": "^0.3.0",
131
- "@web/dev-server-storybook": "^0.7.4",
132
- "@web/test-runner": "^0.17.0",
130
+ "@web/dev-server-storybook": "^2.0.1",
131
+ "@web/test-runner": "^0.18.0",
133
132
  "concurrently": "^8.0.1",
134
133
  "eslint": "^8.39.0",
135
- "eslint-config-prettier": "^8.3.0",
136
- "husky": "^8.0.1",
137
- "lint-staged": "^13.2.2",
138
- "prettier": "^2.4.1",
134
+ "eslint-config-prettier": "^9.1.0",
135
+ "husky": "^9.0.11",
136
+ "lint-staged": "^15.2.2",
137
+ "prettier": "^3.2.5",
139
138
  "tslib": "^2.3.1",
140
139
  "typescript": "^5.0.4"
141
140
  },
@@ -152,5 +151,5 @@
152
151
  "prettier --write"
153
152
  ]
154
153
  },
155
- "gitHead": "2507b451915b745adb249bf59eef586d7683531a"
154
+ "gitHead": "d3111bf8a6d3b17cc22c104e8aee5fb195683f1e"
156
155
  }
@@ -45,7 +45,7 @@ export const etc: ComponentGroup = {
45
45
  }
46
46
  },
47
47
  {
48
- type: 'local reference',
48
+ type: 'local-ref',
49
49
  description: 'local reference',
50
50
  icon: localReference,
51
51
  group: 'etc',
@@ -65,7 +65,7 @@ export const etc: ComponentGroup = {
65
65
  }
66
66
  },
67
67
  {
68
- type: 'global reference',
68
+ type: 'global-ref',
69
69
  description: 'global reference',
70
70
  icon: globalReference,
71
71
  group: 'etc',
@@ -8,6 +8,7 @@ import { property, query, state } from 'lit/decorators.js'
8
8
  import { Scene } from '@hatiolab/things-scene'
9
9
  import { ScopedElementsMixin } from '@open-wc/scoped-elements'
10
10
  import { ScrollbarStyles } from '@operato/styles'
11
+ import { i18next } from '@operato/i18n'
11
12
 
12
13
  import { Pallet, PalletItem } from '../../types'
13
14
  import { ComponentDetail } from './component-detail'
@@ -69,6 +70,7 @@ export class ComponentMenu extends ScopedElementsMixin(LitElement) {
69
70
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
70
71
  font-size: 11px;
71
72
  color: var(--component-menu-item-color);
73
+ text-transform: capitalize;
72
74
  }
73
75
 
74
76
  [template]:hover,
@@ -119,13 +121,15 @@ export class ComponentMenu extends ScopedElementsMixin(LitElement) {
119
121
  <h2 onclick=${(e: MouseEvent) => e.stopPropagation()}>${this.group} list</h2>
120
122
 
121
123
  <div templates @mouseover=${(e: MouseEvent) => this.onHoverComponent(e)}>
122
- ${(this.templates || []).map(
123
- template => html`
124
- <div @click=${this.onClickTemplate} data-type=${template.type} template>
125
- <img src=${this.templateIcon(template)} />${template.type}
124
+ ${(this.templates || []).map(template => {
125
+ const { type } = template
126
+
127
+ return html`
128
+ <div @click=${this.onClickTemplate} data-type=${type} template>
129
+ <img src=${String(this.templateIcon(template))} />${i18next.t(`component.${type}`)}
126
130
  </div>
127
131
  `
128
- )}
132
+ })}
129
133
  </div>
130
134
 
131
135
  <component-detail
@@ -2,7 +2,7 @@
2
2
  * @license Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
 
5
- import '@material/mwc-icon'
5
+ import '@material/web/icon/icon.js'
6
6
  import '@operato/help/ox-title-with-help.js'
7
7
  import '@operato/input/ox-buttons-radio.js'
8
8
  import '@operato/input/ox-input-data.js'
@@ -55,7 +55,7 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
55
55
  justify-content: space-between;
56
56
  }
57
57
 
58
- #tab-header > mwc-icon {
58
+ #tab-header > md-icon {
59
59
  padding: 0;
60
60
  margin: 0;
61
61
  width: 25px;
@@ -69,7 +69,7 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
69
69
  width: 100%;
70
70
  }
71
71
 
72
- fieldset[collapsable] legend mwc-icon {
72
+ fieldset[collapsable] legend md-icon {
73
73
  float: right;
74
74
  font-size: medium;
75
75
  margin: 0;
@@ -130,20 +130,20 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
130
130
  padding: 7px 5px 2px 5px;
131
131
  }
132
132
 
133
- mwc-icon {
133
+ md-icon {
134
134
  margin-left: 5px;
135
135
  color: var(--secondary-color);
136
136
  opacity: 0.8;
137
137
  cursor: pointer;
138
- --mdc-icon-size: 18px;
138
+ --md-icon-size: 18px;
139
139
  }
140
140
 
141
- mwc-icon:hover {
141
+ md-icon:hover {
142
142
  color: var(--primary-color);
143
143
  opacity: 1;
144
144
  }
145
145
 
146
- mwc-icon[disabled] {
146
+ md-icon[disabled] {
147
147
  color: rgba(0, 0, 0, 0.1);
148
148
  }
149
149
 
@@ -159,7 +159,7 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
159
159
  font-size: 15px;
160
160
  font-weight: 300;
161
161
  -webkit-appearance: none;
162
- }
162
+ };
163
163
  }
164
164
  `
165
165
  ]
@@ -252,11 +252,11 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
252
252
  <ox-title-with-help topic="board-modeller/initial-data" msgid="label.initial-data"
253
253
  >initial value</ox-title-with-help
254
254
  >
255
- <mwc-icon
255
+ <md-icon
256
256
  @click=${() => {
257
257
  this._dataExpanded = !this._dataExpanded
258
258
  }}
259
- >${this._dataExpanded ? 'expand_less' : 'expand_more'}</mwc-icon
259
+ >${this._dataExpanded ? 'expand_less' : 'expand_more'}</md-icon
260
260
  >
261
261
  </legend>
262
262
  <ox-input-data value-key="data" .value=${value.data}> </ox-input-data>
@@ -270,13 +270,13 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
270
270
  </legend>
271
271
 
272
272
  <div id="tab-header">
273
- <mwc-icon
273
+ <md-icon
274
274
  id="tab-nav-left-button"
275
275
  @click=${() => {
276
276
  this._onTabScrollNavLeft()
277
277
  }}
278
278
  disabled
279
- >chevron_left</mwc-icon
279
+ >chevron_left</md-icon
280
280
  >
281
281
 
282
282
  <ox-buttons-radio
@@ -291,23 +291,23 @@ export class PropertyDataBinding extends ScopedElementsMixin(AbstractProperty) {
291
291
  <div data-value=${this.mappings.length} data-mapping disabled>${this.mappings.length + 1}</div>
292
292
  </ox-buttons-radio>
293
293
 
294
- <mwc-icon
294
+ <md-icon
295
295
  id="tab-nav-right-button"
296
296
  @click=${(e: Event) => {
297
297
  this._onTabScrollNavRight()
298
298
  }}
299
299
  disabled
300
- >chevron_right</mwc-icon
300
+ >chevron_right</md-icon
301
301
  >
302
302
  </div>
303
303
 
304
304
  <div binding>
305
- <mwc-icon style="font-size:19px" @click=${() => this._clearDataBindingMapper()} title="delete current tab"
306
- >delete_forever</mwc-icon
305
+ <md-icon style="font-size:19px" @click=${() => this._clearDataBindingMapper()} title="delete current tab"
306
+ >delete_forever</md-icon
307
307
  >
308
- <mwc-icon @click=${() => this._pasteDataBindingMapper()} title="replace current tab">content_paste</mwc-icon>
309
- <mwc-icon style="font-size:17px" @click=${() => this._copyDataBindingMapper()} title="copy current tab"
310
- >content_copy</mwc-icon
308
+ <md-icon @click=${() => this._pasteDataBindingMapper()} title="replace current tab">content_paste</md-icon>
309
+ <md-icon style="font-size:17px" @click=${() => this._copyDataBindingMapper()} title="copy current tab"
310
+ >content_copy</md-icon
311
311
  >
312
312
  </div>
313
313
 
@@ -2,7 +2,7 @@
2
2
  * @license Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
 
5
- import '@material/mwc-icon'
5
+ import '@material/web/icon/icon.js'
6
6
  import '@operato/help/ox-title-with-help.js'
7
7
 
8
8
  import { css, html, LitElement } from 'lit'
@@ -24,7 +24,7 @@ export class PropertyAnimations extends ScopedElementsMixin(LitElement) {
24
24
  width: 100%;
25
25
  }
26
26
 
27
- fieldset[collapsable] legend mwc-icon {
27
+ fieldset[collapsable] legend md-icon {
28
28
  float: right;
29
29
  font-size: medium;
30
30
  margin: 0;
@@ -61,11 +61,11 @@ export class PropertyAnimations extends ScopedElementsMixin(LitElement) {
61
61
  <ox-title-with-help topic="board-modeller/effects/animation" msgid="label.animation"
62
62
  >animation</ox-title-with-help
63
63
  >
64
- <mwc-icon
64
+ <md-icon
65
65
  @click=${() => {
66
66
  this._expanded = !this._expanded
67
67
  }}
68
- >${this._expanded ? 'expand_less' : 'expand_more'}</mwc-icon
68
+ >${this._expanded ? 'expand_less' : 'expand_more'}</md-icon
69
69
  >
70
70
  </legend>
71
71
 
@@ -391,7 +391,7 @@ export class SceneInspector extends LitElement {
391
391
  <span>
392
392
  ${depth > 0
393
393
  ? html`
394
- <mwc-icon class="eye">${component.get('hidden') ? 'visibility_off' : 'visibility'}</mwc-icon>
394
+ <md-icon class="eye">${component.get('hidden') ? 'visibility_off' : 'visibility'}</md-icon>
395
395
  <pre>${' '.repeat(depth)}</pre>
396
396
  `
397
397
  : html` <pre>${' '.repeat(depth + 2)}</pre> `}
@@ -2,7 +2,7 @@
2
2
  * @license Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
 
5
- import '@material/mwc-icon'
5
+ import '@material/web/icon/icon.js'
6
6
 
7
7
  import { css, html, LitElement, PropertyValues } from 'lit'
8
8
  import { property } from 'lit/decorators.js'
@@ -41,7 +41,7 @@ export class PropertySidebar extends ScopedElementsMixin(LitElement) {
41
41
  opacity: 0.85;
42
42
  }
43
43
 
44
- [tab] mwc-icon {
44
+ [tab] md-icon {
45
45
  flex: 1;
46
46
 
47
47
  display: flex;
@@ -116,12 +116,12 @@ export class PropertySidebar extends ScopedElementsMixin(LitElement) {
116
116
  this.tabName = (e.target as HTMLElement).getAttribute('name')
117
117
  }}
118
118
  >
119
- <mwc-icon name="shape" ?selected=${tabName == 'shape'}>format_shapes</mwc-icon>
120
- <mwc-icon name="style" ?selected=${tabName == 'style'}>palette</mwc-icon>
121
- <mwc-icon name="effect" ?selected=${tabName == 'effect'}>movie_filter</mwc-icon>
122
- <mwc-icon name="specific" ?selected=${tabName == 'specific'}>tune</mwc-icon>
123
- <mwc-icon name="data-binding" ?selected=${tabName == 'data-binding'}>share</mwc-icon>
124
- <mwc-icon name="inspector" ?selected=${tabName == 'inspector'}>visibility</mwc-icon>
119
+ <md-icon name="shape" ?selected=${tabName == 'shape'}>format_shapes</md-icon>
120
+ <md-icon name="style" ?selected=${tabName == 'style'}>palette</md-icon>
121
+ <md-icon name="effect" ?selected=${tabName == 'effect'}>movie_filter</md-icon>
122
+ <md-icon name="specific" ?selected=${tabName == 'specific'}>tune</md-icon>
123
+ <md-icon name="data-binding" ?selected=${tabName == 'data-binding'}>share</md-icon>
124
+ <md-icon name="inspector" ?selected=${tabName == 'inspector'}>visibility</md-icon>
125
125
  </div>
126
126
 
127
127
  <div content>
@@ -4,7 +4,7 @@
4
4
 
5
5
  import '@operato/input/ox-input-angle.js'
6
6
  import '@operato/input/ox-buttons-radio.js'
7
- import '@material/mwc-icon'
7
+ import '@material/web/icon/icon.js'
8
8
  import '@operato/i18n/ox-i18n.js'
9
9
  import '@operato/help/ox-title-with-help.js'
10
10
 
@@ -28,7 +28,7 @@ export class PropertyShapes extends AbstractProperty {
28
28
  width: 100%;
29
29
  }
30
30
 
31
- fieldset[collapsable] legend mwc-icon {
31
+ fieldset[collapsable] legend md-icon {
32
32
  float: right;
33
33
  font-size: medium;
34
34
  margin: 0;
@@ -223,11 +223,11 @@ export class PropertyShapes extends AbstractProperty {
223
223
  <fieldset class="icon-label unit ratio" collapsable ?collapsed=${!this._3dExpanded}>
224
224
  <legend>
225
225
  <ox-title-with-help topic="board-modeller/shapes/3dish" msgid="label.3dish">3D</ox-title-with-help>
226
- <mwc-icon
226
+ <md-icon
227
227
  @click=${(e: Event) => {
228
228
  this._3dExpanded = !this._3dExpanded
229
229
  }}
230
- >${this._3dExpanded ? 'expand_less' : 'expand_more'}</mwc-icon
230
+ >${this._3dExpanded ? 'expand_less' : 'expand_more'}</md-icon
231
231
  >
232
232
  </legend>
233
233
 
@@ -279,6 +279,17 @@ export class PropertyShapes extends AbstractProperty {
279
279
  <label for="checkbox-textwrap"> <ox-i18n msgid="label.text-wrap">Text Wrap</ox-i18n> </label>
280
280
  </div>
281
281
 
282
+ ${!value.textWrap
283
+ ? html` <label for="checkbox-textOverflow">
284
+ <ox-i18n msgid="label.text-overflow">Text Overflow</ox-i18n>
285
+ </label>
286
+ <select value-key="textOverflow" .value=${value.textOverflow || ''}>
287
+ <option value="" selected>none</option>
288
+ <option value="ellipsis">ellipsis</option>
289
+ <option value="clip">clip</option>
290
+ </select>`
291
+ : ''}
292
+
282
293
  <label> <ox-i18n msgid="label.padding">padding</ox-i18n> </label>
283
294
  <table class="box-padding">
284
295
  <tr>
@@ -10,6 +10,8 @@ import { property } from 'lit/decorators.js'
10
10
  import { Component, Scene } from '@hatiolab/things-scene'
11
11
  import { ScopedElementsMixin } from '@open-wc/scoped-elements'
12
12
 
13
+ import { i18next } from '@operato/i18n'
14
+
13
15
  import { PropertySharedStyle } from '../property-shared-style'
14
16
  import { SpecificPropertiesBuilder } from './specific-properties-builder.js'
15
17
 
@@ -58,7 +60,9 @@ export class PropertySpecific extends ScopedElementsMixin(LitElement) {
58
60
  const value = this.value || {}
59
61
 
60
62
  return html`
61
- <label>${value.type}<ox-help-icon .topic=${selected?.nature?.help}></ox-help-icon></label>
63
+ <label
64
+ >${i18next.t(`component.${value.type}`)}<ox-help-icon .topic=${selected?.nature?.help}></ox-help-icon
65
+ ></label>
62
66
 
63
67
  <specific-properties-builder .value=${value} .props=${this.props} .propertyEditor=${this.propertyEditor}>
64
68
  </specific-properties-builder>
@@ -1,5 +1,4 @@
1
- import '@material/mwc-icon'
2
- import '@material/mwc-button'
1
+ import '@material/web/icon/icon.js'
3
2
  import '@operato/property-editor/ox-properties-dynamic-view.js'
4
3
  import '@operato/markdown'
5
4
 
@@ -23,7 +22,7 @@ export class BoardComponentInfo extends LitElement {
23
22
  border: 2px solid var(--primary-color);
24
23
  border-radius: 3px;
25
24
 
26
- --mdc-icon-size: 12px;
25
+ --md-icon-size: 12px;
27
26
  }
28
27
 
29
28
  [header] {
@@ -36,7 +35,7 @@ export class BoardComponentInfo extends LitElement {
36
35
  display: flex;
37
36
  }
38
37
 
39
- [header] mwc-icon {
38
+ [header] md-icon {
40
39
  margin-left: auto;
41
40
  align-self: center;
42
41
  }
@@ -101,8 +100,8 @@ export class BoardComponentInfo extends LitElement {
101
100
 
102
101
  return html`
103
102
  <div header @mousedown=${this.onDragStart.bind(this)} draggable="false">
104
- Component Inspection<mwc-icon @click=${(e: MouseEvent) => this.dispatchEvent(new CustomEvent('close'))}
105
- >close</mwc-icon
103
+ Component Inspection<md-icon @click=${(e: MouseEvent) => this.dispatchEvent(new CustomEvent('close'))}
104
+ >close</md-icon
106
105
  >
107
106
  </div>
108
107
  <div content @wheel=${(e: WheelEvent) => this.onWheel(e)}>
@@ -44,7 +44,7 @@ class BoardList extends LitElement {
44
44
 
45
45
  #filters {
46
46
  flex: 1;
47
- --mdc-icon-size: 20px;
47
+ --md-icon-size: 20px;
48
48
  }
49
49
  #mode {
50
50
  width: 100px;
@@ -62,14 +62,14 @@ class BoardList extends LitElement {
62
62
  cursor: pointer;
63
63
  }
64
64
 
65
- #modes > mwc-icon[active] {
65
+ #modes > md-icon[active] {
66
66
  border-radius: 9px;
67
67
  background-color: rgba(var(--primary-color-rgb), 0.05);
68
68
  opacity: 1;
69
69
  color: var(--secondary-text-color);
70
70
  cursor: default;
71
71
  }
72
- #modes > mwc-icon:hover {
72
+ #modes > md-icon:hover {
73
73
  opacity: 1;
74
74
  color: var(--secondary-text-color);
75
75
  }
@@ -87,7 +87,7 @@ class BoardList extends LitElement {
87
87
  background-color: var(--focus-background-color);
88
88
  box-shadow: var(--box-shadow);
89
89
  }
90
- #add button mwc-icon {
90
+ #add button md-icon {
91
91
  font-size: 2em;
92
92
  color: var(--theme-white-color);
93
93
  }
@@ -105,7 +105,7 @@ class BoardList extends LitElement {
105
105
  #filters [type='text']:focus {
106
106
  outline: none;
107
107
  }
108
- #filters mwc-icon {
108
+ #filters md-icon {
109
109
  position: absolute;
110
110
  top: 3px;
111
111
  color: var(--secondary-color);
@@ -152,7 +152,7 @@ class BoardList extends LitElement {
152
152
  <ox-grist .config=${this.config} .mode=${mode} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}>
153
153
  <div slot="headroom" id="headroom">
154
154
  <div id="filters">
155
- <mwc-icon>search</mwc-icon>
155
+ <md-icon>search</md-icon>
156
156
  <input type="text" />
157
157
 
158
158
  <select
@@ -163,22 +163,23 @@ class BoardList extends LitElement {
163
163
  >
164
164
  <option value="">*</option>
165
165
  ${this.groups.map(
166
- group =>
167
- html` <option value=${group.id} ?selected=${group.id === this.groupId}>${group.description}</option> `
166
+ group => html`
167
+ <option value=${group.id} ?selected=${group.id === this.groupId}>${group.description}</option>
168
+ `
168
169
  )}
169
170
  </select>
170
171
  </div>
171
172
 
172
173
  <div id="modes">
173
- <mwc-icon @click=${() => (this.mode = 'GRID')} ?active=${mode == 'GRID'}>grid_on</mwc-icon>
174
- <mwc-icon @click=${() => (this.mode = 'LIST')} ?active=${mode == 'LIST'}>format_list_bulleted</mwc-icon>
175
- <mwc-icon @click=${() => (this.mode = 'CARD')} ?active=${mode == 'CARD'}>apps</mwc-icon>
174
+ <md-icon @click=${() => (this.mode = 'GRID')} ?active=${mode == 'GRID'}>grid_on</md-icon>
175
+ <md-icon @click=${() => (this.mode = 'LIST')} ?active=${mode == 'LIST'}>format_list_bulleted</md-icon>
176
+ <md-icon @click=${() => (this.mode = 'CARD')} ?active=${mode == 'CARD'}>apps</md-icon>
176
177
  </div>
177
178
 
178
179
  ${this.creatable
179
180
  ? html`
180
181
  <div id="add">
181
- <button><mwc-icon @click=${() => this.onCreateBoard()}>add</mwc-icon></button>
182
+ <button><md-icon @click=${() => this.onCreateBoard()}>add</md-icon></button>
182
183
  </div>
183
184
  `
184
185
  : undefined}
@@ -422,11 +423,7 @@ class BoardList extends LitElement {
422
423
  thumbnail
423
424
  }
424
425
 
425
- const { createBoard: created } = await createBoard(board)
426
-
427
- // this.popup && this.popup.close()
428
-
429
- // await sleep(100)
426
+ await createBoard(board)
430
427
 
431
428
  this.notify('info', 'new board created')
432
429
  } catch (ex: Error | any) {
@@ -1,4 +1,5 @@
1
- import '@material/mwc-fab'
1
+ import '@material/web/icon/icon.js'
2
+ import '@material/web/fab/fab.js'
2
3
  import '@hatiolab/things-scene'
3
4
  import './modeller/scene-viewer/ox-scene-handler.js'
4
5
  import './modeller/scene-viewer/ox-scene-layer.js'
@@ -85,7 +86,7 @@ export class BoardModeller extends ScopedElementsMixin(LitElement) {
85
86
  height: 100%;
86
87
  }
87
88
 
88
- mwc-fab {
89
+ md-fab {
89
90
  position: absolute;
90
91
  right: 15px;
91
92
  bottom: 15px;
@@ -278,7 +279,9 @@ export class BoardModeller extends ScopedElementsMixin(LitElement) {
278
279
  <ox-scene-handler type="paste-handler"></ox-scene-handler>
279
280
  </ox-scene-viewer>
280
281
 
281
- <mwc-fab icon="save" @click=${() => this.onTapSave()} title="save"> </mwc-fab>
282
+ <md-fab @click=${() => this.onTapSave()} title="save">
283
+ <md-icon slot="icon">save</md-icon>
284
+ </md-fab>
282
285
  </div>
283
286
 
284
287
  <property-sidebar
@@ -73,7 +73,7 @@ export const style = css`
73
73
  grid-row: 1 / span 3;
74
74
  }
75
75
 
76
- #joystick mwc-icon {
76
+ #joystick md-icon {
77
77
  position: absolute;
78
78
  display: block;
79
79
  width: 20px;
@@ -82,17 +82,17 @@ export const style = css`
82
82
  line-height: 0.7;
83
83
  }
84
84
 
85
- mwc-icon#up {
85
+ md-icon#up {
86
86
  left: 29px;
87
87
  }
88
88
 
89
- mwc-icon#left {
89
+ md-icon#left {
90
90
  top: 32px;
91
91
  left: -2px;
92
92
  }
93
93
 
94
- mwc-icon#play,
95
- mwc-icon#pause {
94
+ md-icon#play,
95
+ md-icon#pause {
96
96
  left: 20px;
97
97
  top: 20px;
98
98
  width: 40px;
@@ -104,17 +104,17 @@ export const style = css`
104
104
  line-height: 0.9;
105
105
  }
106
106
 
107
- mwc-icon#right {
107
+ md-icon#right {
108
108
  top: 31px;
109
109
  left: 60px;
110
110
  }
111
111
 
112
- mwc-icon#down {
112
+ md-icon#down {
113
113
  left: 29px;
114
114
  top: 63px;
115
115
  }
116
116
 
117
- mwc-icon#pause {
117
+ md-icon#pause {
118
118
  text-indent: -2px;
119
119
  }
120
120
 
@@ -139,7 +139,7 @@ export const style = css`
139
139
  grid-gap: 0 10px;
140
140
  }
141
141
 
142
- #setting mwc-icon {
142
+ #setting md-icon {
143
143
  font-size: 22px;
144
144
  color: rgba(255, 174, 53, 0.8);
145
145
  }
@@ -183,7 +183,7 @@ export const style = css`
183
183
  justify-items: center;
184
184
  }
185
185
 
186
- #etc mwc-icon {
186
+ #etc md-icon {
187
187
  font-size: 30px;
188
188
  }
189
189