Liking cljdoc? Tell your friends :D

subzero.plugins.web-components

Implements web components on top of the component registry.

State lives at ::state in the db, and has: ::class->fields-index ;; Mapping of all prop name variations -> writable JS property name ;; for element classes.

::css-link-elements ;; A set of all CSS <link> elements managed by this plugin. Used ;; for quick access when we need to override the hrefs during hot ;; reload. Only populated when hot reload is enabled.

::css-stylesheet-objects ;; A map of normalized URL -> constructed style sheet, so we can ;; reuse them. Entries never expire.

::href-overrides ;; When shadow-cljs (or figwheel I presume) detects an FS change of ;; some stylesheet linked at the top level of the document, it'll force ;; the browser to reload it be appending some arbitrary 'version' ;; to the href's query string. The plugin watches for those changes, and: ;; 1. Keeps track of the new HREF, so it can be used in newly created links ;; and constructed stylesheets. ;; 2. Replaces the HREF in all matching ::css-link-elements. ;; 3. Reloads all matching ::css-stylehseet-objects with the new URL. ;; ;; Only populated when hot reload is enabled.

Implements web components on top of the component registry.

State lives at `::state` in the db, and has:
  ::class->fields-index
  ;; Mapping of `all prop name variations -> writable JS property name`
  ;; for element classes.

  ::css-link-elements
  ;; A set of all CSS `<link>` elements managed by this plugin.  Used
  ;; for quick access when we need to override the hrefs during hot
  ;; reload.  Only populated when hot reload is enabled.

  ::css-stylesheet-objects
  ;; A map of `normalized URL -> constructed style sheet`, so we can
  ;; reuse them.  Entries never expire.

  ::href-overrides
  ;; When shadow-cljs (or figwheel I presume) detects an FS change of
  ;; some stylesheet linked at the top level of the document, it'll force
  ;; the browser to reload it be appending some arbitrary 'version'
  ;; to the href's query string.  The plugin watches for those changes, and:
  ;;   1. Keeps track of the new HREF, so it can be used in newly created links
  ;;      and constructed stylesheets.
  ;;   2. Replaces the HREF in all matching `::css-link-elements`.
  ;;   3. Reloads all matching `::css-stylehseet-objects` with the new URL.
  ;;
  ;; Only populated when hot reload is enabled.
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close