mokkun 0.1.5 → 0.1.6

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 (85) hide show
  1. package/README.md +18 -6
  2. package/bin/cli.mjs +6 -6
  3. package/bin/viewer.html +2 -2
  4. package/dist/mokkun.css +1 -1
  5. package/dist/mokkun.esm.js +4898 -2913
  6. package/dist/mokkun.esm.js.map +1 -1
  7. package/dist/mokkun.js +359 -322
  8. package/dist/mokkun.js.map +1 -1
  9. package/dist/types/lib.d.ts +80 -0
  10. package/dist/types/loader/file-loader.d.ts +114 -0
  11. package/dist/types/loader/index.d.ts +4 -0
  12. package/dist/types/parser/index.d.ts +4 -0
  13. package/dist/types/parser/key-normalizer.d.ts +24 -0
  14. package/dist/types/parser/yaml-parser.d.ts +58 -0
  15. package/dist/types/renderer/action-handler.d.ts +76 -0
  16. package/dist/types/renderer/components/accordion-panel.d.ts +144 -0
  17. package/dist/types/renderer/components/action-buttons.d.ts +183 -0
  18. package/dist/types/renderer/components/alert-banner.d.ts +43 -0
  19. package/dist/types/renderer/components/app-header.d.ts +277 -0
  20. package/dist/types/renderer/components/app-navi.d.ts +167 -0
  21. package/dist/types/renderer/components/badge.d.ts +134 -0
  22. package/dist/types/renderer/components/browser.d.ts +134 -0
  23. package/dist/types/renderer/components/calendar.d.ts +198 -0
  24. package/dist/types/renderer/components/checkbox.d.ts +132 -0
  25. package/dist/types/renderer/components/chip.d.ts +120 -0
  26. package/dist/types/renderer/components/combobox.d.ts +217 -0
  27. package/dist/types/renderer/components/data-table.d.ts +186 -0
  28. package/dist/types/renderer/components/date-range-picker.d.ts +203 -0
  29. package/dist/types/renderer/components/definition-list.d.ts +165 -0
  30. package/dist/types/renderer/components/delete-confirm-dialog.d.ts +151 -0
  31. package/dist/types/renderer/components/dialog/action-dialog.d.ts +61 -0
  32. package/dist/types/renderer/components/dialog/base-dialog.d.ts +125 -0
  33. package/dist/types/renderer/components/dialog/dialog-types.d.ts +96 -0
  34. package/dist/types/renderer/components/disclosure.d.ts +118 -0
  35. package/dist/types/renderer/components/dropdown.d.ts +220 -0
  36. package/dist/types/renderer/components/duration-input.d.ts +154 -0
  37. package/dist/types/renderer/components/duration-picker.d.ts +108 -0
  38. package/dist/types/renderer/components/field-renderer.d.ts +22 -0
  39. package/dist/types/renderer/components/float-area.d.ts +196 -0
  40. package/dist/types/renderer/components/form-fields.d.ts +94 -0
  41. package/dist/types/renderer/components/form-section.d.ts +118 -0
  42. package/dist/types/renderer/components/google-map-embed.d.ts +88 -0
  43. package/dist/types/renderer/components/heading.d.ts +119 -0
  44. package/dist/types/renderer/components/image-uploader.d.ts +271 -0
  45. package/dist/types/renderer/components/index.d.ts +48 -0
  46. package/dist/types/renderer/components/information-panel.d.ts +139 -0
  47. package/dist/types/renderer/components/input.d.ts +222 -0
  48. package/dist/types/renderer/components/layout.d.ts +71 -0
  49. package/dist/types/renderer/components/line-clamp.d.ts +170 -0
  50. package/dist/types/renderer/components/loader.d.ts +104 -0
  51. package/dist/types/renderer/components/notification-bar.d.ts +251 -0
  52. package/dist/types/renderer/components/pagination.d.ts +167 -0
  53. package/dist/types/renderer/components/photo-manager-renderer.d.ts +9 -0
  54. package/dist/types/renderer/components/radio-button-panel.d.ts +152 -0
  55. package/dist/types/renderer/components/radio.d.ts +117 -0
  56. package/dist/types/renderer/components/repeater.d.ts +116 -0
  57. package/dist/types/renderer/components/response-message.d.ts +180 -0
  58. package/dist/types/renderer/components/search-input.d.ts +198 -0
  59. package/dist/types/renderer/components/section-nav.d.ts +151 -0
  60. package/dist/types/renderer/components/segmented-control.d.ts +143 -0
  61. package/dist/types/renderer/components/select.d.ts +98 -0
  62. package/dist/types/renderer/components/status-label.d.ts +146 -0
  63. package/dist/types/renderer/components/stepper.d.ts +123 -0
  64. package/dist/types/renderer/components/tabs.d.ts +185 -0
  65. package/dist/types/renderer/components/textarea.d.ts +173 -0
  66. package/dist/types/renderer/components/timeline.d.ts +146 -0
  67. package/dist/types/renderer/components/toggle.d.ts +109 -0
  68. package/dist/types/renderer/components/tooltip.d.ts +158 -0
  69. package/dist/types/renderer/components/wizard.d.ts +118 -0
  70. package/dist/types/renderer/layouts/index.d.ts +5 -0
  71. package/dist/types/renderer/layouts/shell.d.ts +7 -0
  72. package/dist/types/renderer/layouts/types.d.ts +34 -0
  73. package/dist/types/renderer/screen-renderer.d.ts +53 -0
  74. package/dist/types/renderer/utils/dom.d.ts +29 -0
  75. package/dist/types/renderer/utils/dummy-data.d.ts +13 -0
  76. package/dist/types/renderer/utils/field-helpers.d.ts +90 -0
  77. package/dist/types/renderer/utils/icons.d.ts +13 -0
  78. package/dist/types/renderer/utils/index.d.ts +6 -0
  79. package/dist/types/theme/index.d.ts +6 -0
  80. package/dist/types/theme/theme-manager.d.ts +102 -0
  81. package/dist/types/types/field-renderable.d.ts +40 -0
  82. package/dist/types/types/index.d.ts +6 -0
  83. package/dist/types/types/schema.d.ts +1701 -0
  84. package/dist/types/types/theme.d.ts +111 -0
  85. package/package.json +3 -1
package/README.md CHANGED
@@ -78,6 +78,16 @@ https://raw.githubusercontent.com/tango238/mokkun/main/schema.json
78
78
  画面間のナビゲーション(actions の navigate)も設定してください。
79
79
  ```
80
80
 
81
+ ### エディタで補完を使う
82
+
83
+ YAML の先頭行に次のモードラインを書くと、[YAML Language Server](https://github.com/redhat-developer/yaml-language-server)(VS Code の YAML 拡張など)でキー補完とバリデーションが効きます。
84
+
85
+ ```yaml
86
+ # yaml-language-server: $schema=https://raw.githubusercontent.com/tango238/mokkun/main/schema.json
87
+ ```
88
+
89
+ リポジトリ内では `.vscode/settings.json` の `"yaml.schemas": { "./schema.json": ["examples/*.yaml", "*.mokkun.yaml"] }` で、`examples/*.yaml` と `*.mokkun.yaml` に自動適用できます。
90
+
81
91
  ### 生成した YAML をモックとして表示する
82
92
 
83
93
  AI が生成した YAML を `.yaml` ファイルとして保存し、`npx mokkun` で表示できます。
@@ -161,8 +171,8 @@ mokkun/
161
171
 
162
172
  | コンポーネント | 説明 |
163
173
  |---------------|------|
164
- | app_header | アプリケーションヘッダー(ロゴ、テナント切替、ユーザーメニュー) |
165
- | app_navi | アプリナビゲーション(主要機能の切り替え) |
174
+ | appHeader | アプリケーションヘッダー(ロゴ、テナント切替、ユーザーメニュー。`systemName` で左上のシステム名を指定) |
175
+ | appNavi | アプリナビゲーション(主要機能の切り替え) |
166
176
  | heading | 見出し |
167
177
  | tabs | タブ |
168
178
  | accordion_panel | アコーディオン |
@@ -195,9 +205,11 @@ mokkun/
195
205
 
196
206
  ## YAML構造
197
207
 
208
+ YAML のキーは camelCase が正規形です。snake_case のキー(teamkit の generate-ui 出力など)も互換として引き続き受け付けます。
209
+
198
210
  ```yaml
199
211
  view:
200
- screen_name:
212
+ myScreen:
201
213
  title: "画面タイトル"
202
214
  description: "画面の説明"
203
215
  fields:
@@ -211,13 +223,13 @@ view:
211
223
  label: "送信"
212
224
  style: "primary"
213
225
 
214
- common_components:
215
- component_name:
226
+ commonComponents:
227
+ myComponent:
216
228
  type: "field_group"
217
229
  fields: []
218
230
 
219
231
  validations:
220
- rule_name:
232
+ myRule:
221
233
  rules:
222
234
  required: true
223
235
  min: 1
package/bin/cli.mjs CHANGED
@@ -13,8 +13,8 @@ const distDir = resolve(__dirname, '../dist')
13
13
  const args = process.argv.slice(2)
14
14
  let yamlFile = null
15
15
  let port = 3333
16
- let theme = 'lofi'
17
- const VALID_THEMES = ['lofi', 'light', 'dark']
16
+ let theme = 'light'
17
+ const VALID_THEMES = ['light', 'dark']
18
18
 
19
19
  for (let i = 0; i < args.length; i++) {
20
20
  if (args[i] === '--port' || args[i] === '-p') {
@@ -33,8 +33,8 @@ for (let i = 0; i < args.length; i++) {
33
33
 
34
34
  // Validate theme
35
35
  if (!VALID_THEMES.includes(theme)) {
36
- console.error(`Error: Invalid theme "${theme}". Valid themes: ${VALID_THEMES.join(', ')}`)
37
- process.exit(1)
36
+ console.warn(`Warning: Unknown theme "${theme}". Falling back to light. Valid themes: ${VALID_THEMES.join(', ')}`)
37
+ theme = 'light'
38
38
  }
39
39
 
40
40
  function printHelp() {
@@ -46,7 +46,7 @@ Usage:
46
46
 
47
47
  Options:
48
48
  -p, --port <port> Port number (default: 3333)
49
- -t, --theme <theme> Theme: lofi, light, dark (default: lofi)
49
+ -t, --theme <theme> Theme: light, dark (default: light)
50
50
  -h, --help Show this help
51
51
 
52
52
  Examples:
@@ -94,7 +94,7 @@ function generateViewerHtml() {
94
94
  if (yamlFile) {
95
95
  html = html.replace('/* __YAML_URL__ */ null', JSON.stringify('/__yaml__/' + basename(yamlFile)))
96
96
  }
97
- html = html.replace('/* __THEME__ */ \'lofi\'', JSON.stringify(theme))
97
+ html = html.replace('/* __THEME__ */ \'light\'', JSON.stringify(theme))
98
98
  return html
99
99
  }
100
100
 
package/bin/viewer.html CHANGED
@@ -127,8 +127,8 @@
127
127
  var mokkunInstance = null;
128
128
  var screenSelect = document.getElementById('screen-select');
129
129
 
130
- // Theme injected by CLI (default: lofi)
131
- var currentTheme = /* __THEME__ */ 'lofi';
130
+ // Theme injected by CLI (default: light)
131
+ var currentTheme = /* __THEME__ */ 'light';
132
132
 
133
133
  // YAML URL injected by CLI (or null for sample)
134
134
  var yamlUrl = /* __YAML_URL__ */ null;