Skip to content

createGridTemplates(...)

createGridTemplates(...) fabrique un ensemble cohérent de factories de templates grid.

Signature

ts
ts
createGridTemplates(params)

Paramètres

L'objet params peut contenir :

  • form?
  • input?
  • multi?
  • check?
  • section?
  • repeat
  • step
  • union

Les clés repeat, step et union sont obligatoires, car leurs templates grid dépendent de composants concrets comme les boutons et le sélecteur de type.

Exemple

ts
ts
import {
	templateFormAddButton,
	templateFormNextButton,
	templateFormPreviousButton,
	templateFormRemoveButton,
	templateFormResetButton,
	templateFormSelect,
} from "@duplojs/form/vueDesignSystem";
import { createGridTemplates } from "@duplojs/form/vueGrid";

export const templatesGrid = createGridTemplates({
	form: {
		maxColumns: 12,
		gap: 12,
	},
	input: {
		columns: 6,
	},
	multi: {
		columns: 12,
		maxColumns: 12,
		gap: 12,
	},
	check: {
		columns: 12,
		maxColumns: 12,
		gap: 12,
		hideEmptyMessageError: true,
	},
	section: {
		columns: 12,
		maxColumns: 12,
		gap: 12,
	},
	repeat: {
		addLabel: "Add item",
		removeLabel: "Remove item",
		resetLabel: "Reset item",
		addButton: templateFormAddButton,
		removeButton: templateFormRemoveButton,
		resetButton: templateFormResetButton,
	},
	step: {
		nextLabel: "Continue",
		previousLabel: "Back",
		resetLabel: "Reset step",
		nextButton: templateFormNextButton,
		previousButton: templateFormPreviousButton,
		resetButton: templateFormResetButton,
	},
	union: {
		selectInputKind: templateFormSelect,
		labels: {
			email: "Email",
			phone: "Phone",
		},
	},
});

Valeur retournée

La fonction retourne :

  • useFormTemplate
  • useInputTemplate
  • useMultiTemplate
  • useCheckTemplate
  • useRepeatTemplate
  • useUnionTemplate
  • useStepByStepTemplate
  • useSectionTemplate
  • useTemplates()

useTemplates() renvoie directement un objet Templates compatible avec createForm(...).

Cas d'usage

  • initialiser rapidement un environnement de formulaires ;
  • définir une grille commune à toute l'application ;
  • surcharger un ou plusieurs templates tout en gardant les autres par défaut.

Released under the MIT License.