After getting hands on with the data, it feels ridiculous not to fit on all samples in the split/fold.
In 2D data 'sample==row'. You don't fit on a single sample.
In 3D data 'sample==sequence' so you encode on all of the sequences.
This also means less encoders to keep track of for the sake of inverse transform and inference encoding.
Ideally, the transform operation is part of your pipeline, therefore, if you have reallife data, with the same pipeline, it will apply the same transformation.
(I'm assuming you're using a modeling language that makes use of pipelines)
As often in Machine Learning, there is no clear answer. In fact, both are valid options [1, p. 116]. However, for k-means min-max-scaling is usually used in practice . So min-max-scaling would be the default choice and it's what I'd recommend. But as so often you can simply try both and see which provides better results (i.e. better internal cluster ...