@schalkneethling/miyagi-core 4.0.2

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 (138) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +43 -0
  3. package/api/app.js +39 -0
  4. package/api/index.js +236 -0
  5. package/bin/miyagi.js +2 -0
  6. package/dist/css/iframe.css +31 -0
  7. package/dist/css/main.css +1 -0
  8. package/dist/js/_iframe-links-DdifIr4P.js +1 -0
  9. package/dist/js/_mock-data-Dypo4Bl_.js +1 -0
  10. package/dist/js/_prism-By3NMwUd.js +1 -0
  11. package/dist/js/iframe.build.js +1 -0
  12. package/dist/js/iframe.js +1 -0
  13. package/dist/js/index-BKDKaBC6.js +1 -0
  14. package/dist/js/jsontree.js +1 -0
  15. package/dist/js/main.build.js +1 -0
  16. package/dist/js/main.js +1 -0
  17. package/frontend/assets/css/iframe/accordion-tabs.css +77 -0
  18. package/frontend/assets/css/iframe/jsontree.js.css +325 -0
  19. package/frontend/assets/css/iframe/prism.css +132 -0
  20. package/frontend/assets/css/iframe/styleguide/colors.css +61 -0
  21. package/frontend/assets/css/iframe/styleguide/fonts.css +37 -0
  22. package/frontend/assets/css/iframe/styleguide/index.css +109 -0
  23. package/frontend/assets/css/iframe/styleguide/spacings.css +21 -0
  24. package/frontend/assets/css/iframe.css +410 -0
  25. package/frontend/assets/css/main/menu/config-switcher.css +49 -0
  26. package/frontend/assets/css/main/menu/config-switchers.css +67 -0
  27. package/frontend/assets/css/main/menu/goto.css +24 -0
  28. package/frontend/assets/css/main/menu/nav.css +113 -0
  29. package/frontend/assets/css/main/menu/search.css +64 -0
  30. package/frontend/assets/css/main/menu/title.css +40 -0
  31. package/frontend/assets/css/main/menu.css +114 -0
  32. package/frontend/assets/css/main/reset.css +217 -0
  33. package/frontend/assets/css/main.css +71 -0
  34. package/frontend/assets/css/shared.css +34 -0
  35. package/frontend/assets/css/tokens.css +112 -0
  36. package/frontend/assets/favicon.ico +0 -0
  37. package/frontend/assets/js/_accordion-tabs.js +403 -0
  38. package/frontend/assets/js/_goto.js +63 -0
  39. package/frontend/assets/js/_iframe-links.js +19 -0
  40. package/frontend/assets/js/_is-triggered.js +15 -0
  41. package/frontend/assets/js/_main.js +379 -0
  42. package/frontend/assets/js/_mock-data.js +13 -0
  43. package/frontend/assets/js/_prism.js +1098 -0
  44. package/frontend/assets/js/_search.js +190 -0
  45. package/frontend/assets/js/_socket.js +9 -0
  46. package/frontend/assets/js/config-switcher/development-mode.js +49 -0
  47. package/frontend/assets/js/config-switcher/index.js +63 -0
  48. package/frontend/assets/js/config-switcher/text-direction.js +30 -0
  49. package/frontend/assets/js/config-switcher/theme.js +87 -0
  50. package/frontend/assets/js/iframe.build.js +43 -0
  51. package/frontend/assets/js/iframe.js +52 -0
  52. package/frontend/assets/js/jsontree.js +979 -0
  53. package/frontend/assets/js/main.build.js +40 -0
  54. package/frontend/assets/js/main.js +42 -0
  55. package/frontend/assets/js/styleguide/color-converter.js +741 -0
  56. package/frontend/assets/js/styleguide/index.js +119 -0
  57. package/frontend/views/component_variation.twig.miyagi +57 -0
  58. package/frontend/views/design-tokens/colors.twig.miyagi +43 -0
  59. package/frontend/views/design-tokens/sizes.twig.miyagi +35 -0
  60. package/frontend/views/design-tokens/typography.twig.miyagi +38 -0
  61. package/frontend/views/iframe_component.twig.miyagi +141 -0
  62. package/frontend/views/iframe_component_variation.twig.miyagi +55 -0
  63. package/frontend/views/iframe_index.twig.miyagi +14 -0
  64. package/frontend/views/layouts/iframe_default.twig.miyagi +22 -0
  65. package/frontend/views/main.twig.miyagi +24 -0
  66. package/frontend/views/menu/config-switchers.twig.miyagi +83 -0
  67. package/frontend/views/menu/goto.twig.miyagi +9 -0
  68. package/frontend/views/menu/menu.twig.miyagi +21 -0
  69. package/frontend/views/menu/nav.twig.miyagi +95 -0
  70. package/frontend/views/menu/search.twig.miyagi +13 -0
  71. package/frontend/views/menu/title.twig.miyagi +24 -0
  72. package/index.js +3 -0
  73. package/lib/build/index.js +1020 -0
  74. package/lib/cli/app.js +38 -0
  75. package/lib/cli/component.js +56 -0
  76. package/lib/cli/index.js +5 -0
  77. package/lib/cli/lint.js +180 -0
  78. package/lib/config.js +74 -0
  79. package/lib/default-config.js +105 -0
  80. package/lib/generator/component.js +199 -0
  81. package/lib/generator/mocks.js +201 -0
  82. package/lib/helpers.js +184 -0
  83. package/lib/i18n/en.js +91 -0
  84. package/lib/i18n/index.js +17 -0
  85. package/lib/index.js +166 -0
  86. package/lib/init/args.js +55 -0
  87. package/lib/init/config.js +330 -0
  88. package/lib/init/engines.js +65 -0
  89. package/lib/init/index.js +102 -0
  90. package/lib/init/rendering.js +12 -0
  91. package/lib/init/router.js +249 -0
  92. package/lib/init/static.js +133 -0
  93. package/lib/init/twing/cache.js +34 -0
  94. package/lib/init/twing/functions.js +51 -0
  95. package/lib/init/views.js +19 -0
  96. package/lib/init/watcher.js +402 -0
  97. package/lib/logger.js +94 -0
  98. package/lib/mocks/get.js +111 -0
  99. package/lib/mocks/index.js +9 -0
  100. package/lib/mocks/resolve/ref.js +484 -0
  101. package/lib/mocks/resolve/tpl.js +246 -0
  102. package/lib/mocks/resolve.js +205 -0
  103. package/lib/render/helpers.js +51 -0
  104. package/lib/render/index.js +38 -0
  105. package/lib/render/views/iframe/component.docs.js +77 -0
  106. package/lib/render/views/iframe/component.js +338 -0
  107. package/lib/render/views/iframe/design-tokens/colors.js +52 -0
  108. package/lib/render/views/iframe/design-tokens/index.js +9 -0
  109. package/lib/render/views/iframe/design-tokens/sizes.js +49 -0
  110. package/lib/render/views/iframe/design-tokens/typography.js +52 -0
  111. package/lib/render/views/iframe/docs.js +68 -0
  112. package/lib/render/views/iframe/index.js +44 -0
  113. package/lib/render/views/iframe/variation.js +116 -0
  114. package/lib/render/views/iframe/variation.standalone.js +89 -0
  115. package/lib/render/views/main/component.docs.js +53 -0
  116. package/lib/render/views/main/component.js +74 -0
  117. package/lib/render/views/main/design-tokens.js +53 -0
  118. package/lib/render/views/main/docs.js +47 -0
  119. package/lib/render/views/main/index.js +46 -0
  120. package/lib/state/components.js +132 -0
  121. package/lib/state/css.js +50 -0
  122. package/lib/state/docs.js +111 -0
  123. package/lib/state/file-contents.js +207 -0
  124. package/lib/state/helpers.js +86 -0
  125. package/lib/state/index.js +56 -0
  126. package/lib/state/menu/index.js +275 -0
  127. package/lib/state/menu/structure.js +146 -0
  128. package/lib/state/partials.js +23 -0
  129. package/lib/state/source-tree.js +75 -0
  130. package/lib/styleguide/color-names.js +150 -0
  131. package/lib/styleguide/colors.js +135 -0
  132. package/lib/styleguide/helpers.js +37 -0
  133. package/lib/styleguide/index.js +17 -0
  134. package/lib/styleguide/media-queries.js +26 -0
  135. package/lib/styleguide/spacings.js +35 -0
  136. package/lib/styleguide/typography.js +61 -0
  137. package/lib/validator/mocks.js +105 -0
  138. package/package.json +117 -0
@@ -0,0 +1,21 @@
1
+ <header class="Menu">
2
+ {% include "@miyagi/menu/title.twig.miyagi" %}
3
+ <button class="Menu-toggleMobileMenu" aria-label="Show menu" aria-expanded="false"></button>
4
+ <div class="Menu-content">
5
+ {% if folders %}
6
+ <div class="Menu-nav">
7
+ {% include "@miyagi/menu/search.twig.miyagi" %}
8
+ {% include "@miyagi/menu/nav.twig.miyagi" with {
9
+ folders: folders,
10
+ requestedComponent: requestedComponent,
11
+ requestedVariation: requestedVariation,
12
+ isBuild: isBuild
13
+ } only %}
14
+ </div>
15
+ {% endif %}
16
+
17
+ {% include "@miyagi/menu/config-switchers.twig.miyagi" %}
18
+ </div>
19
+
20
+ {% include "@miyagi/menu/goto.twig.miyagi" %}
21
+ </header>
@@ -0,0 +1,95 @@
1
+ <nav class="Nav">
2
+ {% macro list(items, index, requestedComponent, requestedVariation, type) %}
3
+ {% set level = index + 1 %}
4
+
5
+ <ul class="Nav-list" style="--level: {{ level }}">
6
+
7
+ {% for item in items %}
8
+ {% set has_children = (item.variations and item.variations|length > 0) or (item.children and item.children|length > 0) %}
9
+ <li class="Nav-entry Nav-entry--{{ item.type }} Nav-entry--lvl{{ level }}">
10
+ <div class="Nav-wrapper">
11
+ {% if has_children %}
12
+ <button
13
+ class="Nav-toggle"
14
+ aria-controls="{{ item.id }}"
15
+ aria-expanded="{{ is_expanded(item, requestedComponent) ? "true" : "false" }}"
16
+ aria-label="Toggle submenu"
17
+ ></button>
18
+ {% endif %}
19
+
20
+ {% if item.section == "design-tokens" and item.url %}
21
+ <a
22
+ class="Nav-item Nav-item--link"
23
+ href="{{ item.url }}"
24
+ {% if is_active_component(item, requestedComponent, requestedVariation) %}
25
+ aria-current="page"
26
+ {% endif %}
27
+ >
28
+ {{ item.name }}
29
+ </a>
30
+ {% elseif item.section == "docs" %}
31
+ {% if item.isLink %}
32
+ <a
33
+ class="{% if item.type == "file" %}Nav-variant{% else %}Nav-item Nav-item--link{% endif %}"
34
+ href="{{ item.route.default }}"
35
+ {% if is_active_component(item, requestedComponent, requestedVariation) %}
36
+ aria-current="page"
37
+ {% endif %}
38
+ >
39
+ {{ item.name }}
40
+ </a>
41
+ {% else %}
42
+ <span class="Nav-item Nav-item--directory">
43
+ {{ item.name }}
44
+ </span>
45
+ {% endif %}
46
+ {% elseif item.url and item.shortPath and not item.topLevel %}
47
+ <a
48
+ class="Nav-item Nav-item--link"
49
+ href="{{ item.url }}"
50
+ {% if is_active_component(item, requestedComponent, requestedVariation) %}
51
+ aria-current="page"
52
+ {% endif %}
53
+ >
54
+ {{ item.name }}
55
+ </a>
56
+ {% elseif item.url and not item.type %}
57
+ <a
58
+ class="Nav-variant"
59
+ href="{{ item.url }}"
60
+ {% if is_active_variant(item, requestedComponent, requestedVariation) %}
61
+ aria-current="page"
62
+ {% endif %}
63
+ >
64
+ {{ item.name }}
65
+ </a>
66
+ {% else %}
67
+ <span class="Nav-item Nav-item--directory">
68
+ {{ item.name }}
69
+ </span>
70
+ {% endif %}
71
+ </div>
72
+
73
+ {% if has_children %}
74
+ <div
75
+ class="Nav-children"
76
+ id="{{ item.id }}"
77
+ {% if not is_expanded(item, requestedComponent) %}hidden{% endif %}
78
+ >
79
+ {% if item.variations and item.variations|length > 0 %}
80
+ {{ _self.list(item.variations, level, requestedComponent, requestedVariation, "variations") }}
81
+ {% endif %}
82
+ {% if item.children and item.children|length > 0 %}
83
+ {{ _self.list(item.children, level, requestedComponent, requestedVariation, "components") }}
84
+ {% endif %}
85
+ </div>
86
+ {% endif %}
87
+
88
+ </li>
89
+ {% endfor %}
90
+
91
+ </ul>
92
+ {% endmacro %}
93
+
94
+ {{ _self.list(folders, -1, requestedComponent, requestedVariation, "components") }}
95
+ </nav>
@@ -0,0 +1,13 @@
1
+ <form class="Search">
2
+ <label class="Search-label" for="search">
3
+ <span class="u-hiddenVisually">Search</span>
4
+ <svg class="Search-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
5
+ <path d="M13.3 0h1.4c1.2.1 2.4.5 3.5 1a9.6 9.6 0 0 1 5.4 9.6 9.5 9.5 0 0 1-10.4 8.7 9.5 9.5 0 0 1-4.7-1.5l-.2-.2-.1.2-5.3 5.5c-.3.3-.6.6-1 .7h-.4l-.7-.4c-.5-.5-.5-1.2 0-1.8l5.4-5.5.3-.3-1-1.5c-1.6-3-1.8-6-.3-9A9.4 9.4 0 0 1 11.8.3l1.5-.3zm.6 2.5a7.2 7.2 0 0 0 0 14.4 7.2 7.2 0 0 0 0-14.4z" />
6
+ </svg>
7
+ </label>
8
+ <input id="search" class="Search-input" type="search" name="search" autocomplete="off" placeholder="Search …">
9
+ <button class="Search-clear" type="button" hidden>
10
+ <svg class="Search-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m13.6 12 2.2 2.3c.4.3.5.7.3 1.1-.2.8-1.2 1-1.8.4l-2-2-.3-.3-1 1L9.7 16c-.5.4-1.2.4-1.6 0a1 1 0 0 1-.2-1.4l.2-.2 2-2 .4-.3-1.1-1-1.2-1.3c-.5-.4-.5-1.1 0-1.6.4-.4 1-.4 1.5 0l2 2.1.3.3 1-1 1-1.3c.6-.7 1.4-.5 1.7-.2.4.4.6 1.1-.1 1.7l-2 2-.1.2h.1z"/><circle cx="11.9" cy="12.1" r="11" stroke-width="2" stroke-miterlimit="10"></svg>
11
+ <span class="u-hiddenVisually">Clear search query</span>
12
+ </button>
13
+ </form>
@@ -0,0 +1,24 @@
1
+ <h1 class="Title">
2
+ <a class="Title-link {% if theme.logo.light %} has-logo{% endif %}" href="{{ indexPath }}"
3
+ target="iframe" {% if showAll %} aria-current="page" {% endif %}>
4
+ {% if theme.logo.light %}
5
+ <picture class="Title-logo">
6
+ {% if userUiConfig.theme == "auto" %}
7
+ <source srcset="{{ theme.logo.dark }}" media="(prefers-color-scheme: dark)">
8
+ <source srcset="{{ theme.logo.light }}" media="(prefers-color-scheme: light)">
9
+ {% endif %}
10
+ <img
11
+ src="
12
+ {% if userUiConfig.theme == "dark" %}{{ theme.logo.dark }}{% endif %}
13
+ {% if userUiConfig.theme == "light" %}{{ theme.logo.light }}{% endif %}
14
+ {% if userUiConfig.theme == "auto" %}{{ theme.logo.light }}{% endif %}
15
+ "
16
+ data-light="{{ theme.logo.light }}"
17
+ data-dark="{{ theme.logo.dark }}"
18
+ alt="{{ userProjectName }}"
19
+ >
20
+ </picture>
21
+ {% endif %}
22
+ <span class="Title-name">Overview</span>
23
+ </a>
24
+ </h1>
package/index.js ADDED
@@ -0,0 +1,3 @@
1
+ import Miyagi from "./lib/index.js";
2
+
3
+ export default await Miyagi();