
Security News
Axios Supply Chain Attack Reaches OpenAI macOS Signing Pipeline, Forces Certificate Rotation
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.
@praxisui/stepper
Advanced tools
Para ver esta biblioteca em funcionamento em uma aplicação completa, utilize o projeto de exemplo (Quickstart):
@praxisui/* em um app Angular, incluindo instalação, configuração e uso em telas reais.Componente stepper standalone com integração opcional ao @praxisui/dynamic-form, suporte a Ăcones Material Icons/Symbols e editor de configuração embutido.
Instale a biblioteca junto com as dependências pares (peer dependencies) exigidas pelo componente e pelo editor de configuração:
npm i @praxisui/stepper \
@praxisui/core @praxisui/dynamic-form @praxisui/settings-panel \
@praxisui/list @praxisui/files-upload @praxisui/page-builder
Peer dependencies (Angular v20):
@angular/core ^20.0.0@angular/common ^20.0.0@angular/material ^20.0.0@angular/cdk ^20.0.0@praxisui/core ^0.0.1@praxisui/dynamic-form ^0.0.1@praxisui/settings-panel ^0.0.1@praxisui/list ^0.0.1@praxisui/files-upload ^0.0.1@praxisui/page-builder ^0.0.1import { Component } from '@angular/core';
import { PraxisStepper } from '@praxisui/stepper';
@Component({
selector: 'app-onboarding',
standalone: true,
imports: [PraxisStepper],
template: `
<praxis-stepper [config]="config" [editModeEnabled]="true"></praxis-stepper>
`,
})
export class OnboardingComponent {
config = {
orientation: 'horizontal',
headerPosition: 'top',
linear: true,
steps: [
{ id: 'profile', label: 'Perfil' },
{ id: 'confirm', label: 'Confirmação' },
],
navigation: { nextLabel: 'Avançar', prevLabel: 'Voltar' },
} as const;
}
ApĂłs gerar os artefatos com o Angular Package Format (APF) via ng build @praxisui/stepper, vocĂŞ pode publicar no npm:
# Build de produção a partir do monorepo (recomendado)
cd ../../
npm run build:praxis-stepper
# Publicação manual (diretĂłrio de saĂda da lib)
cd dist/praxis-stepper
npm publish --access public
Observação: a publicação automatizada via CI está documentada no README do workspace e publica todas as libs em dist/ (incluindo @praxisui/stepper).
import { Component } from '@angular/core';
import { PraxisStepper } from '@praxisui/stepper';
@Component({
selector: 'app-cadastro',
standalone: true,
imports: [PraxisStepper],
template: `<praxis-stepper [config]="config"></praxis-stepper>`,
})
export class CadastroComponent {
config = {
linear: true,
steps: [
{
id: 'dados',
label: 'Dados do Cliente',
form: {
resourcePath: 'human-resources/funcionarios',
mode: 'create',
// ou forneça FormConfig diretamente
// config: { sections: [...] }
},
},
{
id: 'endereco',
label: 'Endereço',
form: { resourcePath: 'enderecos', mode: 'create' },
},
],
};
}
Validação: em modo linear, o avanço bloqueia quando o formulário da etapa atual é inválido. Para validação remota, forneça (serverValidate) ao componente.
<praxis-stepper
[config]="config"
[serverValidate]="validateStep"
></praxis-stepper>
validateStep = async ({ step, formGroup, formData }) => {
// Chamada remota opcional
const ok = await Promise.resolve(true);
return { ok };
};
PraxisStepper, PraxisStepperConfigEditorStepperMetadata, StepConfig, StepOrientation, StepHeaderPositionselectedIndexChange, selectionChange, widgetEvent, animationDoneprojects/praxis-stepper/src/public-api.tsEste guia explica como personalizar estilos (tokens) e Ăcones do cabeçalho do stepper em apps que consomem a lib @praxisui/stepper.
O Angular Material, por padrĂŁo, usa o conjunto “Material Icons” (ligature). ĂŤcones como repeat funcionam imediatamente. Já Ăcones como counter_1 pertencem ao “Material Symbols” e precisam de fonte + classe prĂłprias.
No seu app host (ex.: src/styles.scss ou projects/<app>/src/styles.scss), adicione:
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0');
.material-symbols-outlined {
font-family: 'Material Symbols Outlined';
font-weight: normal;
font-style: normal;
font-size: 24px; /* tamanho padrĂŁo do Ăcone */
line-height: 1;
display: inline-block;
-webkit-font-feature-settings: 'liga';
-webkit-font-smoothing: antialiased;
font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
Se preferir Rounded/Sharp, importe a famĂlia correspondente e use .material-symbols-rounded ou .material-symbols-sharp.
Na aba “Aparência” do editor:
repeat, looks_one).counter_1, replace_image etc.O componente aplica a classe (material-symbols-*) quando um conjunto Symbols Ă© escolhido, exibindo corretamente os nomes selecionados.
mat.stepper-overridesPara personalizações visuais (cores, tipografia, densidade), use os tokens do Angular Material. No editor, a aba “Aparência” permite editar tokens e copia um snippet SCSS pronto:
:root {
@include mat.stepper-overrides((
container-color: var(--md-sys-color-surface),
header-label-text-color: var(--md-sys-color-on-surface),
header-height: 48px,
));
}
Cole o snippet no arquivo de tema do seu app. VocĂŞ pode trocar :root por uma classe para escopo local.
header-height, header-label-text-size, header-label-text-weight).counter_1, replace_image exigem que o conjunto esteja corretamente importado e selecionado no editor.config = {
orientation: 'horizontal',
headerPosition: 'top',
steps: [
{ id: 's1', label: 'Dados' },
{ id: 's2', label: 'Confirmação' },
],
appearance: {
iconsSet: 'material-symbols-outlined',
icons: { number: 'counter_1', done: 'check', edit: 'edit', error: 'error' },
tokens: { 'header-height': '48px' },
},
};
Com isso, os Ăcones e estilos do cabeçalho do stepper serĂŁo aplicados como esperado.
@praxisui/stepper 0.0.x → Angular 20.xESM2022Apache-2.0 – veja o LICENSE empacotado com esta biblioteca ou o arquivo LICENSE na raiz do repositório.
FAQs
## đź”° Exemplos / Quickstart
We found that @praxisui/stepper demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.

Security News
Open source is under attack because of how much value it creates. It has been the foundation of every major software innovation for the last three decades. This is not the time to walk away from it.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.