processwire-requests icon indicating copy to clipboard operation
processwire-requests copied to clipboard

Ability to copy/paste a repeater item with its nested items

Open jlahijani opened this issue 2 years ago • 2 comments

In the recent past, the ability to copy/clone repeater items made its way into ProcessWire.

This feature works well, but I was wondering if it could be enhanced so that if an item it copied, the option exists for it to also copy its nested items (meaning repeater items that have a depth larger than the item being copied). This would significantly aid in page builder capabilities, especially with a new concept I'm experimenting with.

Please see screenshot as an example mockup.

2022-04-29_13-35-23

jlahijani avatar Apr 29 '22 20:04 jlahijani

Ryan mentioned "the ability to control what item types are allowed where, kind of like the Family settings on page templates" features as well, and I think they are related to this request.

I asked about that one and the coloring of the repeater item backgrounds here: https://processwire.com/talk/topic/27043-weekly-update-%E2%80%93-22-april-2022/?do=findComment&comment=223398

@jlahijani BTW, does the repeater item background collaring work for you properly? When I add the sex value to the labels, I also get them back in the "add new item" links, and also vie the API when getting the label value. In this state it I cannot actually use it, unfortunately.

For example, as you can see in the "Size" matrix item's "add link" label, the added color hex value shows up: product-configurator-1

Sorry for being off topic, but I felt that it is useful to discuss somewhat related features in the same topic.

Note that I do not need family settings and "tree branch cloning" for page building but for "product building" which requires the same repeater matrix features as a pagebuilder. Constraints on which matrix item can go where would also be essential, I think.

szabeszg avatar Apr 30 '22 11:04 szabeszg

@szabeszg I know that the ability to change a repeater types' color exists, but I never got around experimenting with the way Ryan implemented it so I don't know much about it. I'm simply doing it via CSS with a custom CSS file I load in the admin. Here's an example:

#wrap_Inputfield_your_matrix_field_name [data-typename="your_matrix_type_name"].InputfieldRepeaterItem > label.InputfieldHeader {
  outline: 1px solid darkblue;
  outline-color: darkblue;
  background-color: darkblue;
}

jlahijani avatar Apr 30 '22 20:04 jlahijani