Title: JavaScript chat summary, February 12th, 2019
Author: Ajit Bohra
Published: February 15, 2019
Last modified: September 16, 2020

---

 [  ](https://profiles.wordpress.org/ajitbohra/) [Ajit Bohra](https://profiles.wordpress.org/ajitbohra/)
8:22 pm _on_ February 15, 2019     
Tags: [core-editor-summary ( 185 )](https://make.wordpress.org/core/tag/core-editor-summary/),
[javascript ( 130 )](https://make.wordpress.org/core/tag/javascript/)   

# JavaScript chat summary, February 12th, 2019

Below is a summary of the discussion from this week’s JavaScriptJavaScript JavaScript
or JS is an object-oriented computer programming language commonly used to create
interactive effects within web browsers. WordPress makes extensive use of JS for
a better user experience. While PHP is executed on the server, JS executes within
a user’s browser. [https://www.javascript.com](https://www.javascript.com/) chat(
[agenda](https://docs.google.com/document/d/16P7YxTXM8UKO8q4rIKm8dBy8129UF74bT_FapWzqBrE/edit),
[Slack Transcript](https://wordpress.slack.com/archives/C5UNMSU4R/p1549980014026600))

Have a topic for discussion for the next meeting? Leave a suggested edit on [next week’s agenda](https://docs.google.com/document/d/1yRz0sbVglMFItA8mNvNY6_JLj0NB73t4EyvoAhQafco/edit).

## “ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. 󠀁[https://reactjs.org](https://reactjs.org/)󠁿 As UIUI User interface Runtime” Article

[@nerrad](https://profiles.wordpress.org/nerrad/) shared “React As UI Runtime” article
by Dan Abramov. Its good resource for folks who are familiar with React and want
to deep dive into internal working. It will give you insight into the various aspect
of React how things work and why they work in a certain way.

## Custom ESLint Rules

Two new ESLint rules have been implemented:

 * Protect against invalidinvalid A resolution on the bug tracker (and generally
   common in software development, sometimes also _notabug_) that indicates the 
   ticket is not a bug, is a support request, or is generally invalid. use of wp.
   i18n.sprintf.
    - [https://github.com/WordPress/gutenberg/pull/13756](https://github.com/WordPress/gutenberg/pull/13756)
 * Enforce dependencies grouping conventions:
    - [https://github.com/WordPress/gutenberg/pull/13757](https://github.com/WordPress/gutenberg/pull/13757)
    - [https://github.com/WordPress/gutenberg/pull/13785](https://github.com/WordPress/gutenberg/pull/13785)
 * [@aduth](https://profiles.wordpress.org/aduth/) raised, What should we do about
   inconsistencies like “Node dependencies” and “Browser dependencies” ([context](https://github.com/WordPress/gutenberg/pull/13785/files#r255412405)),
   or /** vs. /* ([context](https://github.com/WordPress/gutenberg/pull/13757)).
   It was decided that no need to (yet) change the `/**` syntax, and that “Node 
   dependencies” should be avoided in favor of “External dependencies”.

## Icon Package

The design team is [exploring](https://make.wordpress.org/design/2019/02/12/whats-next-for-dashicons/)
improvements for the Dashicons project and proposed the following:

 * The current workflow for adding icons and updating the font is not ideal and 
   doesn’t scale for a big number of icons.
 * GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress.
   The editor improves the process and experience of creating new content, making
   writing rich content much simpler. It uses ‘blocks’ to add richness rather than
   shortcodes, custom HTML etc. [https://wordpress.org/gutenberg/](https://wordpress.org/gutenberg/)
   requires a big number of icons to avoid duplicates, it relies on SVGs instead
   of fonts and an option being explored is to take Material Icons as a basis and
   extend it with WordPress specific icon sets.

Some ideas were explored but final decision pending, until some better ideas and
direction by the design team is finalized:

 * Exposing icons to global script handle though that could be huge to load.
 * [@nosolosw](https://profiles.wordpress.org/nosolosw/) suggested:
    - Getting some inspiration from [GridIcons.](https://github.com/Automattic/gridicons/)
    - `wp_enqueue_icon` a function to declare the icons for use and make them available
      under `wp.icons.*` (for the ones enqueued)?
 * [@youknowriad](https://profiles.wordpress.org/youknowriad/) suggested:
    - Bundling all the icons as a separate package one big set to choose from.
    - Using the build process and tree shaking to include icons in use.
    - Getting inspiration from [FeatherIcons.](https://github.com/feathericons)
    - Lazy loading icons if feasible.

## Open floor

 * [@welcher](https://profiles.wordpress.org/welcher/) shared a [resource](https://github.com/ryanwelcher/slotfill-and-filter-demos)
   he put together for various slot-fill and filterFilter Filters are one of the
   two types of Hooks [https://codex.wordpress.org/Plugin_API/Hooks](https://codex.wordpress.org/Plugin_API/Hooks).
   They provide a way for functions to modify data of other functions. They are 
   the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated
   manner, and should never have side effects such as affecting global variables
   and output..
 * [@gziolo](https://profiles.wordpress.org/gziolo/) suggested to include them in
   the official handbook.

[#meeting-notes](https://make.wordpress.org/core/tag/agenda/), [#core-js](https://make.wordpress.org/core/tag/core-js/),
[#javascript](https://make.wordpress.org/core/tag/javascript/)

[#core-editor-summary](https://make.wordpress.org/core/tag/core-editor-summary/),
[#javascript](https://make.wordpress.org/core/tag/javascript/)

### Share this:

 * [  Threads ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=threads)
 * [  Mastodon ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=mastodon)
 * [  Bluesky ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=bluesky)
 * [  X ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=x)
 * [  Facebook ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=facebook)
 * [  LinkedIn ](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?share=linkedin)

 1. ![](https://secure.gravatar.com/avatar/d1206b2538cfce31db7cfe5cf02cc5913c44d6428cf218ea0e357faa23accb0c?
    s=32&d=mm&r=g)
 2.  [Andrés](https://profiles.wordpress.org/oandregal/)  5:19 pm _on_ February 21,
    2019
 3. > What should we do about inconsistencies like (…) /** vs. /*. It was decided that
    no need to (yet) change the /** syntax, (…).
 4. Follow-up on this. One of the main concerns against using JSDoc style comments 
    in the imports `/**` was how could it potentially affect the auto-documentation
    efforts. Would the tool be confused by those? ([Context](https://wordpress.slack.com/archives/C5UNMSU4R/p1549980709040800)).
    The answer is no.
 5. The tool currently being [worked on](https://github.com/WordPress/gutenberg/pull/13329)
    retrieves JSDoc comments from `export` statements or the symbol declaration -`import`
    statements aren’t considered. There are a couple of tests ([1](https://github.com/WordPress/gutenberg/pull/13329/files#diff-a789ed09286dfc564c72b3181163363dR334),
    [2](https://github.com/WordPress/gutenberg/pull/13329/files#diff-a789ed09286dfc564c72b3181163363dR384))
    to prevent that potential regressionregression A software bug that breaks or degrades
    something that previously worked. Regressions are often treated as critical bugs
    or [blockers](https://make.wordpress.org/core/2019/02/15/javascript-chat-summary-february-12th-2019/?output_format=md#blocker).
    Recent regressions may be given higher priorities. A "3.6 regression" would be 
    a bug in 3.6 that worked as intended in 3.5..

Comments are closed.

# Post navigation

[← Dev Chat Summary: February 13](https://make.wordpress.org/core/2019/02/14/dev-chat-summary-february-13/)

[Porting Widgets to Blocks: Feb 18, 2019 →](https://make.wordpress.org/core/2019/02/18/porting-widgets-to-blocks-feb-18-2019/)