⚡️ Ideas
Grant R Grant R Mar 6, 2024

Allow supertags to have multiple unique templates that can be displayed based on a set rule (such as a 'node filter')

Explain the problem as you see it

I have a #Projects supertag for my business, and we have many different types of projects that fit under the #Projects supertag...but they require different data.

For example a 'Product Development' project requires a much different supertag template than a 'Marketing Campaign' project; but they are both very much still #Projects.

Of course I could use an additional tag i.e. #ProductDevelopment to have a different template, but that seems unnecessary at a certain point. My thinking is to try to use as few tags as possible. This makes adding data quicker and easier by limiting the number of tags that need to be used, and not having to remember multiple tags.

Why is this a problem for you?

Being limited to a single supertag template limits organization quite a bit and forces the use of additional supertags (or a command workaround), when one supertag can effectively be used.

My current workaround is to create commands for each 'Project Type'. These commands then have a 'node filter' that only displays the command button when its respective 'Project Type' field is set. When the command is clicked it runs 'insert copies of nodes' which inserts references of a unique 'template' that I've made in the library.

This works fairly well but the functionality isn't as good as a true supertag template. For instance, adding new nodes/fields to the command's "template" in the library will not auto populate to tagged nodes (because the command "templates" injection is reliant on clicking the command button). The only way to get newly added data on existing tagged nodes is to manually click the command button again, which inserts a new set of references that are separate from the existing ones. This means any changes to the command 'template' that involve adding or removing will have to be done manually...which isn't great.

Suggest a solution

Allow supertags to have multiple unique templates, with the ability to display each template based on a set rule (such as a 'node filter').

This could just be a tab menu above the "default/main" template that has a '+ Add' button. Then when additional templates have been added the tabs allow switching the currently selected/editable one i.e.: 'Template 1' | 'Template 2' | '+ Add'.

Then there can be a setting on each template that sets when it will be displayed on the tagged node. I feel like there are probably quite a few template 'display rules' that could be useful, but the one for this use-case would essentially just be a 'Node Filter'. So on each template, allow a node reference to be set that will display or hide the template...essentially exactly how the 'Node Filter' works.

This would then allow, for example, the creation of a #Projects supertag that has unique templates for each project type i.e. 'Product Development', 'Product Revision', 'Marketing Campaign', etc. Then each template can be set to display only when the field 'Project Type' (that is in the first template) is set to the respective referenced node such as 'Product Development'.

I hope that makes sense! This seems like it would be a really powerful addition to supertags that doesn't require implementing a bunch of 'new' functionality to Tana. More just expanding supertag functionality by implementing existing Tana functionality onto them.