Skip to content

Commit

Permalink
Merge branch 'master' into users/nirice/add-background-and-color-to-DSP
Browse files Browse the repository at this point in the history
  • Loading branch information
nicholasrice committed Jun 11, 2020
2 parents de8b376 + 66ce1ad commit 46d73cb
Show file tree
Hide file tree
Showing 35 changed files with 219 additions and 231 deletions.
82 changes: 82 additions & 0 deletions packages/tooling/fast-tooling/src/data-utilities/mapping.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -920,6 +920,88 @@ describe("htmlMapper", () => {

expect(result).toEqual(mappedElement);
});
test("should map an svg element to data", () => {
const dataDictionary: DataDictionary<any> = [
{
"": {
schemaId: "foo",
data: {},
},
},
"",
];
htmlMapper({
version: 1,
tags: [
{
name: "svg",
description: "foobar",
attributes: [],
slots: [],
},
],
})({
dataDictionary,
dictionaryId: "",
schema: {
id: "foo",
[ReservedElementMappingKeyword.mapsToTagName]: "svg",
type: "object",
},
mapperPlugins: [],
});
expect(dataDictionary[0][""].data).toEqual(
document.createElementNS("http://www.w3.org/2000/svg", "svg")
);
});
test("should map an svg element with an attribute specifying a URI to data", () => {
const dataDictionary: DataDictionary<any> = [
{
"": {
schemaId: "foo",
data: {},
},
},
"",
];
htmlMapper({
version: 1,
tags: [
{
name: "svg",
description: "foobar",
attributes: [
{
name: "foo",
description: "URI override",
type: DataType.string,
default: "http://www.w3.org/2000/svg",
required: true,
},
],
slots: [],
},
],
})({
dataDictionary,
dictionaryId: "",
schema: {
id: "foo",
[ReservedElementMappingKeyword.mapsToTagName]: "svg",
type: "object",
properties: {
foo: {
title: "URI override",
type: "string",
},
},
},
mapperPlugins: [],
});
expect(dataDictionary[0][""].data).toEqual(
document.createElementNS("http://www.w3.org/2000/svg", "svg")
);
});
});

describe("mapWebComponentDefinitionToJSONSchema", () => {
Expand Down
26 changes: 25 additions & 1 deletion packages/tooling/fast-tooling/src/data-utilities/mapping.ts
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,23 @@ export interface ResolverConfig<T> {
resolverPlugins: MapDataPlugin[];
}

const nameSpacedURIs = {
svg: "http://www.w3.org/2000/svg",
};
const nameSpacedTags = {
animate: nameSpacedURIs.svg,
svg: nameSpacedURIs.svg,
path: nameSpacedURIs.svg,
defs: nameSpacedURIs.svg,
ellipse: nameSpacedURIs.svg,
circle: nameSpacedURIs.svg,
line: nameSpacedURIs.svg,
polygon: nameSpacedURIs.svg,
polyline: nameSpacedURIs.svg,
rect: nameSpacedURIs.svg,
g: nameSpacedURIs.svg,
};

export function resolveDataInDataDictionary<T>(
config: ResolveDataInDataDictionaryConfig<T>
): void {
Expand Down Expand Up @@ -305,7 +322,14 @@ export function htmlMapper(
);

if (elementDefinition !== undefined) {
const newElement = document.createElement(elementDefinition.name);
// Due to SVGs being namespaced they must use the createElementNS method instead of createElement
const isNameSpaced = Object.keys(nameSpacedTags).includes(
elementDefinition.name
);
const uri = nameSpacedTags[elementDefinition.name];
const newElement = isNameSpaced
? document.createElementNS(uri, elementDefinition.name)
: document.createElement(elementDefinition.name);
// a list of available slots for this element
const availableElementSlots = elementDefinition.slots.map(elementSlot => {
return elementSlot.name;
Expand Down
5 changes: 3 additions & 2 deletions packages/web-components/fast-components-msft/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
"bugs": {
"url": "https://github.com/Microsoft/fast-dna/issues/new/choose"
},
"main": "./dist/esm/index.js",
"types": "./dist/fast-components-msft.d.ts",
"main": "dist/esm/index.js",
"types": "dist/fast-components-msft.d.ts",
"unpkg": "dist/fast-components-msft.min.js",
"scripts": {
"clean:dist": "node ../../../build/clean.js dist",
"doc": "api-extractor run --local",
Expand Down
5 changes: 3 additions & 2 deletions packages/web-components/fast-components/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
"bugs": {
"url": "https://github.com/Microsoft/fast-dna/issues/new/choose"
},
"main": "./dist/esm/index.js",
"types": "./dist/fast-components.d.ts",
"main": "dist/esm/index.js",
"types": "dist/fast-components.d.ts",
"unpkg": "dist/fast-components.min.js",
"scripts": {
"clean:dist": "node ../../../build/clean.js dist",
"doc": "api-extractor run --local",
Expand Down
5 changes: 3 additions & 2 deletions packages/web-components/fast-element/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
"bugs": {
"url": "https://github.com/Microsoft/fast-dna/issues/new/choose"
},
"main": "./dist/esm/index.js",
"types": "./dist/fast-element.d.ts",
"main": "dist/esm/index.js",
"types": "dist/fast-element.d.ts",
"unpkg": "dist/fast-element.min.js",
"scripts": {
"clean:dist": "node ../../../build/clean.js dist",
"doc": "api-extractor run --local",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ Observable.defineProperty(ExecutionContext.prototype, "length");
* The default execution context used in binding expressions.
* @public
*/
export const defaultExecutionContext = new ExecutionContext();
export const defaultExecutionContext = Object.seal(new ExecutionContext());

/**
* The signature of an arrow function capable of being evaluated
Expand Down
5 changes: 3 additions & 2 deletions packages/web-components/fast-foundation/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
"bugs": {
"url": "https://github.com/Microsoft/fast-dna/issues/new/choose"
},
"main": "./dist/esm/index.js",
"types": "./dist/fast-foundation.d.ts",
"main": "dist/esm/index.js",
"types": "dist/fast-foundation.d.ts",
"unpkg": "dist/fast-foundation.min.js",
"scripts": {
"clean:dist": "node ../../../build/clean.js dist",
"doc": "api-extractor run --local",
Expand Down
9 changes: 7 additions & 2 deletions sites/fast-component-explorer/app/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,15 @@ import { get, omit } from "lodash-es";
import { MenuItem } from "@microsoft/fast-tooling-react";
import { createBrowserHistory } from "history";
import { SchemaDictionary } from "@microsoft/fast-tooling";
import { fastComponentSchemas, nativeElementSchemas } from "@microsoft/site-utilities";
import textSchema from "./utilities/text.schema";
import {
fastComponentSchemas,
nativeElementSchemas,
textSchema,
} from "@microsoft/site-utilities";
import { fastMenuItemId } from "./fast-components/configs/fast-menu";
import { fastSliderLabelId } from "./fast-components/configs/fast-slider";
import { fastTabId, fastTabPanelId } from "./fast-components/configs/fast-tabs";
import { fastDesignSystemProviderId } from "./fast-components/configs/fast-design-system-provider";

const schemaDictionary: SchemaDictionary = {
...fastComponentSchemas,
Expand All @@ -23,6 +27,7 @@ const menu: MenuItem[] = generateMenu(
fastSliderLabelId,
fastTabId,
fastTabPanelId,
fastDesignSystemProviderId,
...Object.entries(nativeElementSchemas).map(
([, nativeElementSchema]: [string, any]) => {
return nativeElementSchema.id;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/anchor/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/badge/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/button/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/card/guidance";
import { imageSchema } from "../../utilities";
import { ComponentViewConfig } from "./data.props";
import { fastButtonId } from "./fast-button";

Expand Down Expand Up @@ -33,7 +31,7 @@ const fastCardConfig: ComponentViewConfig = {
id: "root",
dataLocation: "Slot",
},
schemaId: imageSchema.id,
schemaId: "img",
data: {
src: "https://placehold.it/300x200/414141",
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/checkbox/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const fastDesignSystemProviderId = "fast-design-system-provider";
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/dialog/guidance";
import { ComponentViewConfig } from "./data.props";
import { fastButtonId } from "./fast-button";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/menu/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/radio-group/guidance";
import { ComponentViewConfig } from "./data.props";
import { fastRadioId } from "./fast-radio";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/radio/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { fastComponentSchemas } from "@microsoft/site-utilities";
import textSchema from "../../utilities/text.schema";
import { fastComponentSchemas, textSchema } from "@microsoft/site-utilities";
import Guidance from "../../.tmp/tabs/guidance";
import { ComponentViewConfig } from "./data.props";

Expand Down
29 changes: 13 additions & 16 deletions sites/fast-component-explorer/app/preview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ import {
previewDirection,
previewTheme,
} from "./explorer";
import { nativeElementTags } from "./utilities";

// Prevent tree shaking
FASTComponents;
Expand Down Expand Up @@ -197,21 +196,19 @@ class Preview extends Foundation<
tags: Object.entries({
...componentDefinitions,
...nativeElementDefinitions,
})
.reduce(
(
previousValue: WebComponentDefinitionTag[],
currentValue: [string, WebComponentDefinition]
) => {
if (Array.isArray(currentValue[1].tags)) {
return previousValue.concat(currentValue[1].tags);
}

return previousValue;
},
[]
)
.concat(nativeElementTags),
}).reduce(
(
previousValue: WebComponentDefinitionTag[],
currentValue: [string, WebComponentDefinition]
) => {
if (Array.isArray(currentValue[1].tags)) {
return previousValue.concat(currentValue[1].tags);
}

return previousValue;
},
[]
),
}),
resolver: htmlResolver,
})
Expand Down
23 changes: 0 additions & 23 deletions sites/fast-component-explorer/app/utilities/image.definition.ts

This file was deleted.

1 change: 0 additions & 1 deletion sites/fast-component-explorer/app/utilities/index.ts

This file was deleted.

19 changes: 0 additions & 19 deletions sites/fast-component-explorer/app/utilities/label.definition.ts

This file was deleted.

This file was deleted.

Loading

0 comments on commit 46d73cb

Please sign in to comment.