diff --git a/docs/Pulsar-API-Documentation.md b/docs/Pulsar-API-Documentation.md index 6e7dada39e..cedb848c30 100644 --- a/docs/Pulsar-API-Documentation.md +++ b/docs/Pulsar-API-Documentation.md @@ -98,6 +98,60 @@ "warnings": [] }

+
chromiumElementsShim
+

This file will manage the updating of autocomplete-html completions.json + We will partially utilize @webref/elements .listAll() function that returns + a full list of HTML Elements along with a defined interface. + To use this interface in any meaningful way, we will utilize the dataset + of Attributes that apply to each interface from Chromiums DevTools resource + https://github.com/ChromeDevTools/devtools-frontend. + Finally from here we will utilize https://github.com/mdn/content to parse + the Markdown docs of MDN's website to retreive descriptions for each element.

+

Now for a summary of our completions.json file we aim to generate. + There are two top level elements, tags and attributes, both objects. + Within tags we expect the following: + "tags": { + "a": { + "attributes": [ "href", "hreflang", "media", "rel", "target", "type" ], + "description": "....." + } + };

+

When an entry contains no attributes there is no empty array, the element + simply doesn't exist.

+

The attributes object contains keys of different elements that themselves + are objects that can contain several valid keys.

+ +

cssStyle: Exclusively used for class attribute +boolean: Attributes that only accept true or false +flag: For attributes that don't require or accept values. eg autoplay +cssId: Exclusively used for the id attribute +color: Exclusively used for the bgcolor attribute +style: Exclusively used for the style attribute

+ +

Although with our data sources mentioned above, we are able to collect nearly + all the data needed. Except the type that is defined within our + completions.json as well as the attribOption within our completions.

+

Studying these closer reveals that all attributes listing with our completions.json + do not appear elsewhere, and are nearly all global attributes.

+

In this case since there is no sane way to collect this data, we will leave this + list as a manually maintained section of our completions.json. + This does mean that curated-attributes.json is a static document that + will require manual updating in the future. Or most ideally, will find a way + to automatically generate the needed data.

+
+
update
+

This file aims to run some short simple tests against update.js. Focusing + mainly on the Regex used within sanitizeDescription()

+
fs
dalek
@@ -376,6 +430,68 @@ This file will manage the updating of `autocomplete-css` `completions.json`. "warnings": [] } +**Kind**: global constant + + +## chromiumElementsShim +This file will manage the updating of `autocomplete-html` `completions.json` + We will partially utilize `@webref/elements` `.listAll()` function that returns + a full list of HTML Elements along with a defined `interface`. + To use this `interface` in any meaningful way, we will utilize the dataset + of Attributes that apply to each `interface` from Chromiums DevTools resource + `https://github.com/ChromeDevTools/devtools-frontend`. + Finally from here we will utilize `https://github.com/mdn/content` to parse + the Markdown docs of MDN's website to retreive descriptions for each element. + + Now for a summary of our `completions.json` file we aim to generate. + There are two top level elements, `tags` and `attributes`, both objects. + Within `tags` we expect the following: + "tags": { + "a": { + "attributes": [ "href", "hreflang", "media", "rel", "target", "type" ], + "description": "....." + } + }; + + When an entry contains no `attributes` there is no empty array, the element + simply doesn't exist. + + The `attributes` object contains keys of different elements that themselves + are objects that can contain several valid keys. + - global: Seems to be used exclusively for Global Attributes. Is a boolean + which when false, the key does not appear. + - type: A ?type? for the attribute. It's meaning is not immediately known. + Nor a way to reliabley programatically collect it. Some discovered values: +cssStyle: Exclusively used for `class` attribute +boolean: Attributes that only accept `true` or `false` +flag: For attributes that don't require or accept values. eg autoplay +cssId: Exclusively used for the `id` attribute +color: Exclusively used for the `bgcolor` attribute +style: Exclusively used for the `style` attribute + - description: A text description of the attribute + - attribOption: A string array of valid values that can exist within the attribute. + Such as the case with `rel` where only so many valid options exist. + + Although with our data sources mentioned above, we are able to collect nearly + all the data needed. Except the `type` that is defined within our + `completions.json` as well as the `attribOption` within our completions. + + Studying these closer reveals that all attributes listing with our `completions.json` + do not appear elsewhere, and are nearly all global attributes. + + In this case since there is no sane way to collect this data, we will leave this + list as a manually maintained section of our `completions.json`. + This does mean that `curated-attributes.json` is a static document that + will require manual updating in the future. Or most ideally, will find a way + to automatically generate the needed data. + +**Kind**: global constant + + +## update +This file aims to run some short simple tests against `update.js`. Focusing + mainly on the Regex used within `sanitizeDescription()` + **Kind**: global constant diff --git a/docs/Source-Code-Documentation.md b/docs/Source-Code-Documentation.md index d612619fea..112d830033 100644 --- a/docs/Source-Code-Documentation.md +++ b/docs/Source-Code-Documentation.md @@ -98,6 +98,60 @@ "warnings": [] }

+
chromiumElementsShim
+

This file will manage the updating of autocomplete-html completions.json + We will partially utilize @webref/elements .listAll() function that returns + a full list of HTML Elements along with a defined interface. + To use this interface in any meaningful way, we will utilize the dataset + of Attributes that apply to each interface from Chromiums DevTools resource + https://github.com/ChromeDevTools/devtools-frontend. + Finally from here we will utilize https://github.com/mdn/content to parse + the Markdown docs of MDN's website to retreive descriptions for each element.

+

Now for a summary of our completions.json file we aim to generate. + There are two top level elements, tags and attributes, both objects. + Within tags we expect the following: + "tags": { + "a": { + "attributes": [ "href", "hreflang", "media", "rel", "target", "type" ], + "description": "....." + } + };

+

When an entry contains no attributes there is no empty array, the element + simply doesn't exist.

+

The attributes object contains keys of different elements that themselves + are objects that can contain several valid keys.

+ +

cssStyle: Exclusively used for class attribute +boolean: Attributes that only accept true or false +flag: For attributes that don't require or accept values. eg autoplay +cssId: Exclusively used for the id attribute +color: Exclusively used for the bgcolor attribute +style: Exclusively used for the style attribute

+ +

Although with our data sources mentioned above, we are able to collect nearly + all the data needed. Except the type that is defined within our + completions.json as well as the attribOption within our completions.

+

Studying these closer reveals that all attributes listing with our completions.json + do not appear elsewhere, and are nearly all global attributes.

+

In this case since there is no sane way to collect this data, we will leave this + list as a manually maintained section of our completions.json. + This does mean that curated-attributes.json is a static document that + will require manual updating in the future. Or most ideally, will find a way + to automatically generate the needed data.

+
+
update
+

This file aims to run some short simple tests against update.js. Focusing + mainly on the Regex used within sanitizeDescription()

+
fs
dalek
@@ -384,6 +438,68 @@ This file will manage the updating of `autocomplete-css` `completions.json`. "warnings": [] } +**Kind**: global constant + + +## chromiumElementsShim +This file will manage the updating of `autocomplete-html` `completions.json` + We will partially utilize `@webref/elements` `.listAll()` function that returns + a full list of HTML Elements along with a defined `interface`. + To use this `interface` in any meaningful way, we will utilize the dataset + of Attributes that apply to each `interface` from Chromiums DevTools resource + `https://github.com/ChromeDevTools/devtools-frontend`. + Finally from here we will utilize `https://github.com/mdn/content` to parse + the Markdown docs of MDN's website to retreive descriptions for each element. + + Now for a summary of our `completions.json` file we aim to generate. + There are two top level elements, `tags` and `attributes`, both objects. + Within `tags` we expect the following: + "tags": { + "a": { + "attributes": [ "href", "hreflang", "media", "rel", "target", "type" ], + "description": "....." + } + }; + + When an entry contains no `attributes` there is no empty array, the element + simply doesn't exist. + + The `attributes` object contains keys of different elements that themselves + are objects that can contain several valid keys. + - global: Seems to be used exclusively for Global Attributes. Is a boolean + which when false, the key does not appear. + - type: A ?type? for the attribute. It's meaning is not immediately known. + Nor a way to reliabley programatically collect it. Some discovered values: +cssStyle: Exclusively used for `class` attribute +boolean: Attributes that only accept `true` or `false` +flag: For attributes that don't require or accept values. eg autoplay +cssId: Exclusively used for the `id` attribute +color: Exclusively used for the `bgcolor` attribute +style: Exclusively used for the `style` attribute + - description: A text description of the attribute + - attribOption: A string array of valid values that can exist within the attribute. + Such as the case with `rel` where only so many valid options exist. + + Although with our data sources mentioned above, we are able to collect nearly + all the data needed. Except the `type` that is defined within our + `completions.json` as well as the `attribOption` within our completions. + + Studying these closer reveals that all attributes listing with our `completions.json` + do not appear elsewhere, and are nearly all global attributes. + + In this case since there is no sane way to collect this data, we will leave this + list as a manually maintained section of our `completions.json`. + This does mean that `curated-attributes.json` is a static document that + will require manual updating in the future. Or most ideally, will find a way + to automatically generate the needed data. + +**Kind**: global constant + + +## update +This file aims to run some short simple tests against `update.js`. Focusing + mainly on the Regex used within `sanitizeDescription()` + **Kind**: global constant