@operato/input 2.0.0-alpha.59 → 2.0.0-alpha.64

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 (160) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/src/ox-input-barcode.js +2 -2
  3. package/dist/src/ox-input-barcode.js.map +1 -1
  4. package/dist/src/ox-input-container.d.ts +1 -1
  5. package/dist/src/ox-input-container.js +2 -2
  6. package/dist/src/ox-input-container.js.map +1 -1
  7. package/dist/src/ox-input-crontab.d.ts +0 -1
  8. package/dist/src/ox-input-crontab.js +4 -7
  9. package/dist/src/ox-input-crontab.js.map +1 -1
  10. package/dist/src/ox-input-data.js +2 -2
  11. package/dist/src/ox-input-data.js.map +1 -1
  12. package/dist/src/ox-input-duration.d.ts +0 -1
  13. package/dist/src/ox-input-duration.js +13 -9
  14. package/dist/src/ox-input-duration.js.map +1 -1
  15. package/dist/src/ox-input-file.d.ts +1 -1
  16. package/dist/src/ox-input-file.js +10 -9
  17. package/dist/src/ox-input-file.js.map +1 -1
  18. package/dist/src/ox-input-i18n-label.d.ts +1 -1
  19. package/dist/src/ox-input-i18n-label.js +1 -1
  20. package/dist/src/ox-input-i18n-label.js.map +1 -1
  21. package/dist/src/ox-input-image.d.ts +1 -1
  22. package/dist/src/ox-input-image.js +4 -4
  23. package/dist/src/ox-input-image.js.map +1 -1
  24. package/dist/src/ox-input-key-values.d.ts +1 -1
  25. package/dist/src/ox-input-key-values.js +9 -10
  26. package/dist/src/ox-input-key-values.js.map +1 -1
  27. package/dist/src/ox-input-mass-fraction.d.ts +1 -1
  28. package/dist/src/ox-input-mass-fraction.js +46 -29
  29. package/dist/src/ox-input-mass-fraction.js.map +1 -1
  30. package/dist/src/ox-input-multiple-colors.d.ts +1 -1
  31. package/dist/src/ox-input-multiple-colors.js +7 -7
  32. package/dist/src/ox-input-multiple-colors.js.map +1 -1
  33. package/dist/src/ox-input-options.d.ts +1 -1
  34. package/dist/src/ox-input-options.js +5 -7
  35. package/dist/src/ox-input-options.js.map +1 -1
  36. package/dist/src/ox-input-partition-keys.d.ts +1 -1
  37. package/dist/src/ox-input-partition-keys.js +10 -10
  38. package/dist/src/ox-input-partition-keys.js.map +1 -1
  39. package/dist/src/ox-input-privilege.d.ts +0 -1
  40. package/dist/src/ox-input-privilege.js +15 -31
  41. package/dist/src/ox-input-privilege.js.map +1 -1
  42. package/dist/src/ox-input-search.d.ts +1 -1
  43. package/dist/src/ox-input-search.js +4 -4
  44. package/dist/src/ox-input-search.js.map +1 -1
  45. package/dist/src/ox-input-table.d.ts +1 -1
  46. package/dist/src/ox-input-table.js +12 -12
  47. package/dist/src/ox-input-table.js.map +1 -1
  48. package/dist/src/ox-input-unit-number.d.ts +1 -1
  49. package/dist/src/ox-input-unit-number.js +5 -4
  50. package/dist/src/ox-input-unit-number.js.map +1 -1
  51. package/dist/src/ox-input-value-map.js +15 -15
  52. package/dist/src/ox-input-value-map.js.map +1 -1
  53. package/dist/src/ox-input-value-ranges.js +15 -15
  54. package/dist/src/ox-input-value-ranges.js.map +1 -1
  55. package/dist/src/ox-input-work-shift.js +4 -5
  56. package/dist/src/ox-input-work-shift.js.map +1 -1
  57. package/dist/src/ox-select.d.ts +1 -1
  58. package/dist/src/ox-select.js +4 -4
  59. package/dist/src/ox-select.js.map +1 -1
  60. package/dist/stories/ox-input-3axis.stories.js +14 -1
  61. package/dist/stories/ox-input-3axis.stories.js.map +1 -1
  62. package/dist/stories/ox-input-3dish.stories.js +14 -1
  63. package/dist/stories/ox-input-3dish.stories.js.map +1 -1
  64. package/dist/stories/ox-input-angle.stories.js +13 -1
  65. package/dist/stories/ox-input-angle.stories.js.map +1 -1
  66. package/dist/stories/ox-input-barcode.stories.js +13 -1
  67. package/dist/stories/ox-input-barcode.stories.js.map +1 -1
  68. package/dist/stories/ox-input-code.stories.js +13 -1
  69. package/dist/stories/ox-input-code.stories.js.map +1 -1
  70. package/dist/stories/ox-input-crontab.stories.js +13 -1
  71. package/dist/stories/ox-input-crontab.stories.js.map +1 -1
  72. package/dist/stories/ox-input-data.stories.js +13 -1
  73. package/dist/stories/ox-input-data.stories.js.map +1 -1
  74. package/dist/stories/ox-input-duration.stories.js +13 -1
  75. package/dist/stories/ox-input-duration.stories.js.map +1 -1
  76. package/dist/stories/ox-input-file.stories.js +13 -1
  77. package/dist/stories/ox-input-file.stories.js.map +1 -1
  78. package/dist/stories/ox-input-hashtags.stories.js +13 -1
  79. package/dist/stories/ox-input-hashtags.stories.js.map +1 -1
  80. package/dist/stories/ox-input-i18n-label.stories.js +13 -1
  81. package/dist/stories/ox-input-i18n-label.stories.js.map +1 -1
  82. package/dist/stories/ox-input-key-values.stories.js +13 -1
  83. package/dist/stories/ox-input-key-values.stories.js.map +1 -1
  84. package/dist/stories/ox-input-mass-fraction.stories.js +13 -1
  85. package/dist/stories/ox-input-mass-fraction.stories.js.map +1 -1
  86. package/dist/stories/ox-input-multiple-colors.stories.js +21 -10
  87. package/dist/stories/ox-input-multiple-colors.stories.js.map +1 -1
  88. package/dist/stories/ox-input-options.stories.js +13 -1
  89. package/dist/stories/ox-input-options.stories.js.map +1 -1
  90. package/dist/stories/ox-input-partition-keys.stories.js +13 -1
  91. package/dist/stories/ox-input-partition-keys.stories.js.map +1 -1
  92. package/dist/stories/ox-input-privilege.stories.js +13 -1
  93. package/dist/stories/ox-input-privilege.stories.js.map +1 -1
  94. package/dist/stories/ox-input-quantifier.stories.js +13 -1
  95. package/dist/stories/ox-input-quantifier.stories.js.map +1 -1
  96. package/dist/stories/ox-input-range.stories.js +13 -1
  97. package/dist/stories/ox-input-range.stories.js.map +1 -1
  98. package/dist/stories/ox-input-search.stories.js +13 -1
  99. package/dist/stories/ox-input-search.stories.js.map +1 -1
  100. package/dist/stories/ox-input-select-buttons.stories.js +13 -1
  101. package/dist/stories/ox-input-select-buttons.stories.js.map +1 -1
  102. package/dist/stories/ox-input-unit.stories.js +14 -1
  103. package/dist/stories/ox-input-unit.stories.js.map +1 -1
  104. package/dist/stories/ox-input-value-map.stories.js +13 -1
  105. package/dist/stories/ox-input-value-map.stories.js.map +1 -1
  106. package/dist/stories/ox-input-value-ranges.stories.js +13 -1
  107. package/dist/stories/ox-input-value-ranges.stories.js.map +1 -1
  108. package/dist/stories/ox-input-work-shift.stories.js +13 -1
  109. package/dist/stories/ox-input-work-shift.stories.js.map +1 -1
  110. package/dist/stories/ox-select.stories.js +13 -1
  111. package/dist/stories/ox-select.stories.js.map +1 -1
  112. package/dist/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +5 -5
  114. package/src/ox-input-barcode.ts +2 -2
  115. package/src/ox-input-container.ts +2 -2
  116. package/src/ox-input-crontab.ts +4 -8
  117. package/src/ox-input-data.ts +2 -2
  118. package/src/ox-input-duration.ts +13 -10
  119. package/src/ox-input-file.ts +10 -9
  120. package/src/ox-input-i18n-label.ts +1 -1
  121. package/src/ox-input-image.ts +4 -4
  122. package/src/ox-input-key-values.ts +27 -22
  123. package/src/ox-input-mass-fraction.ts +46 -29
  124. package/src/ox-input-multiple-colors.ts +7 -7
  125. package/src/ox-input-options.ts +5 -7
  126. package/src/ox-input-partition-keys.ts +28 -22
  127. package/src/ox-input-privilege.ts +15 -32
  128. package/src/ox-input-search.ts +4 -4
  129. package/src/ox-input-table.ts +12 -12
  130. package/src/ox-input-unit-number.ts +5 -4
  131. package/src/ox-input-value-map.ts +17 -17
  132. package/src/ox-input-value-ranges.ts +17 -17
  133. package/src/ox-input-work-shift.ts +4 -5
  134. package/src/ox-select.ts +4 -4
  135. package/stories/ox-input-3axis.stories.ts +14 -1
  136. package/stories/ox-input-3dish.stories.ts +14 -1
  137. package/stories/ox-input-angle.stories.ts +13 -1
  138. package/stories/ox-input-barcode.stories.ts +13 -1
  139. package/stories/ox-input-code.stories.ts +13 -1
  140. package/stories/ox-input-crontab.stories.ts +13 -1
  141. package/stories/ox-input-data.stories.ts +13 -1
  142. package/stories/ox-input-duration.stories.ts +13 -1
  143. package/stories/ox-input-file.stories.ts +13 -1
  144. package/stories/ox-input-hashtags.stories.ts +13 -1
  145. package/stories/ox-input-i18n-label.stories.ts +13 -1
  146. package/stories/ox-input-key-values.stories.ts +13 -1
  147. package/stories/ox-input-mass-fraction.stories.ts +13 -1
  148. package/stories/ox-input-multiple-colors.stories.ts +21 -10
  149. package/stories/ox-input-options.stories.ts +13 -1
  150. package/stories/ox-input-partition-keys.stories.ts +13 -1
  151. package/stories/ox-input-privilege.stories.ts +13 -1
  152. package/stories/ox-input-quantifier.stories.ts +13 -1
  153. package/stories/ox-input-range.stories.ts +13 -1
  154. package/stories/ox-input-search.stories.ts +13 -1
  155. package/stories/ox-input-select-buttons.stories.ts +13 -1
  156. package/stories/ox-input-unit.stories.ts +14 -1
  157. package/stories/ox-input-value-map.stories.ts +13 -1
  158. package/stories/ox-input-value-ranges.stories.ts +13 -1
  159. package/stories/ox-input-work-shift.stories.ts +13 -1
  160. package/stories/ox-select.stories.ts +13 -1
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@operato/input",
3
3
  "description": "Webcomponents for input following open-wc recommendations",
4
4
  "author": "heartyoh@hatiolab.com",
5
- "version": "2.0.0-alpha.59",
5
+ "version": "2.0.0-alpha.64",
6
6
  "main": "dist/src/index.js",
7
7
  "module": "dist/src/index.js",
8
8
  "license": "MIT",
@@ -194,11 +194,11 @@
194
194
  "@codemirror/theme-one-dark": "^6.1.2",
195
195
  "@codemirror/view": "^6.22.1",
196
196
  "@lit/localize": "^0.12.1",
197
- "@material/mwc-icon": "^0.27.0",
197
+ "@material/web": "^1.4.0",
198
198
  "@operato/color-picker": "^2.0.0-alpha.57",
199
199
  "@operato/i18n": "^2.0.0-alpha.59",
200
- "@operato/popup": "^2.0.0-alpha.57",
201
- "@operato/styles": "^2.0.0-alpha.57",
200
+ "@operato/popup": "^2.0.0-alpha.62",
201
+ "@operato/styles": "^2.0.0-alpha.62",
202
202
  "@operato/utils": "^2.0.0-alpha.57",
203
203
  "@polymer/paper-dropdown-menu": "^3.2.0",
204
204
  "@polymer/paper-item": "^3.0.1",
@@ -243,5 +243,5 @@
243
243
  "prettier --write"
244
244
  ]
245
245
  },
246
- "gitHead": "54cb91b22d4949cbae84235292e31a06cf054fa6"
246
+ "gitHead": "51399aac2553f6a1c2c242295ba9e996f3562067"
247
247
  }
@@ -225,12 +225,12 @@ export class OxInputBarcode extends OxFormField {
225
225
  this.popup = OxPopup.open({
226
226
  template: html`
227
227
  <video></video>
228
- <mwc-icon
228
+ <md-icon
229
229
  style="position: fixed; right: 0; top: 0; color: red; tabindex: 0"
230
230
  @click=${() => {
231
231
  this.stopScan()
232
232
  }}
233
- >close</mwc-icon
233
+ >close</md-icon
234
234
  >
235
235
  `,
236
236
  width: '100vw',
@@ -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/popup/ox-popup-list.js'
7
7
 
8
8
  import { css, html, LitElement } from 'lit'
@@ -17,7 +17,7 @@ export class OxInputContainer extends LitElement {
17
17
  render() {
18
18
  return html`
19
19
  <slot> </slot>
20
- <mwc-icon @click=${this.openPopupList.bind(this)}>menu</mwc-icon>
20
+ <md-icon @click=${this.openPopupList.bind(this)}>menu</md-icon>
21
21
 
22
22
  <ox-popup-list></ox-popup-list>
23
23
  `
@@ -2,8 +2,6 @@
2
2
  * @license Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
 
5
- import '@material/mwc-button'
6
-
7
5
  import { css, html, PropertyValues } from 'lit'
8
6
  import { customElement, property, state } from 'lit/decorators.js'
9
7
 
@@ -211,14 +209,12 @@ export class OxInputCrontab extends OxFormField {
211
209
  margin: -0.25rem;
212
210
  }
213
211
 
214
- mwc-button {
215
- background-color: var(--secondary-color);
212
+ button {
216
213
  border-radius: var(--button-border-radius);
217
- --mdc-theme-primary: #fff;
218
214
  margin: 0.25rem;
219
215
  }
220
- mwc-button:hover,
221
- mwc-button:active {
216
+ button:hover,
217
+ button:active {
222
218
  background-color: var(--primary-color);
223
219
  }
224
220
  `
@@ -399,7 +395,7 @@ export class OxInputCrontab extends OxFormField {
399
395
  }
400
396
 
401
397
  get focusableElements(): HTMLElement[] {
402
- return Array.from(this.renderRoot.querySelectorAll('select, input, mwc-button'))
398
+ return Array.from(this.renderRoot.querySelectorAll('select, input, button'))
403
399
  }
404
400
 
405
401
  firstUpdated() {
@@ -38,7 +38,7 @@ export class OxInputData extends OxFormField {
38
38
  font-size: small;
39
39
  }
40
40
 
41
- div[datatype] mwc-icon {
41
+ div[datatype] md-icon {
42
42
  margin-left: auto;
43
43
  }
44
44
 
@@ -88,7 +88,7 @@ export class OxInputData extends OxFormField {
88
88
  />
89
89
  <label for="object">object</label>
90
90
 
91
- <mwc-icon @click=${() => this._clearData()} title="delete">delete_forever</mwc-icon>
91
+ <md-icon @click=${() => this._clearData()} title="delete">delete_forever</md-icon>
92
92
  </div>
93
93
 
94
94
  <ox-input-code
@@ -2,8 +2,6 @@
2
2
  * @license Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
 
5
- import '@material/mwc-button'
6
-
7
5
  import { css, html } from 'lit'
8
6
  import { customElement, property, query } from 'lit/decorators.js'
9
7
 
@@ -28,9 +26,14 @@ export class OxInputDuration extends OxFormField {
28
26
  }
29
27
 
30
28
  form {
31
- width: 100%;
32
- height: 100%;
33
- justify-content: center;
29
+ display: flex;
30
+ flex-direction: row;
31
+
32
+ align-items: center;
33
+ }
34
+
35
+ [padding] {
36
+ min-width: 100px;
34
37
  }
35
38
 
36
39
  input {
@@ -65,18 +68,16 @@ export class OxInputDuration extends OxFormField {
65
68
  border: var(--button-border);
66
69
  border-radius: var(--border-radius);
67
70
  background-color: var(--button-background-color);
68
- padding: var(--padding-narrow) var(--padding-default);
69
71
  min-height: 35px;
70
72
  line-height: 0.8;
71
73
  color: var(--button-color);
72
74
  cursor: pointer;
73
75
  }
76
+
74
77
  button + button {
75
78
  margin-left: -5px;
76
79
  }
77
- button mwc-icon {
78
- font-size: var(--fontsize-default);
79
- }
80
+
80
81
  button:focus,
81
82
  button:hover,
82
83
  button:active {
@@ -100,6 +101,7 @@ export class OxInputDuration extends OxFormField {
100
101
 
101
102
  return html`
102
103
  <form @change=${this.onChange.bind(this)}>
104
+ <div padding></div>
103
105
  <input id="days" type="number" .value=${String(days || 0)} pattern="\\d*" ?disabled=${this.disabled} />
104
106
  <label for="days">${i18next.t('label.days')}</label>
105
107
 
@@ -148,8 +150,9 @@ export class OxInputDuration extends OxFormField {
148
150
  }}
149
151
  ?disabled=${this.disabled}
150
152
  >
151
- <mwc-icon>backspace</mwc-icon>
153
+ <md-icon>backspace</md-icon>
152
154
  </button>
155
+ <div padding></div>
153
156
  </form>
154
157
  `
155
158
  }
@@ -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, PropertyValues } from 'lit'
8
8
  import { customElement, property, query } from 'lit/decorators.js'
@@ -32,9 +32,10 @@ export class OxInputFile extends OxFormField {
32
32
  font: var(--file-uploader-font) !important;
33
33
  color: var(--file-uploader-color);
34
34
  }
35
- :host > mwc-icon {
35
+
36
+ :host > md-icon {
36
37
  color: var(--file-uploader-icon-color);
37
- --mdc-icon-size: var(--file-uploader-icon-size, 36px);
38
+ --md-icon-size: var(--file-uploader-icon-size, 36px);
38
39
  }
39
40
 
40
41
  :host(.candrop) {
@@ -75,14 +76,14 @@ export class OxInputFile extends OxFormField {
75
76
  border-bottom: var(--file-uploader-li-border-bottom);
76
77
  font: normal 14px var(--theme-font);
77
78
  }
78
- li mwc-icon {
79
+ li md-icon {
79
80
  float: right;
80
81
  cursor: pointer;
81
82
  margin: var(--file-uploader-li-icon-margin);
82
83
  font-size: 1em;
83
84
  }
84
- li mwc-icon:hover,
85
- li mwc-icon:active {
85
+ li md-icon:hover,
86
+ li md-icon:active {
86
87
  color: var(--file-uploader-li-icon-focus-color);
87
88
  }
88
89
  `
@@ -104,7 +105,7 @@ export class OxInputFile extends OxFormField {
104
105
  var files: File[] = this.value || []
105
106
 
106
107
  return html`
107
- <mwc-icon>${this.icon || 'upload'}</mwc-icon>
108
+ <md-icon>${this.icon || 'upload'}</md-icon>
108
109
 
109
110
  <span>${this.description || 'drop files here!'}</span>
110
111
 
@@ -127,7 +128,7 @@ export class OxInputFile extends OxFormField {
127
128
  file => html`
128
129
  <li>
129
130
  - ${file.name}
130
- <mwc-icon
131
+ <md-icon
131
132
  @click=${(e: Event) => {
132
133
  if (this.disabled) {
133
134
  return
@@ -136,7 +137,7 @@ export class OxInputFile extends OxFormField {
136
137
  this.value = [...files]
137
138
  this._notifyChange()
138
139
  }}
139
- >delete_outline</mwc-icon
140
+ >delete_outline</md-icon
140
141
  >
141
142
  </li>
142
143
  `
@@ -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 } from 'lit'
8
8
  import { customElement, property, queryAll } from 'lit/decorators.js'
@@ -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 } from 'lit'
8
8
  import { customElement, query } from 'lit/decorators.js'
@@ -76,11 +76,11 @@ export class OxInputImage extends OxFormField {
76
76
  place-content: center;
77
77
  }
78
78
 
79
- mwc-icon {
79
+ md-icon {
80
80
  align-self: center;
81
81
 
82
82
  color: var(--file-uploader-icon-color, black);
83
- --mdc-icon-size: var(--file-uploader-icon-size, 36px);
83
+ --md-icon-size: var(--file-uploader-icon-size, 36px);
84
84
  }
85
85
  `
86
86
  ]
@@ -118,7 +118,7 @@ export class OxInputImage extends OxFormField {
118
118
  @change=${(e: Event) => this._onChangeValue(e)}
119
119
  ?disabled=${this.disabled}
120
120
  />
121
- <mwc-icon>upload</mwc-icon>
121
+ <md-icon>upload</md-icon>
122
122
  </label>
123
123
  </div>
124
124
  `
@@ -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, nothing } from 'lit'
8
8
  import { customElement, property, queryAll } from 'lit/decorators.js'
@@ -29,6 +29,8 @@ export class OxInputKeyValues extends OxFormField {
29
29
  flex-direction: column;
30
30
  overflow: hidden;
31
31
  margin-bottom: var(--margin-wide);
32
+
33
+ --md-icon-size: 14px;
32
34
  }
33
35
 
34
36
  div {
@@ -50,9 +52,6 @@ export class OxInputKeyValues extends OxFormField {
50
52
  button + button {
51
53
  margin-left: -5px;
52
54
  }
53
- button mwc-icon {
54
- font-size: var(--fontsize-default);
55
- }
56
55
  button:focus,
57
56
  button:hover,
58
57
  button:active {
@@ -112,7 +111,7 @@ export class OxInputKeyValues extends OxFormField {
112
111
  tabindex="-1"
113
112
  ?disabled=${this.disabled}
114
113
  >
115
- <mwc-icon>remove</mwc-icon>
114
+ <md-icon>remove</md-icon>
116
115
  </button>
117
116
  <button
118
117
  class="record-action"
@@ -120,7 +119,7 @@ export class OxInputKeyValues extends OxFormField {
120
119
  tabindex="-1"
121
120
  ?disabled=${this.disabled}
122
121
  >
123
- <mwc-icon>arrow_upward</mwc-icon>
122
+ <md-icon>arrow_upward</md-icon>
124
123
  </button>
125
124
  <button
126
125
  class="record-action"
@@ -128,7 +127,7 @@ export class OxInputKeyValues extends OxFormField {
128
127
  tabindex="-1"
129
128
  ?disabled=${this.disabled}
130
129
  >
131
- <mwc-icon>arrow_downward</mwc-icon>
130
+ <md-icon>arrow_downward</md-icon>
132
131
  </button>
133
132
  </div>
134
133
  `
@@ -140,10 +139,10 @@ export class OxInputKeyValues extends OxFormField {
140
139
  <input type="text" data-key placeholder="key" value="" />
141
140
  <input type="text" data-value placeholder="value" value="" list="value-template" />
142
141
  <button class="record-action" @click=${(e: MouseEvent) => this._add()} tabindex="-1">
143
- <mwc-icon>add</mwc-icon>
142
+ <md-icon>add</md-icon>
144
143
  </button>
145
- <button class="hidden"><mwc-icon>add</mwc-icon></button>
146
- <button class="hidden"><mwc-icon>add</mwc-icon></button>
144
+ <button class="hidden"><md-icon>add</md-icon></button>
145
+ <button class="hidden"><md-icon>add</md-icon></button>
147
146
  </div>
148
147
  `}
149
148
 
@@ -260,13 +259,16 @@ export class OxInputKeyValues extends OxFormField {
260
259
  const deleted = array.splice(index, 1)
261
260
  array.splice(index + 1, 0, ...deleted)
262
261
 
263
- this.value = array.reduce((sum, record) => {
264
- const key = (record.querySelector('[data-key]') as HTMLInputElement).value
265
- const value = (record.querySelector('[data-value]') as HTMLInputElement).value
262
+ this.value = array.reduce(
263
+ (sum, record) => {
264
+ const key = (record.querySelector('[data-key]') as HTMLInputElement).value
265
+ const value = (record.querySelector('[data-value]') as HTMLInputElement).value
266
266
 
267
- sum[key] = value
268
- return sum
269
- }, {} as { [key: string]: string })
267
+ sum[key] = value
268
+ return sum
269
+ },
270
+ {} as { [key: string]: string }
271
+ )
270
272
 
271
273
  this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: this.value }))
272
274
  }
@@ -283,13 +285,16 @@ export class OxInputKeyValues extends OxFormField {
283
285
  array.splice(index, 1)
284
286
  array.splice(index + 1, 0, record)
285
287
 
286
- this.value = array.reduce((sum, record) => {
287
- const key = (record.querySelector('[data-key]') as HTMLInputElement).value
288
- const value = (record.querySelector('[data-value]') as HTMLInputElement).value
288
+ this.value = array.reduce(
289
+ (sum, record) => {
290
+ const key = (record.querySelector('[data-key]') as HTMLInputElement).value
291
+ const value = (record.querySelector('[data-value]') as HTMLInputElement).value
289
292
 
290
- sum[key] = value
291
- return sum
292
- }, {} as { [key: string]: string })
293
+ sum[key] = value
294
+ return sum
295
+ },
296
+ {} as { [key: string]: string }
297
+ )
293
298
 
294
299
  this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: this.value }))
295
300
  }
@@ -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/popup/ox-popup-list.js'
7
7
  import './ox-select.js'
8
8
 
@@ -43,19 +43,26 @@ export class OxInputMassFraction extends OxFormField {
43
43
  display: flex;
44
44
  flex-direction: column;
45
45
  justify-content: space-between;
46
+
47
+ --md-icon-size: var(--fontsize-default, 14px);
46
48
  }
47
49
 
48
50
  [records] {
49
51
  flex: 1;
50
52
 
51
53
  overflow: overlay;
52
- }
53
54
 
54
- [records] > div {
55
- display: flex;
56
- flex-flow: row nowrap;
57
- gap: var(--mass-fraction-gap, 3px);
58
- margin-bottom: var(--margin-narrow);
55
+ > div {
56
+ display: flex;
57
+ flex-flow: row nowrap;
58
+ gap: var(--mass-fraction-gap, 3px);
59
+ margin-bottom: var(--margin-narrow);
60
+ }
61
+
62
+ > [nofraction] {
63
+ display: block;
64
+ text-align: center;
65
+ }
59
66
  }
60
67
 
61
68
  [data-record-new] {
@@ -74,19 +81,18 @@ export class OxInputMassFraction extends OxFormField {
74
81
  padding: var(--mass-fraction-button-padding-vertical, 3px) var(--mass-fraction-button-padding-horizontal, 3px);
75
82
  color: var(--button-color);
76
83
  cursor: pointer;
77
- }
78
- button mwc-icon {
79
- font-size: var(--fontsize-default);
80
- }
81
- button:focus,
82
- button:hover,
83
- button:active {
84
- border: var(--button-active-border);
85
- background-color: var(--button-background-focus-color);
86
- color: var(--theme-white-color);
84
+
85
+ &:focus,
86
+ &:hover,
87
+ &:active {
88
+ border: var(--button-active-border, 1px solid rgba(0, 0, 0, 0.2));
89
+ background-color: var(--button-background-focus-color);
90
+ color: var(--theme-white-color);
91
+ }
87
92
  }
88
93
 
89
94
  input,
95
+ label,
90
96
  ox-select {
91
97
  border: 0;
92
98
  border-bottom: var(--border-dark-color);
@@ -95,10 +101,15 @@ export class OxInputMassFraction extends OxFormField {
95
101
  min-width: 50px;
96
102
  }
97
103
 
98
- input {
104
+ input,
105
+ label {
99
106
  padding: var(--input-padding);
100
107
  }
101
108
 
109
+ label {
110
+ text-align: center;
111
+ }
112
+
102
113
  ox-select {
103
114
  padding: 0;
104
115
  }
@@ -127,14 +138,13 @@ export class OxInputMassFraction extends OxFormField {
127
138
  left: 0;
128
139
  }
129
140
 
130
- [records] > [nofraction] {
131
- display: block;
132
- text-align: center;
133
- }
134
-
135
141
  [right-end] {
136
142
  margin-left: auto;
137
143
  }
144
+
145
+ [hidden] {
146
+ opacity: 0;
147
+ }
138
148
  `
139
149
  ]
140
150
 
@@ -157,6 +167,13 @@ export class OxInputMassFraction extends OxFormField {
157
167
 
158
168
  return html`
159
169
  <div records>
170
+ <div data-header>
171
+ <label data-key>성분</label>
172
+ <label data-value>체적비(몰분율)</label>
173
+ <button hidden><md-icon>remove</md-icon></button>
174
+ <button hidden><md-icon>remove</md-icon></button>
175
+ ${this.composable ? html` <button hidden><md-icon>remove</md-icon></button>` : nothing}
176
+ </div>
160
177
  ${arrayed.length
161
178
  ? arrayed.map(
162
179
  (item, idx) => html`
@@ -181,7 +198,7 @@ export class OxInputMassFraction extends OxFormField {
181
198
  tabindex="-1"
182
199
  ?disabled=${this.disabled}
183
200
  >
184
- <mwc-icon>remove</mwc-icon>
201
+ <md-icon>remove</md-icon>
185
202
  </button>
186
203
  `
187
204
  : nothing}
@@ -191,7 +208,7 @@ export class OxInputMassFraction extends OxFormField {
191
208
  tabindex="-1"
192
209
  ?disabled=${this.disabled || idx === 0}
193
210
  >
194
- <mwc-icon>arrow_upward</mwc-icon>
211
+ <md-icon>arrow_upward</md-icon>
195
212
  </button>
196
213
  <button
197
214
  class="record-action"
@@ -199,7 +216,7 @@ export class OxInputMassFraction extends OxFormField {
199
216
  tabindex="-1"
200
217
  ?disabled=${this.disabled || idx === arrayed.length - 1}
201
218
  >
202
- <mwc-icon>arrow_downward</mwc-icon>
219
+ <md-icon>arrow_downward</md-icon>
203
220
  </button>
204
221
  </div>
205
222
  `
@@ -235,7 +252,7 @@ export class OxInputMassFraction extends OxFormField {
235
252
  list="value-template"
236
253
  />
237
254
  <button class="record-action" @click=${(e: MouseEvent) => this._add()} tabindex="-1">
238
- <mwc-icon>add</mwc-icon>
255
+ <md-icon>add</md-icon>
239
256
  </button>
240
257
  `
241
258
  : nothing}
@@ -247,7 +264,7 @@ export class OxInputMassFraction extends OxFormField {
247
264
  }}
248
265
  right-end
249
266
  >
250
- <mwc-icon>settings_suggest</mwc-icon>
267
+ <md-icon>settings_suggest</md-icon>
251
268
  </button>
252
269
  <button
253
270
  title="normalize fraction"
@@ -255,7 +272,7 @@ export class OxInputMassFraction extends OxFormField {
255
272
  this._normalize()
256
273
  }}
257
274
  >
258
- <mwc-icon>repartition</mwc-icon>
275
+ <md-icon>repartition</md-icon>
259
276
  </button>
260
277
  </div>
261
278
  `}
@@ -3,7 +3,7 @@
3
3
  */
4
4
 
5
5
  import './ox-input-color.js'
6
- import '@material/mwc-icon'
6
+ import '@material/web/icon/icon.js'
7
7
 
8
8
  import { css, html } from 'lit'
9
9
  import { customElement, property, query, queryAll } from 'lit/decorators.js'
@@ -28,7 +28,10 @@ export class OxInputMultipleColors extends OxFormField {
28
28
  static styles = css`
29
29
  :host {
30
30
  display: inline-block;
31
+
32
+ --md-icon-size: var(--fontsize-default, 14px);
31
33
  }
34
+
32
35
  #colors-container > div {
33
36
  display: grid;
34
37
  grid-template-columns: 34px 1fr 34px;
@@ -47,14 +50,11 @@ export class OxInputMultipleColors extends OxFormField {
47
50
  border: var(--button-border);
48
51
  border-radius: var(--border-radius);
49
52
  background-color: var(--button-background-color);
50
- padding: var(--padding-narrow) var(--padding-default);
51
53
  line-height: 0.8;
52
54
  color: var(--button-color);
53
55
  cursor: pointer;
54
56
  }
55
- button mwc-icon {
56
- font-size: var(--fontsize-default);
57
- }
57
+
58
58
  button:focus,
59
59
  button:hover,
60
60
  button:active {
@@ -80,7 +80,7 @@ export class OxInputMultipleColors extends OxFormField {
80
80
  (item, index) => html`
81
81
  <div>
82
82
  <button @click=${() => this._appendEditorColor()} data-index=${index} ?disabled=${this.disabled}>
83
- <mwc-icon>add</mwc-icon>
83
+ <md-icon>add</md-icon>
84
84
  </button>
85
85
  <ox-input-color .value=${item} ?disabled=${this.disabled}> </ox-input-color>
86
86
 
@@ -91,7 +91,7 @@ export class OxInputMultipleColors extends OxFormField {
91
91
  data-index=${index}
92
92
  ?disabled=${this.disabled}
93
93
  >
94
- <mwc-icon>remove</mwc-icon>
94
+ <md-icon>remove</md-icon>
95
95
  </button>
96
96
  `
97
97
  : html``}