Ruby, 7373 64 bytes
->s,n{c=s.chars;(10...n).flat_map{|i|[*s.charsc.repeated_permutationproduct(i*[c]*_1)]}.map{_1*''}}
66 byte version because TIO doesn't support _1
->s,n{c=s.chars;(0...n).flat_map{|i|c.product(*[c]*i)}.map &:join)}