Skip to content

Latest commit

 

History

History
582 lines (369 loc) · 43.7 KB

4.md

File metadata and controls

582 lines (369 loc) · 43.7 KB

Changelog of version 4

4.7.0 (2021-09-09)

Features

  • core base: Store the pattern instance on the element also when instantiating manually without scanning the DOM. Also store the pattern instance directly on the DOM node without jQuery.data. (252f537)
  • core dom: add_event_listener and remove_event_listener methods to register event handlers for DOM nodes which can be unregistered by an id. Event handlers with the same id on the same node won't be registered twice. (57febfd)

Bug Fixes

  • pat modal: Wait a tick before destroying the modal so that registered event handlers (like form submit) can kick in before the modal disappears. (c26ed3a)

Maintenance

  • dependencies: Upgrade dev dependencies up to minor releases and other releases up to patch level. (42cd837)

4.6.1 (2021-08-18)

Bug Fixes

  • pat inject: Parse data attributes as JSON also when the value is a JSON array. (de9ee8b)

4.6.0 (2021-08-17)

Features

  • core parser: Add config to not group parsed options. This allows more flexibility when reusing the parser. (7fea6e6)

Bug Fixes

  • pat inject: Use the main argument parser when rebasing HTML so that it supports all kinds of arguments, including multiple configurations as seen in pat-inject and semicolons at the end of a config line after a line-break. (d65892d)

Maintenance

  • pat inject: Fix invalid HTML in demo. (725f834)

4.5.5 (2021-07-23)

Bug Fixes

  • core dom: querySelectorAllAndMe: Do not break when no element is passed but return an empty list. (b5a7177)
  • core registry: scan: Do not throw an error when trying to scan undefined. (8c97ae5)
  • pat tooltip: If a trigger is defined, do not prevent other event handlers from being run. Prevents an error where a form submit button was prevented from submitting the form when it also had the class applied. (db70b55)

Maintenance

  • pat tooltip: Correct demo - 1) there is no source: auto, 2) source: content is only for the contents of the tooltip element. When referencing other content on the same page, source: ajax has to be used. (9205ce0)
  • pat tooltip: Document that delay can be defined with units. (88d271a)

4.5.4 (2021-07-15)

Bug Fixes

  • pat bumper: Fix IntersectionObserver issue with Safari where rootMargin wasn't correctly recognized due to formatting issues. (c0c3351)
  • pat tabs: Prevent infinite loop when only child element is .extra-tabs. (812fb50)

Maintenance

  • dependencies: Patch level upgrades (eslint minor level) of development dependencies. (6f6f613)
  • Fix the pre-commit command (8401791)

4.5.3 (2021-06-30)

Features

  • core utils: Add animation_frame which returns a Promise to be resolved with the next animation frame. Can be used to await for the next repaint cycle in async functions. (808439a)
  • core utils: Add get_bounds function to return the client bounding rectangle with rounded integer values instead of double/float values. (2be2abe)
  • core utils: Make getCSSValue return pixels as integer by default. Introduce a as_float option, if float/double values are needed. (e0c027d)

Bug Fixes

  • pat tabs: Improve algorithm to calculate available width to ensure better stability (not shrinking while moving tabs) and correctness (taking .extra-tabs and style updates while moving tabs into account). (b812aba)
  • pat tabs: Only run the ResizeObserver callback when width of parent container has changed. This avoids a infinite ResizeObserver callback loop when the height changes due to tab manipulation. Also apply a small threshold of 3 pixels for which the callback isn't run to avoid unnecessary runs. (7a4432e)

Maintenance

  • core utils getCSSValue: Test for returning 0 if a numerical value (as_pixels, as_float) was requested which doesn't exist. (51f5bcb)
  • pat tabs: More debug messages. (83fcfc5)

4.5.2 (2021-06-28)

Bug Fixes

  • pat tabs: Only calculate available space twice: Once initially and then after the extra-tabs span including extra classes have been added. This should stabilize tabs calculation in some cases. (923614a)

Maintenance

  • pat tabs: Test for debounce timeout. (3c184aa)

4.5.1 (2021-06-25)

Bug Fixes

  • pat tabs: Improve calculation of available width by querying the new available width after each recurision where a tab has been moved into the extra-tabs span. The width might change due to an applied padding when the extra-tabs span is added. (92c284a)

4.5.0 (2021-06-25)

Bug Fixes

  • pat bumper: Do not the intersection observer callback break when no root is found. (008b307)
  • pat bumper: Wait for next repaint cycle before searching for the scroll container. Fixes a corner case where no scroll container was found after injecting content and initializing this pattern in the same repaint cycle where no CSS was yet applied. (4da6918)

Breaking Changes

  • pat bumper: Rework pat-bumper to only set bumping classes. Needs CSS position:sticky. Does not set positions via JavaScript anymore. Ensure performant operation by using an IntersectionObserver. Note: You need to set your pat-bumper elements via CSS to position: sticky. Ref: #846 Fixes: #846. Fixes: #870. (82d3112)
  • pat sticky: Remove obsolete polyfill for position: sticky. (bb2bc9a)

Maintenance

  • dependencies: Minor version upgrade of dependencies. (92ac3d0)
  • pat bumper: Remove unused/unnecessary side and margin options. Side is dropped as we always set the classes according to the bumped position. Margin is retrieved from the CSS. Register observers for x+y scroll containers if they are different. (12d56e9)
  • pat bumper: Warn and exit if no position:sticky support is available. E.g. IE11. (3fe42a9)

4.4.4 (2021-06-24)

Bug Fixes

  • pat tabs: Improve available width calculation by excluding invisible and absolute positioned elements, making it more robust for different scenarios. (bb0dd19)

4.4.3 (2021-06-24)

Bug Fixes

  • pat forward: Allow to define the delay with units, e.g. 100ms. (add916b)
  • pat scroll: Allow to define the delay with units, e.g. 100ms. Fixes: #869 (5a7f783)
  • pat scroll: Reverse the semantics of the scroll offset. Offsets are substracted from the target position to stop BEFORE it. Fixes: #867 (318fc99)
  • pat tabs: Do not count extra-tabs element against available width as this one is absolutely positioned. Fixes: #868. (bb2e48c)

Maintenance

  • pat autofocus: Use utils.debounce instead custom logic. (3c9a51c)
  • pat calendar: Use utils.debounce instead custom logic. (abc4c21)
  • pat collapsible: scroll semantics have changed for pat-scroll. Adapt tests and add doku. (99a2d38)
  • pat navigation tests: Use utils.timeout instead nested setTimeout in tests. (a477076)
  • pat selectbox: Use utils.timeout instead setTimeout. (0eea9b2)
  • pat tabs: Clarify tabs calculation logic in code. (98866ed)

4.4.2 (2021-06-17)

Bug Fixes

  • pat tabs: Improve calculation of available space. It does now 1) check for line breaks of tab elements and 2) check if new position exceeds initial width of .pat-tabs container. (6d323ac)

4.4.1 (2021-06-16)

Features

  • styles: Introduce a _fonts.scss to do font imports. Fixes a problem where Webpack could not resolve the font assets path correctly. (1439e0e)
  • webpack: Allow passing a config object which overrides keys from a base config. (f8973ae)

Maintenance

  • dependencies: Minor version updates. (ccb00a0)
  • dependencies: Upgrade fullcalendar to 5.8.0. (3c8dcab)

4.4.0 (2021-06-15)

Features

  • core utils debounce: Improve cancelation of previous runs. (a845264)
  • pat bumper: Extra classes depending on bumped side (#847). (5b1acac)
  • pat collapsible: async support for transition function. (8c35a1a)
  • pat collapsible: Scroll offset support. (48a2cdd), closes #840
  • pat collapsible: Scrolling support. (18901c8), closes #840
  • pat scroll: Add support for selector self. (be4d322), closes #840
  • pat scroll: Add trigger value "manual". (f3a04a6), closes #840
  • pat scroll: Allow a delay before scrolling (#842). (cd146eb)
  • pat scroll: Support await for smoothScroll. (0a353b3)
  • pat tabs: Extra classes to indicate tabs state (#841). (aa0efbe)

Bug Fixes

  • pat tabs: Improve calculation of available space of pat-tabs. Ref: #848. (77787af)

Breaking Changes

  • pat scroll: Apply offset to scrolling position. (6d54876), closes #840

Maintenance

  • dependencies: Upgrade dependencies on major level. (c190e52)
  • dependencies: Upgrade dependencies on minor+patch level. (53d1434)
  • pat bumper: Anounce breaking change for pat-bumper. The JavaScript based positioning will be dropped and needs to be done via CSS position:sticky only. This pattern will only set classes to indicate a bumped element. (206b02f)
  • pat scroll: Add debug message when scrolling. (eeaf054)
  • pat scroll: Un-skip selector:bottom test - it passes now. (769e578)
  • pat scroll: Updated demo to properly show the use of delay (#842). (8984519)
  • webpack: Add config entry to minify all available bundles and chunks. No need to configure bundle minification in depending packages. (b7b1587)
  • webpack: Remove unnecessary moment resolve-alias. No need to overload in sub packages for that anymore. (1127367)
  • Minor code modernizations and cleanup. (81fa5dc)
  • Replace last occurrences of underscore debounce with utils debounce. (2ef57bf)
  • webpack: Update build system with necessary changed from recent version updates. We're still on Webpack 4. (fbff9f9)

4.3.1 (2021-06-08)

Bug Fixes

  • pat calendar: Fix .cal-title only searched within calendar controls since 4.2.4. Fixes current date not being updated when browsing the calendar. (7362b33)

Maintenance

  • pat sticky: Deprecate pat sticky. Use CSS position:sticky instead. (8ac4603)

4.3.0 (2021-06-01)

Features

  • core push kit: Set connection parameters. (427d0f1)
  • core push kit: Support for desktop notifications via patterns-notification-exchange and patterns-notification-filter meta tags. (4c3a615)
  • core push kit: Use logging framework. (515acc9)
  • core push kit: Use more generic patterns-push-filter instead patterns-push-user-id to show filtering is available for any topics. (2aa51b7)

Bug Fixes

  • pat push: Fix push kit and push pattern for basic operation. (34ecbf8)

Maintenance

4.2.4 (2021-04-28)

Bug Fixes

  • core parser: Allow line breaks and spaces before and after pattern arguments. (ff9c248)
  • pat calendar: Implement calendar-controls. (bbbed29)

Maintenance

  • Tests: Remove left-over log messages. (058ba74)

4.2.3 (2021-04-26)

Bug Fixes

  • pat scroll: Fix scrolling on body as scroll container. (a099517)

4.2.2 (2021-04-23)

Bug Fixes

  • pat date picker: Add test to check for working clear button in styled behavior with formatted dates. Needs previous commit to work. (cdb7ba4)
  • pat display time: Restore old behavior and clear the pat-display-time contents on empty datetime attributes. (58f992c)

Maintenance

  • Upgrade all version within the specified range. (b0924a7)

4.2.1 (2021-04-22)

Bug Fixes

  • pat date picker: styled behavior: do not format the date when no output-format is given. Also, only import display-date when it's actually used. (ca8ddae)
  • pat display time: Fix relative date / from-now option to work again. (95e5dea)

Maintenance

  • pat display time: Add tests with a fixed timezone. (40bea37)
  • Release process: Fix make release-patch target to really release a patch level version. release-it does default to minor level. (35461c4)

4.2.0 (2021-04-21)

Features

  • core utils: Add localized_isodate utility method to return in ISO 8602 date. This is to work around timezone shifting issues with the UTC based toISOString method. (2b395b7)

Bug Fixes

  • pat date picker tests: Fix failing test when running around midnight due to timezone shifting issues. (3dd8527)

Maintenance

  • Build: Also babel-load mockup from node_modules. This simple addition makes unnecessarily complex overload code in mockup obsolete. (76337b9)
  • Release workflow: Do not include the release commit message in the changelog and bypass the commitlint pre-commit hook. (3ef05dc)

4.1.0 (2021-04-21)

Features

  • core registry: Do not scan patterns wrapped within <template> tags. (d9889e3)
  • core utils: Add "ensureArray" which always returns an array. (0981cb4)
  • pat clone: Allow <template> tags for clone templates. (585d8ee)
  • pat date picker: Add clear button for styled behavior. (147df92)
  • pat date picker: Support disabled state and do not initialize the date picker. (cbca469)
  • polyfill: Add Node.remove polyfill. (e6853be)

Bug Fixes

  • pat date picker: Fix pat-validation compatiblity. (61e7231)
  • pat date picker: Improve pat-autosubmit compatibility. (a8dc1c8)

Breaking Changes

  • pat date picker: Allow for formatted dates in "styled" behavior. (81fea60)
  • pat datetime picker: Only support "native" behavior. (b14503d)

Maintenance

  • Build: Don't re-add the husky commitlint check, we have it already in the repository. (9e3e899)
  • Build: Fix typo Maintainance->Maintenance. (03ab244)
  • Build: Run yarn upgrade to get latest versions of dependencies within the specified range. (1824a80)
  • Cleanup: cosmetics (ad78c14)
  • Cleanup: Increase JavaScript line length to 89 characters to make most // prettier-ignore statements obsolete. (2e7e50f)
  • docs: Update README and RELEASE for latest changes. (385f02e)
  • Docs: Note about use of the legend pattern. (dd10577)
  • pat date picker: Add demo example including pat-clone. (73f7c34)
  • pat date picker: Document after/offset-days feature. (8a209d2)
  • pat date picker: Use async/await fetch for i18n and cleanup code. (1546966)
  • release: call make step in release step (223ba66)
  • Release workflow: Fixes to the release workflow. (8f8314b)
  • Install pre-commit hook for commit messge format. (77d0a39)
  • release: Fix the release-web step (f936f4d)

4.0.0 (2021-04-15)

Bug Fixes

  • core registry: Re-add scanning of hidden patterns (3cefe1b)
  • Webpack: Need to set publicPath for dev server. (bc4506a)

Maintenance

  • Cleanup: Configure editorconfig to use 4 spaces for .json files. (7a54d4c)
  • Cleanup: Reformat package.json using 4 spaces instead of 2. (c445219)
  • Docs: Remove section about customizing __webpack_public_path__ - this is now set automatically. (4c7cedc)
  • Docs: Update developer documentation. (ebb06d3)
  • Docs: Update release process documentation. (c66a8b1)
  • pat clone: Test for not initializing patterns wrapped within .cant-touch-this classes. (698044f)
  • Release: Add make targets for releasing Patternslib. (7853726)
  • Release: Do not auto-create github releases (bebd0ce)
  • Release: git tag is done by release-it, no need to do it manually (d1a1a92)
  • Release: Load the version just changed by the release-it script anew and add major/minor/patch targets (fbfbe64)
  • Release: Tag the release in Github (54952e8)
  • Release workflow: Add 'release-web' target to Makefile for creating a bundle tarball to download. (2d7bc5e)
  • Release workflow: Add commitlint for consistent commits allowing for automatic changelog generation. (6a14bb6)
  • Release workflow: Configure release-it with changelog generation using conventional changelog. (be3b1aa)
  • Release workflow: Install husky for commitlint pre-commit hook. (ce41cbe)
  • Webpack: Add Modernizr to default bundle. (23a691c)
  • Webpack: Change package scope to @patternslib/patternslib for the version 4 main release. (991246d)
  • yarn install. (ac6d163)
  • Webpack: Do not hardcode-set the __webpack_public_path__ in development mode. It's automatically set since recently. (87c7878)
  • Webpack: Move production and development configurations into main config. (d94655f)
  • Webpack: Remove the optimization.minimize config option and let it be set by dev/prod modes. (3812d19)
  • Webpack: Use argv.mode insted of env.NODE_ENV following recommendations. (632c294)

4.0.0-dev - unreleased

Breaking

  • Upgrade to ES6 style imports and remove RequireJS.
  • Removed unused or obsolete patterns:
    • pat-carousel-legacy - use pat-carousel instead.
    • pat-checked-flag - use pat-checklist instead.
    • pat-chosen - use pat-autosuggest instead.
    • pat-edit-tinymce
    • pat-placeholder - placeholder fully supported since IE10.
    • pat-slideshow-builder
    • simplePlaceholder from jquery-ext.
  • IE11 is not supported by default anymore. There is a polyfills bundle, which adds IE11 support for the time being. The polyfills bundle can be injected on demand with the polyfills-loader script.
  • pat tooltip: Remove undocumented "souce: content-html" parameter.
  • pat tooltip: Remove undocumented "souce: auto" parameter. This parameter should not be used as it is not explicit enough and would lead to unintuitive behavior.
  • pat tooltip: Change show/hide classes to tooltip-active-click resp. tooltip-active-hover and tooltip-inactive. Fixes: https://github.com/quaive/ploneintranet/issues/3723
  • Remove outdated pre IE9 browser compatibility polyfill core/compat.
  • Remove unused lib/htmlparser.
  • Remove obsolete library prefixfree.
  • pat date picker: Remove format argument and just use the ISO 8601 standard "YYYY-MM-DD", like the specification of date inputs defines it. Format would have submitted a formatted value where the ISO standard is expected. This also allows for removing the dependency of pat-date-picker on MomentJS.
  • pat datetime picker: - Change CSS selectors for better namespacing and remove implicit dependency on glyphicons. - Remove dependency on MomentJS. - After updating the original input, let the change event bubble up. - Support native behavior.

Features

  • pat gallery: Import styles for photoswipe.
  • pat carousel: Import styles for slick carousel.
  • pat auto suggest: Import styles for select2.
  • pat-tooltip: Import styles for tippy.
  • pat-modal: Import styles.
  • pat datetime picker: Import styles.
  • pat date picker: Import styles for pikaday.
  • Styles: Import styles by setting __patternslib_import_styles Allow importing styles from external libraries in Patternslib JavaScript via the global variable window.__patternslib_import_styles set to true. This allows loading these styles automatically via Webpack. Disable setting style import per default.
  • pat carousel: Use imagesloaded instead of timeout to wait for images to have been loaded.
  • core registry: Do not scan patterns within trees with attribute hidden or class cant-touch-this.
  • Implenent lazy loading for external libraries via dynamic imports. Leads to significantly reduced bundle sizes.
  • Upgrade pat-calendar to use latest fullcalendar version (5.3.0).
  • pat calendar: Add fullcalendar list views.
  • pat calendar: Store the current date and view in query parameters.
  • pat calendar: Fetch events from the backend.
  • pat calendar: Allow filtering/hiding events based in comparing the checkbox id with the classes of the displayed events.
  • pat calendar: Support pat-inject on events with a URL via pat-inject-source and pat-inject-target configuration options.
  • pat calendar: Support pat-switch for rendered events via some configuration options.
  • pat calendar: Support pat-tooltip on events with a URL via pat-tooltip-source set to ajax.
  • pat calendar: Support pat-modal on events with a URL via pat-modal-class set to some CSS class names.
  • pat calendar: Store view, date and active categories per URL, allowing to individually customize the calendar per page.
  • pat calendar: Support url in the event JSON model additionally to @id. The unique identifier is often not semantically correct for a URL to the item, especially when we want to call a specific view.
  • pat tooltip: Use tippy v6 based implementation.
  • pat tooltip: Introduce new option arrowPadding to define the padding of the box arrow from the corners of the tooltip.
  • pat tooltip: set content when mounting to avoid positioning problems.
  • Allow overriding the public path from outside via the definition of a window.__patternslib_public_path__ global variable.
  • Introduce new core/dom module for DOM manipulation and traversing. core/dom includes methods which help transition from jQuery to the JavaScript DOM API.
  • core dom: Add get_parents to return all parent elements from a given DOM node.
  • core dom: Add toNodeArray to return an array of DOM nodes if a NodeList, single DOM node or a jQuery object was passed.
  • core dom: Add querySelectorAllAndMe to do a querySelectorAll including the starter element.
  • core dom: Add wrap wrap an element with a wrapper element.
  • core dom: Add hide and show for DOM elements which retain the original display value.
  • core dom: Add find_parents to find all parents of an element matching a CSS selector.
  • core dom: Add find_scoped to search for elements matching the given selector within the current scope of the given element
  • core dom: Add is_visible to check if an element is visible or not.
  • core dom: Add create_from_string to create a DOM Element from a string. unless an id selector is given - in that case the search is done globally.
  • pat date picker: Support updating a date if it is before another dependent date.
  • pat tabs: Refactor based on ResizeObserver and fix problems calculating the with with transitions.
  • pat tabs: When clicking on the extra-tabs element, toggle between open and closed classes to allow opening/closing an extra-tabs menu via CSS.
  • pat autofocus: Do not autofocus in iframes. Fixes: #761.
  • pat inject: Allow configurable error pages by defining the error page URLs via meta tags with the name pat-inject-status-. Can be disabled by adding pat-inject-errorhandler.off to the URL's query string.
  • core utils: Add jqToNode to return a DOM node if a jQuery node was passed.
  • pat inject: Rebase URLs in pattern configuration attributes. This avoids URLs in pattern configuration to point to unreachable paths in the context where the result is injected into.
  • pat forward: Add delay option for delaying the click action forwarding for a given number of milliseconds.
  • pat forward: Add self as possible value for the selector option to trigger the event on itself.
  • pat-scroll: Implement selector:bottom attribute value to scroll to the bottom of the scroll container.
  • pat-scroll: Do handle click events also when trigger is set to auto.

Technical

  • Infrastructure: Upgrade jQuery to 3.6.0.
  • Webpack: Backport changes from Mockup - add loaders for images, svg, sass and xml.
  • Webpack: Automatically detect the chunk path or "webpack_public_path" while still allowing for overriding via "patternslib_public_path".
  • Export all parsers in all patterns to be able to modify default values or add aliases.
  • core polyfills: Add polyfill for Node.closest method.
  • Core Base: await for initalization in the base class constructor, so that the init event is really thrown after initialization is done.
  • pat calendar: Explicitly import JavaScript language files to avoid missing Webpack TypeScript loader errors.
  • Use Babel for all files, allowing latest JavaScript features everywhere.
  • Add example minimalpattern.
  • Replace slave terminology with dependent.
  • Update build infrastructure and packages.
  • Use yarn instead of npm.
  • Use node-sass instead of Ruby sass.
  • Use eslint instead jshint.
  • Use Jest with jsdom as testing framework instead of Karma/Jasmine.
  • Do not automatically start a browser when starting the development server.
  • Allow for the JavaScript feature "optional chaining" via Babel.
  • Do not depend on modernizr.
  • Core store: Ignore invalid JSON values.
  • Core utils: Add method to check input type support.
  • Core utils: Add new async timeout function. Used for waiting in tests.
  • Core utils: Add checkCSSFeature method to be used instead of modernizr feature detection.
  • Core: Allow plain DOM nodes for initalization in base and parser.
  • Build infrastructure: Build into /dist and cleanup before building.
  • utils: Add isIE method to detect Internet Explorer browsers.
  • Build infrastructure: Configure babel for less transformations when in development environment for better code readability.
  • Core Base: Register a plain DOM nodes as this.el alongside the jQuery node.
  • Webpack: Add CSS from JS at first in HEAD. Configure style_loader to insert CSS at the TOP of the html <head> Provide a webpack-helpers module with a top_head_insert function which can be reused in depending projects.
  • Build infra: Switch the CI system to GitHub Actions and drop Travis CI.
  • core base: Add the parser instance to pattern attributes if available. We can then reuse the parser from registered patterns. This is used in the _rebaseHTML method of pat-inject to URL-rebase the pattern configuration.

Fixes

  • core dom is_visible: Mock in tests to check only for hidden to avoid unavailable offsetWidth/offsetHeight in Jest.
  • pat calendar, pat checklist, pat datetime-picker: Dispatch DOM events with bubbling and canceling features enabled, as real DOM events do. Fixes a problem where calendar categories did not show their initial state correctly.
  • pat inject: Make sure that nested pat-inject element have the correct context for target self. Fixes: https://github.com/quaive/ploneintranet.prototype/issues/1164
  • pat calendar: Fix language loading error "Error: Cannot find module './en.js'"
  • pat depends, pat auto suggest: Fix a problem with initialization of pat-auto-suggest which occurred after the lazy loading changes.
  • pat checklist: Also dispatch standard change event when de/selecting all items.
  • pat select: Add missing <span> element around the select element itself. Fixes: https://github.com/quaive/ploneintranet.prototype/issues/1087
  • pat depends/core utils: Do not set inline styles when showing elements in transition mode none. Fixes #719.
  • pat scroll: Fix scrolling offset incorrectly applied. Fixes: #763.
  • Core registry: Fix transformPattern to also work with patterns which extend from Base. Fixes a problem with pat-auto-suggest not auto submitting.
  • pat autofocus: Implement documented behavior to not focus on prefilled element, if there is another autofocus element which is empty.
  • pat autofocus: Instead of calling autofocus for each element call it only once.
  • pat autofocus: Register event handler only once.
  • pat-checklist: For global de/select buttons, do not change any other checkboxes than the ones the de/select button belongs to.
  • Documentation fixes:
    • pat-inject: Fix documentation about special target self and demo that behavior.
    • pat-autosubmit: Fix demo to show configuration on individual inputs.
    • pat-clone demo: Remove unstyled tooltip/clone demo
    • pat date picker demo: Use current date for min/max example.
    • pat depends demo: Remove unused sections.
    • pat expandable tree demo: Extend the demo with more levels and folders.
    • pat scroll demo: Remove debug page.