Browse Source

Merge classes provided by the attrs property.

NaotoshiFujita 3 years ago
parent
commit
ede9616a91

File diff suppressed because it is too large
+ 0 - 0
dist/js/splide-renderer.min.js


+ 4 - 2
dist/js/splide.cjs.js

@@ -2488,9 +2488,11 @@ class SplideRenderer {
     push(this.slides, this.contents.map((content, index) => {
       content = isString(content) ? { html: content } : content;
       content.styles = content.styles || {};
+      content.attrs = content.attrs || {};
       this.cover(content);
-      assign(content.attrs = content.attrs || {}, {
-        class: `${this.options.classes.slide} ${index === 0 ? CLASS_ACTIVE : ""}`.trim(),
+      const classes = `${this.options.classes.slide} ${index === 0 ? CLASS_ACTIVE : ""}`;
+      assign(content.attrs, {
+        class: `${classes} ${content.attrs.class || ""}`.trim(),
         style: this.buildStyles(content.styles)
       });
       return content;

+ 4 - 2
dist/js/splide.esm.js

@@ -2484,9 +2484,11 @@ class SplideRenderer {
     push(this.slides, this.contents.map((content, index) => {
       content = isString(content) ? { html: content } : content;
       content.styles = content.styles || {};
+      content.attrs = content.attrs || {};
       this.cover(content);
-      assign(content.attrs = content.attrs || {}, {
-        class: `${this.options.classes.slide} ${index === 0 ? CLASS_ACTIVE : ""}`.trim(),
+      const classes = `${this.options.classes.slide} ${index === 0 ? CLASS_ACTIVE : ""}`;
+      assign(content.attrs, {
+        class: `${classes} ${content.attrs.class || ""}`.trim(),
         style: this.buildStyles(content.styles)
       });
       return content;

File diff suppressed because it is too large
+ 0 - 0
dist/types/renderer/SplideRenderer/SplideRenderer.d.ts.map


+ 5 - 2
src/js/renderer/SplideRenderer/SplideRenderer.ts

@@ -135,11 +135,14 @@ export class SplideRenderer {
     push( this.slides, this.contents.map( ( content, index ) => {
       content = isString( content ) ? { html: content } : content;
       content.styles = content.styles || {};
+      content.attrs  = content.attrs || {};
 
       this.cover( content );
 
-      assign( ( content.attrs = content.attrs || {} ), {
-        class: `${ this.options.classes.slide } ${ index === 0 ? CLASS_ACTIVE : '' }`.trim(),
+      const classes = `${ this.options.classes.slide } ${ index === 0 ? CLASS_ACTIVE : '' }`;
+
+      assign( content.attrs, {
+        class: `${ classes } ${ content.attrs.class || '' }`.trim(),
         style: this.buildStyles( content.styles ),
       } );
 

+ 1 - 0
src/js/test/php/examples/renderer.php

@@ -62,6 +62,7 @@ $settings = get_settings();
             html : '<img src="../../assets/images/pics/slide01.jpg">',
             attrs: {
               dataTest: 1,
+              class: 'test',
             },
           },
           {

Some files were not shown because too many files changed in this diff