@operato/board 2.0.0-alpha.13 → 2.0.0-alpha.130
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/CHANGELOG.md +797 -0
- package/demo/index-modeller.html +13 -2
- package/demo/index-player.html +13 -2
- package/demo/index-viewer.html +13 -2
- package/demo/index.html +13 -2
- package/dist/src/component/etc.js +2 -2
- package/dist/src/component/etc.js.map +1 -1
- package/dist/src/modeller/component-toolbar/component-detail.d.ts +1 -1
- package/dist/src/modeller/component-toolbar/component-menu.d.ts +1 -1
- package/dist/src/modeller/component-toolbar/component-menu.js +9 -4
- package/dist/src/modeller/component-toolbar/component-menu.js.map +1 -1
- package/dist/src/modeller/component-toolbar/component-toolbar.d.ts +1 -1
- package/dist/src/modeller/component-toolbar/component-toolbar.js.map +1 -1
- package/dist/src/modeller/edit-toolbar.d.ts +1 -1
- package/dist/src/modeller/edit-toolbar.js +1 -1
- package/dist/src/modeller/edit-toolbar.js.map +1 -1
- package/dist/src/modeller/property-sidebar/data-binding/data-binding-mapper.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-map.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/data-binding/data-binding-value-range.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/data-binding/data-binding.d.ts +2 -2
- package/dist/src/modeller/property-sidebar/data-binding/data-binding.js +19 -19
- package/dist/src/modeller/property-sidebar/data-binding/data-binding.js.map +1 -1
- package/dist/src/modeller/property-sidebar/effects/effects.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-animation.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-animations.d.ts +2 -2
- package/dist/src/modeller/property-sidebar/effects/property-animations.js +4 -4
- package/dist/src/modeller/property-sidebar/effects/property-animations.js.map +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-event-hover.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-event-tap.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-event.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/effects/property-shadow.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/inspector/inspector.js +1 -1
- package/dist/src/modeller/property-sidebar/inspector/inspector.js.map +1 -1
- package/dist/src/modeller/property-sidebar/property-sidebar.d.ts +2 -2
- package/dist/src/modeller/property-sidebar/property-sidebar.js +8 -8
- package/dist/src/modeller/property-sidebar/property-sidebar.js.map +1 -1
- package/dist/src/modeller/property-sidebar/shapes/shapes.d.ts +2 -2
- package/dist/src/modeller/property-sidebar/shapes/shapes.js +15 -4
- package/dist/src/modeller/property-sidebar/shapes/shapes.js.map +1 -1
- package/dist/src/modeller/property-sidebar/specifics/specific-properties-builder.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/specifics/specifics.d.ts +1 -1
- package/dist/src/modeller/property-sidebar/specifics/specifics.js +4 -1
- package/dist/src/modeller/property-sidebar/specifics/specifics.js.map +1 -1
- package/dist/src/modeller/property-sidebar/styles/styles.d.ts +1 -1
- package/dist/src/modeller/scene-viewer/ox-scene-handler.d.ts +1 -1
- package/dist/src/modeller/scene-viewer/ox-scene-layer.d.ts +1 -1
- package/dist/src/modeller/scene-viewer/ox-scene-viewer.d.ts +1 -1
- package/dist/src/ox-board-component-info.d.ts +2 -3
- package/dist/src/ox-board-component-info.js +5 -6
- package/dist/src/ox-board-component-info.js.map +1 -1
- package/dist/src/ox-board-list.js +22 -14
- package/dist/src/ox-board-list.js.map +1 -1
- package/dist/src/ox-board-modeller.d.ts +4 -3
- package/dist/src/ox-board-modeller.js +6 -3
- package/dist/src/ox-board-modeller.js.map +1 -1
- package/dist/src/ox-board-player-style.js +10 -10
- package/dist/src/ox-board-player-style.js.map +1 -1
- package/dist/src/ox-board-player.d.ts +2 -3
- package/dist/src/ox-board-player.js +17 -18
- package/dist/src/ox-board-player.js.map +1 -1
- package/dist/src/ox-board-template-list.d.ts +1 -1
- package/dist/src/ox-board-viewer.d.ts +3 -3
- package/dist/src/ox-board-viewer.js +17 -15
- package/dist/src/ox-board-viewer.js.map +1 -1
- package/dist/src/ox-editor-board-selector.d.ts +2 -2
- package/dist/src/ox-editor-board-selector.js +3 -3
- package/dist/src/ox-editor-board-selector.js.map +1 -1
- package/dist/src/selector/board-creation-popup.d.ts +5 -6
- package/dist/src/selector/board-creation-popup.js +22 -17
- package/dist/src/selector/board-creation-popup.js.map +1 -1
- package/dist/src/selector/board-thumbnail-card.d.ts +1 -1
- package/dist/src/selector/board-thumbnail-card.js +2 -2
- package/dist/src/selector/board-thumbnail-card.js.map +1 -1
- package/dist/src/selector/ox-board-creation-card.d.ts +2 -2
- package/dist/src/selector/ox-board-creation-card.js +7 -3
- package/dist/src/selector/ox-board-creation-card.js.map +1 -1
- package/dist/src/selector/ox-board-selector.d.ts +1 -1
- package/dist/stories/property-data-binding.stories.js +1 -0
- package/dist/stories/property-data-binding.stories.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +29 -29
- package/src/component/etc.ts +2 -2
- package/src/modeller/component-toolbar/component-menu.ts +9 -5
- package/src/modeller/component-toolbar/component-toolbar.ts +8 -5
- package/src/modeller/edit-toolbar.ts +1 -1
- package/src/modeller/property-sidebar/data-binding/data-binding.ts +19 -19
- package/src/modeller/property-sidebar/effects/property-animations.ts +4 -4
- package/src/modeller/property-sidebar/inspector/inspector.ts +1 -1
- package/src/modeller/property-sidebar/property-sidebar.ts +8 -8
- package/src/modeller/property-sidebar/shapes/shapes.ts +15 -4
- package/src/modeller/property-sidebar/specifics/specifics.ts +5 -1
- package/src/ox-board-component-info.ts +5 -6
- package/src/ox-board-list.ts +22 -15
- package/src/ox-board-modeller.ts +6 -3
- package/src/ox-board-player-style.ts +10 -10
- package/src/ox-board-player.ts +18 -20
- package/src/ox-board-viewer.ts +17 -15
- package/src/ox-editor-board-selector.ts +3 -3
- package/src/selector/board-creation-popup.ts +22 -17
- package/src/selector/board-thumbnail-card.ts +2 -2
- package/src/selector/ox-board-creation-card.ts +7 -3
- 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.
|
|
3
|
+
"version": "2.0.0-alpha.130",
|
|
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
|
-
"@
|
|
95
|
-
"@
|
|
96
|
-
"@operato/
|
|
97
|
-
"@operato/
|
|
98
|
-
"@operato/
|
|
99
|
-
"@operato/
|
|
100
|
-
"@operato/
|
|
101
|
-
"@operato/
|
|
102
|
-
"@operato/
|
|
103
|
-
"@operato/
|
|
104
|
-
"@operato/
|
|
105
|
-
"@operato/
|
|
106
|
-
"@operato/
|
|
94
|
+
"@material/web": "^1.4.0",
|
|
95
|
+
"@open-wc/scoped-elements": "^2.1.3",
|
|
96
|
+
"@operato/app": "^2.0.0-alpha.130",
|
|
97
|
+
"@operato/data-grist": "^2.0.0-alpha.129",
|
|
98
|
+
"@operato/font": "^2.0.0-alpha.129",
|
|
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.129",
|
|
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": "^
|
|
113
|
+
"lit": "^3.1.2",
|
|
113
114
|
"lodash-es": "^4.17.21",
|
|
114
|
-
"sortablejs": "^1.
|
|
115
|
+
"sortablejs": "^1.15.2"
|
|
115
116
|
},
|
|
116
117
|
"devDependencies": {
|
|
117
|
-
"@custom-elements-manifest/analyzer": "^0.
|
|
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
|
-
"@
|
|
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": "^
|
|
129
|
-
"@typescript-eslint/parser": "^
|
|
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.
|
|
132
|
-
"@web/test-runner": "^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": "^
|
|
136
|
-
"husky": "^
|
|
137
|
-
"lint-staged": "^
|
|
138
|
-
"prettier": "^2.
|
|
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": "
|
|
155
|
+
"gitHead": "891d9e8053060f943ee6853dde094ff7f0b10e0c"
|
|
156
156
|
}
|
package/src/component/etc.ts
CHANGED
|
@@ -45,7 +45,7 @@ export const etc: ComponentGroup = {
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
|
-
type: 'local
|
|
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
|
|
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
|
-
|
|
124
|
-
|
|
125
|
-
|
|
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(
|
|
88
|
-
sum
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
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/
|
|
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 >
|
|
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
|
|
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
|
-
|
|
133
|
+
md-icon {
|
|
134
134
|
margin-left: 5px;
|
|
135
135
|
color: var(--secondary-color);
|
|
136
136
|
opacity: 0.8;
|
|
137
137
|
cursor: pointer;
|
|
138
|
-
--
|
|
138
|
+
--md-icon-size: 18px;
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
md-icon:hover {
|
|
142
142
|
color: var(--primary-color);
|
|
143
143
|
opacity: 1;
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
|
|
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
|
-
<
|
|
255
|
+
<md-icon
|
|
256
256
|
@click=${() => {
|
|
257
257
|
this._dataExpanded = !this._dataExpanded
|
|
258
258
|
}}
|
|
259
|
-
>${this._dataExpanded ? 'expand_less' : 'expand_more'}</
|
|
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
|
-
<
|
|
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</
|
|
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
|
-
<
|
|
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</
|
|
300
|
+
>chevron_right</md-icon
|
|
301
301
|
>
|
|
302
302
|
</div>
|
|
303
303
|
|
|
304
304
|
<div binding>
|
|
305
|
-
<
|
|
306
|
-
>delete_forever</
|
|
305
|
+
<md-icon style="font-size:19px" @click=${() => this._clearDataBindingMapper()} title="delete current tab"
|
|
306
|
+
>delete_forever</md-icon
|
|
307
307
|
>
|
|
308
|
-
<
|
|
309
|
-
<
|
|
310
|
-
>content_copy</
|
|
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/
|
|
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
|
|
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
|
-
<
|
|
64
|
+
<md-icon
|
|
65
65
|
@click=${() => {
|
|
66
66
|
this._expanded = !this._expanded
|
|
67
67
|
}}
|
|
68
|
-
>${this._expanded ? 'expand_less' : 'expand_more'}</
|
|
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
|
-
<
|
|
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/
|
|
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]
|
|
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
|
-
<
|
|
120
|
-
<
|
|
121
|
-
<
|
|
122
|
-
<
|
|
123
|
-
<
|
|
124
|
-
<
|
|
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/
|
|
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
|
|
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
|
-
<
|
|
226
|
+
<md-icon
|
|
227
227
|
@click=${(e: Event) => {
|
|
228
228
|
this._3dExpanded = !this._3dExpanded
|
|
229
229
|
}}
|
|
230
|
-
>${this._3dExpanded ? 'expand_less' : 'expand_more'}</
|
|
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
|
|
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/
|
|
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
|
-
--
|
|
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]
|
|
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<
|
|
105
|
-
>close</
|
|
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)}>
|
package/src/ox-board-list.ts
CHANGED
|
@@ -44,7 +44,7 @@ class BoardList extends LitElement {
|
|
|
44
44
|
|
|
45
45
|
#filters {
|
|
46
46
|
flex: 1;
|
|
47
|
-
--
|
|
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 >
|
|
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 >
|
|
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:
|
|
83
|
-
height:
|
|
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
|
-
|
|
91
|
-
|
|
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
|
|
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
|
-
<
|
|
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
|
-
|
|
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
|
-
<
|
|
174
|
-
<
|
|
175
|
-
<
|
|
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><
|
|
188
|
+
<button><md-icon @click=${() => this.onCreateBoard()}>add</md-icon></button>
|
|
182
189
|
</div>
|
|
183
190
|
`
|
|
184
191
|
: undefined}
|
package/src/ox-board-modeller.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import '@material/
|
|
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
|
-
|
|
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
|
-
<
|
|
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
|