@luigisbox/luma 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/LICENSE.md +90 -0
  2. package/README.md +488 -2
  3. package/a11y/audit.mjs +735 -0
  4. package/a11y/axe.mjs +73 -0
  5. package/a11y/report.mjs +347 -0
  6. package/a11y/run.mjs +256 -0
  7. package/a11y/wcag.mjs +233 -0
  8. package/bin/config.mjs +60 -0
  9. package/bin/luma.mjs +99 -0
  10. package/bin/paths.mjs +11 -0
  11. package/bin/tools.mjs +43 -0
  12. package/build/baseline.d.mts +8 -0
  13. package/build/baseline.mjs +167 -0
  14. package/build/tooling.mjs +102 -0
  15. package/build/vite.mjs +498 -0
  16. package/chrome/run.mjs +145 -0
  17. package/docs/ACCESSIBILITY.md +502 -0
  18. package/docs/INTEGRATION-PERFORMANCE.md +214 -0
  19. package/docs/PARITY.md +946 -0
  20. package/footprint/model.mjs +184 -0
  21. package/footprint/run.mjs +331 -0
  22. package/package.json +58 -4
  23. package/parity/alignment.mjs +109 -0
  24. package/parity/archive.mjs +223 -0
  25. package/parity/args.mjs +137 -0
  26. package/parity/behaviour.mjs +379 -0
  27. package/parity/compare.mjs +985 -0
  28. package/parity/engine.mjs +848 -0
  29. package/parity/hints.mjs +132 -0
  30. package/parity/hold.mjs +54 -0
  31. package/parity/init.mjs +703 -0
  32. package/parity/map.mjs +640 -0
  33. package/parity/owner.mjs +170 -0
  34. package/parity/pairing.mjs +110 -0
  35. package/parity/pixels.mjs +33 -0
  36. package/parity/probe.mjs +1239 -0
  37. package/parity/report.mjs +236 -0
  38. package/parity/run.mjs +267 -0
  39. package/snippet/early-hold.js +64 -0
  40. package/snippet/early-hold.min.js +1 -0
  41. package/src/api/ai.ts +98 -0
  42. package/src/api/index.ts +87 -0
  43. package/src/api/token-key.ts +42 -0
  44. package/src/api/token.ts +311 -0
  45. package/src/core/a11y-keys.ts +60 -0
  46. package/src/core/a11y.ts +160 -0
  47. package/src/core/boot-state.ts +6 -0
  48. package/src/core/color.ts +42 -0
  49. package/src/core/context.ts +108 -0
  50. package/src/core/early-rules.ts +96 -0
  51. package/src/core/entries.ts +25 -0
  52. package/src/core/fold.ts +7 -0
  53. package/src/core/health.ts +26 -0
  54. package/src/core/hold.ts +74 -0
  55. package/src/core/i18n.ts +66 -0
  56. package/src/core/image-load.ts +102 -0
  57. package/src/core/image-tags.ts +26 -0
  58. package/src/core/images.ts +170 -0
  59. package/src/core/integration.ts +120 -0
  60. package/src/core/listings.ts +100 -0
  61. package/src/core/locales.ts +14 -0
  62. package/src/core/own.ts +49 -0
  63. package/src/core/page.ts +14 -0
  64. package/src/core/prefetch.ts +88 -0
  65. package/src/core/recommenders.ts +166 -0
  66. package/src/core/reconciler.ts +397 -0
  67. package/src/core/result.ts +73 -0
  68. package/src/core/routes.ts +115 -0
  69. package/src/core/scheduler.ts +83 -0
  70. package/src/core/sense.ts +107 -0
  71. package/src/core/speculation.ts +59 -0
  72. package/src/core/stash.ts +38 -0
  73. package/src/core/storage.ts +45 -0
  74. package/src/core/styles.ts +106 -0
  75. package/src/core/support.ts +12 -0
  76. package/src/core/takeover.ts +220 -0
  77. package/src/core/templates.ts +74 -0
  78. package/src/core/turbo.ts +64 -0
  79. package/src/core/url.ts +164 -0
  80. package/src/core/widget-inits.ts +40 -0
  81. package/src/env.d.ts +3 -0
  82. package/src/lit.ts +11 -0
  83. package/src/locales/cs.json +94 -0
  84. package/src/locales/de.json +88 -0
  85. package/src/locales/en.json +88 -0
  86. package/src/main.ts +443 -0
  87. package/src/types.ts +760 -0
  88. package/src/widgets/autocomplete/index.ts +1367 -0
  89. package/src/widgets/autocomplete/style-autocomplete.css +266 -0
  90. package/src/widgets/autocomplete/template-autocomplete-box.ts +61 -0
  91. package/src/widgets/autocomplete/template-autocomplete-empty.ts +53 -0
  92. package/src/widgets/autocomplete/template-autocomplete-result-default.ts +82 -0
  93. package/src/widgets/autocomplete/template-autocomplete-sheet.ts +74 -0
  94. package/src/widgets/listing/element.ts +1769 -0
  95. package/src/widgets/listing/flow.ts +30 -0
  96. package/src/widgets/listing/instant.ts +133 -0
  97. package/src/widgets/listing/intent.ts +193 -0
  98. package/src/widgets/listing/query.ts +298 -0
  99. package/src/widgets/listing/stash.ts +97 -0
  100. package/src/widgets/listing/state.ts +131 -0
  101. package/src/widgets/listing/view.ts +257 -0
  102. package/src/widgets/plp/index.ts +11 -0
  103. package/src/widgets/plp/route.ts +263 -0
  104. package/src/widgets/recommender/index.ts +250 -0
  105. package/src/widgets/recommender/style-recommender.css +26 -0
  106. package/src/widgets/recommender/template-recommender-box-default.ts +11 -0
  107. package/src/widgets/recommender/template-recommender-popup.ts +12 -0
  108. package/src/widgets/recommender/template-recommender-result-default.ts +10 -0
  109. package/src/widgets/search/assets.ts +7 -0
  110. package/src/widgets/search/first.ts +15 -0
  111. package/src/widgets/search/form-url.ts +59 -0
  112. package/src/widgets/search/in-place.ts +226 -0
  113. package/src/widgets/search/index.ts +16 -0
  114. package/src/widgets/search/range.ts +260 -0
  115. package/src/widgets/search/route.ts +32 -0
  116. package/src/widgets/search/speculate.ts +202 -0
  117. package/src/widgets/search/style-search.css +65 -0
  118. package/src/widgets/search/template-search-box.ts +17 -0
  119. package/src/widgets/search/template-search-facets-default.ts +73 -0
  120. package/src/widgets/search/template-search-header.ts +14 -0
  121. package/src/widgets/search/template-search-pagination.ts +12 -0
  122. package/src/widgets/search/template-search-range-default.ts +48 -0
  123. package/src/widgets/search/template-search-result-default.ts +13 -0
  124. package/src/widgets/search/template-search-results-default.ts +8 -0
  125. package/tasks/model.mjs +116 -0
  126. package/tasks/run.mjs +305 -0
  127. package/tsconfig.json +14 -0
@@ -0,0 +1,94 @@
1
+ {
2
+ "_name": "Čeština",
3
+ "autocomplete": {
4
+ "showAllResults": "Zobrazit všechny výsledky",
5
+ "empty": "Pro „{query}“ jsme nic nenašli",
6
+ "types": {
7
+ "product": "Produkty",
8
+ "category": "Kategorie",
9
+ "brand": "Značky",
10
+ "query": "Návrhy",
11
+ "article": "Články"
12
+ },
13
+ "label": "Návrhy vyhledávání",
14
+ "count": "Návrhy: {count}",
15
+ "phrases": "Fráze",
16
+ "topProduct": "Top produkt",
17
+ "products": "Produkty",
18
+ "showAllProducts": "Zobrazit všechny produkty",
19
+ "emptyHint": "Zkontrolujte, jestli v hledání není překlep, nebo zkuste kratší či obecnější slovo.",
20
+ "tryLabel": "Zkuste třeba",
21
+ "browseLabel": "Nebo projděte",
22
+ "fallbackTitle": "Nejprodávanější",
23
+ "fallbackNote": "Tipy z celého obchodu, nesouvisí s vaším hledáním",
24
+ "help": {
25
+ "title": "Potřebujete poradit?",
26
+ "phone": "",
27
+ "hours": ""
28
+ },
29
+ "inStock": "Skladem",
30
+ "was": "Původně",
31
+ "closeSearch": "Zavřít hledání",
32
+ "clear": "Smazat",
33
+ "tabs": "Typy výsledků",
34
+ "call": "Zavolat",
35
+ "poweredBy": "Powered by Luigi’s Box",
36
+ "specs": {}
37
+ },
38
+ "search": {
39
+ "results": {
40
+ "one": "{count} výsledek pro „{query}“",
41
+ "few": "{count} výsledky pro „{query}“",
42
+ "many": "{count} výsledku pro „{query}“",
43
+ "other": "{count} výsledků pro „{query}“"
44
+ },
45
+ "empty": "Pro „{query}“ jsme nic nenašli.",
46
+ "error": "Vyhledávání se nepodařilo načíst.",
47
+ "sort": "Řadit:",
48
+ "filters": "Filtry",
49
+ "sorts": {
50
+ "": "Relevance"
51
+ },
52
+ "facets": {},
53
+ "more": "Zobrazit další",
54
+ "label": "Výsledky vyhledávání",
55
+ "shown": "Zobrazeno {shown} z {total}",
56
+ "drawer": "Filtry",
57
+ "removeFilter": "Odebrat filtr: {label}",
58
+ "chosen": "Vybrané filtry",
59
+ "clearAll": "Zrušit vše",
60
+ "facetSearch": "Hledat v: {facet}",
61
+ "facetSearchPlaceholder": "Hledat",
62
+ "facetMatches": {
63
+ "one": "{count} shoda",
64
+ "few": "{count} shody",
65
+ "many": "{count} shody",
66
+ "other": "{count} shod"
67
+ },
68
+ "rangeMin": "{facet}: minimum",
69
+ "rangeMax": "{facet}: maximum",
70
+ "rangeFrom": "{facet} od",
71
+ "rangeTo": "{facet} do",
72
+ "rangeSeparator": "do"
73
+ },
74
+ "plp": {
75
+ "results": {
76
+ "one": "{count} produkt",
77
+ "few": "{count} produkty",
78
+ "many": "{count} produktu",
79
+ "other": "{count} produktů"
80
+ },
81
+ "empty": "V této kategorii teď nic nenajdete.",
82
+ "error": "Produkty se nepodařilo načíst.",
83
+ "sorts": {
84
+ "": "Doporučené"
85
+ },
86
+ "flags": {},
87
+ "label": "Produkty"
88
+ },
89
+ "recommender": {
90
+ "close": "Zavřít",
91
+ "title": "Doporučujeme"
92
+ },
93
+ "contrast": "Režim vysokého kontrastu"
94
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "_name": "Deutsch",
3
+ "autocomplete": {
4
+ "showAllResults": "Alle Ergebnisse anzeigen",
5
+ "empty": "Keine Treffer für „{query}“",
6
+ "types": {
7
+ "product": "Produkte",
8
+ "category": "Kategorien",
9
+ "brand": "Marken",
10
+ "query": "Vorschläge",
11
+ "article": "Artikel"
12
+ },
13
+ "label": "Suchvorschläge",
14
+ "count": "Vorschläge: {count}",
15
+ "phrases": "Suchbegriffe",
16
+ "topProduct": "Top-Produkt",
17
+ "products": "Produkte",
18
+ "showAllProducts": "Alle Produkte anzeigen",
19
+ "emptyHint": "Prüfen Sie die Schreibweise oder versuchen Sie ein kürzeres oder allgemeineres Wort.",
20
+ "tryLabel": "Versuchen Sie",
21
+ "browseLabel": "Oder stöbern Sie",
22
+ "fallbackTitle": "Bestseller",
23
+ "fallbackNote": "Tipps aus dem ganzen Shop, keine Ergebnisse Ihrer Suche",
24
+ "help": {
25
+ "title": "Brauchen Sie Beratung?",
26
+ "phone": "",
27
+ "hours": ""
28
+ },
29
+ "inStock": "Auf Lager",
30
+ "was": "Statt",
31
+ "closeSearch": "Suche schließen",
32
+ "clear": "Löschen",
33
+ "tabs": "Ergebnisarten",
34
+ "call": "Anrufen",
35
+ "poweredBy": "Powered by Luigi’s Box",
36
+ "specs": {}
37
+ },
38
+ "search": {
39
+ "results": {
40
+ "one": "{count} Artikel für „{query}“",
41
+ "other": "{count} Artikel für „{query}“"
42
+ },
43
+ "empty": "Keine Treffer für „{query}“.",
44
+ "error": "Die Suche konnte nicht geladen werden.",
45
+ "sort": "Sortieren:",
46
+ "filters": "Filtern",
47
+ "sorts": {
48
+ "": "Relevanz"
49
+ },
50
+ "facets": {},
51
+ "more": "Mehr anzeigen",
52
+ "label": "Suchergebnisse",
53
+ "shown": "{shown} von {total} angezeigt",
54
+ "drawer": "Filter",
55
+ "removeFilter": "Filter entfernen: {label}",
56
+ "chosen": "Ausgewählte Filter",
57
+ "clearAll": "Alle entfernen",
58
+ "facetSearch": "In {facet} suchen",
59
+ "facetSearchPlaceholder": "Suchen",
60
+ "facetMatches": {
61
+ "one": "{count} Treffer",
62
+ "other": "{count} Treffer"
63
+ },
64
+ "rangeMin": "{facet}: Minimum",
65
+ "rangeMax": "{facet}: Maximum",
66
+ "rangeFrom": "{facet} von",
67
+ "rangeTo": "{facet} bis",
68
+ "rangeSeparator": "bis"
69
+ },
70
+ "plp": {
71
+ "results": {
72
+ "one": "{count} Artikel",
73
+ "other": "{count} Artikel"
74
+ },
75
+ "empty": "In dieser Kategorie gibt es gerade keine Artikel.",
76
+ "error": "Die Artikel konnten nicht geladen werden.",
77
+ "sorts": {
78
+ "": "Empfohlen"
79
+ },
80
+ "flags": {},
81
+ "label": "Artikel"
82
+ },
83
+ "recommender": {
84
+ "close": "Schließen",
85
+ "title": "Empfehlungen für Sie"
86
+ },
87
+ "contrast": "Hoher Kontrast"
88
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "_name": "English",
3
+ "autocomplete": {
4
+ "showAllResults": "See all results",
5
+ "empty": "No results for “{query}”",
6
+ "types": {
7
+ "product": "Products",
8
+ "category": "Categories",
9
+ "brand": "Brands",
10
+ "query": "Suggestions",
11
+ "article": "Articles"
12
+ },
13
+ "label": "Search suggestions",
14
+ "count": "Suggestions: {count}",
15
+ "phrases": "Phrases",
16
+ "topProduct": "Top product",
17
+ "products": "Products",
18
+ "showAllProducts": "Show all products",
19
+ "emptyHint": "Check the spelling, or try a shorter or more general word.",
20
+ "tryLabel": "Try",
21
+ "browseLabel": "Or browse",
22
+ "fallbackTitle": "Bestsellers",
23
+ "fallbackNote": "Picks from the whole shop, not results for your search",
24
+ "help": {
25
+ "title": "Need advice?",
26
+ "phone": "",
27
+ "hours": ""
28
+ },
29
+ "inStock": "In stock",
30
+ "was": "Was",
31
+ "closeSearch": "Close search",
32
+ "clear": "Clear",
33
+ "tabs": "Result types",
34
+ "call": "Call",
35
+ "poweredBy": "Powered by Luigi’s Box",
36
+ "specs": {}
37
+ },
38
+ "search": {
39
+ "results": {
40
+ "one": "{count} result for “{query}”",
41
+ "other": "{count} results for “{query}”"
42
+ },
43
+ "empty": "No results for “{query}”.",
44
+ "error": "Search could not be loaded.",
45
+ "sort": "Sort by",
46
+ "filters": "Filter by",
47
+ "sorts": {
48
+ "": "Relevance"
49
+ },
50
+ "facets": {},
51
+ "more": "Show more",
52
+ "label": "Search results",
53
+ "shown": "Showing {shown} of {total}",
54
+ "drawer": "Filters",
55
+ "removeFilter": "Remove filter: {label}",
56
+ "chosen": "Selected filters",
57
+ "clearAll": "Clear all",
58
+ "facetSearch": "Search in {facet}",
59
+ "facetSearchPlaceholder": "Search",
60
+ "facetMatches": {
61
+ "one": "{count} match",
62
+ "other": "{count} matches"
63
+ },
64
+ "rangeMin": "{facet}: minimum",
65
+ "rangeMax": "{facet}: maximum",
66
+ "rangeFrom": "{facet} from",
67
+ "rangeTo": "{facet} to",
68
+ "rangeSeparator": "to"
69
+ },
70
+ "plp": {
71
+ "results": {
72
+ "one": "{count} product",
73
+ "other": "{count} products"
74
+ },
75
+ "empty": "No products in this category right now.",
76
+ "error": "Products could not be loaded.",
77
+ "sorts": {
78
+ "": "Recommended"
79
+ },
80
+ "flags": {},
81
+ "label": "Products"
82
+ },
83
+ "recommender": {
84
+ "close": "Close",
85
+ "title": "Recommended for you"
86
+ },
87
+ "contrast": "High-contrast mode"
88
+ }