summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts
diff options
context:
space:
mode:
Diffstat (limited to 'polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts')
-rw-r--r--polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts45
1 files changed, 13 insertions, 32 deletions
diff --git a/polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts b/polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts
index ee89c86735..5a00c37923 100644
--- a/polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts
+++ b/polygerrit-ui/app/elements/plugins/gr-endpoint-param/gr-endpoint-param.ts
@@ -1,21 +1,10 @@
/**
* @license
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Copyright 2017 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
*/
-import {PolymerElement} from '@polymer/polymer/polymer-element';
-import {customElement, property} from '@polymer/decorators';
+import {LitElement, PropertyValues} from 'lit';
+import {customElement, property} from 'lit/decorators';
declare global {
interface HTMLElementTagNameMap {
@@ -24,26 +13,18 @@ declare global {
}
@customElement('gr-endpoint-param')
-export class GrEndpointParam extends PolymerElement {
- @property({type: String, reflectToAttribute: true})
+export class GrEndpointParam extends LitElement {
+ @property({type: String, reflect: true})
name = '';
- @property({
- type: Object,
- notify: true,
- observer: '_valueChanged',
- })
+ @property({type: Object})
value?: unknown;
- _valueChanged(value: unknown) {
- /* In polymer 2 the following change was made:
- "Property change notifications (property-changed events) aren't fired when
- the value changes as a result of a binding from the host"
- (see https://polymer-library.polymer-project.org/2.0/docs/about_20).
- To workaround this problem, we fire the event from the observer.
- In some cases this fire the event twice, but our code is
- ready for it.
- */
- this.dispatchEvent(new CustomEvent('value-changed', {detail: {value}}));
+ override willUpdate(changedProperties: PropertyValues) {
+ if (changedProperties.has('value')) {
+ this.dispatchEvent(
+ new CustomEvent('value-changed', {detail: {value: this.value}})
+ );
+ }
}
}