Produktdesign für Unternehmen · Neue Ressource

Alaska Airlines Auro-Designsystem.

Entdecke Auro’s Alaska-Theme anhand echter semantischer Farb- und Typografie-Tokens, klassenbasierter Typografie und der nativen Flugkomponente. Zwei eigene Flugdaten zeigen lokale Filterung und Auswahl, ohne den Eindruck echter Airline-Angebote oder Buchungen zu erwecken.

OpenDesign-Leitfaden8 Kapitel39 ReferenzeinträgeOriginaler Anwendungsleitfaden
01

Alaska Airlines Auro-Designsystem-Interfacevorschau

Filtern Sie zwei fiktive Flugdaten nach Abflugzeitraum und wählen Sie ein Beispiel aus. Sie erhalten eine klare Rückmeldung, die nur für die Sitzung gilt.

Ursprüngliche Beispielauswahl für FlügeVollständiges Beispiel öffnen
Ursprüngliche Offline-HTML-Interpretation der Rollen des Alaska-Themes und der Hierarchie der Fluginformationen. Keine native Auro-Laufzeitumgebung, Markenschriften, Live-Verfügbarkeit oder Buchung. · Implementierungsreferenz
02

Alaska Airlines Auro-Designsystem – Designreferenz

Aktuelles öffentliches Alaska-Theme-CSS und Dokumentation der Auro-Komponenten. Abstände und Radien des ursprünglichen Beispiels sind ausdrücklich anwendungsspezifische Festlegungen, da eine vollständige aktuelle Primitive-Skala nicht verifiziert wurde. Veraltete Werte aus Auro Classic werden nicht mit der Alaska-Referenz vermischt.

Semantische Rollen von Alaska

Quelle
Name / RegelWert / KonfigurationVerwendung
--ds-basic-color-brand-primary#01426a Primäre Markenrolle.
--ds-basic-color-brand-primary-bold#00274a Ausgeprägte Markenrolle.
--ds-basic-color-brand-primary-muted#ebf3f9 Gedämpfte Markenoberfläche.
--ds-basic-color-brand-secondary#5de3f7 Sekundärer Akzent.
--ds-basic-color-brand-tertiary#a3cd6a Tertiärer Akzent.
--ds-basic-color-texticon-default#2a2a2a Lesetext.
--ds-basic-color-texticon-muted#676767 Unterstützender Text.
--ds-basic-color-border-default#959595 Standardbegrenzung.
--ds-basic-color-border-subtle#dddddd Dezente Trennung.
--ds-basic-color-status-success#447a1f Erfolgsrolle.
--ds-basic-color-status-error#e31f26 Fehlerrolle.

Aktionszustände

Quelle
Name / RegelWert / KonfigurationVerwendung
--ds-advanced-color-button-primary-background#01426a Flächenfüllung der primären Aktion.
--ds-advanced-color-button-primary-background-hover#00274a Flächenfüllung bei Zeigerkontakt.
--ds-advanced-color-button-primary-background-disabled#acc9e2 Flächenfüllung im deaktivierten Zustand.
--ds-advanced-color-button-primary-text#ffffff Primärer Text.
--ds-advanced-color-button-secondary-background#ffffff Sekundäre Flächenfüllung.
--ds-advanced-color-button-secondary-border#01426a Sekundäre Begrenzung.
--ds-advanced-color-state-focused#01426a Fokusrolle.

Typografierollen von Alaska

Quelle
Name / RegelWert / KonfigurationVerwendung
--ds-basic-type-family-bodyAS CircularSchriftfamilie für Fließtext.
--ds-basic-type-family-headingAS CircularSchriftfamilie für Überschriften.
--ds-basic-type-family-accentGood OTAkzentschriftfamilie.
--ds-basic-type-line-height-body1.625remZeilenhöhenrolle für Fließtext.
--ds-basic-type-line-height-body21.5remZweite Fließtextrolle.
--ds-basic-type-line-height-body31.25remDritte Fließtextrolle.
--ds-basic-type-line-height-heading1.3Zeilenhöhenverhältnis für Überschriften.
--ds-basic-type-weight-body450Schriftstärke für Fließtext.
--ds-basic-type-weight-heading300Schriftstärke für Überschriften.
--ds-basic-type-letter-spacing-accent0.05emLaufweite für Akzente.

Theme-Auswahl

Quelle
Name / RegelWert / KonfigurationVerwendung
Alaskadata-aag-theme="aag-theme-as"Aktuelles Alaska-Theme.
Alaska Classicaag-theme-ascNur für die Migration des Themes.
Hawaiianaag-theme-haSeparates Marken-Theme.
Atmosaag-theme-atmSeparates Marken-Theme.
Auro ClassicDeprecated legacy themeNur für Abwärtskompatibilität.

Flight-Komposition

Quelle
Name / RegelWert / KonfigurationVerwendung
flightsJSON array of flight labelsBeispiel ["DEMO 01"].
durationMinutesUrsprüngliche Beispieldauer: 150.
departureTime / arrivalTimeISO date-time with offsetLeiten Sie die Zeitzone nicht aus dem Stationscode ab.
departureStation / arrivalStationStation codesBeispiel SEA und LAX.
auro-flightlineChild custom elementVerknüpft die Darstellung von Abflug und Ankunft.
AuroFlight.register(name)Custom-name registrationVermeiden Sie Namenskollisionen bei mehreren Versionen.
03

Alaska Airlines Auro-Designsystem – vollständiger Leitfaden

Ein praktischer Leitfaden zur Auswahl, Anwendung und Überprüfung dieses Systems für ein echtes Interface.

DESIGN-alaska-auro.md

Umfassende Anleitung, Einstieg in die Implementierung und Links zu den Quellen.

Leitfaden herunterladen

Alaska Airlines Auro-Designsystem: Wählen Sie Alaska explizit aus, bevor Sie die Seite zusammenstellen

Aktuelle und Migrations-Themes sind nicht austauschbar

Auro unterstützt Alaska, Hawaiian und Atmos als separate Themes. Alaska Classic behält ältere visuelle Werte unter neueren Namen für die Migration bei; Auro Classic ist veraltet. Der bereitgestellte Eintrag importiert die Alaska-Datei CSS und wendet das Attribut aag-theme-as an.

Aus diesem OpenDesign-Leitfaden

Ein verschachtelter data-aag-theme-Wert kann das Theme eines Teilbereichs ändern. Diese Funktion ist für gemeinsam genutzte Plattformen nützlich. Sie bedeutet jedoch nicht, dass eine in Alaska-Farben gestaltete Oberfläche unbemerkt Typografie aus Hawaiian oder ältere Werte übernehmen sollte. Das Beispiel verwendet durchgehend ein einheitliches Theme.

Unterstützende Spezifikation lesen

Alaska Airlines Auro-Designsystem: Markenbetonung unterscheidet sich vom Lesetext

Verwenden Sie die semantische Vordergrundrolle

Die aktuelle Alaska-Tokenquelle verwendet #2a2a2a für Standardtext und #676767 für gedämpften Text. Die primäre Markenrolle ist #01426a, ihr kräftigeres Gegenstück #00274a. Diese Werte erfüllen unterschiedliche Aufgaben, auch wenn eine Überschrift und eine Schaltfläche denselben Bereich nutzen.

Das Beispiel verwendet dunkle neutrale Schrift für Fluginformationen und Blau zur interaktiven Hervorhebung. Mint- und Cyan-Akzente finden sich in der ursprünglichen Landschaftsillustration, nicht als undokumentiertes Statussignal. Ein ausgewählter Flug wird sowohl durch Text und Schaltflächenstatus als auch durch seine Umrandung gekennzeichnet.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Design-System Angewendete Typografieklassen

Vier Gruppen erfüllen unterschiedliche Zwecke

Auro unterteilt die aktuellen Typografierichtlinien in die Gruppen Body, Heading, Display und Accent. Heading ist für semantische Überschriften vorgesehen, während Display visuell hervorgehobenen Text bezeichnet, der in der Dokumenthierarchie keine Überschrift ist. Die Richtlinien empfehlen Klassen wie body-default und body-lg, statt für jedes Element alle Schriftregeln neu festzulegen.

In der Alaska-Dokumentation werden AS Circular für Fließtext und Überschriften sowie Good OT für Akzenttext genannt. Außerdem sind separate Rollen für Schriftstärke und Zeilenhöhe vorgesehen. Die Offline-Vorschau verwendet die dokumentierte Ersatzschriftfamilie, statt vorzugeben, diese Schriften seien lokal verfügbar.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Design-System Die Flugkomponente bildet eine strukturierte Reiseroute ab

Zeitangaben mit Zeitzonenoffset übergeben

auro-flight kombiniert Abflug-, Ankunfts- und Streckeninformationen mit auro-flightline. Im einfachen Beispiel werden ein Array mit Flugbezeichnungen, eine Dauer in Minuten, zwei Stationscodes und zwei ISO-Datumsangaben mit Uhrzeit übergeben. Der Beispielcode bewahrt explizite Offsets, statt mehrdeutige lokale Uhrzeiten zu übergeben.

Die beiden ursprünglichen Beispieldatensätze verwenden dieselben Abflug- und Ankunftszeitzonen, daher stimmen ihre Dauern von 150 Minuten mit den Uhrzeiten überein. Es handelt sich nicht um reale Flüge. Für eine Umsteigeverbindung in einer Produktivumgebung ist außerdem die dokumentierte Streckendarstellung erforderlich. Eine einfache Liste von Bezeichnungen sollte nicht den Eindruck einer bestätigten Verbindung erwecken.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Design-System Auswahlentscheidungen der Anwendung nicht in den Anzeigedaten abbilden

Ein sichtbares Ergebnis und ein ausgewähltes Ergebnis sind unterschiedliche Zustände

Im nativen Beispiel zeigt auro-flight jeden Datensatz an. Eine gewöhnliche Schaltfläche übernimmt die lokale Auswahl. So wird kein Auswahl-API in der Anzeigekomponente erfunden. Die Anwendung verwaltet die ausgewählte Kennung und gibt sie über aria-pressed wieder.

Beim Ändern des Abflugzeitfilters werden Auswahl und Meldung zurückgesetzt. Andernfalls könnte die Benutzeroberfläche den Eindruck erwecken, eine ausgeblendete Option sei weiterhin ausgewählt. Die Vorschau macht das Ergebnis deutlich: Die Auswahl gilt nur für diese Seite; eine Buchung wurde nicht vorgenommen.

  1. Die ursprünglichen Datensätze nach Abflugzeitraum filtern.
  2. Die verbleibenden Fluginformationen unverändert darstellen.
  3. Ein sichtbares Beispiel anhand seiner stabilen Kennung auswählen.
  4. Die Auswahl beim Ändern des Filters zurücksetzen.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Design-System Typografische Grundlagen zusammen mit dem Komponentencode laden

Tokens, WCSS und Elemente erfüllen unterschiedliche Aufgaben

Design-Tokens liefern Werte. Web Core Style Sheets liefern grundlegende Stile und Typografieklassen. Das Flugpaket registriert das benutzerdefinierte Element. Nur einen dieser Bereiche einzurichten, ergibt noch keine vollständig markenkonforme Seite.

WCSS ist eine flexibel zusammenstellbare Grundlage und keine einzelne Quelldatei für alle denkbaren Stile. In Version 12 wurde beim Sass-Pfad @import durch @use und @forward ersetzt. Das Beispiel verwendet das dokumentierte, vorkompilierte Alaska-Stylesheet, statt veraltete Sass-Anweisungen mit der aktuellen Paketstruktur zu vermischen.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Designsystem Für Steuerelemente und Statusmeldungen aussagekräftige Bezeichnungen verwenden

Das Ergebnis nicht ausschließlich über Farbe vermitteln

Der Filter hat eine sichtbare Beschriftung, und jede Auswahlaktion benennt ihr Ergebnis. Eine Statusregion gibt das ausgewählte Beispiel als Text aus. Abflug und Ankunft bleiben auch ohne Zierlinie oder Landschaft verständlich.

Für eine Erweiterung zur Erfassung von Reisedaten unterstützt Auro Input die Slots label und helpText. Die Validierung erfolgt standardmäßig beim Verlassen des Felds und lässt sich mit validateOnInput oder noValidate anpassen. Beim Löschen wird der Wert auf undefined zurückgesetzt. Diese Vorgaben sollten beachtet werden, statt anzunehmen, jede Formularkomponente liefere denselben Leerwert zurück.

  • Zeit- und Stationsangaben als lesbaren Text beibehalten.
  • Den Filter unabhängig von der Ergebnisanzahl beschriften.
  • Die Statusregion für eine tatsächliche lokale Auswahl verwenden.
  • Bei einer sofortigen Zustandsänderung keinen ausstehenden Ladevorgang anzeigen.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Design-System Alternative Namen nur registrieren, wenn tatsächlich mehrere Versionen parallel verwendet werden

Komponentenklasse und globale Registrierung voneinander trennen

Der Standardimport des Flugpakets registriert auro-flight automatisch. Über den Eintrag /class wird AuroFlight für explizite Aufrufe von register(name) bereitgestellt, wenn mehrere Versionen im selben Dokument unter unterschiedlichen Namen für benutzerdefinierte Elemente verwendet werden müssen. Ein benutzerdefinierter Name muss einen Bindestrich enthalten.

Diese Funktion dient der Konfliktverwaltung und ist für eine gewöhnliche Seite mit nur einer Version nicht erforderlich. Für einfache Beispiele den Standardnamen verwenden, Abhängigkeiten über eine Sperrdatei festschreiben und Migrationen prüfen, bevor eine Hauptversion ersetzt wird. Die ursprünglichen Abstände und Radien der Vorschau bleiben Entscheidungen der Anwendung. Diese Seite weist sie nicht als verifizierte Auro-Grundelemente aus.

Unterstützende Spezifikation lesen

Alaska Airlines Auro Designsystem Komponentenbeispiele

Vollständige, eigenständige interaktive Demo

Das vollständige Dokument als index.html speichern und in einem Browser öffnen. Ursprüngliche Offline-HTML-Interpretation der Alaska-Themenrollen und der Hierarchie der Fluginformationen. Keine native Auro-Laufzeitumgebung, keine Markenschriften, keine Live-Flugdaten und keine Buchungsmöglichkeit.

html
<!doctype html><html lang="en"><meta charset="utf-8"><meta name="viewport" content="width=device-width"><title>Original flight choices</title><style>*{box-sizing:border-box}body{margin:0;color:#2a2a2a;background:#fff;font:16px/1.625 system-ui,-apple-system,sans-serif}button,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible{outline:3px solid #01426a;outline-offset:4px}header{padding:20px 32px;display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #ddd}header b{color:#01426a;letter-spacing:2px;font-size:14px}header small{color:#676767}.hero{background:#ebf3f9;position:relative;overflow:hidden}.hero-inner{max-width:1100px;margin:auto;padding:36px 32px 48px;position:relative;z-index:1}.hero h1{font-size:42px;line-height:1.3;font-weight:300;margin:0 0 12px}.hero p{max-width:480px;margin:0;color:#676767}.mountain{position:absolute;right:-20px;bottom:-25px;width:43%;height:180px;background:#cfe0ef;clip-path:polygon(0 100%,35% 10%,55% 55%,75% 0,100% 100%)}.mountain:after{content:'';position:absolute;inset:50px -15px 0 45px;background:#a3cd6a;clip-path:polygon(0 100%,45% 10%,100% 100%)}main{max-width:1100px;margin:auto;padding:32px}.toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.toolbar label{display:block;font-size:14px;margin-bottom:8px}select{padding:10px 40px 10px 12px;border:1px solid #959595;border-radius:8px;background:#fff;color:#2a2a2a}#count{font-size:14px;color:#676767;margin:0}.flight{border:1px solid #ddd;border-radius:12px;padding:24px;margin-bottom:16px}.flight.selected{border:2px solid #01426a;padding:23px;background:#f7fbfd}.flight-head{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:#676767;margin-bottom:24px}.sample-tag{background:#ebf3f9;color:#01426a;padding:0 8px;border-radius:4px}.flight-body{display:grid;grid-template-columns:1fr 160px 1fr auto;gap:24px;align-items:center}.station b{display:block;font-size:28px;line-height:1.3;font-weight:400}.station span{display:block;font-size:14px;color:#676767}.line{text-align:center;color:#676767;font-size:12px}.line i{display:block;height:1px;background:#00274a;position:relative;margin:12px 0}.line i:before,.line i:after{content:'';width:7px;height:7px;background:#fff;border:1px solid #00274a;border-radius:50%;position:absolute;top:-3px;left:0}.line i:after{left:auto;right:0}.flight button{border:0;border-radius:8px;background:#01426a;color:#fff;padding:12px 20px;white-space:nowrap}.flight button:hover{background:#00274a}.selected button{background:#fff;border:1px solid #01426a;color:#01426a}.summary{background:#ebf3f9;border-left:4px solid #01426a;padding:16px 24px;margin-top:24px}.summary:empty{display:none}footer{font-size:12px;line-height:1.5;color:#676767;margin-top:24px}@media(max-width:700px){header{padding:16px;gap:16px}header small{max-width:140px}.hero-inner{padding:28px 16px 40px}.hero h1{font-size:32px}.hero p{max-width:80%}.mountain{opacity:.45;width:70%}main{padding:24px 16px}.toolbar{gap:16px}.flight{padding:20px}.flight.selected{padding:19px}.flight-body{grid-template-columns:1fr 80px 1fr;gap:12px}.flight button{grid-column:1/-1;width:100%;margin-top:8px}.station b{font-size:22px}.flight-head{font-size:12px}.station span{font-size:12px}select{max-width:185px;padding-right:24px}}
</style><header><b>JOURNEY EXPLORER</b><small>Independent Auro interpretation</small></header><div class="hero"><div class="mountain" aria-hidden="true"></div><div class="hero-inner"><h1>A little closer to your next adventure.</h1><p>Explore two original flight examples and keep a choice for this page session.</p></div></div><main><div class="toolbar"><div><label for="period">Departure period</label><select id="period"><option value="all">All times</option><option value="morning">Morning</option><option value="evening">Evening</option></select></div><p id="count" aria-live="polite"></p></div><section id="results" aria-label="Sample flights"></section><p id="selection" class="summary" role="status"></p><footer>Fictional flights for interface exploration. No real schedule, fare, seat availability or booking. Times use the same sample UTC−07:00 offset. Original landscape artwork.</footer></main><script>const data=[{id:'am',name:'Morning sample',number:'DEMO 01',dep:'08:00',arr:'10:30',period:'morning'},{id:'pm',name:'Evening sample',number:'DEMO 02',dep:'17:00',arr:'19:30',period:'evening'}];let selected='';function render(){const period=document.querySelector('#period').value,visible=data.filter(x=>period==='all'||x.period===period);document.querySelector('#count').textContent=`${visible.length} sample ${visible.length===1?'flight':'flights'}`;document.querySelector('#results').innerHTML=visible.map(x=>`<article class="flight ${selected===x.id?'selected':''}"><div class="flight-head"><span>${x.name} · ${x.number}</span><span class="sample-tag">Original sample</span></div><div class="flight-body"><div class="station"><b>${x.dep}</b><span>SEA · Seattle</span></div><div class="line">2h 30m<i></i>Nonstop study</div><div class="station"><b>${x.arr}</b><span>LAX · Los Angeles</span></div><button type="button" data-id="${x.id}" aria-pressed="${selected===x.id}">${selected===x.id?'Selected sample':'Select this sample'}</button></div></article>`).join('');document.querySelectorAll('[data-id]').forEach(button=>button.onclick=()=>{selected=button.dataset.id;const x=data.find(x=>x.id===selected);document.querySelector('#selection').textContent=`${x.name} selected: ${x.dep} SEA → ${x.arr} LAX. No booking made.`;render();document.querySelector(`[data-id="${selected}"]`).focus()})}document.querySelector('#period').onchange=()=>{selected='';document.querySelector('#selection').textContent='';render()};render();</script></html>

Code-Referenz

  • Die Flüge sind fiktive, fest vorgegebene Datensätze. Das native Auro-Beispiel verwendet Eigenschaften von auro-flight und Alaska-Themenressourcen. Dieses HTML-Dokument fragt keine Verfügbarkeit ab.

Native Fluganzeige mit ursprünglicher Auswahl durch die Anwendung

Jedes auro-flight erhält Datumsangaben mit Zeitzonenoffset, Stationscodes und ein JSON-Array mit Flugbezeichnungen. Ein natives Auswahlfeld und eine Schaltfläche ergänzen die Anzeige um lokale Filter- und Auswahlzustände, die außerhalb der Anzeigekomponente verwaltet werden.

javascript
// src/main.js in a Vite vanilla project
// npm install @aurodesignsystem/auro-flight @aurodesignsystem/design-tokens @aurodesignsystem/webcorestylesheets
import '@aurodesignsystem/design-tokens/dist/themes/alaska/CSSCustomProperties--alaska.css';
import '@aurodesignsystem/webcorestylesheets/dist/bundled/themes/alaska.global.min.css';
import '@aurodesignsystem/auro-flight';
import './style.css';
document.documentElement.setAttribute('data-aag-theme','aag-theme-as');
const flights=[
 {id:'sample-am',label:'Morning sample',number:'DEMO 01',departure:'2030-06-15T08:00:00-07:00',arrival:'2030-06-15T10:30:00-07:00',period:'morning'},
 {id:'sample-pm',label:'Evening sample',number:'DEMO 02',departure:'2030-06-15T17:00:00-07:00',arrival:'2030-06-15T19:30:00-07:00',period:'evening'}
];
let selected='';
document.querySelector('#app').innerHTML=`<main><h1>Explore sample flights</h1>
<p class="body-default">Original records, not a live schedule or booking service.</p>
<label for="period">Departure period</label><select id="period"><option value="all">All times</option><option value="morning">Morning</option><option value="evening">Evening</option></select>
<div id="results"></div><p id="selection" role="status"></p></main>`;
function render(){const period=document.querySelector('#period').value;const target=document.querySelector('#results');target.replaceChildren();
 flights.filter(f=>period==='all'||f.period===period).forEach(f=>{
 const article=document.createElement('article'), title=document.createElement('h2');title.textContent=f.label;
 const component=document.createElement('auro-flight');component.setAttribute('flights',JSON.stringify([f.number]));component.setAttribute('duration','150');component.setAttribute('departureTime',f.departure);component.setAttribute('arrivalTime',f.arrival);component.setAttribute('departureStation','SEA');component.setAttribute('arrivalStation','LAX');component.append(document.createElement('auro-flightline'));
 const button=document.createElement('button');button.type='button';button.textContent=selected===f.id?'Selected sample':'Select this sample';button.setAttribute('aria-pressed',String(selected===f.id));button.onclick=()=>{selected=f.id;document.querySelector('#selection').textContent=f.label+' selected for this page only. No booking made.';render();};
 article.append(title,component,button);target.append(article);
 });
}
document.querySelector('#period').onchange=()=>{selected='';document.querySelector('#selection').textContent='';render();};render();

/* src/style.css — application layout, not official size tokens */
main{max-width:64rem;margin:auto;padding:24px}
article{padding:24px;margin-block:16px;border:1px solid var(--ds-basic-color-border-subtle);border-radius:12px}
button{font:inherit;background:var(--ds-advanced-color-button-primary-background);color:var(--ds-advanced-color-button-primary-text);padding:12px 24px;border:0;border-radius:8px;margin-top:16px}
button:hover{background:var(--ds-advanced-color-button-primary-background-hover)}
button:focus-visible,select:focus-visible{outline:3px solid var(--ds-advanced-color-state-focused);outline-offset:4px}
select{font:inherit;padding:12px;margin:8px 0 16px}

Code-Referenz

  • Die Auswahlschaltfläche ist Anwendungslogik und kein erfundenes auro-flight-Ereignis.
  • Beim Ändern des Zeitraums wird ein zuvor ausgewählter Datensatz abgewählt, damit ausgeblendete Auswahlen nicht irreführen.
  • Alle Flugnummern, Datums- und Uhrzeitangaben im Beispiel sind fiktiv.
04

Alaska Airlines Auro Design-System Agenteneinrichtung

Ausgangspunkt für die Implementierung

Vollständiger Anwendungseinstieg und CSS für ein bestehendes Vite-Vanilla-Projekt. Behalte die installierten Versionen in der Projektsperrdatei bei. Die native Kompilierung der Komponenten wurde hier nicht überprüft; das eingebettete Beispiel verwendet ein unabhängiges, offline verfügbares HTML. AS Circular und Good OT sind nicht enthalten.

javascript
// src/main.js in a Vite vanilla project
// npm install @aurodesignsystem/auro-flight @aurodesignsystem/design-tokens @aurodesignsystem/webcorestylesheets
import '@aurodesignsystem/design-tokens/dist/themes/alaska/CSSCustomProperties--alaska.css';
import '@aurodesignsystem/webcorestylesheets/dist/bundled/themes/alaska.global.min.css';
import '@aurodesignsystem/auro-flight';
import './style.css';
document.documentElement.setAttribute('data-aag-theme','aag-theme-as');
const flights=[
 {id:'sample-am',label:'Morning sample',number:'DEMO 01',departure:'2030-06-15T08:00:00-07:00',arrival:'2030-06-15T10:30:00-07:00',period:'morning'},
 {id:'sample-pm',label:'Evening sample',number:'DEMO 02',departure:'2030-06-15T17:00:00-07:00',arrival:'2030-06-15T19:30:00-07:00',period:'evening'}
];
let selected='';
document.querySelector('#app').innerHTML=`<main><h1>Explore sample flights</h1>
<p class="body-default">Original records, not a live schedule or booking service.</p>
<label for="period">Departure period</label><select id="period"><option value="all">All times</option><option value="morning">Morning</option><option value="evening">Evening</option></select>
<div id="results"></div><p id="selection" role="status"></p></main>`;
function render(){const period=document.querySelector('#period').value;const target=document.querySelector('#results');target.replaceChildren();
 flights.filter(f=>period==='all'||f.period===period).forEach(f=>{
 const article=document.createElement('article'), title=document.createElement('h2');title.textContent=f.label;
 const component=document.createElement('auro-flight');component.setAttribute('flights',JSON.stringify([f.number]));component.setAttribute('duration','150');component.setAttribute('departureTime',f.departure);component.setAttribute('arrivalTime',f.arrival);component.setAttribute('departureStation','SEA');component.setAttribute('arrivalStation','LAX');component.append(document.createElement('auro-flightline'));
 const button=document.createElement('button');button.type='button';button.textContent=selected===f.id?'Selected sample':'Select this sample';button.setAttribute('aria-pressed',String(selected===f.id));button.onclick=()=>{selected=f.id;document.querySelector('#selection').textContent=f.label+' selected for this page only. No booking made.';render();};
 article.append(title,component,button);target.append(article);
 });
}
document.querySelector('#period').onchange=()=>{selected='';document.querySelector('#selection').textContent='';render();};render();

/* src/style.css — application layout, not official size tokens */
main{max-width:64rem;margin:auto;padding:24px}
article{padding:24px;margin-block:16px;border:1px solid var(--ds-basic-color-border-subtle);border-radius:12px}
button{font:inherit;background:var(--ds-advanced-color-button-primary-background);color:var(--ds-advanced-color-button-primary-text);padding:12px 24px;border:0;border-radius:8px;margin-top:16px}
button:hover{background:var(--ds-advanced-color-button-primary-background-hover)}
button:focus-visible,select:focus-visible{outline:3px solid var(--ds-advanced-color-state-focused);outline-offset:4px}
select{font:inherit;padding:12px;margin:8px 0 16px}

Ein Prompt für dein Projekt

Agenten-Prompt
Stelle eine Auro Alaska-Flugliste mit explizitem aag-theme-as, Alaska-Token CSS, WCSS-Typografie und nativen auro-flight-Feldern zusammen. Achte auf stimmige ISO-Zeitzonenversätze und Flugdauern. Ergänze anwendungseigene Filter- und Auswahlfunktionen, ohne nicht dokumentierte Komponentenereignisse zu erfinden. Entferne ausgeblendete Auswahlen und kennzeichne jeden Eintrag als Beispieldaten.
05

Quellen und Geltungsbereich des Alaska Airlines Auro-Designsystems

Unabhängige OpenDesign-Referenz. Alle Flugnummern, Datums- und Zeitangaben sind fiktiv; sie stellen keinen Flugplan, Tarif, keine Verfügbarkeit und keine Buchung einer Fluggesellschaft dar. Für den Abstand in der Anwendung wird keine offizielle Token-Skala beansprucht.