blob: 8dcb80e0e9a698d0cdd05165f9afc1dba1909725 [file] [log] [blame]
/**
* @license
* Copyright (C) 2020 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.
*/
// Ugly import path due to the following bugs:
// https://github.com/bazelbuild/rules_nodejs/issues/1522
// https://github.com/bazelbuild/rules_nodejs/issues/1380
import {PackageInfo, LicenseType, LicenseInfo} from "../../../tools/node_tools/node_modules_licenses/package-license-info";
import * as path from "path";
class LicenseTypes {
public static Mit: LicenseType = {
name: "MIT",
allowed: true
};
public static Apache2_0: LicenseType = {
name: "Apache 2.0",
allowed: true
};
public static Bsd3: LicenseType = {
name: "BSD-3-Clause",
allowed: true
};
public static BsdZeroClause: LicenseType = {
name: "BSD-Zero-Clause",
allowed: true
};
}
/** List of licenses texts. Add the licenses here if there is no text file with license
* in package. For details - see comments for {@link LicenseInfo} and {@link PackageInfo} */
class SharedLicenses {
public static Polymer2014: LicenseInfo = {
name: "Polymer-2014",
type: LicenseTypes.Bsd3,
sharedLicenseFile: "polymer-2014.txt",
};
public static Polymer2015: LicenseInfo = {
name: "Polymer-2015",
type: LicenseTypes.Bsd3,
sharedLicenseFile: "polymer-2015.txt",
};
public static Polymer2016: LicenseInfo = {
name: "Polymer-2016",
type: LicenseTypes.Bsd3,
sharedLicenseFile: "polymer-2016.txt",
};
public static Polymer2017: LicenseInfo = {
name: "Polymer-2017",
type: LicenseTypes.Bsd3,
sharedLicenseFile: "polymer-2017.txt",
};
public static Polymer2018: LicenseInfo = {
name: "Polymer-2018",
type: LicenseTypes.Bsd3,
sharedLicenseFile: "polymer-2018.txt",
};
public static IsArray: LicenseInfo = {
name: "isarray",
type: LicenseTypes.Mit,
sharedLicenseFile: "isarray.txt"
};
public static Page: LicenseInfo = {
name: "page",
type: LicenseTypes.Mit,
sharedLicenseFile: "page.txt"
}
}
const fontsRobotoFilter = (fileName: string) =>
fileName.startsWith("fonts/roboto/") && path.basename(fileName) !== "DESCRIPTION.en_us.html";
const fontsRobotomonoFilter = (fileName: string) =>
fileName.startsWith("fonts/robotomono/") && path.basename(fileName) !== "DESCRIPTION.en_us.html";
const packages: PackageInfo[] = [
{
name: "@polymer/decorators",
license: SharedLicenses.Polymer2017,
},
{
name: "@polymer/font-roboto",
license: SharedLicenses.Polymer2015,
},
{
name: "@polymer/font-roboto-local",
license: SharedLicenses.Polymer2015,
filesFilter: fileName => !fontsRobotoFilter(fileName) && !fontsRobotomonoFilter(fileName)
},
{
name: "@polymer/font-roboto-local",
license: {
name: "font-roboto-local-fonts-roboto",
type: LicenseTypes.Apache2_0,
packageLicenseFile: "fonts/roboto/LICENSE.txt"
},
filesFilter: fontsRobotoFilter
},
{
name: "@polymer/font-roboto-local",
license: {
name: "font-roboto-local-fonts-robotomono",
type: LicenseTypes.Apache2_0,
packageLicenseFile: "fonts/robotomono/LICENSE.txt"
},
filesFilter: fontsRobotomonoFilter
},
{
name: "@polymer/iron-a11y-announcer",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-a11y-keys-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-autogrow-textarea",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-behaviors",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-checked-element-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-dropdown",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-fit-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-flex-layout",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-form-element-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-icon",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-iconset-svg",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-image",
license: SharedLicenses.Polymer2016
},
{
name: "@polymer/iron-input",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-menu-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-meta",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-overlay-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-resizable-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-selector",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/iron-validatable-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/neon-animation",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-behaviors",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-button",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-card",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-checkbox",
license: SharedLicenses.Polymer2016
},
{
name: "@polymer/paper-dialog",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-dialog-behavior",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-dialog-scrollable",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-dropdown-menu",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-icon-button",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-input",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-item",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-listbox",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-menu-button",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-ripple",
license: SharedLicenses.Polymer2014
},
{
name: "@polymer/paper-styles",
license: SharedLicenses.Polymer2014
},
{
name: "@polymer/paper-tabs",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-toggle-button",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/paper-tooltip",
license: SharedLicenses.Polymer2015
},
{
name: "@polymer/polymer",
license: SharedLicenses.Polymer2017
},
{
name: "@types/resize-observer-browser",
license: {
name: 'DefinitelyTyped',
type: LicenseTypes.Mit,
packageLicenseFile: "LICENSE"
}
},
{
name: "@webcomponents/shadycss",
license: SharedLicenses.Polymer2017
},
{
name: "@webcomponents/webcomponentsjs",
license: SharedLicenses.Polymer2018
},
{
name: "ba-linkify",
license: {
name: "ba-linkify",
type: LicenseTypes.Mit,
packageLicenseFile: "LICENSE-MIT",
}
},
{
name: "isarray",
license: SharedLicenses.IsArray
},
{
name: "page",
license: SharedLicenses.Page
},
{
name: "shadow-selection-polyfill",
license: {
name: "shadow-selection-polyfill",
type: LicenseTypes.Apache2_0,
packageLicenseFile: "LICENSE"
}
},
{
name: "path-to-regexp",
license: {
name: "path-to-regexp",
type: LicenseTypes.Mit,
packageLicenseFile: "LICENSE"
}
},
{
name: "polymer-resin",
license: SharedLicenses.Polymer2018
},
{
name: "polymer-bridges",
license: SharedLicenses.Polymer2018
},
{
name: "rxjs",
license: {
name: "rxjs",
type: LicenseTypes.Apache2_0,
packageLicenseFile: "LICENSE.txt"
},
// The following directories are not real packages, but contains package.json
nonPackages: [
"ajax", "fetch", "internal-compatibility", "operators", "testing",
"webSocket", "src/ajax", "src/fetch", "src/internal-compatibility",
"src/operators", "src/testing", "src/webSocket"],
},
{
name: "lit-element",
license: {
name: "lit-element",
type: LicenseTypes.Bsd3,
packageLicenseFile: "LICENSE"
},
},
{
name: "lit-html",
license: {
name: "lit-html",
type: LicenseTypes.Bsd3,
packageLicenseFile: "LICENSE"
},
},
{
name: "tslib",
license: {
name: "tslib",
type: LicenseTypes.BsdZeroClause,
packageLicenseFile: "LICENSE.txt"
},
nonPackages: ["modules", "test/validateModuleExportsMatchCommonJS"],
},
];
export default packages;