TPE DOM/Custom elements

From MozillaWiki
< TPE DOM
Revision as of 03:18, 27 October 2016 by Hsinyi (talk | contribs) (→‎Project Dashboard: dom-ce-m2 dashboard)
Jump to navigation Jump to search

Introduction

This project is to enable web authors to define and use new types of DOM elements in a document.

References:


Taipei Main Members

Engineers: Edgar Chen (main contact), John Dai

Meeting Minutes

Sync-up minutes

Roadmap

[Stage 1]

  1. Remove support of SVG-based custom element.
  2. Window interface
  3. HTMLElement constructor
    • Support using ES6 classes
    • Construction stack
    • Bug: 1274159
  4. Document interface
    • createElement, createElementNS
    • Bug: 1276579
  5. window.customElements.define

[Stage 2] <We are here - Target milestone: 2016 Q4 Stage2.1 & 2.2>

  1. custom element reactions stack/queue
    • Callback reaction
    • sProcessingStack
    • EnqueueLifecycleCallback
    • Upgrade reaction
  2. Algorithm of creating an element
  3. Lifecycle callbacks
    • connectedCallback
    • disconnectedCallback
    • attributeChangedCallback

[Stage 3]

  1. Mutation algorithms (Shadow dom)
  2. Web-platform-tests

[Stage 4]

  1. CSS :define

Project Dashboard

Meta Bugs

Full Query
ID Summary Priority Status
889230 [meta] Implement Custom Elements (from Web Components) P3 RESOLVED

1 Total; 0 Open (0%); 1 Resolved (100%); 0 Verified (0%);


Stage_2 Bugs & Progress

Full Query
ID Summary Status Target milestone Resolution Assigned to Depends on Blocks
1287348 Implement construction stack for upgrading an element RESOLVED --- DUPLICATE Edgar Chen [:edgar] 1274159 889230
1299363 Implement custom element v1 upgrade algorithm RESOLVED mozilla57 FIXED John Dai[:jdai] 1325279, 1353647, 1359346 889230, 1301024, 1319342, 1331334, 1378079
1301024 Creating an custom element via createElement/createElementNS should call constructor or run upgrade steps RESOLVED mozilla58 FIXED John Dai[:jdai] 1274159, 1299363, 1354013, 1407669, 1411088 889230, 1331334, 1396761
1309147 Add [CEReactions] to support custom element reactions RESOLVED mozilla55 FIXED John Dai[:jdai] 1347446 889230, 1315885, 1340027
1309176 Add stack-of-queues system for custom element reaction RESOLVED --- DUPLICATE John Dai[:jdai] 889230
1309184 Implement upgrade reaction for custom element reactions RESOLVED mozilla53 FIXED John Dai[:jdai] 889230, 1319342, 1325279
1319342 Cloning a node runs concept-create-element steps with synchronous-custom-elements-flag unset which enqueues an upgrade reaction RESOLVED mozilla58 FIXED John Dai[:jdai] 1299363, 1309184 889230
1325279 Put the reaction queue in CustomElementData structure instead of using a map RESOLVED mozilla55 FIXED Edgar Chen [:edgar] 1309184, 1359346 889230, 1299363, 1315885
1347446 Move custom element reactions stack to DocGroup RESOLVED mozilla55 FIXED John Dai[:jdai] 1350960 889230, 1309147, 1315885
1354013 Creating customized built-in elements without relevant definitions registered first shouldn't throw NotFoundError RESOLVED mozilla55 FIXED Edgar Chen [:edgar] 889230, 1301024
1357002 Calling document.createElement() with a second arg that includes "is" should not have noticeable slowdown when custom elements feature is pref-ed off RESOLVED mozilla55 FIXED Edgar Chen [:edgar] 889230
1359346 Implement custom element state RESOLVED mozilla55 FIXED Edgar Chen [:edgar] 889230, 1299363, 1325279
1378079 Creating an custom element from parser will synchronously call constructor RESOLVED mozilla58 FIXED Jessica Jong [:jessica] (inactive) 1299363, 1411088, 1510114 889230, 1418002
1406297 Document.createElement must report an exception which is user defined thrown by a custom element constructor RESOLVED mozilla58 FIXED John Dai[:jdai] 889230
1406325 Custom element clone node without definition should put into candidate map in order to upgrade later RESOLVED mozilla59 FIXED John Dai[:jdai] 889230

15 Total; 0 Open (0%); 15 Resolved (100%); 0 Verified (0%);


Stage_1 Bugs & Progress

Full Query
ID Summary Status Target milestone Resolution Assigned to Depends on Blocks
1274159 Add [HTMLConstructor] to support custom element feature RESOLVED mozilla53 FIXED Edgar Chen [:edgar] 1275835 889230, 1287348, 1301024, 1317658
1274505 Remove support of SVG-based custom element RESOLVED mozilla50 FIXED John Dai[:jdai] 889230, 1276579, 1396765
1275832 Implement custom element name validation for custom element RESOLVED mozilla52 FIXED John Dai[:jdai] 889230, 1275835, 1275839
1275833 Add CustomElementsRegistry interface for custom element RESOLVED mozilla50 FIXED John Dai[:jdai] 1289872 889230, 1275835, 1275838, 1275839
1275835 Implement CustomElementsRegistry define function RESOLVED mozilla51 FIXED Edgar Chen [:edgar] 1275832, 1275833 889230, 1274159, 1275838, 1275839
1275838 Implement CustomElementsRegistry get function RESOLVED mozilla52 FIXED John Dai[:jdai] 1275833, 1275835 889230
1275839 Implement CustomElementsRegistry whenDefined function RESOLVED mozilla52 FIXED John Dai[:jdai] 1275832, 1275833, 1275835 889230
1276579 Revise document.createElement[NS] for custom elements RESOLVED mozilla50 FIXED Jocelyn Liu [:jocelyn] [:joliu] 1274505, 1294100, 1318630, 1338889 889230, 1276240
1288306 Disable custom elements web-platform v0 tests RESOLVED mozilla50 FIXED Edgar Chen [:edgar] 889230, 1396765
1294100 TypeError: Argument 2 of Document.createElement can't be converted to a dictionary. VERIFIED mozilla51 FIXED John Dai[:jdai] 889230, 1276579
1309140 Rename CustomElementsRegistry to CustomElementRegistry RESOLVED mozilla52 FIXED John Dai[:jdai] 889230
1341693 Crash [@mozilla::dom::WindowBinding::get_customElements] RESOLVED mozilla54 FIXED Edgar Chen [:edgar] 1340565, 889230

12 Total; 0 Open (0%); 11 Resolved (91.67%); 1 Verified (8.33%);