@operato/board 2.0.0-alpha.13 → 2.0.0-alpha.131

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 (102) hide show
  1. package/CHANGELOG.md +805 -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/component-toolbar/component-toolbar.js.map +1 -1
  14. package/dist/src/modeller/edit-toolbar.d.ts +1 -1
  15. package/dist/src/modeller/edit-toolbar.js +1 -1
  16. package/dist/src/modeller/edit-toolbar.js.map +1 -1
  17. package/dist/src/modeller/property-sidebar/data-binding/data-binding-mapper.d.ts +1 -1
  18. package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-map.d.ts +1 -1
  19. package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-range.d.ts +1 -1
  20. package/dist/src/modeller/property-sidebar/data-binding/data-binding.d.ts +2 -2
  21. package/dist/src/modeller/property-sidebar/data-binding/data-binding.js +19 -19
  22. package/dist/src/modeller/property-sidebar/data-binding/data-binding.js.map +1 -1
  23. package/dist/src/modeller/property-sidebar/effects/effects.d.ts +1 -1
  24. package/dist/src/modeller/property-sidebar/effects/property-animation.d.ts +1 -1
  25. package/dist/src/modeller/property-sidebar/effects/property-animations.d.ts +2 -2
  26. package/dist/src/modeller/property-sidebar/effects/property-animations.js +4 -4
  27. package/dist/src/modeller/property-sidebar/effects/property-animations.js.map +1 -1
  28. package/dist/src/modeller/property-sidebar/effects/property-event-hover.d.ts +1 -1
  29. package/dist/src/modeller/property-sidebar/effects/property-event-tap.d.ts +1 -1
  30. package/dist/src/modeller/property-sidebar/effects/property-event.d.ts +1 -1
  31. package/dist/src/modeller/property-sidebar/effects/property-shadow.d.ts +1 -1
  32. package/dist/src/modeller/property-sidebar/inspector/inspector.js +1 -1
  33. package/dist/src/modeller/property-sidebar/inspector/inspector.js.map +1 -1
  34. package/dist/src/modeller/property-sidebar/property-sidebar.d.ts +2 -2
  35. package/dist/src/modeller/property-sidebar/property-sidebar.js +8 -8
  36. package/dist/src/modeller/property-sidebar/property-sidebar.js.map +1 -1
  37. package/dist/src/modeller/property-sidebar/shapes/shapes.d.ts +2 -2
  38. package/dist/src/modeller/property-sidebar/shapes/shapes.js +15 -4
  39. package/dist/src/modeller/property-sidebar/shapes/shapes.js.map +1 -1
  40. package/dist/src/modeller/property-sidebar/specifics/specific-properties-builder.d.ts +1 -1
  41. package/dist/src/modeller/property-sidebar/specifics/specifics.d.ts +1 -1
  42. package/dist/src/modeller/property-sidebar/specifics/specifics.js +4 -1
  43. package/dist/src/modeller/property-sidebar/specifics/specifics.js.map +1 -1
  44. package/dist/src/modeller/property-sidebar/styles/styles.d.ts +1 -1
  45. package/dist/src/modeller/scene-viewer/ox-scene-handler.d.ts +1 -1
  46. package/dist/src/modeller/scene-viewer/ox-scene-layer.d.ts +1 -1
  47. package/dist/src/modeller/scene-viewer/ox-scene-viewer.d.ts +1 -1
  48. package/dist/src/ox-board-component-info.d.ts +2 -3
  49. package/dist/src/ox-board-component-info.js +5 -6
  50. package/dist/src/ox-board-component-info.js.map +1 -1
  51. package/dist/src/ox-board-list.js +22 -14
  52. package/dist/src/ox-board-list.js.map +1 -1
  53. package/dist/src/ox-board-modeller.d.ts +4 -3
  54. package/dist/src/ox-board-modeller.js +6 -3
  55. package/dist/src/ox-board-modeller.js.map +1 -1
  56. package/dist/src/ox-board-player-style.js +10 -10
  57. package/dist/src/ox-board-player-style.js.map +1 -1
  58. package/dist/src/ox-board-player.d.ts +2 -3
  59. package/dist/src/ox-board-player.js +17 -18
  60. package/dist/src/ox-board-player.js.map +1 -1
  61. package/dist/src/ox-board-template-list.d.ts +1 -1
  62. package/dist/src/ox-board-viewer.d.ts +3 -3
  63. package/dist/src/ox-board-viewer.js +17 -15
  64. package/dist/src/ox-board-viewer.js.map +1 -1
  65. package/dist/src/ox-editor-board-selector.d.ts +2 -2
  66. package/dist/src/ox-editor-board-selector.js +3 -3
  67. package/dist/src/ox-editor-board-selector.js.map +1 -1
  68. package/dist/src/selector/board-creation-popup.d.ts +5 -6
  69. package/dist/src/selector/board-creation-popup.js +22 -17
  70. package/dist/src/selector/board-creation-popup.js.map +1 -1
  71. package/dist/src/selector/board-thumbnail-card.d.ts +1 -1
  72. package/dist/src/selector/board-thumbnail-card.js +2 -2
  73. package/dist/src/selector/board-thumbnail-card.js.map +1 -1
  74. package/dist/src/selector/ox-board-creation-card.d.ts +2 -2
  75. package/dist/src/selector/ox-board-creation-card.js +7 -3
  76. package/dist/src/selector/ox-board-creation-card.js.map +1 -1
  77. package/dist/src/selector/ox-board-selector.d.ts +1 -1
  78. package/dist/stories/property-data-binding.stories.js +1 -0
  79. package/dist/stories/property-data-binding.stories.js.map +1 -1
  80. package/dist/tsconfig.tsbuildinfo +1 -1
  81. package/package.json +29 -29
  82. package/src/component/etc.ts +2 -2
  83. package/src/modeller/component-toolbar/component-menu.ts +9 -5
  84. package/src/modeller/component-toolbar/component-toolbar.ts +8 -5
  85. package/src/modeller/edit-toolbar.ts +1 -1
  86. package/src/modeller/property-sidebar/data-binding/data-binding.ts +19 -19
  87. package/src/modeller/property-sidebar/effects/property-animations.ts +4 -4
  88. package/src/modeller/property-sidebar/inspector/inspector.ts +1 -1
  89. package/src/modeller/property-sidebar/property-sidebar.ts +8 -8
  90. package/src/modeller/property-sidebar/shapes/shapes.ts +15 -4
  91. package/src/modeller/property-sidebar/specifics/specifics.ts +5 -1
  92. package/src/ox-board-component-info.ts +5 -6
  93. package/src/ox-board-list.ts +22 -15
  94. package/src/ox-board-modeller.ts +6 -3
  95. package/src/ox-board-player-style.ts +10 -10
  96. package/src/ox-board-player.ts +18 -20
  97. package/src/ox-board-viewer.ts +17 -15
  98. package/src/ox-editor-board-selector.ts +3 -3
  99. package/src/selector/board-creation-popup.ts +22 -17
  100. package/src/selector/board-thumbnail-card.ts +2 -2
  101. package/src/selector/ox-board-creation-card.ts +7 -3
  102. package/stories/property-data-binding.stories.ts +2 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@operato/board",
3
- "version": "2.0.0-alpha.13",
3
+ "version": "2.0.0-alpha.131",
4
4
  "description": "Webcomponent for board following open-wc recommendations",
5
5
  "author": "heartyoh",
6
6
  "main": "dist/src/index.js",
@@ -91,51 +91,51 @@
91
91
  "storybook:build": "tsc && npm run analyze -- --exclude dist && build-storybook"
92
92
  },
93
93
  "dependencies": {
94
- "@open-wc/scoped-elements": "^2.0.0-next.6",
95
- "@operato/app": "^2.0.0-alpha.13",
96
- "@operato/data-grist": "^2.0.0-alpha.13",
97
- "@operato/font": "^2.0.0-alpha.13",
98
- "@operato/graphql": "^2.0.0-alpha.0",
99
- "@operato/i18n": "^2.0.0-alpha.0",
100
- "@operato/input": "^2.0.0-alpha.13",
101
- "@operato/layout": "^2.0.0-alpha.9",
102
- "@operato/markdown": "^2.0.0-alpha.0",
103
- "@operato/popup": "^2.0.0-alpha.9",
104
- "@operato/property-editor": "^2.0.0-alpha.13",
105
- "@operato/styles": "^2.0.0-alpha.0",
106
- "@operato/utils": "^2.0.0-alpha.8",
94
+ "@material/web": "^1.4.0",
95
+ "@open-wc/scoped-elements": "^2.1.3",
96
+ "@operato/app": "^2.0.0-alpha.131",
97
+ "@operato/data-grist": "^2.0.0-alpha.131",
98
+ "@operato/font": "^2.0.0-alpha.131",
99
+ "@operato/graphql": "^2.0.0-alpha.111",
100
+ "@operato/i18n": "^2.0.0-alpha.111",
101
+ "@operato/input": "^2.0.0-alpha.129",
102
+ "@operato/layout": "^2.0.0-alpha.129",
103
+ "@operato/markdown": "^2.0.0-alpha.129",
104
+ "@operato/popup": "^2.0.0-alpha.129",
105
+ "@operato/property-editor": "^2.0.0-alpha.131",
106
+ "@operato/styles": "^2.0.0-alpha.129",
107
+ "@operato/utils": "^2.0.0-alpha.122",
107
108
  "@polymer/paper-dropdown-menu": "^3.2.0",
108
109
  "@types/file-saver": "^2.0.4",
109
110
  "@types/sortablejs": "^1.10.7",
110
111
  "dexie": "^3.2.2",
111
112
  "file-saver": "^2.0.5",
112
- "lit": "^2.5.0",
113
+ "lit": "^3.1.2",
113
114
  "lodash-es": "^4.17.21",
114
- "sortablejs": "^1.14.0"
115
+ "sortablejs": "^1.15.2"
115
116
  },
116
117
  "devDependencies": {
117
- "@custom-elements-manifest/analyzer": "^0.8.1",
118
+ "@custom-elements-manifest/analyzer": "^0.9.2",
118
119
  "@hatiolab/prettier-config": "^1.0.0",
119
120
  "@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",
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",
132
+ "@webcomponents/scoped-custom-element-registry": "^0.0.9",
133
133
  "concurrently": "^8.0.1",
134
134
  "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",
135
+ "eslint-config-prettier": "^9.1.0",
136
+ "husky": "^9.0.11",
137
+ "lint-staged": "^15.2.2",
138
+ "prettier": "^3.2.5",
139
139
  "tslib": "^2.3.1",
140
140
  "typescript": "^5.0.4"
141
141
  },
@@ -152,5 +152,5 @@
152
152
  "prettier --write"
153
153
  ]
154
154
  },
155
- "gitHead": "112ec6a672e96837e01ffe55048f543fffa19e02"
155
+ "gitHead": "48271ff32be26111347ce27d120b238ae14e15ae"
156
156
  }
@@ -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
@@ -84,11 +84,14 @@ export class ComponentToolbar extends ScopedElementsMixin(LitElement) {
84
84
 
85
85
  this.icons = (this.componentGroupList || [])
86
86
  .filter(group => group.templates?.length > 0)
87
- .reduce((sum, group: ComponentGroup) => {
88
- sum[group.name] =
89
- 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(group.icon.replace(/{{strokeColor}}/g, color))
90
- return sum
91
- }, {} as { [name: string]: string })
87
+ .reduce(
88
+ (sum, group: ComponentGroup) => {
89
+ sum[group.name] =
90
+ 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(group.icon.replace(/{{strokeColor}}/g, color))
91
+ return sum
92
+ },
93
+ {} as { [name: string]: string }
94
+ )
92
95
 
93
96
  this.icons['mode-edit'] =
94
97
  'data:image/svg+xml;charset=UTF-8;base64,' + btoa(ICON_EDIT_MODE.replace(/{{strokeColor}}/g, color))
@@ -194,7 +194,7 @@ export class EditToolbar extends LitElement {
194
194
  <span class="vline"></span>
195
195
 
196
196
  <span button id="font-increase" title="increase font size"></span>
197
- <span button id="font-decrease" title="decrease font size"></span>
197
+ <span button id="font-decrease" title="decrease font size" style="scale: 0.7;"></span>
198
198
 
199
199
  <span class="vline"></span>
200
200
  <span padding></span>
@@ -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,33 +62,39 @@ 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
  }
76
76
 
77
77
  #add button {
78
+ display: flex;
79
+ align-items: center;
80
+ justify-content: center;
81
+
78
82
  background-color: var(--primary-color);
79
83
  border: 0;
80
84
  border-radius: 50%;
81
85
  padding: 5px;
82
- width: 36px;
83
- height: 36px;
86
+ width: 32px;
87
+ height: 32px;
84
88
  cursor: pointer;
85
89
  }
90
+
86
91
  #add button:hover {
87
92
  background-color: var(--focus-background-color);
88
93
  box-shadow: var(--box-shadow);
89
94
  }
90
- #add button mwc-icon {
91
- font-size: 2em;
95
+
96
+ #add button md-icon {
97
+ font-size: 1.5em;
92
98
  color: var(--theme-white-color);
93
99
  }
94
100
 
@@ -105,7 +111,7 @@ class BoardList extends LitElement {
105
111
  #filters [type='text']:focus {
106
112
  outline: none;
107
113
  }
108
- #filters mwc-icon {
114
+ #filters md-icon {
109
115
  position: absolute;
110
116
  top: 3px;
111
117
  color: var(--secondary-color);
@@ -152,7 +158,7 @@ class BoardList extends LitElement {
152
158
  <ox-grist .config=${this.config} .mode=${mode} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}>
153
159
  <div slot="headroom" id="headroom">
154
160
  <div id="filters">
155
- <mwc-icon>search</mwc-icon>
161
+ <md-icon>search</md-icon>
156
162
  <input type="text" />
157
163
 
158
164
  <select
@@ -163,22 +169,23 @@ class BoardList extends LitElement {
163
169
  >
164
170
  <option value="">*</option>
165
171
  ${this.groups.map(
166
- group =>
167
- html` <option value=${group.id} ?selected=${group.id === this.groupId}>${group.description}</option> `
172
+ group => html`
173
+ <option value=${group.id} ?selected=${group.id === this.groupId}>${group.description}</option>
174
+ `
168
175
  )}
169
176
  </select>
170
177
  </div>
171
178
 
172
179
  <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>
180
+ <md-icon @click=${() => (this.mode = 'GRID')} ?active=${mode == 'GRID'}>grid_on</md-icon>
181
+ <md-icon @click=${() => (this.mode = 'LIST')} ?active=${mode == 'LIST'}>format_list_bulleted</md-icon>
182
+ <md-icon @click=${() => (this.mode = 'CARD')} ?active=${mode == 'CARD'}>apps</md-icon>
176
183
  </div>
177
184
 
178
185
  ${this.creatable
179
186
  ? html`
180
187
  <div id="add">
181
- <button><mwc-icon @click=${() => this.onCreateBoard()}>add</mwc-icon></button>
188
+ <button><md-icon @click=${() => this.onCreateBoard()}>add</md-icon></button>
182
189
  </div>
183
190
  `
184
191
  : undefined}
@@ -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