@lapismd/design-core 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 (1256) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/LICENSE.md +4 -0
  3. package/README.md +260 -0
  4. package/package.json +290 -0
  5. package/spec/src/styling-and-themes.md +188 -0
  6. package/src/lib/data-ui-contract.ts +263 -0
  7. package/src/lib/data-ui-host-catalog.ts +278 -0
  8. package/src/lib/data-ui-host.ts +69 -0
  9. package/src/lib/hooks/is-mobile.svelte.ts +9 -0
  10. package/src/lib/overlay-portal-context.ts +57 -0
  11. package/src/lib/utils.ts +18 -0
  12. package/src/shared/ai/chat.css +1551 -0
  13. package/src/shared/ai/chat.tokens.ts +25 -0
  14. package/src/shared/ai/chat.ts +70 -0
  15. package/src/shared/ai/composer/Composer.svelte +195 -0
  16. package/src/shared/ai/composer/index.ts +1 -0
  17. package/src/shared/ai/composer-behavior.ts +57 -0
  18. package/src/shared/ai/composer-drawer/ComposerDrawer.svelte +61 -0
  19. package/src/shared/ai/composer-drawer/index.ts +1 -0
  20. package/src/shared/ai/composer-input/ComposerInput.svelte +511 -0
  21. package/src/shared/ai/composer-input/index.ts +1 -0
  22. package/src/shared/ai/composer-token/ComposerToken.svelte +34 -0
  23. package/src/shared/ai/composer-token/index.ts +1 -0
  24. package/src/shared/ai/composer-tokens.ts +468 -0
  25. package/src/shared/ai/context.svelte.ts +83 -0
  26. package/src/shared/ai/dictation-button/DictationButton.svelte +77 -0
  27. package/src/shared/ai/dictation-button/index.ts +1 -0
  28. package/src/shared/ai/experimental/emoji-picker/EmojiPicker.svelte +177 -0
  29. package/src/shared/ai/experimental/emoji-picker/index.ts +5 -0
  30. package/src/shared/ai/experimental/index.ts +22 -0
  31. package/src/shared/ai/experimental/reaction-bar/ReactionBar.svelte +84 -0
  32. package/src/shared/ai/experimental/reaction-bar/index.ts +1 -0
  33. package/src/shared/ai/experimental/reasoning/Reasoning.svelte +70 -0
  34. package/src/shared/ai/experimental/reasoning/index.ts +1 -0
  35. package/src/shared/ai/experimental/typing-indicator/TypingIndicator.svelte +41 -0
  36. package/src/shared/ai/experimental/typing-indicator/index.ts +1 -0
  37. package/src/shared/ai/experimental/unread-divider/UnreadDivider.svelte +26 -0
  38. package/src/shared/ai/experimental/unread-divider/index.ts +1 -0
  39. package/src/shared/ai/index.ts +2 -0
  40. package/src/shared/ai/layout/Layout.svelte +141 -0
  41. package/src/shared/ai/layout/index.ts +1 -0
  42. package/src/shared/ai/layout-scroll-button/LayoutScrollButton.svelte +48 -0
  43. package/src/shared/ai/layout-scroll-button/index.ts +1 -0
  44. package/src/shared/ai/message/Message.svelte +71 -0
  45. package/src/shared/ai/message/index.ts +1 -0
  46. package/src/shared/ai/message-bubble/MessageBubble.svelte +62 -0
  47. package/src/shared/ai/message-bubble/index.ts +1 -0
  48. package/src/shared/ai/message-list/MessageList.svelte +133 -0
  49. package/src/shared/ai/message-list/index.ts +1 -0
  50. package/src/shared/ai/message-metadata/MessageMetadata.svelte +90 -0
  51. package/src/shared/ai/message-metadata/index.ts +1 -0
  52. package/src/shared/ai/new-messages.svelte.ts +80 -0
  53. package/src/shared/ai/send-button/SendButton.svelte +51 -0
  54. package/src/shared/ai/send-button/index.ts +1 -0
  55. package/src/shared/ai/speech-recognition.svelte.ts +329 -0
  56. package/src/shared/ai/stream-scroll.svelte.ts +238 -0
  57. package/src/shared/ai/system-message/SystemMessage.svelte +43 -0
  58. package/src/shared/ai/system-message/index.ts +1 -0
  59. package/src/shared/ai/tokenized-text/TokenizedText.svelte +76 -0
  60. package/src/shared/ai/tokenized-text/index.ts +1 -0
  61. package/src/shared/ai/tool-calls/ToolCalls.svelte +185 -0
  62. package/src/shared/ai/tool-calls/index.ts +1 -0
  63. package/src/shared/ai/trigger-menu.ts +154 -0
  64. package/src/shared/ai/types.ts +144 -0
  65. package/src/shared/diff/core/file-tree.ts +83 -0
  66. package/src/shared/diff/core/index.ts +58 -0
  67. package/src/shared/diff/core/merge/ATTRIBUTION.mergeweave.md +12 -0
  68. package/src/shared/diff/core/merge/actions.ts +142 -0
  69. package/src/shared/diff/core/merge/blocks.ts +120 -0
  70. package/src/shared/diff/core/merge/diff.ts +67 -0
  71. package/src/shared/diff/core/merge/index.ts +32 -0
  72. package/src/shared/diff/core/merge/inline-diff.ts +35 -0
  73. package/src/shared/diff/core/merge/lines.ts +44 -0
  74. package/src/shared/diff/core/merge/one-way.ts +101 -0
  75. package/src/shared/diff/core/merge/options.ts +25 -0
  76. package/src/shared/diff/core/merge/render-model.ts +591 -0
  77. package/src/shared/diff/core/merge/three-way.ts +267 -0
  78. package/src/shared/diff/core/merge/types.ts +61 -0
  79. package/src/shared/diff/core/unified-diff.ts +577 -0
  80. package/src/shared/diff/diff.tokens.css +59 -0
  81. package/src/shared/diff/diff.tokens.ts +23 -0
  82. package/src/shared/diff/file-change-stats/FileChangeStats.css +20 -0
  83. package/src/shared/diff/file-change-stats/FileChangeStats.svelte +35 -0
  84. package/src/shared/diff/file-change-stats/format-diff-delta.ts +3 -0
  85. package/src/shared/diff/file-change-stats/index.ts +2 -0
  86. package/src/shared/diff/file-diff/FileDiff.css +234 -0
  87. package/src/shared/diff/file-diff/FileDiff.svelte +381 -0
  88. package/src/shared/diff/file-diff/FileDiffComposer.svelte +61 -0
  89. package/src/shared/diff/file-diff/expand.ts +43 -0
  90. package/src/shared/diff/file-diff/highlight.ts +178 -0
  91. package/src/shared/diff/file-diff/index.ts +9 -0
  92. package/src/shared/diff/file-diff/language.ts +49 -0
  93. package/src/shared/diff/file-diff/types.ts +24 -0
  94. package/src/shared/diff/file-listing/FileListing.css +74 -0
  95. package/src/shared/diff/file-listing/FileListing.svelte +235 -0
  96. package/src/shared/diff/file-listing/FileListingViewModeToggle.css +14 -0
  97. package/src/shared/diff/file-listing/FileListingViewModeToggle.svelte +50 -0
  98. package/src/shared/diff/file-listing/file-icon.ts +35 -0
  99. package/src/shared/diff/file-listing/index.ts +9 -0
  100. package/src/shared/diff/file-listing/types.ts +25 -0
  101. package/src/shared/diff/index.ts +31 -0
  102. package/src/shared/diff/merge-editor/MergeEditor.css +481 -0
  103. package/src/shared/diff/merge-editor/MergeEditor.svelte +702 -0
  104. package/src/shared/diff/merge-editor/MergeEditorDemo.css +41 -0
  105. package/src/shared/diff/merge-editor/MergeEditorDemo.svelte +91 -0
  106. package/src/shared/diff/merge-editor/connector.ts +94 -0
  107. package/src/shared/diff/merge-editor/demo-fixtures.ts +428 -0
  108. package/src/shared/diff/merge-editor/index.ts +9 -0
  109. package/src/shared/diff/merge-editor/mismerge-quicksort-fixture.ts +12 -0
  110. package/src/shared/diff/merge-editor/quicksort-fixture.ts +6 -0
  111. package/src/shared/diff/merge-editor/types.ts +11 -0
  112. package/src/shared/filter/demo-ledger-filter-syntax.ts +132 -0
  113. package/src/shared/filter/filter-query/filters.ts +375 -0
  114. package/src/shared/filter/filter-query/highlight.ts +21 -0
  115. package/src/shared/filter/filter-query/index.ts +23 -0
  116. package/src/shared/filter/filter-query/parser.ts +710 -0
  117. package/src/shared/filter/filter-query/query.d.ts +3 -0
  118. package/src/shared/filter/filter-query/query.grammar +150 -0
  119. package/src/shared/filter/filter-query/query.js +60 -0
  120. package/src/shared/filter/filter-query/query.terms.js +32 -0
  121. package/src/shared/filter/index.ts +35 -0
  122. package/src/shared/filter/power-search/PowerSearch.css +245 -0
  123. package/src/shared/filter/power-search/PowerSearch.svelte +245 -0
  124. package/src/shared/filter/power-search/PowerSearchFieldCombobox.svelte +162 -0
  125. package/src/shared/filter/power-search/index.ts +10 -0
  126. package/src/shared/filter/power-search/power-search.ts +106 -0
  127. package/src/shared/filter/search-filter-bar/SearchFilterAutocompleteScrollArea.svelte +29 -0
  128. package/src/shared/filter/search-filter-bar/SearchFilterBar.css +924 -0
  129. package/src/shared/filter/search-filter-bar/SearchFilterBar.svelte +246 -0
  130. package/src/shared/filter/search-filter-bar/SearchFilterFieldAutocomplete.svelte +182 -0
  131. package/src/shared/filter/search-filter-bar/SearchFilterInput.svelte +412 -0
  132. package/src/shared/filter/search-filter-bar/SearchFilterPredicateEditor.svelte +270 -0
  133. package/src/shared/filter/search-filter-bar/SearchFilterValueAutocomplete.svelte +127 -0
  134. package/src/shared/filter/search-filter-bar/index.ts +15 -0
  135. package/src/shared/filter/search-filter-bar/search-filter-highlight.ts +56 -0
  136. package/src/shared/filter/search-filter-bar/search-filter-predicate-chips.ts +410 -0
  137. package/src/shared/filter/search-filter-bar/search-filter-syntax.ts +334 -0
  138. package/src/shared/forms/add-section-chooser/AddSectionChooser.css +135 -0
  139. package/src/shared/forms/add-section-chooser/AddSectionChooser.svelte +118 -0
  140. package/src/shared/forms/add-section-chooser/index.ts +1 -0
  141. package/src/shared/forms/autocomplete-input/AutocompleteInput.css +86 -0
  142. package/src/shared/forms/autocomplete-input/AutocompleteInput.svelte +253 -0
  143. package/src/shared/forms/autocomplete-input/index.ts +1 -0
  144. package/src/shared/forms/chip-autocomplete/ChipAutocomplete.css +142 -0
  145. package/src/shared/forms/chip-autocomplete/ChipAutocomplete.svelte +156 -0
  146. package/src/shared/forms/chip-autocomplete/index.ts +1 -0
  147. package/src/shared/forms/code-editor/CodeEditor.css +42 -0
  148. package/src/shared/forms/code-editor/CodeEditor.svelte +60 -0
  149. package/src/shared/forms/code-editor/code-editor-language.ts +63 -0
  150. package/src/shared/forms/code-editor/code-editor-syntax.ts +25 -0
  151. package/src/shared/forms/code-editor/index.ts +1 -0
  152. package/src/shared/forms/code-highlighter/CodeHighlighter.css +54 -0
  153. package/src/shared/forms/code-highlighter/CodeHighlighter.svelte +57 -0
  154. package/src/shared/forms/code-highlighter/code-highlighter.ts +36 -0
  155. package/src/shared/forms/code-highlighter/index.ts +2 -0
  156. package/src/shared/forms/collapsible-item-list/CollapsibleItemList.css +99 -0
  157. package/src/shared/forms/collapsible-item-list/CollapsibleItemList.svelte +56 -0
  158. package/src/shared/forms/collapsible-item-list/index.ts +1 -0
  159. package/src/shared/forms/color-picker/ColorPicker.css +150 -0
  160. package/src/shared/forms/color-picker/ColorPicker.svelte +149 -0
  161. package/src/shared/forms/color-picker/color-value.ts +36 -0
  162. package/src/shared/forms/color-picker/index.ts +6 -0
  163. package/src/shared/forms/complete-cv-form/CompleteCvForm.css +264 -0
  164. package/src/shared/forms/complete-cv-form/CompleteCvForm.svelte +305 -0
  165. package/src/shared/forms/complete-cv-form/PLAN.md +225 -0
  166. package/src/shared/forms/complete-cv-form/complete-cv-form.model.ts +387 -0
  167. package/src/shared/forms/complete-cv-form/complete-cv-form.typed-config.ts +1767 -0
  168. package/src/shared/forms/complete-cv-form/complete-cv-form.types.ts +255 -0
  169. package/src/shared/forms/complete-cv-form/sample-cv.fixture.ts +11 -0
  170. package/src/shared/forms/complete-cv-form/sample-cv.fixture.yml +211 -0
  171. package/src/shared/forms/core/autosize-textarea.ts +35 -0
  172. package/src/shared/forms/core/builders.ts +291 -0
  173. package/src/shared/forms/core/code-language-options.ts +28 -0
  174. package/src/shared/forms/core/core.ts +157 -0
  175. package/src/shared/forms/core/date-utils.ts +219 -0
  176. package/src/shared/forms/core/field-review.ts +15 -0
  177. package/src/shared/forms/core/form-controller.svelte.ts +449 -0
  178. package/src/shared/forms/core/index.ts +1 -0
  179. package/src/shared/forms/core/json-patch.ts +128 -0
  180. package/src/shared/forms/core/markdown-format.ts +39 -0
  181. package/src/shared/forms/core/patch-review.ts +591 -0
  182. package/src/shared/forms/core/path-config.ts +428 -0
  183. package/src/shared/forms/core/path-runtime.ts +70 -0
  184. package/src/shared/forms/core/path-types.ts +132 -0
  185. package/src/shared/forms/core/path-utils.ts +102 -0
  186. package/src/shared/forms/core/reference-utils.ts +168 -0
  187. package/src/shared/forms/core/registry.ts +101 -0
  188. package/src/shared/forms/core/review-diff.ts +199 -0
  189. package/src/shared/forms/core/types.ts +135 -0
  190. package/src/shared/forms/core/yaml-review-play.ts +16 -0
  191. package/src/shared/forms/cycle-picker/CyclePicker.css +89 -0
  192. package/src/shared/forms/cycle-picker/CyclePicker.svelte +165 -0
  193. package/src/shared/forms/cycle-picker/index.ts +2 -0
  194. package/src/shared/forms/date-picker/DatePicker.css +193 -0
  195. package/src/shared/forms/date-picker/DatePicker.svelte +251 -0
  196. package/src/shared/forms/date-picker/index.ts +17 -0
  197. package/src/shared/forms/entry-actions/EntryActions.css +93 -0
  198. package/src/shared/forms/entry-actions/EntryActions.svelte +62 -0
  199. package/src/shared/forms/entry-actions/index.ts +1 -0
  200. package/src/shared/forms/field-review-actions/FieldReviewActions.css +38 -0
  201. package/src/shared/forms/field-review-actions/FieldReviewActions.svelte +42 -0
  202. package/src/shared/forms/field-review-actions/index.ts +1 -0
  203. package/src/shared/forms/filter-command-picker/FilterCommandPicker.css +321 -0
  204. package/src/shared/forms/filter-command-picker/FilterCommandPicker.svelte +382 -0
  205. package/src/shared/forms/filter-command-picker/index.ts +10 -0
  206. package/src/shared/forms/filter-command-picker/picker-options.ts +13 -0
  207. package/src/shared/forms/filter-command-picker/picker-search.ts +123 -0
  208. package/src/shared/forms/form-add-button/FormAddButton.css +56 -0
  209. package/src/shared/forms/form-add-button/FormAddButton.svelte +28 -0
  210. package/src/shared/forms/form-control-row/FormControlRow.css +153 -0
  211. package/src/shared/forms/form-control-row/index.ts +2 -0
  212. package/src/shared/forms/form-field/FormField.css +156 -0
  213. package/src/shared/forms/form-field/FormField.svelte +87 -0
  214. package/src/shared/forms/form-field/index.ts +1 -0
  215. package/src/shared/forms/form-placeholder/FormPlaceholder.css +14 -0
  216. package/src/shared/forms/form-placeholder/FormPlaceholder.svelte +21 -0
  217. package/src/shared/forms/form-review/ReviewedStringListFormField.svelte +44 -0
  218. package/src/shared/forms/form-review/ReviewedTextFormField.svelte +64 -0
  219. package/src/shared/forms/form-review/index.ts +5 -0
  220. package/src/shared/forms/form-section-header/FormSectionHeader.css +177 -0
  221. package/src/shared/forms/form-section-header/FormSectionHeader.svelte +135 -0
  222. package/src/shared/forms/form-section-header/index.ts +1 -0
  223. package/src/shared/forms/form-sheet/FormSheet.css +99 -0
  224. package/src/shared/forms/form-sheet/FormSheet.svelte +132 -0
  225. package/src/shared/forms/form-toolbar/FormToolbar.css +49 -0
  226. package/src/shared/forms/form-toolbar/FormToolbar.svelte +59 -0
  227. package/src/shared/forms/form.tokens.css +41 -0
  228. package/src/shared/forms/form.tokens.ts +58 -0
  229. package/src/shared/forms/index.ts +131 -0
  230. package/src/shared/forms/inline-option-picker/InlineOptionPicker.css +147 -0
  231. package/src/shared/forms/inline-option-picker/InlineOptionPicker.svelte +153 -0
  232. package/src/shared/forms/inline-option-picker/index.ts +1 -0
  233. package/src/shared/forms/json-backed-form/JsonBackedForm.css +52 -0
  234. package/src/shared/forms/json-backed-form/JsonBackedForm.svelte +106 -0
  235. package/src/shared/forms/json-backed-form/index.ts +1 -0
  236. package/src/shared/forms/list-editor/ListEditor.css +171 -0
  237. package/src/shared/forms/list-editor/ListEditor.svelte +232 -0
  238. package/src/shared/forms/password-input/PasswordInput.css +48 -0
  239. package/src/shared/forms/password-input/PasswordInput.svelte +57 -0
  240. package/src/shared/forms/password-input/index.ts +1 -0
  241. package/src/shared/forms/patchable-form/PatchableForm.svelte +136 -0
  242. package/src/shared/forms/patchable-form/field-review-context.ts +78 -0
  243. package/src/shared/forms/patchable-form/index.ts +2 -0
  244. package/src/shared/forms/reference-picker/ReferencePicker.css +338 -0
  245. package/src/shared/forms/reference-picker/ReferencePicker.svelte +422 -0
  246. package/src/shared/forms/reference-picker/ReferencePreview.css +126 -0
  247. package/src/shared/forms/reference-picker/ReferencePreview.svelte +71 -0
  248. package/src/shared/forms/reference-picker/index.ts +1 -0
  249. package/src/shared/forms/secret-field/SecretField.css +29 -0
  250. package/src/shared/forms/secret-field/SecretField.svelte +101 -0
  251. package/src/shared/forms/secret-field/index.ts +8 -0
  252. package/src/shared/forms/secret-field/secret-field-value.ts +35 -0
  253. package/src/shared/forms/segmented-control/SegmentedControl.css +80 -0
  254. package/src/shared/forms/segmented-control/SegmentedControl.svelte +51 -0
  255. package/src/shared/forms/segmented-control/index.ts +1 -0
  256. package/src/shared/forms/sortable-array-item/SortableArrayItem.css +144 -0
  257. package/src/shared/forms/sortable-array-item/SortableArrayItem.svelte +94 -0
  258. package/src/shared/forms/structured-form/ConfiguredFormField.svelte +407 -0
  259. package/src/shared/forms/structured-form/ConfiguredFormGroup.svelte +100 -0
  260. package/src/shared/forms/structured-form/CurrencyFormControl.story.svelte +31 -0
  261. package/src/shared/forms/structured-form/FormFieldRenderer.css +86 -0
  262. package/src/shared/forms/structured-form/FormFieldRenderer.svelte +180 -0
  263. package/src/shared/forms/structured-form/FormViewRenderer.svelte +38 -0
  264. package/src/shared/forms/structured-form/RegisteredFieldControl.svelte +221 -0
  265. package/src/shared/forms/structured-form/StructuredForm.currency-kind.story.ts +9 -0
  266. package/src/shared/forms/structured-form/StructuredForm.svelte +128 -0
  267. package/src/shared/forms/structured-form/disclosure-policy.ts +19 -0
  268. package/src/shared/forms/structured-form/form-renderer-registry.ts +130 -0
  269. package/src/shared/forms/structured-form/index.ts +3 -0
  270. package/src/shared/forms/structured-form/structured-form.css +191 -0
  271. package/src/shared/forms/structured-form/wrapping-text-input.ts +20 -0
  272. package/src/shared/forms/task-due-calendar/TaskDueCalendar.css +117 -0
  273. package/src/shared/forms/task-due-calendar/TaskDueCalendar.svelte +72 -0
  274. package/src/shared/forms/task-due-calendar/index.ts +1 -0
  275. package/src/shared/forms/time-picker/TimePicker.css +76 -0
  276. package/src/shared/forms/time-picker/TimePicker.svelte +88 -0
  277. package/src/shared/forms/time-picker/index.ts +1 -0
  278. package/src/shared/forms/unified-review-diff/UnifiedReviewDiff.css +72 -0
  279. package/src/shared/forms/unified-review-diff/UnifiedReviewDiff.svelte +57 -0
  280. package/src/shared/forms/unified-review-diff/index.ts +1 -0
  281. package/src/shared/forms/yaml-backed-form/YamlBackedForm.css +52 -0
  282. package/src/shared/forms/yaml-backed-form/YamlBackedForm.svelte +112 -0
  283. package/src/shared/forms/yaml-backed-form/index.ts +1 -0
  284. package/src/shared/forms/yaml-editor/YamlEditor.css +50 -0
  285. package/src/shared/forms/yaml-editor/YamlEditor.svelte +407 -0
  286. package/src/shared/forms/yaml-editor/index.ts +1 -0
  287. package/src/shared/forms/yaml-editor/yaml-editor-runtime.ts +65 -0
  288. package/src/shared/shadcn/accordion/Accordion.story-sources.ts +12 -0
  289. package/src/shared/shadcn/accordion/accordion-content.svelte +28 -0
  290. package/src/shared/shadcn/accordion/accordion-item.svelte +18 -0
  291. package/src/shared/shadcn/accordion/accordion-trigger.svelte +70 -0
  292. package/src/shared/shadcn/accordion/accordion.docs-body.md +24 -0
  293. package/src/shared/shadcn/accordion/accordion.docs.md +30 -0
  294. package/src/shared/shadcn/accordion/accordion.provenance.json +52 -0
  295. package/src/shared/shadcn/accordion/accordion.svelte +408 -0
  296. package/src/shared/shadcn/accordion/accordion.tokens.css +13 -0
  297. package/src/shared/shadcn/accordion/accordion.tokens.ts +10 -0
  298. package/src/shared/shadcn/accordion/examples/preview.svelte +50 -0
  299. package/src/shared/shadcn/accordion/index.ts +21 -0
  300. package/src/shared/shadcn/alert/alert-action.svelte +22 -0
  301. package/src/shared/shadcn/alert/alert-description.svelte +22 -0
  302. package/src/shared/shadcn/alert/alert-title.svelte +22 -0
  303. package/src/shared/shadcn/alert/alert.docs-body.md +22 -0
  304. package/src/shared/shadcn/alert/alert.docs.md +28 -0
  305. package/src/shared/shadcn/alert/alert.provenance.json +52 -0
  306. package/src/shared/shadcn/alert/alert.svelte +307 -0
  307. package/src/shared/shadcn/alert/alert.tokens.css +13 -0
  308. package/src/shared/shadcn/alert/alert.tokens.ts +9 -0
  309. package/src/shared/shadcn/alert/examples/preview.svelte +36 -0
  310. package/src/shared/shadcn/alert/index.ts +19 -0
  311. package/src/shared/shadcn/alert-dialog/alert-dialog-action.svelte +29 -0
  312. package/src/shared/shadcn/alert-dialog/alert-dialog-cancel.svelte +29 -0
  313. package/src/shared/shadcn/alert-dialog/alert-dialog-content.svelte +623 -0
  314. package/src/shared/shadcn/alert-dialog/alert-dialog-description.svelte +18 -0
  315. package/src/shared/shadcn/alert-dialog/alert-dialog-footer.svelte +22 -0
  316. package/src/shared/shadcn/alert-dialog/alert-dialog-header.svelte +22 -0
  317. package/src/shared/shadcn/alert-dialog/alert-dialog-media.svelte +22 -0
  318. package/src/shared/shadcn/alert-dialog/alert-dialog-overlay.svelte +18 -0
  319. package/src/shared/shadcn/alert-dialog/alert-dialog-portal.svelte +7 -0
  320. package/src/shared/shadcn/alert-dialog/alert-dialog-title.svelte +18 -0
  321. package/src/shared/shadcn/alert-dialog/alert-dialog-trigger.svelte +14 -0
  322. package/src/shared/shadcn/alert-dialog/alert-dialog.docs-body.md +32 -0
  323. package/src/shared/shadcn/alert-dialog/alert-dialog.docs.md +38 -0
  324. package/src/shared/shadcn/alert-dialog/alert-dialog.provenance.json +84 -0
  325. package/src/shared/shadcn/alert-dialog/alert-dialog.svelte +10 -0
  326. package/src/shared/shadcn/alert-dialog/alert-dialog.tokens.css +13 -0
  327. package/src/shared/shadcn/alert-dialog/alert-dialog.tokens.ts +10 -0
  328. package/src/shared/shadcn/alert-dialog/examples/preview.svelte +25 -0
  329. package/src/shared/shadcn/alert-dialog/index.ts +44 -0
  330. package/src/shared/shadcn/badge/badge.docs-body.md +29 -0
  331. package/src/shared/shadcn/badge/badge.docs.md +35 -0
  332. package/src/shared/shadcn/badge/badge.provenance.json +40 -0
  333. package/src/shared/shadcn/badge/badge.svelte +491 -0
  334. package/src/shared/shadcn/badge/badge.tokens.css +13 -0
  335. package/src/shared/shadcn/badge/badge.tokens.ts +9 -0
  336. package/src/shared/shadcn/badge/examples/preview.svelte +35 -0
  337. package/src/shared/shadcn/badge/index.ts +4 -0
  338. package/src/shared/shadcn/breadcrumb/breadcrumb-ellipsis.svelte +30 -0
  339. package/src/shared/shadcn/breadcrumb/breadcrumb-item.svelte +22 -0
  340. package/src/shared/shadcn/breadcrumb/breadcrumb-link.svelte +33 -0
  341. package/src/shared/shadcn/breadcrumb/breadcrumb-list.svelte +22 -0
  342. package/src/shared/shadcn/breadcrumb/breadcrumb-page.svelte +25 -0
  343. package/src/shared/shadcn/breadcrumb/breadcrumb-separator.svelte +29 -0
  344. package/src/shared/shadcn/breadcrumb/breadcrumb.docs-body.md +150 -0
  345. package/src/shared/shadcn/breadcrumb/breadcrumb.docs.md +156 -0
  346. package/src/shared/shadcn/breadcrumb/breadcrumb.provenance.json +76 -0
  347. package/src/shared/shadcn/breadcrumb/breadcrumb.svelte +200 -0
  348. package/src/shared/shadcn/breadcrumb/breadcrumb.tokens.css +13 -0
  349. package/src/shared/shadcn/breadcrumb/breadcrumb.tokens.ts +10 -0
  350. package/src/shared/shadcn/breadcrumb/examples/collapsed.svelte +25 -0
  351. package/src/shared/shadcn/breadcrumb/examples/custom-separator.svelte +26 -0
  352. package/src/shared/shadcn/breadcrumb/examples/dropdown.svelte +38 -0
  353. package/src/shared/shadcn/breadcrumb/examples/link-component.svelte +21 -0
  354. package/src/shared/shadcn/breadcrumb/examples/preview.svelte +36 -0
  355. package/src/shared/shadcn/breadcrumb/index.ts +30 -0
  356. package/src/shared/shadcn/button/button.docs-body.md +287 -0
  357. package/src/shared/shadcn/button/button.docs.md +297 -0
  358. package/src/shared/shadcn/button/button.provenance.json +58 -0
  359. package/src/shared/shadcn/button/button.svelte +703 -0
  360. package/src/shared/shadcn/button/button.tokens.css +17 -0
  361. package/src/shared/shadcn/button/button.tokens.ts +14 -0
  362. package/src/shared/shadcn/button/examples/default.svelte +7 -0
  363. package/src/shared/shadcn/button/examples/destructive.svelte +7 -0
  364. package/src/shared/shadcn/button/examples/ghost.svelte +7 -0
  365. package/src/shared/shadcn/button/examples/icon.svelte +10 -0
  366. package/src/shared/shadcn/button/examples/link.svelte +7 -0
  367. package/src/shared/shadcn/button/examples/outline.svelte +7 -0
  368. package/src/shared/shadcn/button/examples/preview.svelte +13 -0
  369. package/src/shared/shadcn/button/examples/rounded.svelte +12 -0
  370. package/src/shared/shadcn/button/examples/secondary.svelte +7 -0
  371. package/src/shared/shadcn/button/examples/size.svelte +27 -0
  372. package/src/shared/shadcn/button/examples/spinner.svelte +11 -0
  373. package/src/shared/shadcn/button/examples/with-icon.svelte +10 -0
  374. package/src/shared/shadcn/button/index.ts +22 -0
  375. package/src/shared/shadcn/button-group/button-group-separator.svelte +20 -0
  376. package/src/shared/shadcn/button-group/button-group-text.svelte +35 -0
  377. package/src/shared/shadcn/button-group/button-group.docs-body.md +426 -0
  378. package/src/shared/shadcn/button-group/button-group.docs.md +432 -0
  379. package/src/shared/shadcn/button-group/button-group.provenance.json +60 -0
  380. package/src/shared/shadcn/button-group/button-group.svelte +358 -0
  381. package/src/shared/shadcn/button-group/button-group.tokens.css +13 -0
  382. package/src/shared/shadcn/button-group/button-group.tokens.ts +10 -0
  383. package/src/shared/shadcn/button-group/examples/dropdown-menu.svelte +63 -0
  384. package/src/shared/shadcn/button-group/examples/input-group.svelte +51 -0
  385. package/src/shared/shadcn/button-group/examples/input.svelte +15 -0
  386. package/src/shared/shadcn/button-group/examples/nested.svelte +26 -0
  387. package/src/shared/shadcn/button-group/examples/orientation.svelte +21 -0
  388. package/src/shared/shadcn/button-group/examples/popover.svelte +49 -0
  389. package/src/shared/shadcn/button-group/examples/preview.svelte +100 -0
  390. package/src/shared/shadcn/button-group/examples/select.svelte +50 -0
  391. package/src/shared/shadcn/button-group/examples/separator.svelte +12 -0
  392. package/src/shared/shadcn/button-group/examples/size.svelte +34 -0
  393. package/src/shared/shadcn/button-group/examples/split.svelte +15 -0
  394. package/src/shared/shadcn/button-group/index.ts +23 -0
  395. package/src/shared/shadcn/card/card-action.svelte +22 -0
  396. package/src/shared/shadcn/card/card-content.svelte +22 -0
  397. package/src/shared/shadcn/card/card-description.svelte +22 -0
  398. package/src/shared/shadcn/card/card-footer.svelte +22 -0
  399. package/src/shared/shadcn/card/card-header.svelte +22 -0
  400. package/src/shared/shadcn/card/card-title.svelte +22 -0
  401. package/src/shared/shadcn/card/card.docs-body.md +112 -0
  402. package/src/shared/shadcn/card/card.docs.md +118 -0
  403. package/src/shared/shadcn/card/card.provenance.json +64 -0
  404. package/src/shared/shadcn/card/card.svelte +400 -0
  405. package/src/shared/shadcn/card/card.tokens.css +13 -0
  406. package/src/shared/shadcn/card/card.tokens.ts +9 -0
  407. package/src/shared/shadcn/card/examples/image.svelte +28 -0
  408. package/src/shared/shadcn/card/examples/preview-2.svelte +46 -0
  409. package/src/shared/shadcn/card/examples/preview.svelte +46 -0
  410. package/src/shared/shadcn/card/examples/spacing-2.svelte +42 -0
  411. package/src/shared/shadcn/card/examples/spacing.svelte +93 -0
  412. package/src/shared/shadcn/card/index.ts +27 -0
  413. package/src/shared/shadcn/checkbox/checkbox.docs-body.md +17 -0
  414. package/src/shared/shadcn/checkbox/checkbox.docs.md +23 -0
  415. package/src/shared/shadcn/checkbox/checkbox.provenance.json +40 -0
  416. package/src/shared/shadcn/checkbox/checkbox.svelte +425 -0
  417. package/src/shared/shadcn/checkbox/checkbox.tokens.css +13 -0
  418. package/src/shared/shadcn/checkbox/checkbox.tokens.ts +10 -0
  419. package/src/shared/shadcn/checkbox/examples/preview.svelte +41 -0
  420. package/src/shared/shadcn/checkbox/index.ts +8 -0
  421. package/src/shared/shadcn/code/Code.svelte +39 -0
  422. package/src/shared/shadcn/code/code.css +30 -0
  423. package/src/shared/shadcn/code/code.docs.md +33 -0
  424. package/src/shared/shadcn/code/code.tokens.css +14 -0
  425. package/src/shared/shadcn/code/code.tokens.ts +12 -0
  426. package/src/shared/shadcn/code/index.ts +3 -0
  427. package/src/shared/shadcn/code-block/CodeBlock.svelte +456 -0
  428. package/src/shared/shadcn/code-block/code-block-helpers.ts +91 -0
  429. package/src/shared/shadcn/code-block/code-block.css +298 -0
  430. package/src/shared/shadcn/code-block/code-block.docs.md +48 -0
  431. package/src/shared/shadcn/code-block/code-block.tokens.css +48 -0
  432. package/src/shared/shadcn/code-block/code-block.tokens.ts +25 -0
  433. package/src/shared/shadcn/code-block/highlightRanges.ts +451 -0
  434. package/src/shared/shadcn/code-block/highlightStyles.ts +76 -0
  435. package/src/shared/shadcn/code-block/index.ts +59 -0
  436. package/src/shared/shadcn/code-block/syntax/SyntaxTheme.svelte +32 -0
  437. package/src/shared/shadcn/code-block/syntax/THIRD_PARTY_LICENSES.md +72 -0
  438. package/src/shared/shadcn/code-block/syntax/defineSyntaxTheme.ts +111 -0
  439. package/src/shared/shadcn/code-block/syntax/index.ts +39 -0
  440. package/src/shared/shadcn/code-block/syntax/presets.ts +293 -0
  441. package/src/shared/shadcn/code-block/syntax/syntax-theme-context.svelte.ts +17 -0
  442. package/src/shared/shadcn/code-block/syntax/tokens.css +20 -0
  443. package/src/shared/shadcn/code-block/syntax/tokens.ts +28 -0
  444. package/src/shared/shadcn/code-block/tokenizer.ts +534 -0
  445. package/src/shared/shadcn/collapsible/collapsible-content.svelte +16 -0
  446. package/src/shared/shadcn/collapsible/collapsible-trigger.svelte +16 -0
  447. package/src/shared/shadcn/collapsible/collapsible.docs-body.md +23 -0
  448. package/src/shared/shadcn/collapsible/collapsible.docs.md +29 -0
  449. package/src/shared/shadcn/collapsible/collapsible.provenance.json +49 -0
  450. package/src/shared/shadcn/collapsible/collapsible.svelte +18 -0
  451. package/src/shared/shadcn/collapsible/collapsible.tokens.css +13 -0
  452. package/src/shared/shadcn/collapsible/collapsible.tokens.ts +10 -0
  453. package/src/shared/shadcn/collapsible/examples/preview.svelte +30 -0
  454. package/src/shared/shadcn/collapsible/index.ts +18 -0
  455. package/src/shared/shadcn/column-canvas/RESPONSIVE_SCROLL_PLAN.md +167 -0
  456. package/src/shared/shadcn/column-canvas/STICKY_COLUMNS_PLAN.md +84 -0
  457. package/src/shared/shadcn/column-canvas/column-canvas-body.svelte +53 -0
  458. package/src/shared/shadcn/column-canvas/column-canvas-close.svelte +43 -0
  459. package/src/shared/shadcn/column-canvas/column-canvas-collapsed-column.svelte +57 -0
  460. package/src/shared/shadcn/column-canvas/column-canvas-column-context.svelte.ts +31 -0
  461. package/src/shared/shadcn/column-canvas/column-canvas-column.svelte +609 -0
  462. package/src/shared/shadcn/column-canvas/column-canvas-controller.svelte.ts +701 -0
  463. package/src/shared/shadcn/column-canvas/column-canvas-count.svelte +33 -0
  464. package/src/shared/shadcn/column-canvas/column-canvas-header-actions.svelte +27 -0
  465. package/src/shared/shadcn/column-canvas/column-canvas-header.svelte +27 -0
  466. package/src/shared/shadcn/column-canvas/column-canvas-item.svelte +32 -0
  467. package/src/shared/shadcn/column-canvas/column-canvas-layout.ts +156 -0
  468. package/src/shared/shadcn/column-canvas/column-canvas-persistence.ts +165 -0
  469. package/src/shared/shadcn/column-canvas/column-canvas-title.svelte +31 -0
  470. package/src/shared/shadcn/column-canvas/column-canvas-toggle.svelte +115 -0
  471. package/src/shared/shadcn/column-canvas/column-canvas-types.ts +20 -0
  472. package/src/shared/shadcn/column-canvas/column-canvas.css +498 -0
  473. package/src/shared/shadcn/column-canvas/column-canvas.demo-data.ts +192 -0
  474. package/src/shared/shadcn/column-canvas/column-canvas.docs.md +530 -0
  475. package/src/shared/shadcn/column-canvas/column-canvas.showcase-data.ts +606 -0
  476. package/src/shared/shadcn/column-canvas/column-canvas.svelte +997 -0
  477. package/src/shared/shadcn/column-canvas/column-canvas.tokens.css +48 -0
  478. package/src/shared/shadcn/column-canvas/column-canvas.tokens.ts +30 -0
  479. package/src/shared/shadcn/column-canvas/context.svelte.ts +70 -0
  480. package/src/shared/shadcn/column-canvas/index.ts +96 -0
  481. package/src/shared/shadcn/command/command-dialog.svelte +48 -0
  482. package/src/shared/shadcn/command/command-empty.svelte +18 -0
  483. package/src/shared/shadcn/command/command-group.svelte +35 -0
  484. package/src/shared/shadcn/command/command-input.svelte +34 -0
  485. package/src/shared/shadcn/command/command-item.svelte +27 -0
  486. package/src/shared/shadcn/command/command-link-item.svelte +18 -0
  487. package/src/shared/shadcn/command/command-list.svelte +18 -0
  488. package/src/shared/shadcn/command/command-loading.svelte +8 -0
  489. package/src/shared/shadcn/command/command-separator.svelte +18 -0
  490. package/src/shared/shadcn/command/command-shortcut.svelte +22 -0
  491. package/src/shared/shadcn/command/command.docs-body.md +79 -0
  492. package/src/shared/shadcn/command/command.docs.md +85 -0
  493. package/src/shared/shadcn/command/command.provenance.json +86 -0
  494. package/src/shared/shadcn/command/command.svelte +536 -0
  495. package/src/shared/shadcn/command/command.tokens.css +13 -0
  496. package/src/shared/shadcn/command/command.tokens.ts +10 -0
  497. package/src/shared/shadcn/command/examples/preview.svelte +50 -0
  498. package/src/shared/shadcn/command/index.ts +39 -0
  499. package/src/shared/shadcn/command-view/command-view-empty.svelte +13 -0
  500. package/src/shared/shadcn/command-view/command-view-filters.svelte +44 -0
  501. package/src/shared/shadcn/command-view/command-view-footer.svelte +13 -0
  502. package/src/shared/shadcn/command-view/command-view-group.svelte +8 -0
  503. package/src/shared/shadcn/command-view/command-view-input.svelte +41 -0
  504. package/src/shared/shadcn/command-view/command-view-item-description.svelte +22 -0
  505. package/src/shared/shadcn/command-view/command-view-item-icon.svelte +22 -0
  506. package/src/shared/shadcn/command-view/command-view-item-label.svelte +22 -0
  507. package/src/shared/shadcn/command-view/command-view-item.svelte +21 -0
  508. package/src/shared/shadcn/command-view/command-view-list.svelte +36 -0
  509. package/src/shared/shadcn/command-view/command-view-shortcut.svelte +22 -0
  510. package/src/shared/shadcn/command-view/command-view.css +210 -0
  511. package/src/shared/shadcn/command-view/command-view.docs.md +60 -0
  512. package/src/shared/shadcn/command-view/command-view.provenance.json +8 -0
  513. package/src/shared/shadcn/command-view/command-view.svelte +30 -0
  514. package/src/shared/shadcn/command-view/command-view.tokens.css +21 -0
  515. package/src/shared/shadcn/command-view/command-view.tokens.ts +20 -0
  516. package/src/shared/shadcn/command-view/index.ts +46 -0
  517. package/src/shared/shadcn/context-menu/context-menu-checkbox-item.svelte +704 -0
  518. package/src/shared/shadcn/context-menu/context-menu-content.svelte +42 -0
  519. package/src/shared/shadcn/context-menu/context-menu-group-heading.svelte +22 -0
  520. package/src/shared/shadcn/context-menu/context-menu-group.svelte +12 -0
  521. package/src/shared/shadcn/context-menu/context-menu-item.svelte +25 -0
  522. package/src/shared/shadcn/context-menu/context-menu-label.svelte +26 -0
  523. package/src/shared/shadcn/context-menu/context-menu-portal.svelte +7 -0
  524. package/src/shared/shadcn/context-menu/context-menu-radio-group.svelte +18 -0
  525. package/src/shared/shadcn/context-menu/context-menu-radio-item.svelte +38 -0
  526. package/src/shared/shadcn/context-menu/context-menu-separator.svelte +18 -0
  527. package/src/shared/shadcn/context-menu/context-menu-shortcut.svelte +22 -0
  528. package/src/shared/shadcn/context-menu/context-menu-sub-content.svelte +18 -0
  529. package/src/shared/shadcn/context-menu/context-menu-sub-trigger.svelte +36 -0
  530. package/src/shared/shadcn/context-menu/context-menu-sub.svelte +8 -0
  531. package/src/shared/shadcn/context-menu/context-menu-trigger.svelte +32 -0
  532. package/src/shared/shadcn/context-menu/context-menu.docs-body.md +25 -0
  533. package/src/shared/shadcn/context-menu/context-menu.docs.md +31 -0
  534. package/src/shared/shadcn/context-menu/context-menu.provenance.json +106 -0
  535. package/src/shared/shadcn/context-menu/context-menu.svelte +17 -0
  536. package/src/shared/shadcn/context-menu/context-menu.tokens.css +7 -0
  537. package/src/shared/shadcn/context-menu/context-menu.tokens.ts +10 -0
  538. package/src/shared/shadcn/context-menu/index.ts +57 -0
  539. package/src/shared/shadcn/dialog/dialog-close.svelte +16 -0
  540. package/src/shared/shadcn/dialog/dialog-content.svelte +539 -0
  541. package/src/shared/shadcn/dialog/dialog-description.svelte +18 -0
  542. package/src/shared/shadcn/dialog/dialog-footer.svelte +34 -0
  543. package/src/shared/shadcn/dialog/dialog-header.svelte +22 -0
  544. package/src/shared/shadcn/dialog/dialog-overlay.svelte +18 -0
  545. package/src/shared/shadcn/dialog/dialog-portal.svelte +7 -0
  546. package/src/shared/shadcn/dialog/dialog-title.svelte +18 -0
  547. package/src/shared/shadcn/dialog/dialog-trigger.svelte +16 -0
  548. package/src/shared/shadcn/dialog/dialog.docs-body.md +101 -0
  549. package/src/shared/shadcn/dialog/dialog.docs.md +107 -0
  550. package/src/shared/shadcn/dialog/dialog.provenance.json +76 -0
  551. package/src/shared/shadcn/dialog/dialog.svelte +8 -0
  552. package/src/shared/shadcn/dialog/dialog.tokens.css +14 -0
  553. package/src/shared/shadcn/dialog/dialog.tokens.ts +11 -0
  554. package/src/shared/shadcn/dialog/examples/custom-close-button.svelte +36 -0
  555. package/src/shared/shadcn/dialog/examples/preview.svelte +46 -0
  556. package/src/shared/shadcn/dialog/index.ts +35 -0
  557. package/src/shared/shadcn/drawer/drawer-close.svelte +8 -0
  558. package/src/shared/shadcn/drawer/drawer-content.svelte +440 -0
  559. package/src/shared/shadcn/drawer/drawer-description.svelte +18 -0
  560. package/src/shared/shadcn/drawer/drawer-footer.svelte +22 -0
  561. package/src/shared/shadcn/drawer/drawer-header.svelte +22 -0
  562. package/src/shared/shadcn/drawer/drawer-nested.svelte +17 -0
  563. package/src/shared/shadcn/drawer/drawer-overlay.svelte +18 -0
  564. package/src/shared/shadcn/drawer/drawer-portal.svelte +7 -0
  565. package/src/shared/shadcn/drawer/drawer-title.svelte +18 -0
  566. package/src/shared/shadcn/drawer/drawer-trigger.svelte +8 -0
  567. package/src/shared/shadcn/drawer/drawer.docs-body.md +92 -0
  568. package/src/shared/shadcn/drawer/drawer.docs.md +98 -0
  569. package/src/shared/shadcn/drawer/drawer.provenance.json +86 -0
  570. package/src/shared/shadcn/drawer/drawer.svelte +17 -0
  571. package/src/shared/shadcn/drawer/drawer.tokens.css +7 -0
  572. package/src/shared/shadcn/drawer/drawer.tokens.ts +10 -0
  573. package/src/shared/shadcn/drawer/examples/preview.svelte +71 -0
  574. package/src/shared/shadcn/drawer/examples/sides.svelte +50 -0
  575. package/src/shared/shadcn/drawer/index.ts +40 -0
  576. package/src/shared/shadcn/dropdown-menu/dropdown-menu-checkbox-group.svelte +16 -0
  577. package/src/shared/shadcn/dropdown-menu/dropdown-menu-checkbox-item.svelte +735 -0
  578. package/src/shared/shadcn/dropdown-menu/dropdown-menu-content.svelte +47 -0
  579. package/src/shared/shadcn/dropdown-menu/dropdown-menu-group-heading.svelte +23 -0
  580. package/src/shared/shadcn/dropdown-menu/dropdown-menu-group.svelte +14 -0
  581. package/src/shared/shadcn/dropdown-menu/dropdown-menu-item.svelte +25 -0
  582. package/src/shared/shadcn/dropdown-menu/dropdown-menu-label.svelte +26 -0
  583. package/src/shared/shadcn/dropdown-menu/dropdown-menu-portal.svelte +7 -0
  584. package/src/shared/shadcn/dropdown-menu/dropdown-menu-radio-group.svelte +16 -0
  585. package/src/shared/shadcn/dropdown-menu/dropdown-menu-radio-item.svelte +34 -0
  586. package/src/shared/shadcn/dropdown-menu/dropdown-menu-separator.svelte +18 -0
  587. package/src/shared/shadcn/dropdown-menu/dropdown-menu-shortcut.svelte +22 -0
  588. package/src/shared/shadcn/dropdown-menu/dropdown-menu-sub-content.svelte +18 -0
  589. package/src/shared/shadcn/dropdown-menu/dropdown-menu-sub-trigger.svelte +27 -0
  590. package/src/shared/shadcn/dropdown-menu/dropdown-menu-sub.svelte +10 -0
  591. package/src/shared/shadcn/dropdown-menu/dropdown-menu-trigger.svelte +28 -0
  592. package/src/shared/shadcn/dropdown-menu/dropdown-menu.docs-body.md +189 -0
  593. package/src/shared/shadcn/dropdown-menu/dropdown-menu.docs.md +195 -0
  594. package/src/shared/shadcn/dropdown-menu/dropdown-menu.provenance.json +104 -0
  595. package/src/shared/shadcn/dropdown-menu/dropdown-menu.svelte +17 -0
  596. package/src/shared/shadcn/dropdown-menu/dropdown-menu.tokens.css +13 -0
  597. package/src/shared/shadcn/dropdown-menu/dropdown-menu.tokens.ts +10 -0
  598. package/src/shared/shadcn/dropdown-menu/examples/checkboxes.svelte +33 -0
  599. package/src/shared/shadcn/dropdown-menu/examples/dialog.svelte +95 -0
  600. package/src/shared/shadcn/dropdown-menu/examples/preview.svelte +61 -0
  601. package/src/shared/shadcn/dropdown-menu/examples/radio-group.svelte +27 -0
  602. package/src/shared/shadcn/dropdown-menu/index.ts +59 -0
  603. package/src/shared/shadcn/empty/empty-content.svelte +22 -0
  604. package/src/shared/shadcn/empty/empty-description.svelte +22 -0
  605. package/src/shared/shadcn/empty/empty-header.svelte +22 -0
  606. package/src/shared/shadcn/empty/empty-media.svelte +39 -0
  607. package/src/shared/shadcn/empty/empty-title.svelte +22 -0
  608. package/src/shared/shadcn/empty/empty.docs-body.md +103 -0
  609. package/src/shared/shadcn/empty/empty.docs.md +109 -0
  610. package/src/shared/shadcn/empty/empty.provenance.json +76 -0
  611. package/src/shared/shadcn/empty/empty.svelte +257 -0
  612. package/src/shared/shadcn/empty/empty.tokens.css +13 -0
  613. package/src/shared/shadcn/empty/empty.tokens.ts +9 -0
  614. package/src/shared/shadcn/empty/examples/background.svelte +28 -0
  615. package/src/shared/shadcn/empty/examples/outline.svelte +22 -0
  616. package/src/shared/shadcn/empty/examples/preview.svelte +32 -0
  617. package/src/shared/shadcn/empty/index.ts +24 -0
  618. package/src/shared/shadcn/field/examples/checkbox.svelte +64 -0
  619. package/src/shared/shadcn/field/examples/field-group.svelte +48 -0
  620. package/src/shared/shadcn/field/examples/fieldset.svelte +31 -0
  621. package/src/shared/shadcn/field/examples/input.svelte +27 -0
  622. package/src/shared/shadcn/field/examples/preview.svelte +136 -0
  623. package/src/shared/shadcn/field/examples/responsive-layout.svelte +50 -0
  624. package/src/shared/shadcn/field/examples/select.svelte +43 -0
  625. package/src/shared/shadcn/field/examples/switch.svelte +19 -0
  626. package/src/shared/shadcn/field/examples/textarea.svelte +24 -0
  627. package/src/shared/shadcn/field/field-content.svelte +22 -0
  628. package/src/shared/shadcn/field/field-description.svelte +22 -0
  629. package/src/shared/shadcn/field/field-error.svelte +66 -0
  630. package/src/shared/shadcn/field/field-group.svelte +22 -0
  631. package/src/shared/shadcn/field/field-label.svelte +22 -0
  632. package/src/shared/shadcn/field/field-legend.svelte +26 -0
  633. package/src/shared/shadcn/field/field-separator.svelte +42 -0
  634. package/src/shared/shadcn/field/field-set.svelte +22 -0
  635. package/src/shared/shadcn/field/field-title.svelte +22 -0
  636. package/src/shared/shadcn/field/field.docs-body.md +412 -0
  637. package/src/shared/shadcn/field/field.docs.md +418 -0
  638. package/src/shared/shadcn/field/field.provenance.json +102 -0
  639. package/src/shared/shadcn/field/field.svelte +540 -0
  640. package/src/shared/shadcn/field/field.tokens.css +13 -0
  641. package/src/shared/shadcn/field/field.tokens.ts +9 -0
  642. package/src/shared/shadcn/field/index.ts +35 -0
  643. package/src/shared/shadcn/hover-card/examples/basic.svelte +12 -0
  644. package/src/shared/shadcn/hover-card/hover-card-content.svelte +348 -0
  645. package/src/shared/shadcn/hover-card/hover-card-portal.svelte +7 -0
  646. package/src/shared/shadcn/hover-card/hover-card-trigger.svelte +26 -0
  647. package/src/shared/shadcn/hover-card/hover-card.docs-body.md +22 -0
  648. package/src/shared/shadcn/hover-card/hover-card.docs.md +28 -0
  649. package/src/shared/shadcn/hover-card/hover-card.provenance.json +58 -0
  650. package/src/shared/shadcn/hover-card/hover-card.svelte +15 -0
  651. package/src/shared/shadcn/hover-card/hover-card.tokens.css +14 -0
  652. package/src/shared/shadcn/hover-card/hover-card.tokens.ts +11 -0
  653. package/src/shared/shadcn/hover-card/index.ts +20 -0
  654. package/src/shared/shadcn/input/examples/default.svelte +7 -0
  655. package/src/shared/shadcn/input/examples/disabled.svelte +7 -0
  656. package/src/shared/shadcn/input/examples/file.svelte +11 -0
  657. package/src/shared/shadcn/input/examples/preview.svelte +7 -0
  658. package/src/shared/shadcn/input/examples/with-button.svelte +11 -0
  659. package/src/shared/shadcn/input/examples/with-label.svelte +13 -0
  660. package/src/shared/shadcn/input/index.ts +11 -0
  661. package/src/shared/shadcn/input/input.docs-body.md +83 -0
  662. package/src/shared/shadcn/input/input.docs.md +89 -0
  663. package/src/shared/shadcn/input/input.provenance.json +47 -0
  664. package/src/shared/shadcn/input/input.svelte +398 -0
  665. package/src/shared/shadcn/input/input.tokens.css +13 -0
  666. package/src/shared/shadcn/input/input.tokens.ts +9 -0
  667. package/src/shared/shadcn/input-group/examples/custom-input.svelte +20 -0
  668. package/src/shared/shadcn/input-group/examples/dropdown.svelte +58 -0
  669. package/src/shared/shadcn/input-group/examples/icon.svelte +42 -0
  670. package/src/shared/shadcn/input-group/examples/label.svelte +43 -0
  671. package/src/shared/shadcn/input-group/examples/preview.svelte +95 -0
  672. package/src/shared/shadcn/input-group/examples/spinner.svelte +40 -0
  673. package/src/shared/shadcn/input-group/examples/text.svelte +40 -0
  674. package/src/shared/shadcn/input-group/examples/textarea.svelte +37 -0
  675. package/src/shared/shadcn/input-group/examples/tooltip.svelte +79 -0
  676. package/src/shared/shadcn/input-group/index.ts +27 -0
  677. package/src/shared/shadcn/input-group/input-group-addon.svelte +51 -0
  678. package/src/shared/shadcn/input-group/input-group-button.svelte +46 -0
  679. package/src/shared/shadcn/input-group/input-group-input.svelte +20 -0
  680. package/src/shared/shadcn/input-group/input-group-text.svelte +22 -0
  681. package/src/shared/shadcn/input-group/input-group-textarea.svelte +20 -0
  682. package/src/shared/shadcn/input-group/input-group.docs-body.md +431 -0
  683. package/src/shared/shadcn/input-group/input-group.docs.md +437 -0
  684. package/src/shared/shadcn/input-group/input-group.provenance.json +81 -0
  685. package/src/shared/shadcn/input-group/input-group.svelte +628 -0
  686. package/src/shared/shadcn/input-group/input-group.tokens.css +13 -0
  687. package/src/shared/shadcn/input-group/input-group.tokens.ts +10 -0
  688. package/src/shared/shadcn/label/examples/preview.svelte +13 -0
  689. package/src/shared/shadcn/label/index.ts +9 -0
  690. package/src/shared/shadcn/label/label.docs-body.md +17 -0
  691. package/src/shared/shadcn/label/label.docs.md +23 -0
  692. package/src/shared/shadcn/label/label.provenance.json +40 -0
  693. package/src/shared/shadcn/label/label.svelte +169 -0
  694. package/src/shared/shadcn/label/label.tokens.css +13 -0
  695. package/src/shared/shadcn/label/label.tokens.ts +9 -0
  696. package/src/shared/shadcn/pagination/examples/preview.svelte +34 -0
  697. package/src/shared/shadcn/pagination/index.ts +36 -0
  698. package/src/shared/shadcn/pagination/pagination-content.svelte +22 -0
  699. package/src/shared/shadcn/pagination/pagination-ellipsis.svelte +29 -0
  700. package/src/shared/shadcn/pagination/pagination-item.svelte +14 -0
  701. package/src/shared/shadcn/pagination/pagination-link.svelte +40 -0
  702. package/src/shared/shadcn/pagination/pagination-next-button.svelte +39 -0
  703. package/src/shared/shadcn/pagination/pagination-next.svelte +25 -0
  704. package/src/shared/shadcn/pagination/pagination-prev-button.svelte +39 -0
  705. package/src/shared/shadcn/pagination/pagination-previous.svelte +25 -0
  706. package/src/shared/shadcn/pagination/pagination.docs-body.md +39 -0
  707. package/src/shared/shadcn/pagination/pagination.docs.md +45 -0
  708. package/src/shared/shadcn/pagination/pagination.provenance.json +72 -0
  709. package/src/shared/shadcn/pagination/pagination.svelte +215 -0
  710. package/src/shared/shadcn/pagination/pagination.tokens.css +13 -0
  711. package/src/shared/shadcn/pagination/pagination.tokens.ts +10 -0
  712. package/src/shared/shadcn/popover/examples/preview.svelte +42 -0
  713. package/src/shared/shadcn/popover/index.ts +30 -0
  714. package/src/shared/shadcn/popover/popover-close.svelte +8 -0
  715. package/src/shared/shadcn/popover/popover-content.svelte +376 -0
  716. package/src/shared/shadcn/popover/popover-description.svelte +22 -0
  717. package/src/shared/shadcn/popover/popover-header.svelte +22 -0
  718. package/src/shared/shadcn/popover/popover-portal.svelte +7 -0
  719. package/src/shared/shadcn/popover/popover-title.svelte +22 -0
  720. package/src/shared/shadcn/popover/popover-trigger.svelte +32 -0
  721. package/src/shared/shadcn/popover/popover.docs-body.md +20 -0
  722. package/src/shared/shadcn/popover/popover.docs.md +26 -0
  723. package/src/shared/shadcn/popover/popover.provenance.json +68 -0
  724. package/src/shared/shadcn/popover/popover.svelte +15 -0
  725. package/src/shared/shadcn/popover/popover.tokens.css +17 -0
  726. package/src/shared/shadcn/popover/popover.tokens.ts +13 -0
  727. package/src/shared/shadcn/progress/examples/preview.svelte +15 -0
  728. package/src/shared/shadcn/progress/index.ts +9 -0
  729. package/src/shared/shadcn/progress/progress.docs-body.md +17 -0
  730. package/src/shared/shadcn/progress/progress.docs.md +23 -0
  731. package/src/shared/shadcn/progress/progress.provenance.json +40 -0
  732. package/src/shared/shadcn/progress/progress.svelte +173 -0
  733. package/src/shared/shadcn/progress/progress.tokens.css +10 -0
  734. package/src/shared/shadcn/progress/progress.tokens.ts +10 -0
  735. package/src/shared/shadcn/resizable/examples/handle.svelte +22 -0
  736. package/src/shared/shadcn/resizable/examples/preview.svelte +29 -0
  737. package/src/shared/shadcn/resizable/examples/vertical.svelte +22 -0
  738. package/src/shared/shadcn/resizable/index.ts +18 -0
  739. package/src/shared/shadcn/resizable/resizable-handle.svelte +401 -0
  740. package/src/shared/shadcn/resizable/resizable-pane-group.svelte +22 -0
  741. package/src/shared/shadcn/resizable/resizable-pane.svelte +23 -0
  742. package/src/shared/shadcn/resizable/resizable.docs-body.md +82 -0
  743. package/src/shared/shadcn/resizable/resizable.docs.md +88 -0
  744. package/src/shared/shadcn/resizable/resizable.provenance.json +44 -0
  745. package/src/shared/shadcn/resizable/resizable.tokens.css +17 -0
  746. package/src/shared/shadcn/resizable/resizable.tokens.ts +14 -0
  747. package/src/shared/shadcn/scroll-area/ScrollArea.local-example-sources.ts +30 -0
  748. package/src/shared/shadcn/scroll-area/ScrollAreaBehaviorFixture.svelte +152 -0
  749. package/src/shared/shadcn/scroll-area/ScrollAreaScrollableList.svelte +49 -0
  750. package/src/shared/shadcn/scroll-area/examples/horizontal-scrolling.svelte +52 -0
  751. package/src/shared/shadcn/scroll-area/examples/preview.svelte +22 -0
  752. package/src/shared/shadcn/scroll-area/index.ts +20 -0
  753. package/src/shared/shadcn/scroll-area/scroll-area-model.ts +122 -0
  754. package/src/shared/shadcn/scroll-area/scroll-area-overlay-scrollbar.svelte +362 -0
  755. package/src/shared/shadcn/scroll-area/scroll-area-scrollbar.svelte +30 -0
  756. package/src/shared/shadcn/scroll-area/scroll-area.docs-body.md +81 -0
  757. package/src/shared/shadcn/scroll-area/scroll-area.docs.md +87 -0
  758. package/src/shared/shadcn/scroll-area/scroll-area.provenance.json +44 -0
  759. package/src/shared/shadcn/scroll-area/scroll-area.svelte +544 -0
  760. package/src/shared/shadcn/scroll-area/scroll-area.tokens.css +13 -0
  761. package/src/shared/shadcn/scroll-area/scroll-area.tokens.ts +10 -0
  762. package/src/shared/shadcn/select/examples/scrollable.svelte +62 -0
  763. package/src/shared/shadcn/select/index.ts +39 -0
  764. package/src/shared/shadcn/select/select-content.svelte +764 -0
  765. package/src/shared/shadcn/select/select-group-heading.svelte +22 -0
  766. package/src/shared/shadcn/select/select-group.svelte +18 -0
  767. package/src/shared/shadcn/select/select-item.svelte +47 -0
  768. package/src/shared/shadcn/select/select-label.svelte +22 -0
  769. package/src/shared/shadcn/select/select-portal.svelte +7 -0
  770. package/src/shared/shadcn/select/select-scroll-down-button.svelte +22 -0
  771. package/src/shared/shadcn/select/select-scroll-up-button.svelte +22 -0
  772. package/src/shared/shadcn/select/select-separator.svelte +19 -0
  773. package/src/shared/shadcn/select/select-trigger.svelte +46 -0
  774. package/src/shared/shadcn/select/select.docs-body.md +92 -0
  775. package/src/shared/shadcn/select/select.docs.md +98 -0
  776. package/src/shared/shadcn/select/select.provenance.json +86 -0
  777. package/src/shared/shadcn/select/select.svelte +18 -0
  778. package/src/shared/shadcn/select/select.tokens.css +13 -0
  779. package/src/shared/shadcn/select/select.tokens.ts +10 -0
  780. package/src/shared/shadcn/separator/examples/preview.svelte +22 -0
  781. package/src/shared/shadcn/separator/index.ts +14 -0
  782. package/src/shared/shadcn/separator/separator.docs-body.md +17 -0
  783. package/src/shared/shadcn/separator/separator.docs.md +23 -0
  784. package/src/shared/shadcn/separator/separator.provenance.json +40 -0
  785. package/src/shared/shadcn/separator/separator.svelte +150 -0
  786. package/src/shared/shadcn/separator/separator.tokens.css +13 -0
  787. package/src/shared/shadcn/separator/separator.tokens.ts +10 -0
  788. package/src/shared/shadcn/sheet/examples/preview.svelte +39 -0
  789. package/src/shared/shadcn/sheet/index.ts +36 -0
  790. package/src/shared/shadcn/sheet/sheet-close.svelte +8 -0
  791. package/src/shared/shadcn/sheet/sheet-content.svelte +593 -0
  792. package/src/shared/shadcn/sheet/sheet-description.svelte +18 -0
  793. package/src/shared/shadcn/sheet/sheet-footer.svelte +22 -0
  794. package/src/shared/shadcn/sheet/sheet-header.svelte +22 -0
  795. package/src/shared/shadcn/sheet/sheet-overlay.svelte +18 -0
  796. package/src/shared/shadcn/sheet/sheet-portal.svelte +7 -0
  797. package/src/shared/shadcn/sheet/sheet-title.svelte +18 -0
  798. package/src/shared/shadcn/sheet/sheet-trigger.svelte +8 -0
  799. package/src/shared/shadcn/sheet/sheet.docs-body.md +53 -0
  800. package/src/shared/shadcn/sheet/sheet.docs.md +59 -0
  801. package/src/shared/shadcn/sheet/sheet.provenance.json +76 -0
  802. package/src/shared/shadcn/sheet/sheet.svelte +8 -0
  803. package/src/shared/shadcn/sheet/sheet.tokens.css +13 -0
  804. package/src/shared/shadcn/sheet/sheet.tokens.ts +9 -0
  805. package/src/shared/shadcn/sidebar/constants.ts +6 -0
  806. package/src/shared/shadcn/sidebar/context.svelte.ts +81 -0
  807. package/src/shared/shadcn/sidebar/examples/collapsible-sidebar-group.svelte +50 -0
  808. package/src/shared/shadcn/sidebar/examples/collapsible-sidebar-menu.svelte +179 -0
  809. package/src/shared/shadcn/sidebar/examples/controlled-sidebar.svelte +81 -0
  810. package/src/shared/shadcn/sidebar/examples/dropdownmenu.svelte +86 -0
  811. package/src/shared/shadcn/sidebar/examples/sidebar-footer.svelte +52 -0
  812. package/src/shared/shadcn/sidebar/examples/sidebar-group.svelte +33 -0
  813. package/src/shared/shadcn/sidebar/examples/sidebar-groupaction.svelte +60 -0
  814. package/src/shared/shadcn/sidebar/examples/sidebar-header.svelte +44 -0
  815. package/src/shared/shadcn/sidebar/examples/sidebar-menu.svelte +63 -0
  816. package/src/shared/shadcn/sidebar/examples/sidebar-menubadge.svelte +72 -0
  817. package/src/shared/shadcn/sidebar/examples/sidebar-menusub.svelte +170 -0
  818. package/src/shared/shadcn/sidebar/examples/your-first-sidebar.svelte +70 -0
  819. package/src/shared/shadcn/sidebar/index.ts +75 -0
  820. package/src/shared/shadcn/sidebar/sidebar-content.svelte +23 -0
  821. package/src/shared/shadcn/sidebar/sidebar-footer.svelte +23 -0
  822. package/src/shared/shadcn/sidebar/sidebar-group-action.svelte +38 -0
  823. package/src/shared/shadcn/sidebar/sidebar-group-content.svelte +23 -0
  824. package/src/shared/shadcn/sidebar/sidebar-group-label.svelte +38 -0
  825. package/src/shared/shadcn/sidebar/sidebar-group.svelte +23 -0
  826. package/src/shared/shadcn/sidebar/sidebar-header.svelte +23 -0
  827. package/src/shared/shadcn/sidebar/sidebar-input.svelte +21 -0
  828. package/src/shared/shadcn/sidebar/sidebar-inset.svelte +22 -0
  829. package/src/shared/shadcn/sidebar/sidebar-menu-action.svelte +41 -0
  830. package/src/shared/shadcn/sidebar/sidebar-menu-badge.svelte +23 -0
  831. package/src/shared/shadcn/sidebar/sidebar-menu-button.svelte +111 -0
  832. package/src/shared/shadcn/sidebar/sidebar-menu-item.svelte +23 -0
  833. package/src/shared/shadcn/sidebar/sidebar-menu-skeleton.svelte +43 -0
  834. package/src/shared/shadcn/sidebar/sidebar-menu-sub-button.svelte +44 -0
  835. package/src/shared/shadcn/sidebar/sidebar-menu-sub-item.svelte +23 -0
  836. package/src/shared/shadcn/sidebar/sidebar-menu-sub.svelte +23 -0
  837. package/src/shared/shadcn/sidebar/sidebar-menu.svelte +26 -0
  838. package/src/shared/shadcn/sidebar/sidebar-provider.svelte +52 -0
  839. package/src/shared/shadcn/sidebar/sidebar-rail.svelte +33 -0
  840. package/src/shared/shadcn/sidebar/sidebar-separator.svelte +19 -0
  841. package/src/shared/shadcn/sidebar/sidebar-trigger.svelte +36 -0
  842. package/src/shared/shadcn/sidebar/sidebar.docs-body.md +1634 -0
  843. package/src/shared/shadcn/sidebar/sidebar.docs.md +1648 -0
  844. package/src/shared/shadcn/sidebar/sidebar.provenance.json +149 -0
  845. package/src/shared/shadcn/sidebar/sidebar.svelte +1431 -0
  846. package/src/shared/shadcn/sidebar/sidebar.tokens.ts +22 -0
  847. package/src/shared/shadcn/skeleton/examples/card.svelte +13 -0
  848. package/src/shared/shadcn/skeleton/examples/preview.svelte +13 -0
  849. package/src/shared/shadcn/skeleton/index.ts +9 -0
  850. package/src/shared/shadcn/skeleton/skeleton.docs-body.md +35 -0
  851. package/src/shared/shadcn/skeleton/skeleton.docs.md +41 -0
  852. package/src/shared/shadcn/skeleton/skeleton.provenance.json +40 -0
  853. package/src/shared/shadcn/skeleton/skeleton.svelte +131 -0
  854. package/src/shared/shadcn/skeleton/skeleton.tokens.css +13 -0
  855. package/src/shared/shadcn/skeleton/skeleton.tokens.ts +10 -0
  856. package/src/shared/shadcn/slider/index.ts +9 -0
  857. package/src/shared/shadcn/slider/slider.docs-body.md +18 -0
  858. package/src/shared/shadcn/slider/slider.docs.md +24 -0
  859. package/src/shared/shadcn/slider/slider.provenance.json +46 -0
  860. package/src/shared/shadcn/slider/slider.svelte +399 -0
  861. package/src/shared/shadcn/slider/slider.tokens.css +11 -0
  862. package/src/shared/shadcn/slider/slider.tokens.ts +11 -0
  863. package/src/shared/shadcn/spinner/examples/badge.svelte +21 -0
  864. package/src/shared/shadcn/spinner/examples/button.svelte +21 -0
  865. package/src/shared/shadcn/spinner/examples/color.svelte +13 -0
  866. package/src/shared/shadcn/spinner/examples/customization.svelte +18 -0
  867. package/src/shared/shadcn/spinner/examples/empty.svelte +22 -0
  868. package/src/shared/shadcn/spinner/examples/input-group.svelte +26 -0
  869. package/src/shared/shadcn/spinner/examples/size.svelte +12 -0
  870. package/src/shared/shadcn/spinner/index.ts +3 -0
  871. package/src/shared/shadcn/spinner/spinner.docs-body.md +189 -0
  872. package/src/shared/shadcn/spinner/spinner.docs.md +195 -0
  873. package/src/shared/shadcn/spinner/spinner.provenance.json +59 -0
  874. package/src/shared/shadcn/spinner/spinner.svelte +50 -0
  875. package/src/shared/shadcn/spinner/spinner.tokens.css +13 -0
  876. package/src/shared/shadcn/spinner/spinner.tokens.ts +10 -0
  877. package/src/shared/shadcn/swipe-item/index.ts +30 -0
  878. package/src/shared/shadcn/swipe-item/swipe-item-action.svelte +40 -0
  879. package/src/shared/shadcn/swipe-item/swipe-item-actions.svelte +68 -0
  880. package/src/shared/shadcn/swipe-item/swipe-item-content.svelte +32 -0
  881. package/src/shared/shadcn/swipe-item/swipe-item-context.svelte.ts +612 -0
  882. package/src/shared/shadcn/swipe-item/swipe-item-gesture.ts +137 -0
  883. package/src/shared/shadcn/swipe-item/swipe-item-trigger.svelte +44 -0
  884. package/src/shared/shadcn/swipe-item/swipe-item.css +80 -0
  885. package/src/shared/shadcn/swipe-item/swipe-item.docs.md +75 -0
  886. package/src/shared/shadcn/swipe-item/swipe-item.svelte +76 -0
  887. package/src/shared/shadcn/swipe-item/swipe-item.tokens.css +15 -0
  888. package/src/shared/shadcn/swipe-item/swipe-item.tokens.ts +14 -0
  889. package/src/shared/shadcn/swipe-item/types.ts +31 -0
  890. package/src/shared/shadcn/switch/examples/preview.svelte +11 -0
  891. package/src/shared/shadcn/switch/index.ts +9 -0
  892. package/src/shared/shadcn/switch/switch.docs-body.md +17 -0
  893. package/src/shared/shadcn/switch/switch.docs.md +23 -0
  894. package/src/shared/shadcn/switch/switch.provenance.json +40 -0
  895. package/src/shared/shadcn/switch/switch.svelte +542 -0
  896. package/src/shared/shadcn/switch/switch.tokens.css +13 -0
  897. package/src/shared/shadcn/switch/switch.tokens.ts +10 -0
  898. package/src/shared/shadcn/table/examples/preview.svelte +78 -0
  899. package/src/shared/shadcn/table/index.ts +30 -0
  900. package/src/shared/shadcn/table/table-body.svelte +22 -0
  901. package/src/shared/shadcn/table/table-caption.svelte +22 -0
  902. package/src/shared/shadcn/table/table-cell.svelte +22 -0
  903. package/src/shared/shadcn/table/table-footer.svelte +22 -0
  904. package/src/shared/shadcn/table/table-head.svelte +22 -0
  905. package/src/shared/shadcn/table/table-header.svelte +22 -0
  906. package/src/shared/shadcn/table/table-row.svelte +22 -0
  907. package/src/shared/shadcn/table/table.docs-body.md +43 -0
  908. package/src/shared/shadcn/table/table.docs.md +49 -0
  909. package/src/shared/shadcn/table/table.provenance.json +68 -0
  910. package/src/shared/shadcn/table/table.svelte +249 -0
  911. package/src/shared/shadcn/table/table.tokens.css +13 -0
  912. package/src/shared/shadcn/table/table.tokens.ts +9 -0
  913. package/src/shared/shadcn/tabs/examples/preview.svelte +64 -0
  914. package/src/shared/shadcn/tabs/index.ts +23 -0
  915. package/src/shared/shadcn/tabs/tabs-content.svelte +18 -0
  916. package/src/shared/shadcn/tabs/tabs-list.svelte +35 -0
  917. package/src/shared/shadcn/tabs/tabs-trigger.svelte +18 -0
  918. package/src/shared/shadcn/tabs/tabs.docs-body.md +26 -0
  919. package/src/shared/shadcn/tabs/tabs.docs.md +32 -0
  920. package/src/shared/shadcn/tabs/tabs.provenance.json +52 -0
  921. package/src/shared/shadcn/tabs/tabs.svelte +748 -0
  922. package/src/shared/shadcn/tabs/tabs.tokens.css +13 -0
  923. package/src/shared/shadcn/tabs/tabs.tokens.ts +9 -0
  924. package/src/shared/shadcn/textarea/examples/default.svelte +7 -0
  925. package/src/shared/shadcn/textarea/examples/disabled.svelte +7 -0
  926. package/src/shared/shadcn/textarea/examples/preview.svelte +7 -0
  927. package/src/shared/shadcn/textarea/examples/with-button.svelte +11 -0
  928. package/src/shared/shadcn/textarea/examples/with-label.svelte +11 -0
  929. package/src/shared/shadcn/textarea/examples/with-text.svelte +14 -0
  930. package/src/shared/shadcn/textarea/index.ts +9 -0
  931. package/src/shared/shadcn/textarea/textarea.docs-body.md +84 -0
  932. package/src/shared/shadcn/textarea/textarea.docs.md +90 -0
  933. package/src/shared/shadcn/textarea/textarea.provenance.json +47 -0
  934. package/src/shared/shadcn/textarea/textarea.svelte +345 -0
  935. package/src/shared/shadcn/textarea/textarea.tokens.css +13 -0
  936. package/src/shared/shadcn/textarea/textarea.tokens.ts +10 -0
  937. package/src/shared/shadcn/toggle/examples/default.svelte +16 -0
  938. package/src/shared/shadcn/toggle/examples/disabled.svelte +10 -0
  939. package/src/shared/shadcn/toggle/examples/large.svelte +10 -0
  940. package/src/shared/shadcn/toggle/examples/outline.svelte +10 -0
  941. package/src/shared/shadcn/toggle/examples/preview.svelte +16 -0
  942. package/src/shared/shadcn/toggle/examples/small.svelte +10 -0
  943. package/src/shared/shadcn/toggle/examples/with-text.svelte +11 -0
  944. package/src/shared/shadcn/toggle/index.ts +15 -0
  945. package/src/shared/shadcn/toggle/toggle.docs-body.md +104 -0
  946. package/src/shared/shadcn/toggle/toggle.docs.md +110 -0
  947. package/src/shared/shadcn/toggle/toggle.provenance.json +48 -0
  948. package/src/shared/shadcn/toggle/toggle.svelte +411 -0
  949. package/src/shared/shadcn/toggle/toggle.tokens.css +13 -0
  950. package/src/shared/shadcn/toggle/toggle.tokens.ts +10 -0
  951. package/src/shared/shadcn/toggle-group/examples/disabled.svelte +20 -0
  952. package/src/shared/shadcn/toggle-group/examples/large.svelte +20 -0
  953. package/src/shared/shadcn/toggle-group/examples/outline.svelte +20 -0
  954. package/src/shared/shadcn/toggle-group/examples/single.svelte +20 -0
  955. package/src/shared/shadcn/toggle-group/examples/small.svelte +20 -0
  956. package/src/shared/shadcn/toggle-group/examples/spacing-2.svelte +35 -0
  957. package/src/shared/shadcn/toggle-group/examples/spacing.svelte +35 -0
  958. package/src/shared/shadcn/toggle-group/index.ts +15 -0
  959. package/src/shared/shadcn/toggle-group/toggle-group-item.svelte +164 -0
  960. package/src/shared/shadcn/toggle-group/toggle-group.docs-body.md +178 -0
  961. package/src/shared/shadcn/toggle-group/toggle-group.docs.md +184 -0
  962. package/src/shared/shadcn/toggle-group/toggle-group.provenance.json +52 -0
  963. package/src/shared/shadcn/toggle-group/toggle-group.svelte +436 -0
  964. package/src/shared/shadcn/toggle-group/toggle-group.tokens.css +13 -0
  965. package/src/shared/shadcn/toggle-group/toggle-group.tokens.ts +10 -0
  966. package/src/shared/shadcn/tooltip/examples/preview.svelte +17 -0
  967. package/src/shared/shadcn/tooltip/index.ts +21 -0
  968. package/src/shared/shadcn/tooltip/tooltip-content.svelte +369 -0
  969. package/src/shared/shadcn/tooltip/tooltip-portal.svelte +7 -0
  970. package/src/shared/shadcn/tooltip/tooltip-provider.svelte +8 -0
  971. package/src/shared/shadcn/tooltip/tooltip-trigger.svelte +24 -0
  972. package/src/shared/shadcn/tooltip/tooltip.docs-body.md +56 -0
  973. package/src/shared/shadcn/tooltip/tooltip.docs.md +62 -0
  974. package/src/shared/shadcn/tooltip/tooltip.provenance.json +56 -0
  975. package/src/shared/shadcn/tooltip/tooltip.svelte +15 -0
  976. package/src/shared/shadcn/tooltip/tooltip.tokens.css +13 -0
  977. package/src/shared/shadcn/tooltip/tooltip.tokens.ts +10 -0
  978. package/src/shared/shell/PLAN.md +121 -0
  979. package/src/shared/shell/app-shell/AppShell.css +579 -0
  980. package/src/shared/shell/app-shell/AppShellBody.svelte +72 -0
  981. package/src/shared/shell/app-shell/AppShellBodyContent.svelte +46 -0
  982. package/src/shared/shell/app-shell/AppShellBodySidebar.svelte +116 -0
  983. package/src/shared/shell/app-shell/AppShellBodyToggle.svelte +112 -0
  984. package/src/shared/shell/app-shell/AppShellMain.svelte +35 -0
  985. package/src/shared/shell/app-shell/AppShellMobilePanelSelector.svelte +63 -0
  986. package/src/shared/shell/app-shell/AppShellRoot.svelte +565 -0
  987. package/src/shared/shell/app-shell/AppShellSidebar.svelte +493 -0
  988. package/src/shared/shell/app-shell/AppShellSidebarBody.svelte +29 -0
  989. package/src/shared/shell/app-shell/AppShellSidebarClose.svelte +100 -0
  990. package/src/shared/shell/app-shell/AppShellSidebarFooter.svelte +26 -0
  991. package/src/shared/shell/app-shell/AppShellSidebarHeader.svelte +26 -0
  992. package/src/shared/shell/app-shell/AppShellSidebarToggle.svelte +242 -0
  993. package/src/shared/shell/app-shell/AppShellToolbar.svelte +29 -0
  994. package/src/shared/shell/app-shell/app-shell-body-context.svelte.ts +39 -0
  995. package/src/shared/shell/app-shell/app-shell-context.svelte.ts +27 -0
  996. package/src/shared/shell/app-shell/app-shell-controller.svelte.ts +683 -0
  997. package/src/shared/shell/app-shell/app-shell-persistence.ts +70 -0
  998. package/src/shared/shell/app-shell/app-shell-sidebar-context.svelte.ts +34 -0
  999. package/src/shared/shell/app-shell/app-shell-teleport.ts +38 -0
  1000. package/src/shared/shell/app-shell/examples/AppShellBodyDemo.svelte +28 -0
  1001. package/src/shared/shell/app-shell/examples/AppShellCompleteDemo.svelte +123 -0
  1002. package/src/shared/shell/app-shell/examples/AppShellConversationDemo.svelte +143 -0
  1003. package/src/shared/shell/app-shell/examples/AppShellFilesSidebarDemo.svelte +70 -0
  1004. package/src/shared/shell/app-shell/examples/AppShellMarkdownDocumentDemo.svelte +112 -0
  1005. package/src/shared/shell/app-shell/examples/AppShellMarkdownFilesDemo.svelte +67 -0
  1006. package/src/shared/shell/app-shell/examples/AppShellModeSwitchDemo.svelte +42 -0
  1007. package/src/shared/shell/app-shell/examples/AppShellProjectSidebarDemo.svelte +121 -0
  1008. package/src/shared/shell/app-shell/examples/AppShellSidebarDemo.svelte +142 -0
  1009. package/src/shared/shell/app-shell/examples/AppShellToolbarDemo.svelte +26 -0
  1010. package/src/shared/shell/app-shell/index.ts +73 -0
  1011. package/src/shared/shell/index.ts +1 -0
  1012. package/src/shared/shell/shell.tokens.css +22 -0
  1013. package/src/shared/shell/shell.tokens.ts +39 -0
  1014. package/src/shared/workspace/PLAN.md +1052 -0
  1015. package/src/shared/workspace/REFERENCE.md +122 -0
  1016. package/src/shared/workspace/about-dialog/WorkspaceAboutDialog.css +163 -0
  1017. package/src/shared/workspace/about-dialog/WorkspaceAboutDialog.svelte +113 -0
  1018. package/src/shared/workspace/about-dialog/index.ts +1 -0
  1019. package/src/shared/workspace/app-shell/AppShellAboutDialog.svelte +23 -0
  1020. package/src/shared/workspace/app-shell/AppShellBottomPanel.svelte +15 -0
  1021. package/src/shared/workspace/app-shell/AppShellCommandPalette.svelte +13 -0
  1022. package/src/shared/workspace/app-shell/AppShellCorePluginsSettings.svelte +8 -0
  1023. package/src/shared/workspace/app-shell/AppShellDesktopLayout.css +81 -0
  1024. package/src/shared/workspace/app-shell/AppShellDesktopLayout.svelte +33 -0
  1025. package/src/shared/workspace/app-shell/AppShellFloatingLayer.svelte +20 -0
  1026. package/src/shared/workspace/app-shell/AppShellHotkeySettings.svelte +8 -0
  1027. package/src/shared/workspace/app-shell/AppShellLeftSidebar.svelte +146 -0
  1028. package/src/shared/workspace/app-shell/AppShellMain.svelte +14 -0
  1029. package/src/shared/workspace/app-shell/AppShellNoticeToasts.svelte +41 -0
  1030. package/src/shared/workspace/app-shell/AppShellNotices.svelte +8 -0
  1031. package/src/shared/workspace/app-shell/AppShellOverlayLayer.svelte +34 -0
  1032. package/src/shared/workspace/app-shell/AppShellPluginLayer.svelte +17 -0
  1033. package/src/shared/workspace/app-shell/AppShellRibbon.svelte +10 -0
  1034. package/src/shared/workspace/app-shell/AppShellRightSidebar.svelte +8 -0
  1035. package/src/shared/workspace/app-shell/AppShellRoot.css +101 -0
  1036. package/src/shared/workspace/app-shell/AppShellRoot.svelte +125 -0
  1037. package/src/shared/workspace/app-shell/AppShellSettings.svelte +8 -0
  1038. package/src/shared/workspace/app-shell/AppShellSettingsDialog.css +80 -0
  1039. package/src/shared/workspace/app-shell/AppShellSettingsDialog.svelte +110 -0
  1040. package/src/shared/workspace/app-shell/AppShellSidebar.svelte +10 -0
  1041. package/src/shared/workspace/app-shell/AppShellStatusBar.svelte +8 -0
  1042. package/src/shared/workspace/app-shell/AppShellSurface.svelte +139 -0
  1043. package/src/shared/workspace/app-shell/AppShellTabs.svelte +29 -0
  1044. package/src/shared/workspace/app-shell/AppShellWorkspace.css +19 -0
  1045. package/src/shared/workspace/app-shell/AppShellWorkspace.svelte +67 -0
  1046. package/src/shared/workspace/app-shell/app-shell-context.svelte.ts +37 -0
  1047. package/src/shared/workspace/app-shell/index.ts +79 -0
  1048. package/src/shared/workspace/app-shell/workspace-navigation.ts +16 -0
  1049. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanel.css +406 -0
  1050. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanel.svelte +412 -0
  1051. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanelEmpty.svelte +38 -0
  1052. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanelGroup.svelte +313 -0
  1053. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanelStoryView.svelte +21 -0
  1054. package/src/shared/workspace/bottom-panel/WorkspaceBottomPanelToggle.svelte +68 -0
  1055. package/src/shared/workspace/bottom-panel/index.ts +3 -0
  1056. package/src/shared/workspace/command-palette/WorkspaceCommandPalette.css +33 -0
  1057. package/src/shared/workspace/command-palette/WorkspaceCommandPalette.svelte +183 -0
  1058. package/src/shared/workspace/command-palette/index.ts +1 -0
  1059. package/src/shared/workspace/core/app-shell-controller.svelte.ts +687 -0
  1060. package/src/shared/workspace/core/app-shell-ui-registry.svelte.ts +165 -0
  1061. package/src/shared/workspace/core/app-workspace.ts +484 -0
  1062. package/src/shared/workspace/core/built-in-settings.svelte.ts +467 -0
  1063. package/src/shared/workspace/core/command-manager.svelte.ts +752 -0
  1064. package/src/shared/workspace/core/editor-view-registry.ts +232 -0
  1065. package/src/shared/workspace/core/event-dispatcher.ts +91 -0
  1066. package/src/shared/workspace/core/index.ts +21 -0
  1067. package/src/shared/workspace/core/layout.ts +463 -0
  1068. package/src/shared/workspace/core/managed-plugin-settings.svelte.ts +142 -0
  1069. package/src/shared/workspace/core/notice-manager.svelte.ts +122 -0
  1070. package/src/shared/workspace/core/notification-manager.svelte.ts +631 -0
  1071. package/src/shared/workspace/core/persistence.ts +21 -0
  1072. package/src/shared/workspace/core/plugin-manager.svelte.ts +463 -0
  1073. package/src/shared/workspace/core/popout.ts +38 -0
  1074. package/src/shared/workspace/core/serializable.ts +16 -0
  1075. package/src/shared/workspace/core/types.ts +357 -0
  1076. package/src/shared/workspace/core/view-registry.ts +21 -0
  1077. package/src/shared/workspace/core/workspace-controller.svelte.ts +1509 -0
  1078. package/src/shared/workspace/core/workspace-json.ts +429 -0
  1079. package/src/shared/workspace/core/workspace-menu.ts +121 -0
  1080. package/src/shared/workspace/core/workspace-view.ts +241 -0
  1081. package/src/shared/workspace/demo/ReusableFrameworkDemo.css +52 -0
  1082. package/src/shared/workspace/demo/ReusableFrameworkDemo.svelte +19 -0
  1083. package/src/shared/workspace/demo/framework-demo.ts +482 -0
  1084. package/src/shared/workspace/demo/index.ts +5 -0
  1085. package/src/shared/workspace/drag/index.ts +9 -0
  1086. package/src/shared/workspace/drag/workspace-drag.svelte.ts +354 -0
  1087. package/src/shared/workspace/drag/workspace-pointer-drag-policy.ts +18 -0
  1088. package/src/shared/workspace/drop-overlay/WorkspaceDropOverlay.css +24 -0
  1089. package/src/shared/workspace/drop-overlay/WorkspaceDropOverlay.svelte +48 -0
  1090. package/src/shared/workspace/drop-overlay/WorkspaceTabsDrop.svelte +146 -0
  1091. package/src/shared/workspace/drop-overlay/index.ts +7 -0
  1092. package/src/shared/workspace/drop-overlay/workspace-tabs-drop.ts +59 -0
  1093. package/src/shared/workspace/empty/WorkspaceEmpty.css +42 -0
  1094. package/src/shared/workspace/empty/WorkspaceEmpty.svelte +88 -0
  1095. package/src/shared/workspace/empty/index.ts +1 -0
  1096. package/src/shared/workspace/empty/workspace-empty-actions.ts +127 -0
  1097. package/src/shared/workspace/explorer/WorkspaceExplorer.css +275 -0
  1098. package/src/shared/workspace/explorer/WorkspaceExplorer.svelte +662 -0
  1099. package/src/shared/workspace/explorer/create-explorer-view.ts +31 -0
  1100. package/src/shared/workspace/explorer/explorer-controller.svelte.ts +423 -0
  1101. package/src/shared/workspace/explorer/index.ts +45 -0
  1102. package/src/shared/workspace/explorer/memory-adapter.ts +290 -0
  1103. package/src/shared/workspace/explorer/path.ts +37 -0
  1104. package/src/shared/workspace/explorer/tree.ts +164 -0
  1105. package/src/shared/workspace/explorer/types.ts +134 -0
  1106. package/src/shared/workspace/floating-layer/WorkspaceFloatingLayer.css +19 -0
  1107. package/src/shared/workspace/floating-layer/WorkspaceFloatingLayer.svelte +68 -0
  1108. package/src/shared/workspace/floating-layer/index.ts +1 -0
  1109. package/src/shared/workspace/floating-window/WorkspaceFloatingWindow.css +205 -0
  1110. package/src/shared/workspace/floating-window/WorkspaceFloatingWindow.svelte +353 -0
  1111. package/src/shared/workspace/floating-window/index.ts +1 -0
  1112. package/src/shared/workspace/icon/WorkspaceIcon.css +21 -0
  1113. package/src/shared/workspace/icon/WorkspaceIcon.svelte +38 -0
  1114. package/src/shared/workspace/icon/WorkspaceIconPicker.css +69 -0
  1115. package/src/shared/workspace/icon/WorkspaceIconPicker.svelte +168 -0
  1116. package/src/shared/workspace/icon/icons.ts +92 -0
  1117. package/src/shared/workspace/icon/index.ts +10 -0
  1118. package/src/shared/workspace/index.ts +49 -0
  1119. package/src/shared/workspace/menu/WorkspaceContextMenuItems.svelte +83 -0
  1120. package/src/shared/workspace/menu/WorkspaceMenuItems.css +58 -0
  1121. package/src/shared/workspace/menu/WorkspaceMenuItems.svelte +83 -0
  1122. package/src/shared/workspace/menu/index.ts +2 -0
  1123. package/src/shared/workspace/mobile/WorkspaceMobile.css +417 -0
  1124. package/src/shared/workspace/mobile/WorkspaceMobile.svelte +429 -0
  1125. package/src/shared/workspace/mobile/WorkspaceMobileActionSheet.css +101 -0
  1126. package/src/shared/workspace/mobile/WorkspaceMobileActionSheet.svelte +59 -0
  1127. package/src/shared/workspace/mobile/WorkspaceMobileActionsDrawer.svelte +133 -0
  1128. package/src/shared/workspace/mobile/WorkspaceMobileDock.svelte +109 -0
  1129. package/src/shared/workspace/mobile/WorkspaceMobileSidebar.svelte +144 -0
  1130. package/src/shared/workspace/mobile/WorkspaceMobileTabTile.svelte +71 -0
  1131. package/src/shared/workspace/mobile/WorkspaceMobileTabs.svelte +102 -0
  1132. package/src/shared/workspace/mobile/WorkspaceMobileTabsActions.svelte +62 -0
  1133. package/src/shared/workspace/mobile/WorkspaceMobileViewActions.svelte +56 -0
  1134. package/src/shared/workspace/mobile/index.ts +9 -0
  1135. package/src/shared/workspace/plugins/f-mode/FModeOverlay.css +158 -0
  1136. package/src/shared/workspace/plugins/f-mode/FModeOverlay.svelte +210 -0
  1137. package/src/shared/workspace/plugins/f-mode/f-mode-plugin.ts +152 -0
  1138. package/src/shared/workspace/plugins/f-mode/f-mode-session.svelte.ts +57 -0
  1139. package/src/shared/workspace/plugins/f-mode/hint-labels.ts +123 -0
  1140. package/src/shared/workspace/plugins/f-mode/index.ts +6 -0
  1141. package/src/shared/workspace/plugins/f-mode/settings.ts +191 -0
  1142. package/src/shared/workspace/plugins/f-mode/types.ts +29 -0
  1143. package/src/shared/workspace/plugins/notifications/NotificationCenter.svelte +225 -0
  1144. package/src/shared/workspace/plugins/notifications/NotificationStatus.svelte +41 -0
  1145. package/src/shared/workspace/plugins/notifications/NotificationToasts.svelte +41 -0
  1146. package/src/shared/workspace/plugins/notifications/Notifications.css +331 -0
  1147. package/src/shared/workspace/plugins/notifications/NotificationsOverlay.svelte +23 -0
  1148. package/src/shared/workspace/plugins/notifications/NotificationsStorySurface.svelte +15 -0
  1149. package/src/shared/workspace/plugins/notifications/index.ts +12 -0
  1150. package/src/shared/workspace/plugins/notifications/notification-presentation.svelte.ts +15 -0
  1151. package/src/shared/workspace/plugins/notifications/notification-status-model.ts +137 -0
  1152. package/src/shared/workspace/plugins/notifications/notifications-plugin.ts +101 -0
  1153. package/src/shared/workspace/plugins/notifications/types.ts +10 -0
  1154. package/src/shared/workspace/popout/AppShellPopoutLayer.svelte +92 -0
  1155. package/src/shared/workspace/popout/WorkspaceOverlayPortalFixture.svelte +49 -0
  1156. package/src/shared/workspace/popout/WorkspacePopoutSurface.css +16 -0
  1157. package/src/shared/workspace/popout/WorkspacePopoutSurface.svelte +50 -0
  1158. package/src/shared/workspace/popout/index.ts +2 -0
  1159. package/src/shared/workspace/problems/ProblemsQuickFix.svelte +53 -0
  1160. package/src/shared/workspace/problems/WorkspaceProblems.css +568 -0
  1161. package/src/shared/workspace/problems/WorkspaceProblems.svelte +352 -0
  1162. package/src/shared/workspace/problems/WorkspaceProblemsTable.svelte +190 -0
  1163. package/src/shared/workspace/problems/diagnostics-manager.svelte.ts +326 -0
  1164. package/src/shared/workspace/problems/index.ts +43 -0
  1165. package/src/shared/workspace/problems/problems-controller.svelte.ts +346 -0
  1166. package/src/shared/workspace/problems/problems-plugin.ts +206 -0
  1167. package/src/shared/workspace/problems/types.ts +151 -0
  1168. package/src/shared/workspace/ribbon/WorkspaceRibbon.css +107 -0
  1169. package/src/shared/workspace/ribbon/WorkspaceRibbon.svelte +89 -0
  1170. package/src/shared/workspace/ribbon/index.ts +1 -0
  1171. package/src/shared/workspace/settings/AppSettingsContent.svelte +210 -0
  1172. package/src/shared/workspace/settings/AppSettingsNavigation.svelte +59 -0
  1173. package/src/shared/workspace/settings/AppSettingsRoot.svelte +36 -0
  1174. package/src/shared/workspace/settings/AppSettingsSearch.svelte +37 -0
  1175. package/src/shared/workspace/settings/AppSettingsSection.svelte +72 -0
  1176. package/src/shared/workspace/settings/AppShellHotkeySettings.svelte +403 -0
  1177. package/src/shared/workspace/settings/AppShellPluginsSettings.svelte +104 -0
  1178. package/src/shared/workspace/settings/WorkspaceSettingAddButton.svelte +24 -0
  1179. package/src/shared/workspace/settings/WorkspaceSettingField.svelte +436 -0
  1180. package/src/shared/workspace/settings/WorkspaceSettingList.svelte +95 -0
  1181. package/src/shared/workspace/settings/WorkspaceSettingMultiSelect.svelte +147 -0
  1182. package/src/shared/workspace/settings/WorkspaceSettingObjectTable.svelte +212 -0
  1183. package/src/shared/workspace/settings/WorkspaceSettingSelect.svelte +120 -0
  1184. package/src/shared/workspace/settings/WorkspaceSettingToggleTable.svelte +63 -0
  1185. package/src/shared/workspace/settings/WorkspaceSettings.css +1190 -0
  1186. package/src/shared/workspace/settings/WorkspaceSettingsStoryCustomField.svelte +17 -0
  1187. package/src/shared/workspace/settings/WorkspaceSettingsSurface.svelte +28 -0
  1188. package/src/shared/workspace/settings/app-settings-context.svelte.ts +33 -0
  1189. package/src/shared/workspace/settings/configuration.ts +90 -0
  1190. package/src/shared/workspace/settings/index.ts +39 -0
  1191. package/src/shared/workspace/settings/multiselect.ts +40 -0
  1192. package/src/shared/workspace/settings/object-collection.ts +54 -0
  1193. package/src/shared/workspace/settings/persistence.ts +24 -0
  1194. package/src/shared/workspace/settings/plugin-settings-target.ts +33 -0
  1195. package/src/shared/workspace/settings/search-hit.ts +2 -0
  1196. package/src/shared/workspace/settings/settings-controller.svelte.ts +629 -0
  1197. package/src/shared/workspace/settings/types.ts +254 -0
  1198. package/src/shared/workspace/sidebar/WorkspaceSidebar.css +368 -0
  1199. package/src/shared/workspace/sidebar/WorkspaceSidebar.svelte +398 -0
  1200. package/src/shared/workspace/sidebar/index.ts +1 -0
  1201. package/src/shared/workspace/sidebar-empty/WorkspaceSidebarEmpty.css +50 -0
  1202. package/src/shared/workspace/sidebar-empty/WorkspaceSidebarEmpty.svelte +48 -0
  1203. package/src/shared/workspace/sidebar-empty/index.ts +1 -0
  1204. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroup.css +214 -0
  1205. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroup.svelte +339 -0
  1206. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroupEditor.css +46 -0
  1207. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroupEditor.svelte +164 -0
  1208. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroupVisibilityDialog.css +18 -0
  1209. package/src/shared/workspace/sidebar-group/WorkspaceSidebarGroupVisibilityDialog.svelte +97 -0
  1210. package/src/shared/workspace/sidebar-group/index.ts +11 -0
  1211. package/src/shared/workspace/sidebar-group/workspace-sidebar-layout.ts +82 -0
  1212. package/src/shared/workspace/sidebar-toggle/WorkspaceSidebarToggle.css +74 -0
  1213. package/src/shared/workspace/sidebar-toggle/WorkspaceSidebarToggle.svelte +68 -0
  1214. package/src/shared/workspace/sidebar-toggle/index.ts +1 -0
  1215. package/src/shared/workspace/split/WorkspaceSplit.css +110 -0
  1216. package/src/shared/workspace/split/WorkspaceSplit.svelte +64 -0
  1217. package/src/shared/workspace/split/index.ts +1 -0
  1218. package/src/shared/workspace/stacked-tabs/WorkspaceStackedTabs.css +297 -0
  1219. package/src/shared/workspace/stacked-tabs/WorkspaceStackedTabs.svelte +519 -0
  1220. package/src/shared/workspace/stacked-tabs/index.ts +1 -0
  1221. package/src/shared/workspace/startup/WorkspaceStartup.css +201 -0
  1222. package/src/shared/workspace/startup/WorkspaceStartup.svelte +216 -0
  1223. package/src/shared/workspace/startup/index.ts +7 -0
  1224. package/src/shared/workspace/status-bar/WorkspaceStatusBar.css +40 -0
  1225. package/src/shared/workspace/status-bar/WorkspaceStatusBar.svelte +36 -0
  1226. package/src/shared/workspace/status-bar/index.ts +1 -0
  1227. package/src/shared/workspace/status-item/WorkspaceStatusItem.css +67 -0
  1228. package/src/shared/workspace/status-item/WorkspaceStatusItem.svelte +97 -0
  1229. package/src/shared/workspace/status-item/index.ts +1 -0
  1230. package/src/shared/workspace/tabs/WorkspaceTabs.css +467 -0
  1231. package/src/shared/workspace/tabs/WorkspaceTabs.svelte +627 -0
  1232. package/src/shared/workspace/tabs/WorkspaceTabsMove.svelte +152 -0
  1233. package/src/shared/workspace/tabs/index.ts +2 -0
  1234. package/src/shared/workspace/tree/WorkspaceTree.css +11 -0
  1235. package/src/shared/workspace/tree/WorkspaceTree.svelte +86 -0
  1236. package/src/shared/workspace/tree/index.ts +1 -0
  1237. package/src/shared/workspace/view-header/WorkspaceViewHeader.css +170 -0
  1238. package/src/shared/workspace/view-header/WorkspaceViewHeader.svelte +282 -0
  1239. package/src/shared/workspace/view-header/WorkspaceViewLabel.css +48 -0
  1240. package/src/shared/workspace/view-header/WorkspaceViewLabel.svelte +61 -0
  1241. package/src/shared/workspace/view-header/index.ts +2 -0
  1242. package/src/shared/workspace/view-header/workspace-view-label.ts +61 -0
  1243. package/src/shared/workspace/view-host/ExampleWorkspaceView.svelte +35 -0
  1244. package/src/shared/workspace/view-host/WorkspaceImperativeView.svelte +32 -0
  1245. package/src/shared/workspace/view-host/WorkspaceViewHost.css +23 -0
  1246. package/src/shared/workspace/view-host/WorkspaceViewHost.svelte +94 -0
  1247. package/src/shared/workspace/view-host/index.ts +2 -0
  1248. package/src/shared/workspace/workspace-desktop-drag.css +9 -0
  1249. package/src/shared/workspace/workspace.tokens.css +181 -0
  1250. package/src/shared/workspace/workspace.tokens.ts +224 -0
  1251. package/src/storybook/catalog-layout.ts +28 -0
  1252. package/src/storybook/visual-capture.ts +9 -0
  1253. package/src/storybook.css +46 -0
  1254. package/src/styles.css +81 -0
  1255. package/src/theme.css +122 -0
  1256. package/src/themes/lapis.css +225 -0
@@ -0,0 +1,1767 @@
1
+ import { defineFormConfig } from "../core/core";
2
+ import {
3
+ addEntryLabel,
4
+ defaultEntry,
5
+ defaultSection,
6
+ entryTitle,
7
+ simpleListEntryMarker,
8
+ } from "./complete-cv-form.model";
9
+ import type {
10
+ BulletEntry,
11
+ CvFragment,
12
+ CvSectionOf,
13
+ DesignFragment,
14
+ EducationEntry,
15
+ ExperienceEntry,
16
+ ExperienceExtraDetail,
17
+ ExperienceRoleHistoryEntry,
18
+ LocaleFragment,
19
+ NormalEntry,
20
+ NumberedEntry,
21
+ OneLineEntry,
22
+ PublicationEntry,
23
+ ReversedNumberedEntry,
24
+ SettingsFragment,
25
+ SocialNetwork,
26
+ } from "./complete-cv-form.types";
27
+
28
+ const options = (values: string[]) =>
29
+ values.map((value) => ({ value, label: value }));
30
+
31
+ const themeOptions = [
32
+ { value: "classic", label: "Classic" },
33
+ { value: "ember", label: "Ember" },
34
+ { value: "engineeringclassic", label: "Engineering Classic" },
35
+ { value: "engineeringresumes", label: "Engineering Resumes" },
36
+ { value: "harvard", label: "Harvard" },
37
+ { value: "ink", label: "Ink" },
38
+ { value: "moderncv", label: "ModernCV" },
39
+ { value: "opal", label: "Opal" },
40
+ { value: "sb2nov", label: "SB2Nov" },
41
+ ];
42
+
43
+ const fontFamilyOptions = options([
44
+ "DejaVu Sans Mono",
45
+ "EB Garamond",
46
+ "Fontin",
47
+ "Gentium Book Plus",
48
+ "Lato",
49
+ "Libertinus Serif",
50
+ "Mukta",
51
+ "New Computer Modern",
52
+ "Noto Sans",
53
+ "Open Sans",
54
+ "Open Sauce Sans",
55
+ "Poppins",
56
+ "Raleway",
57
+ "Roboto",
58
+ "Source Sans 3",
59
+ "Ubuntu",
60
+ "XCharter",
61
+ ]);
62
+
63
+ const socialNetworkConfig = defineFormConfig<SocialNetwork>()({
64
+ id: "complete-cv-social-network",
65
+ fields: {
66
+ network: {
67
+ kind: "options",
68
+ label: "Network",
69
+ options: options([
70
+ "LinkedIn",
71
+ "GitHub",
72
+ "GitLab",
73
+ "IMDB",
74
+ "Instagram",
75
+ "ORCID",
76
+ "Mastodon",
77
+ "StackOverflow",
78
+ "ResearchGate",
79
+ "YouTube",
80
+ "Google Scholar",
81
+ "Telegram",
82
+ "WhatsApp",
83
+ "Leetcode",
84
+ "X",
85
+ "Bluesky",
86
+ "Reddit",
87
+ ]),
88
+ },
89
+ username: { kind: "text", label: "Username" },
90
+ },
91
+ });
92
+
93
+ const roleHistoryConfig = defineFormConfig<ExperienceRoleHistoryEntry>()({
94
+ id: "complete-cv-role-history",
95
+ fields: {
96
+ position: { kind: "text", label: "Position" },
97
+ date: { kind: "text", label: "Date" },
98
+ start_date: { kind: "text", label: "Start date" },
99
+ end_date: { kind: "text", label: "End date" },
100
+ display_date: { kind: "text", label: "Display date" },
101
+ },
102
+ });
103
+
104
+ const extraDetailConfig = defineFormConfig<ExperienceExtraDetail>()({
105
+ id: "complete-cv-extra-detail",
106
+ defaults: { content_type: "list", enabled: true, items: [] },
107
+ fields: {
108
+ id: { kind: "text", label: "ID" },
109
+ title: { kind: "text", label: "Title" },
110
+ content_type: {
111
+ kind: "segmented",
112
+ label: "Content type",
113
+ options: options(["list", "text"]),
114
+ },
115
+ enabled: { kind: "boolean", label: "Enabled" },
116
+ text: { kind: "textarea", label: "Text" },
117
+ items: {
118
+ kind: "ordered-string-list",
119
+ label: "Items",
120
+ addLabel: "detail",
121
+ },
122
+ },
123
+ });
124
+
125
+ const experienceEntryConfig = defineFormConfig<ExperienceEntry>()({
126
+ id: "complete-cv-experience-entry",
127
+ fields: {
128
+ company: { kind: "text", label: "Company" },
129
+ position: { kind: "text", label: "Position" },
130
+ location: { kind: "text", label: "Location" },
131
+ date: { kind: "text", label: "Date" },
132
+ start_date: { kind: "text", label: "Start date" },
133
+ end_date: { kind: "text", label: "End date" },
134
+ display_date: { kind: "text", label: "Display date" },
135
+ summary: { kind: "textarea", label: "Summary" },
136
+ highlights: {
137
+ kind: "ordered-string-list",
138
+ label: "Highlights",
139
+ addLabel: "Add",
140
+ },
141
+ role_history: {
142
+ kind: "array",
143
+ label: "Role History",
144
+ presentation: "sections",
145
+ appearance: "subsection",
146
+ createItem: () => ({
147
+ position: "Role",
148
+ start_date: "",
149
+ end_date: "",
150
+ display_date: "",
151
+ }),
152
+ itemConfig: roleHistoryConfig,
153
+ itemTitle: ({ item, index }) => item.position || `Role ${index + 1}`,
154
+ itemTestId: ({ index }) => `role_history-${index}`,
155
+ addLabel: "Add role history",
156
+ addButtonPresentation: "panel",
157
+ testId: "role-history",
158
+ },
159
+ extra_details: {
160
+ kind: "array",
161
+ label: "Extra Details",
162
+ presentation: "sections",
163
+ appearance: "subsection",
164
+ createItem: () => ({
165
+ id: "detail",
166
+ title: "Extra detail",
167
+ content_type: "list",
168
+ enabled: true,
169
+ items: [""],
170
+ }),
171
+ itemConfig: extraDetailConfig,
172
+ itemTitle: ({ item, index }) => item.title || `Detail ${index + 1}`,
173
+ itemTestId: ({ index }) => `extra_details-${index}`,
174
+ addLabel: "Add extra detail",
175
+ addButtonPresentation: "panel",
176
+ testId: "extra-details",
177
+ },
178
+ },
179
+ });
180
+
181
+ const educationEntryConfig = defineFormConfig<EducationEntry>()({
182
+ id: "complete-cv-education-entry",
183
+ fields: {
184
+ institution: { kind: "text", label: "Institution" },
185
+ area: { kind: "text", label: "Area" },
186
+ degree: { kind: "text", label: "Degree" },
187
+ location: { kind: "text", label: "Location" },
188
+ date: { kind: "text", label: "Date" },
189
+ start_date: { kind: "text", label: "Start date" },
190
+ end_date: { kind: "text", label: "End date" },
191
+ display_date: { kind: "text", label: "Display date" },
192
+ summary: { kind: "textarea", label: "Summary" },
193
+ highlights: {
194
+ kind: "ordered-string-list",
195
+ label: "Highlights",
196
+ addLabel: "Add",
197
+ },
198
+ },
199
+ });
200
+
201
+ const publicationEntryConfig = defineFormConfig<PublicationEntry>()({
202
+ id: "complete-cv-publication-entry",
203
+ fields: {
204
+ title: { kind: "text", label: "Title" },
205
+ journal: { kind: "text", label: "Journal" },
206
+ date: { kind: "text", label: "Date" },
207
+ doi: { kind: "text", label: "DOI" },
208
+ url: { kind: "text", label: "URL", inputType: "url" },
209
+ summary: { kind: "textarea", label: "Summary" },
210
+ authors: {
211
+ kind: "ordered-string-list",
212
+ label: "Authors",
213
+ addLabel: "author",
214
+ },
215
+ },
216
+ });
217
+
218
+ const oneLineEntryConfig = defineFormConfig<OneLineEntry>()({
219
+ id: "complete-cv-one-line-entry",
220
+ fields: {
221
+ label: { kind: "text", label: "Label" },
222
+ details: { kind: "textarea", label: "Details" },
223
+ },
224
+ });
225
+
226
+ const bulletEntryConfig = defineFormConfig<BulletEntry>()({
227
+ id: "complete-cv-bullet-entry",
228
+ fields: { bullet: { kind: "textarea", label: "Bullet" } },
229
+ });
230
+
231
+ const numberedEntryConfig = defineFormConfig<NumberedEntry>()({
232
+ id: "complete-cv-numbered-entry",
233
+ fields: { number: { kind: "textarea", label: "Numbered item" } },
234
+ });
235
+
236
+ const reversedNumberedEntryConfig = defineFormConfig<ReversedNumberedEntry>()({
237
+ id: "complete-cv-reversed-numbered-entry",
238
+ fields: {
239
+ reversed_number: {
240
+ kind: "textarea",
241
+ label: "Reversed numbered item",
242
+ },
243
+ },
244
+ });
245
+
246
+ const normalEntryConfig = defineFormConfig<NormalEntry>()({
247
+ id: "complete-cv-normal-entry",
248
+ fields: {
249
+ name: { kind: "text", label: "Name" },
250
+ url: { kind: "text", label: "URL", inputType: "url" },
251
+ date: { kind: "text", label: "Date" },
252
+ start_date: { kind: "text", label: "Start date" },
253
+ end_date: { kind: "text", label: "End date" },
254
+ display_date: { kind: "text", label: "Display date" },
255
+ location: { kind: "text", label: "Location" },
256
+ summary: { kind: "textarea", label: "Summary" },
257
+ highlights: {
258
+ kind: "ordered-string-list",
259
+ label: "Highlights",
260
+ addLabel: "Add",
261
+ },
262
+ },
263
+ });
264
+
265
+ const experienceSectionConfig = defineFormConfig<
266
+ CvSectionOf<"ExperienceEntry">
267
+ >()({
268
+ id: "complete-cv-section-ExperienceEntry",
269
+ fields: {
270
+ entries: {
271
+ kind: "array",
272
+ label: "Entries",
273
+ showLabel: false,
274
+ presentation: "sections",
275
+ createItem: () => defaultEntry("ExperienceEntry"),
276
+ itemConfig: experienceEntryConfig,
277
+ itemTitle: ({ item, index }) =>
278
+ entryTitle("ExperienceEntry", item, index),
279
+ addLabel: `Add ${addEntryLabel("ExperienceEntry")}`,
280
+ itemTestId: ({ index }) => `entry-ExperienceEntry-${index}`,
281
+ },
282
+ },
283
+ });
284
+
285
+ const educationSectionConfig = defineFormConfig<
286
+ CvSectionOf<"EducationEntry">
287
+ >()({
288
+ id: "complete-cv-section-EducationEntry",
289
+ fields: {
290
+ entries: {
291
+ kind: "array",
292
+ label: "Entries",
293
+ showLabel: false,
294
+ presentation: "sections",
295
+ createItem: () => defaultEntry("EducationEntry"),
296
+ itemConfig: educationEntryConfig,
297
+ itemTitle: ({ item, index }) => entryTitle("EducationEntry", item, index),
298
+ addLabel: `Add ${addEntryLabel("EducationEntry")}`,
299
+ itemTestId: ({ index }) => `entry-EducationEntry-${index}`,
300
+ },
301
+ },
302
+ });
303
+
304
+ const publicationSectionConfig = defineFormConfig<
305
+ CvSectionOf<"PublicationEntry">
306
+ >()({
307
+ id: "complete-cv-section-PublicationEntry",
308
+ fields: {
309
+ entries: {
310
+ kind: "array",
311
+ label: "Entries",
312
+ showLabel: false,
313
+ presentation: "sections",
314
+ createItem: () => defaultEntry("PublicationEntry"),
315
+ itemConfig: publicationEntryConfig,
316
+ itemTitle: ({ item, index }) =>
317
+ entryTitle("PublicationEntry", item, index),
318
+ addLabel: `Add ${addEntryLabel("PublicationEntry")}`,
319
+ itemTestId: ({ index }) => `entry-PublicationEntry-${index}`,
320
+ },
321
+ },
322
+ });
323
+
324
+ const normalSectionConfig = defineFormConfig<CvSectionOf<"NormalEntry">>()({
325
+ id: "complete-cv-section-NormalEntry",
326
+ fields: {
327
+ entries: {
328
+ kind: "array",
329
+ label: "Entries",
330
+ showLabel: false,
331
+ presentation: "sections",
332
+ createItem: () => defaultEntry("NormalEntry"),
333
+ itemConfig: normalEntryConfig,
334
+ itemTitle: ({ item, index }) => entryTitle("NormalEntry", item, index),
335
+ addLabel: `Add ${addEntryLabel("NormalEntry")}`,
336
+ itemTestId: ({ index }) => `entry-NormalEntry-${index}`,
337
+ },
338
+ },
339
+ });
340
+
341
+ const textSectionConfig = defineFormConfig<CvSectionOf<"TextEntry">>()({
342
+ id: "complete-cv-section-TextEntry",
343
+ fields: {
344
+ entries: {
345
+ kind: "array",
346
+ label: "Text",
347
+ showLabel: false,
348
+ presentation: "rows",
349
+ createItem: () => defaultEntry("TextEntry"),
350
+ itemField: { kind: "textarea", label: "Text", hideLabel: true },
351
+ itemTitle: ({ item, index }) => entryTitle("TextEntry", item, index),
352
+ addLabel: "Add",
353
+ },
354
+ },
355
+ });
356
+
357
+ const oneLineSectionConfig = defineFormConfig<CvSectionOf<"OneLineEntry">>()({
358
+ id: "complete-cv-section-OneLineEntry",
359
+ fields: {
360
+ entries: {
361
+ kind: "array",
362
+ label: "Entries",
363
+ showLabel: false,
364
+ presentation: "rows",
365
+ createItem: () => defaultEntry("OneLineEntry"),
366
+ itemConfig: oneLineEntryConfig,
367
+ itemTitle: ({ item, index }) => entryTitle("OneLineEntry", item, index),
368
+ addLabel: `Add ${addEntryLabel("OneLineEntry")}`,
369
+ },
370
+ },
371
+ });
372
+
373
+ const bulletSectionConfig = defineFormConfig<CvSectionOf<"BulletEntry">>()({
374
+ id: "complete-cv-section-BulletEntry",
375
+ fields: {
376
+ entries: {
377
+ kind: "array",
378
+ label: "Entries",
379
+ showLabel: false,
380
+ hideItemLabels: true,
381
+ presentation: "rows",
382
+ createItem: () => defaultEntry("BulletEntry"),
383
+ itemConfig: bulletEntryConfig,
384
+ itemTitle: ({ item, index }) => entryTitle("BulletEntry", item, index),
385
+ marker: ({ index, total }) =>
386
+ simpleListEntryMarker("BulletEntry", index, total),
387
+ markerSpacing: "wide",
388
+ addLabel: `Add ${addEntryLabel("BulletEntry")}`,
389
+ },
390
+ },
391
+ });
392
+
393
+ const numberedSectionConfig = defineFormConfig<CvSectionOf<"NumberedEntry">>()({
394
+ id: "complete-cv-section-NumberedEntry",
395
+ fields: {
396
+ entries: {
397
+ kind: "array",
398
+ label: "Entries",
399
+ showLabel: false,
400
+ hideItemLabels: true,
401
+ presentation: "rows",
402
+ createItem: () => defaultEntry("NumberedEntry"),
403
+ itemConfig: numberedEntryConfig,
404
+ itemTitle: ({ item, index }) => entryTitle("NumberedEntry", item, index),
405
+ marker: ({ index, total }) =>
406
+ simpleListEntryMarker("NumberedEntry", index, total),
407
+ addLabel: `Add ${addEntryLabel("NumberedEntry")}`,
408
+ },
409
+ },
410
+ });
411
+
412
+ const reversedNumberedSectionConfig = defineFormConfig<
413
+ CvSectionOf<"ReversedNumberedEntry">
414
+ >()({
415
+ id: "complete-cv-section-ReversedNumberedEntry",
416
+ fields: {
417
+ entries: {
418
+ kind: "array",
419
+ label: "Entries",
420
+ showLabel: false,
421
+ hideItemLabels: true,
422
+ presentation: "rows",
423
+ createItem: () => defaultEntry("ReversedNumberedEntry"),
424
+ itemConfig: reversedNumberedEntryConfig,
425
+ itemTitle: ({ item, index }) =>
426
+ entryTitle("ReversedNumberedEntry", item, index),
427
+ marker: ({ index, total }) =>
428
+ simpleListEntryMarker("ReversedNumberedEntry", index, total),
429
+ addLabel: `Add ${addEntryLabel("ReversedNumberedEntry")}`,
430
+ },
431
+ },
432
+ });
433
+
434
+ export const completeCvConfig = defineFormConfig<CvFragment>()({
435
+ id: "complete-cv",
436
+ layout: "stacked",
437
+ validationMode: "onTouched",
438
+ groups: {
439
+ profile: { title: "Profile", collapsible: true, hiddenHeader: true },
440
+ sections: { title: "Sections", collapsible: true, hiddenHeader: true },
441
+ },
442
+ fields: {
443
+ name: { kind: "text", label: "Name", group: "profile" },
444
+ headline: { kind: "text", label: "Headline", group: "profile" },
445
+ location: { kind: "text", label: "Location", group: "profile" },
446
+ email: {
447
+ kind: "text",
448
+ label: "Email",
449
+ inputType: "email",
450
+ group: "profile",
451
+ },
452
+ phone: {
453
+ kind: "text",
454
+ label: "Phone",
455
+ inputType: "tel",
456
+ group: "profile",
457
+ },
458
+ website: {
459
+ kind: "text",
460
+ label: "Website",
461
+ inputType: "url",
462
+ group: "profile",
463
+ },
464
+ last_updated: {
465
+ kind: "text",
466
+ label: "Last updated",
467
+ group: "profile",
468
+ },
469
+ social_networks: {
470
+ kind: "array",
471
+ label: "Social Networks",
472
+ group: "profile",
473
+ presentation: "rows",
474
+ addPlacement: "header",
475
+ addLabel: "Add",
476
+ createItem: () => ({ network: "LinkedIn", username: "" }),
477
+ itemConfig: socialNetworkConfig,
478
+ itemTitle: ({ item, index }) =>
479
+ item.network || `Social network ${index + 1}`,
480
+ testId: "social-networks",
481
+ },
482
+ target_roles: {
483
+ kind: "ordered-string-list",
484
+ label: "Target Roles",
485
+ group: "profile",
486
+ addLabel: "Add",
487
+ },
488
+ sections: {
489
+ kind: "variant-array",
490
+ label: "Sections",
491
+ group: "sections",
492
+ showLabel: false,
493
+ presentation: "sections",
494
+ discriminator: "entry_type",
495
+ editableTitlePath: "title",
496
+ itemTitle: "title",
497
+ getKey: (section) => section.id,
498
+ itemTestId: ({ item }) => `cv-section-${item.entry_type}`,
499
+ addLabel: "Add New Section",
500
+ variants: {
501
+ TextEntry: {
502
+ label: "Text",
503
+ createItem: () => defaultSection("TextEntry"),
504
+ itemConfig: textSectionConfig,
505
+ },
506
+ ExperienceEntry: {
507
+ label: "Experience Entry",
508
+ createItem: () => defaultSection("ExperienceEntry"),
509
+ itemConfig: experienceSectionConfig,
510
+ },
511
+ EducationEntry: {
512
+ label: "Education Entry",
513
+ createItem: () => defaultSection("EducationEntry"),
514
+ itemConfig: educationSectionConfig,
515
+ },
516
+ PublicationEntry: {
517
+ label: "Publication Entry",
518
+ createItem: () => defaultSection("PublicationEntry"),
519
+ itemConfig: publicationSectionConfig,
520
+ },
521
+ OneLineEntry: {
522
+ label: "One-Line Entry",
523
+ createItem: () => defaultSection("OneLineEntry"),
524
+ itemConfig: oneLineSectionConfig,
525
+ },
526
+ BulletEntry: {
527
+ label: "Bullet Entry",
528
+ createItem: () => defaultSection("BulletEntry"),
529
+ itemConfig: bulletSectionConfig,
530
+ },
531
+ NumberedEntry: {
532
+ label: "Numbered Entry",
533
+ createItem: () => defaultSection("NumberedEntry"),
534
+ itemConfig: numberedSectionConfig,
535
+ },
536
+ ReversedNumberedEntry: {
537
+ label: "Reversed Numbered Entry",
538
+ createItem: () => defaultSection("ReversedNumberedEntry"),
539
+ itemConfig: reversedNumberedSectionConfig,
540
+ },
541
+ NormalEntry: {
542
+ label: "Normal Entry",
543
+ createItem: () => defaultSection("NormalEntry"),
544
+ itemConfig: normalSectionConfig,
545
+ },
546
+ },
547
+ },
548
+ },
549
+ });
550
+
551
+ export const completeDesignConfig = defineFormConfig<DesignFragment>()({
552
+ id: "complete-cv-design",
553
+ layout: "stacked",
554
+ groups: {
555
+ "design-theme": {
556
+ title: "Theme",
557
+ collapsible: true,
558
+ },
559
+ "design-page": {
560
+ title: "Page",
561
+ collapsible: true,
562
+ },
563
+ "design-colors": {
564
+ title: "Colors",
565
+ collapsible: true,
566
+ },
567
+ "design-typography": {
568
+ title: "Typography",
569
+ collapsible: true,
570
+ },
571
+ "design-font-family": {
572
+ title: "Font Family",
573
+ collapsible: true,
574
+ },
575
+ "design-font-size": {
576
+ title: "Font Size",
577
+ collapsible: true,
578
+ },
579
+ "design-small-caps": {
580
+ title: "Small Caps",
581
+ collapsible: true,
582
+ },
583
+ "design-bold": {
584
+ title: "Bold",
585
+ collapsible: true,
586
+ },
587
+ "design-links": {
588
+ title: "Links",
589
+ collapsible: true,
590
+ },
591
+ "design-header": {
592
+ title: "Header",
593
+ collapsible: true,
594
+ },
595
+ "design-header-connections": {
596
+ title: "Header Connections",
597
+ collapsible: true,
598
+ },
599
+ "design-section-titles": {
600
+ title: "Section Titles",
601
+ collapsible: true,
602
+ },
603
+ "design-sections": {
604
+ title: "Sections",
605
+ collapsible: true,
606
+ },
607
+ "design-entries": {
608
+ title: "Entries",
609
+ collapsible: true,
610
+ },
611
+ "design-entry-summary": {
612
+ title: "Entry Summary",
613
+ collapsible: true,
614
+ },
615
+ "design-entry-highlights": {
616
+ title: "Entry Highlights",
617
+ collapsible: true,
618
+ },
619
+ "design-templates": {
620
+ title: "Templates",
621
+ collapsible: true,
622
+ },
623
+ "design-one_line_entry": {
624
+ title: "One-Line Entry Template",
625
+ collapsible: true,
626
+ },
627
+ "design-education_entry": {
628
+ title: "Education Entry Template",
629
+ collapsible: true,
630
+ },
631
+ "design-normal_entry": {
632
+ title: "Normal Entry Template",
633
+ collapsible: true,
634
+ },
635
+ "design-experience_entry": {
636
+ title: "Experience Entry Template",
637
+ collapsible: true,
638
+ },
639
+ "design-publication_entry": {
640
+ title: "Publication Entry Template",
641
+ collapsible: true,
642
+ },
643
+ },
644
+ fields: {
645
+ theme: {
646
+ kind: "options",
647
+ label: "Theme",
648
+ group: "design-theme",
649
+ defaultValue: "moderncv",
650
+ presentation: "cycle",
651
+ options: themeOptions,
652
+ },
653
+ "page.size": {
654
+ kind: "options",
655
+ label: "Page size",
656
+ group: "design-page",
657
+ defaultValue: "a4",
658
+ options: [
659
+ {
660
+ value: "a4",
661
+ label: "A4",
662
+ },
663
+ {
664
+ value: "a5",
665
+ label: "A5",
666
+ },
667
+ {
668
+ value: "us-letter",
669
+ label: "US Letter",
670
+ },
671
+ {
672
+ value: "us-executive",
673
+ label: "US Executive",
674
+ },
675
+ ],
676
+ },
677
+ "page.top_margin": {
678
+ kind: "text",
679
+ label: "Top margin",
680
+ group: "design-page",
681
+ },
682
+ "page.bottom_margin": {
683
+ kind: "text",
684
+ label: "Bottom margin",
685
+ group: "design-page",
686
+ },
687
+ "page.left_margin": {
688
+ kind: "text",
689
+ label: "Left margin",
690
+ group: "design-page",
691
+ },
692
+ "page.right_margin": {
693
+ kind: "text",
694
+ label: "Right margin",
695
+ group: "design-page",
696
+ },
697
+ "page.show_footer": {
698
+ kind: "boolean",
699
+ label: "Show footer",
700
+ group: "design-page",
701
+ defaultValue: true,
702
+ },
703
+ "page.show_top_note": {
704
+ kind: "boolean",
705
+ label: "Show top note",
706
+ group: "design-page",
707
+ defaultValue: true,
708
+ },
709
+ "colors.body": {
710
+ kind: "color",
711
+ label: "Body",
712
+ group: "design-colors",
713
+ placeholder: "rgb(0, 0, 0)",
714
+ colorFormat: "hex-without-hash",
715
+ },
716
+ "colors.name": {
717
+ kind: "color",
718
+ label: "Name",
719
+ group: "design-colors",
720
+ placeholder: "rgb(0, 79, 144)",
721
+ colorFormat: "hex-without-hash",
722
+ },
723
+ "colors.headline": {
724
+ kind: "color",
725
+ label: "Headline",
726
+ group: "design-colors",
727
+ placeholder: "rgb(0, 79, 144)",
728
+ colorFormat: "hex-without-hash",
729
+ },
730
+ "colors.connections": {
731
+ kind: "color",
732
+ label: "Connections",
733
+ group: "design-colors",
734
+ placeholder: "rgb(0, 79, 144)",
735
+ colorFormat: "hex-without-hash",
736
+ },
737
+ "colors.section_titles": {
738
+ kind: "color",
739
+ label: "Section titles",
740
+ group: "design-colors",
741
+ placeholder: "rgb(0, 79, 144)",
742
+ colorFormat: "hex-without-hash",
743
+ },
744
+ "colors.links": {
745
+ kind: "color",
746
+ label: "Links",
747
+ group: "design-colors",
748
+ placeholder: "rgb(0, 79, 144)",
749
+ colorFormat: "hex-without-hash",
750
+ },
751
+ "colors.footer": {
752
+ kind: "color",
753
+ label: "Footer",
754
+ group: "design-colors",
755
+ placeholder: "rgb(128, 128, 128)",
756
+ colorFormat: "hex-without-hash",
757
+ },
758
+ "colors.top_note": {
759
+ kind: "color",
760
+ label: "Top note",
761
+ group: "design-colors",
762
+ placeholder: "rgb(128, 128, 128)",
763
+ colorFormat: "hex-without-hash",
764
+ },
765
+ "typography.line_spacing": {
766
+ kind: "text",
767
+ label: "Line spacing",
768
+ group: "design-typography",
769
+ },
770
+ "typography.alignment": {
771
+ kind: "segmented",
772
+ label: "Alignment",
773
+ group: "design-typography",
774
+ defaultValue: "left",
775
+ options: [
776
+ {
777
+ value: "left",
778
+ label: "left",
779
+ },
780
+ {
781
+ value: "justified",
782
+ label: "justified",
783
+ },
784
+ {
785
+ value: "justified-with-no-hyphenation",
786
+ label: "justified-with-no-hyphenation",
787
+ },
788
+ ],
789
+ },
790
+ "typography.date_and_location_column_alignment": {
791
+ kind: "segmented",
792
+ label: "Date/location",
793
+ group: "design-typography",
794
+ defaultValue: "right",
795
+ options: [
796
+ {
797
+ value: "left",
798
+ label: "left",
799
+ },
800
+ {
801
+ value: "center",
802
+ label: "center",
803
+ },
804
+ {
805
+ value: "right",
806
+ label: "right",
807
+ },
808
+ ],
809
+ },
810
+ "typography.font_family.body": {
811
+ kind: "options",
812
+ label: "Body",
813
+ group: "design-font-family",
814
+ defaultValue: "Fontin",
815
+ presentation: "cycle",
816
+ optionPreview: "font",
817
+ options: fontFamilyOptions,
818
+ },
819
+ "typography.font_family.name": {
820
+ kind: "options",
821
+ label: "Name",
822
+ group: "design-font-family",
823
+ defaultValue: "Fontin",
824
+ presentation: "cycle",
825
+ optionPreview: "font",
826
+ options: fontFamilyOptions,
827
+ },
828
+ "typography.font_family.headline": {
829
+ kind: "options",
830
+ label: "Headline",
831
+ group: "design-font-family",
832
+ defaultValue: "Fontin",
833
+ presentation: "cycle",
834
+ optionPreview: "font",
835
+ options: fontFamilyOptions,
836
+ },
837
+ "typography.font_family.connections": {
838
+ kind: "options",
839
+ label: "Connections",
840
+ group: "design-font-family",
841
+ defaultValue: "Fontin",
842
+ presentation: "cycle",
843
+ optionPreview: "font",
844
+ options: fontFamilyOptions,
845
+ },
846
+ "typography.font_family.section_titles": {
847
+ kind: "options",
848
+ label: "Section titles",
849
+ group: "design-font-family",
850
+ defaultValue: "Fontin",
851
+ presentation: "cycle",
852
+ optionPreview: "font",
853
+ options: fontFamilyOptions,
854
+ },
855
+ "typography.font_size.body": {
856
+ kind: "text",
857
+ label: "Body",
858
+ group: "design-font-size",
859
+ },
860
+ "typography.font_size.name": {
861
+ kind: "text",
862
+ label: "Name",
863
+ group: "design-font-size",
864
+ },
865
+ "typography.font_size.headline": {
866
+ kind: "text",
867
+ label: "Headline",
868
+ group: "design-font-size",
869
+ },
870
+ "typography.font_size.connections": {
871
+ kind: "text",
872
+ label: "Connections",
873
+ group: "design-font-size",
874
+ },
875
+ "typography.font_size.section_titles": {
876
+ kind: "text",
877
+ label: "Section titles",
878
+ group: "design-font-size",
879
+ },
880
+ "typography.small_caps.name": {
881
+ kind: "boolean",
882
+ label: "Name",
883
+ group: "design-small-caps",
884
+ defaultValue: false,
885
+ },
886
+ "typography.small_caps.headline": {
887
+ kind: "boolean",
888
+ label: "Headline",
889
+ group: "design-small-caps",
890
+ defaultValue: false,
891
+ },
892
+ "typography.small_caps.connections": {
893
+ kind: "boolean",
894
+ label: "Connections",
895
+ group: "design-small-caps",
896
+ defaultValue: false,
897
+ },
898
+ "typography.small_caps.section_titles": {
899
+ kind: "boolean",
900
+ label: "Section titles",
901
+ group: "design-small-caps",
902
+ defaultValue: false,
903
+ },
904
+ "typography.bold.name": {
905
+ kind: "boolean",
906
+ label: "Name",
907
+ group: "design-bold",
908
+ defaultValue: false,
909
+ },
910
+ "typography.bold.headline": {
911
+ kind: "boolean",
912
+ label: "Headline",
913
+ group: "design-bold",
914
+ defaultValue: false,
915
+ },
916
+ "typography.bold.connections": {
917
+ kind: "boolean",
918
+ label: "Connections",
919
+ group: "design-bold",
920
+ defaultValue: false,
921
+ },
922
+ "typography.bold.section_titles": {
923
+ kind: "boolean",
924
+ label: "Section titles",
925
+ group: "design-bold",
926
+ defaultValue: false,
927
+ },
928
+ "typography.bold.links": {
929
+ kind: "boolean",
930
+ label: "Links",
931
+ group: "design-bold",
932
+ defaultValue: false,
933
+ },
934
+ "links.underline": {
935
+ kind: "boolean",
936
+ label: "Underline",
937
+ group: "design-links",
938
+ defaultValue: false,
939
+ },
940
+ "links.show_external_link_icon": {
941
+ kind: "boolean",
942
+ label: "Show external link icon",
943
+ group: "design-links",
944
+ defaultValue: true,
945
+ },
946
+ "header.alignment": {
947
+ kind: "segmented",
948
+ label: "Alignment",
949
+ group: "design-header",
950
+ defaultValue: "center",
951
+ options: [
952
+ {
953
+ value: "left",
954
+ label: "left",
955
+ },
956
+ {
957
+ value: "center",
958
+ label: "center",
959
+ },
960
+ {
961
+ value: "right",
962
+ label: "right",
963
+ },
964
+ ],
965
+ },
966
+ "header.photo_position": {
967
+ kind: "segmented",
968
+ label: "Photo position",
969
+ group: "design-header",
970
+ defaultValue: "right",
971
+ options: [
972
+ {
973
+ value: "left",
974
+ label: "left",
975
+ },
976
+ {
977
+ value: "right",
978
+ label: "right",
979
+ },
980
+ ],
981
+ },
982
+ "header.photo_width": {
983
+ kind: "text",
984
+ label: "Photo width",
985
+ group: "design-header",
986
+ },
987
+ "header.photo_space_left": {
988
+ kind: "text",
989
+ label: "Photo space left",
990
+ group: "design-header",
991
+ },
992
+ "header.photo_space_right": {
993
+ kind: "text",
994
+ label: "Photo space right",
995
+ group: "design-header",
996
+ },
997
+ "header.space_below_name": {
998
+ kind: "text",
999
+ label: "Space below name",
1000
+ group: "design-header",
1001
+ },
1002
+ "header.space_below_headline": {
1003
+ kind: "text",
1004
+ label: "Space below headline",
1005
+ group: "design-header",
1006
+ },
1007
+ "header.space_below_connections": {
1008
+ kind: "text",
1009
+ label: "Space below connections",
1010
+ group: "design-header",
1011
+ },
1012
+ "header.connections.phone_number_format": {
1013
+ kind: "options",
1014
+ label: "Phone number format",
1015
+ group: "design-header-connections",
1016
+ defaultValue: "national",
1017
+ options: [
1018
+ {
1019
+ value: "national",
1020
+ label: "national",
1021
+ },
1022
+ {
1023
+ value: "international",
1024
+ label: "international",
1025
+ },
1026
+ {
1027
+ value: "E164",
1028
+ label: "E164",
1029
+ },
1030
+ ],
1031
+ },
1032
+ "header.connections.hyperlink": {
1033
+ kind: "boolean",
1034
+ label: "Hyperlink",
1035
+ group: "design-header-connections",
1036
+ defaultValue: true,
1037
+ },
1038
+ "header.connections.show_icons": {
1039
+ kind: "boolean",
1040
+ label: "Show icons",
1041
+ group: "design-header-connections",
1042
+ defaultValue: true,
1043
+ },
1044
+ "header.connections.display_urls_instead_of_usernames": {
1045
+ kind: "boolean",
1046
+ label: "Display urls instead of usernames",
1047
+ group: "design-header-connections",
1048
+ defaultValue: false,
1049
+ },
1050
+ "header.connections.separator": {
1051
+ kind: "text",
1052
+ label: "Separator",
1053
+ group: "design-header-connections",
1054
+ },
1055
+ "header.connections.space_between_connections": {
1056
+ kind: "text",
1057
+ label: "Space between connections",
1058
+ group: "design-header-connections",
1059
+ },
1060
+ "section_titles.type": {
1061
+ kind: "options",
1062
+ label: "Type",
1063
+ group: "design-section-titles",
1064
+ defaultValue: "with_partial_line",
1065
+ options: [
1066
+ {
1067
+ value: "with_partial_line",
1068
+ label: "with_partial_line",
1069
+ },
1070
+ {
1071
+ value: "with_full_line",
1072
+ label: "with_full_line",
1073
+ },
1074
+ {
1075
+ value: "without_line",
1076
+ label: "without_line",
1077
+ },
1078
+ {
1079
+ value: "moderncv",
1080
+ label: "moderncv",
1081
+ },
1082
+ {
1083
+ value: "centered_without_line",
1084
+ label: "centered_without_line",
1085
+ },
1086
+ {
1087
+ value: "centered_with_partial_line",
1088
+ label: "centered_with_partial_line",
1089
+ },
1090
+ {
1091
+ value: "centered_with_centered_partial_line",
1092
+ label: "centered_with_centered_partial_line",
1093
+ },
1094
+ {
1095
+ value: "centered_with_full_line",
1096
+ label: "centered_with_full_line",
1097
+ },
1098
+ ],
1099
+ },
1100
+ "section_titles.line_thickness": {
1101
+ kind: "text",
1102
+ label: "Line thickness",
1103
+ group: "design-section-titles",
1104
+ },
1105
+ "section_titles.space_above": {
1106
+ kind: "text",
1107
+ label: "Space above",
1108
+ group: "design-section-titles",
1109
+ },
1110
+ "section_titles.space_below": {
1111
+ kind: "text",
1112
+ label: "Space below",
1113
+ group: "design-section-titles",
1114
+ },
1115
+ "sections.allow_page_break": {
1116
+ kind: "boolean",
1117
+ label: "Allow page break",
1118
+ group: "design-sections",
1119
+ defaultValue: true,
1120
+ },
1121
+ "sections.space_between_regular_entries": {
1122
+ kind: "text",
1123
+ label: "Space between regular entries",
1124
+ group: "design-sections",
1125
+ },
1126
+ "sections.space_between_text_based_entries": {
1127
+ kind: "text",
1128
+ label: "Space between text based entries",
1129
+ group: "design-sections",
1130
+ },
1131
+ "sections.show_time_spans_in": {
1132
+ kind: "ordered-string-list",
1133
+ label: "Show time spans in",
1134
+ group: "design-sections",
1135
+ addLabel: "section",
1136
+ },
1137
+ "entries.date_and_location_width": {
1138
+ kind: "text",
1139
+ label: "Date and location width",
1140
+ group: "design-entries",
1141
+ },
1142
+ "entries.side_space": {
1143
+ kind: "text",
1144
+ label: "Side space",
1145
+ group: "design-entries",
1146
+ },
1147
+ "entries.space_between_columns": {
1148
+ kind: "text",
1149
+ label: "Space between columns",
1150
+ group: "design-entries",
1151
+ },
1152
+ "entries.degree_width": {
1153
+ kind: "text",
1154
+ label: "Degree width",
1155
+ group: "design-entries",
1156
+ },
1157
+ "entries.allow_page_break": {
1158
+ kind: "boolean",
1159
+ label: "Allow page break",
1160
+ group: "design-entries",
1161
+ defaultValue: true,
1162
+ },
1163
+ "entries.short_second_row": {
1164
+ kind: "boolean",
1165
+ label: "Short second row",
1166
+ group: "design-entries",
1167
+ defaultValue: false,
1168
+ },
1169
+ "entries.summary.space_above": {
1170
+ kind: "text",
1171
+ label: "Space above",
1172
+ group: "design-entry-summary",
1173
+ },
1174
+ "entries.summary.space_left": {
1175
+ kind: "text",
1176
+ label: "Space left",
1177
+ group: "design-entry-summary",
1178
+ },
1179
+ "entries.highlights.bullet": {
1180
+ kind: "options",
1181
+ label: "Bullet",
1182
+ group: "design-entry-highlights",
1183
+ defaultValue: "•",
1184
+ options: [
1185
+ {
1186
+ value: "●",
1187
+ label: "●",
1188
+ },
1189
+ {
1190
+ value: "•",
1191
+ label: "•",
1192
+ },
1193
+ {
1194
+ value: "◦",
1195
+ label: "◦",
1196
+ },
1197
+ {
1198
+ value: "-",
1199
+ label: "-",
1200
+ },
1201
+ {
1202
+ value: "◆",
1203
+ label: "◆",
1204
+ },
1205
+ {
1206
+ value: "★",
1207
+ label: "★",
1208
+ },
1209
+ {
1210
+ value: "■",
1211
+ label: "■",
1212
+ },
1213
+ {
1214
+ value: "—",
1215
+ label: "—",
1216
+ },
1217
+ {
1218
+ value: "○",
1219
+ label: "○",
1220
+ },
1221
+ ],
1222
+ },
1223
+ "entries.highlights.nested_bullet": {
1224
+ kind: "options",
1225
+ label: "Nested bullet",
1226
+ group: "design-entry-highlights",
1227
+ defaultValue: "•",
1228
+ options: [
1229
+ {
1230
+ value: "●",
1231
+ label: "●",
1232
+ },
1233
+ {
1234
+ value: "•",
1235
+ label: "•",
1236
+ },
1237
+ {
1238
+ value: "◦",
1239
+ label: "◦",
1240
+ },
1241
+ {
1242
+ value: "-",
1243
+ label: "-",
1244
+ },
1245
+ {
1246
+ value: "◆",
1247
+ label: "◆",
1248
+ },
1249
+ {
1250
+ value: "★",
1251
+ label: "★",
1252
+ },
1253
+ {
1254
+ value: "■",
1255
+ label: "■",
1256
+ },
1257
+ {
1258
+ value: "—",
1259
+ label: "—",
1260
+ },
1261
+ {
1262
+ value: "○",
1263
+ label: "○",
1264
+ },
1265
+ ],
1266
+ },
1267
+ "entries.highlights.space_left": {
1268
+ kind: "text",
1269
+ label: "Space left",
1270
+ group: "design-entry-highlights",
1271
+ },
1272
+ "entries.highlights.space_above": {
1273
+ kind: "text",
1274
+ label: "Space above",
1275
+ group: "design-entry-highlights",
1276
+ },
1277
+ "entries.highlights.space_between_items": {
1278
+ kind: "text",
1279
+ label: "Space between items",
1280
+ group: "design-entry-highlights",
1281
+ },
1282
+ "entries.highlights.space_between_bullet_and_text": {
1283
+ kind: "text",
1284
+ label: "Space between bullet and text",
1285
+ group: "design-entry-highlights",
1286
+ },
1287
+ "templates.footer": {
1288
+ kind: "textarea",
1289
+ label: "Footer",
1290
+ group: "design-templates",
1291
+ },
1292
+ "templates.top_note": {
1293
+ kind: "textarea",
1294
+ label: "Top note",
1295
+ group: "design-templates",
1296
+ },
1297
+ "templates.single_date": {
1298
+ kind: "textarea",
1299
+ label: "Single date",
1300
+ group: "design-templates",
1301
+ },
1302
+ "templates.date_range": {
1303
+ kind: "textarea",
1304
+ label: "Date range",
1305
+ group: "design-templates",
1306
+ },
1307
+ "templates.time_span": {
1308
+ kind: "textarea",
1309
+ label: "Time span",
1310
+ group: "design-templates",
1311
+ },
1312
+ "templates.one_line_entry.main_column": {
1313
+ kind: "textarea",
1314
+ label: "Main column",
1315
+ group: "design-one_line_entry",
1316
+ },
1317
+ "templates.education_entry.main_column": {
1318
+ kind: "textarea",
1319
+ label: "Main column",
1320
+ group: "design-education_entry",
1321
+ },
1322
+ "templates.education_entry.degree_column": {
1323
+ kind: "textarea",
1324
+ label: "Degree column",
1325
+ group: "design-education_entry",
1326
+ },
1327
+ "templates.education_entry.date_and_location_column": {
1328
+ kind: "textarea",
1329
+ label: "Date and location column",
1330
+ group: "design-education_entry",
1331
+ },
1332
+ "templates.normal_entry.main_column": {
1333
+ kind: "textarea",
1334
+ label: "Main column",
1335
+ group: "design-normal_entry",
1336
+ },
1337
+ "templates.normal_entry.date_and_location_column": {
1338
+ kind: "textarea",
1339
+ label: "Date and location column",
1340
+ group: "design-normal_entry",
1341
+ },
1342
+ "templates.experience_entry.main_column": {
1343
+ kind: "textarea",
1344
+ label: "Main column",
1345
+ group: "design-experience_entry",
1346
+ },
1347
+ "templates.experience_entry.date_and_location_column": {
1348
+ kind: "textarea",
1349
+ label: "Date and location column",
1350
+ group: "design-experience_entry",
1351
+ },
1352
+ "templates.publication_entry.main_column": {
1353
+ kind: "textarea",
1354
+ label: "Main column",
1355
+ group: "design-publication_entry",
1356
+ },
1357
+ "templates.publication_entry.date_and_location_column": {
1358
+ kind: "textarea",
1359
+ label: "Date and location column",
1360
+ group: "design-publication_entry",
1361
+ },
1362
+ },
1363
+ });
1364
+
1365
+ export const completeLocaleConfig = defineFormConfig<LocaleFragment>()({
1366
+ id: "complete-cv-locale",
1367
+ layout: "stacked",
1368
+ defaults: {
1369
+ language: "english",
1370
+ last_updated: "Last updated in",
1371
+ present: "present",
1372
+ month: "month",
1373
+ months: "months",
1374
+ year: "year",
1375
+ years: "years",
1376
+ phrases: { degree_with_area: "DEGREE in AREA" },
1377
+ month_abbreviations: [
1378
+ "Jan",
1379
+ "Feb",
1380
+ "Mar",
1381
+ "Apr",
1382
+ "May",
1383
+ "June",
1384
+ "July",
1385
+ "Aug",
1386
+ "Sept",
1387
+ "Oct",
1388
+ "Nov",
1389
+ "Dec",
1390
+ ],
1391
+ month_names: [
1392
+ "January",
1393
+ "February",
1394
+ "March",
1395
+ "April",
1396
+ "May",
1397
+ "June",
1398
+ "July",
1399
+ "August",
1400
+ "September",
1401
+ "October",
1402
+ "November",
1403
+ "December",
1404
+ ],
1405
+ },
1406
+ groups: {
1407
+ "locale-language": {
1408
+ title: "Language",
1409
+ collapsible: true,
1410
+ },
1411
+ "locale-last-updated": {
1412
+ title: "Last Updated",
1413
+ collapsible: true,
1414
+ },
1415
+ "locale-phrases": {
1416
+ title: "Phrases",
1417
+ collapsible: true,
1418
+ },
1419
+ "locale-month-abbreviations": {
1420
+ title: "Month Abbreviations",
1421
+ collapsible: true,
1422
+ },
1423
+ "locale-month-names": {
1424
+ title: "Month Names",
1425
+ collapsible: true,
1426
+ },
1427
+ },
1428
+ fields: {
1429
+ language: {
1430
+ kind: "options",
1431
+ label: "Language",
1432
+ group: "locale-language",
1433
+ defaultValue: "english",
1434
+ options: [
1435
+ {
1436
+ value: "english",
1437
+ label: "english",
1438
+ },
1439
+ {
1440
+ value: "arabic",
1441
+ label: "arabic",
1442
+ },
1443
+ {
1444
+ value: "danish",
1445
+ label: "danish",
1446
+ },
1447
+ {
1448
+ value: "dutch",
1449
+ label: "dutch",
1450
+ },
1451
+ {
1452
+ value: "french",
1453
+ label: "french",
1454
+ },
1455
+ {
1456
+ value: "german",
1457
+ label: "german",
1458
+ },
1459
+ {
1460
+ value: "hebrew",
1461
+ label: "hebrew",
1462
+ },
1463
+ {
1464
+ value: "hindi",
1465
+ label: "hindi",
1466
+ },
1467
+ {
1468
+ value: "hungarian",
1469
+ label: "hungarian",
1470
+ },
1471
+ {
1472
+ value: "indonesian",
1473
+ label: "indonesian",
1474
+ },
1475
+ {
1476
+ value: "italian",
1477
+ label: "italian",
1478
+ },
1479
+ {
1480
+ value: "japanese",
1481
+ label: "japanese",
1482
+ },
1483
+ {
1484
+ value: "korean",
1485
+ label: "korean",
1486
+ },
1487
+ {
1488
+ value: "mandarin_chinese",
1489
+ label: "mandarin_chinese",
1490
+ },
1491
+ {
1492
+ value: "norwegian_bokmål",
1493
+ label: "norwegian_bokmål",
1494
+ },
1495
+ {
1496
+ value: "norwegian_nynorsk",
1497
+ label: "norwegian_nynorsk",
1498
+ },
1499
+ {
1500
+ value: "persian",
1501
+ label: "persian",
1502
+ },
1503
+ {
1504
+ value: "portuguese",
1505
+ label: "portuguese",
1506
+ },
1507
+ {
1508
+ value: "russian",
1509
+ label: "russian",
1510
+ },
1511
+ {
1512
+ value: "spanish",
1513
+ label: "spanish",
1514
+ },
1515
+ {
1516
+ value: "turkish",
1517
+ label: "turkish",
1518
+ },
1519
+ {
1520
+ value: "vietnamese",
1521
+ label: "vietnamese",
1522
+ },
1523
+ ],
1524
+ },
1525
+ last_updated: {
1526
+ kind: "text",
1527
+ label: "Last updated in",
1528
+ group: "locale-last-updated",
1529
+ defaultValue: "Last updated in",
1530
+ },
1531
+ present: {
1532
+ kind: "text",
1533
+ label: "Present",
1534
+ group: "locale-last-updated",
1535
+ defaultValue: "present",
1536
+ },
1537
+ month: {
1538
+ kind: "text",
1539
+ label: "Month",
1540
+ group: "locale-last-updated",
1541
+ defaultValue: "month",
1542
+ },
1543
+ months: {
1544
+ kind: "text",
1545
+ label: "Months",
1546
+ group: "locale-last-updated",
1547
+ defaultValue: "months",
1548
+ },
1549
+ year: {
1550
+ kind: "text",
1551
+ label: "Year",
1552
+ group: "locale-last-updated",
1553
+ defaultValue: "year",
1554
+ },
1555
+ years: {
1556
+ kind: "text",
1557
+ label: "Years",
1558
+ group: "locale-last-updated",
1559
+ defaultValue: "years",
1560
+ },
1561
+ "phrases.degree_with_area": {
1562
+ kind: "text",
1563
+ label: "Degree with area",
1564
+ group: "locale-phrases",
1565
+ defaultValue: "DEGREE in AREA",
1566
+ },
1567
+ "month_abbreviations.0": {
1568
+ kind: "text",
1569
+ label: "January",
1570
+ group: "locale-month-abbreviations",
1571
+ defaultValue: "Jan",
1572
+ materializeDefaultFrom: "month_abbreviations",
1573
+ },
1574
+ "month_abbreviations.1": {
1575
+ kind: "text",
1576
+ label: "February",
1577
+ group: "locale-month-abbreviations",
1578
+ defaultValue: "Feb",
1579
+ materializeDefaultFrom: "month_abbreviations",
1580
+ },
1581
+ "month_abbreviations.2": {
1582
+ kind: "text",
1583
+ label: "March",
1584
+ group: "locale-month-abbreviations",
1585
+ defaultValue: "Mar",
1586
+ materializeDefaultFrom: "month_abbreviations",
1587
+ },
1588
+ "month_abbreviations.3": {
1589
+ kind: "text",
1590
+ label: "April",
1591
+ group: "locale-month-abbreviations",
1592
+ defaultValue: "Apr",
1593
+ materializeDefaultFrom: "month_abbreviations",
1594
+ },
1595
+ "month_abbreviations.4": {
1596
+ kind: "text",
1597
+ label: "May",
1598
+ group: "locale-month-abbreviations",
1599
+ defaultValue: "May",
1600
+ materializeDefaultFrom: "month_abbreviations",
1601
+ },
1602
+ "month_abbreviations.5": {
1603
+ kind: "text",
1604
+ label: "June",
1605
+ group: "locale-month-abbreviations",
1606
+ defaultValue: "June",
1607
+ materializeDefaultFrom: "month_abbreviations",
1608
+ },
1609
+ "month_abbreviations.6": {
1610
+ kind: "text",
1611
+ label: "July",
1612
+ group: "locale-month-abbreviations",
1613
+ defaultValue: "July",
1614
+ materializeDefaultFrom: "month_abbreviations",
1615
+ },
1616
+ "month_abbreviations.7": {
1617
+ kind: "text",
1618
+ label: "August",
1619
+ group: "locale-month-abbreviations",
1620
+ defaultValue: "Aug",
1621
+ materializeDefaultFrom: "month_abbreviations",
1622
+ },
1623
+ "month_abbreviations.8": {
1624
+ kind: "text",
1625
+ label: "September",
1626
+ group: "locale-month-abbreviations",
1627
+ defaultValue: "Sept",
1628
+ materializeDefaultFrom: "month_abbreviations",
1629
+ },
1630
+ "month_abbreviations.9": {
1631
+ kind: "text",
1632
+ label: "October",
1633
+ group: "locale-month-abbreviations",
1634
+ defaultValue: "Oct",
1635
+ materializeDefaultFrom: "month_abbreviations",
1636
+ },
1637
+ "month_abbreviations.10": {
1638
+ kind: "text",
1639
+ label: "November",
1640
+ group: "locale-month-abbreviations",
1641
+ defaultValue: "Nov",
1642
+ materializeDefaultFrom: "month_abbreviations",
1643
+ },
1644
+ "month_abbreviations.11": {
1645
+ kind: "text",
1646
+ label: "December",
1647
+ group: "locale-month-abbreviations",
1648
+ defaultValue: "Dec",
1649
+ materializeDefaultFrom: "month_abbreviations",
1650
+ },
1651
+ "month_names.0": {
1652
+ kind: "text",
1653
+ label: "January",
1654
+ group: "locale-month-names",
1655
+ defaultValue: "January",
1656
+ materializeDefaultFrom: "month_names",
1657
+ },
1658
+ "month_names.1": {
1659
+ kind: "text",
1660
+ label: "February",
1661
+ group: "locale-month-names",
1662
+ defaultValue: "February",
1663
+ materializeDefaultFrom: "month_names",
1664
+ },
1665
+ "month_names.2": {
1666
+ kind: "text",
1667
+ label: "March",
1668
+ group: "locale-month-names",
1669
+ defaultValue: "March",
1670
+ materializeDefaultFrom: "month_names",
1671
+ },
1672
+ "month_names.3": {
1673
+ kind: "text",
1674
+ label: "April",
1675
+ group: "locale-month-names",
1676
+ defaultValue: "April",
1677
+ materializeDefaultFrom: "month_names",
1678
+ },
1679
+ "month_names.4": {
1680
+ kind: "text",
1681
+ label: "May",
1682
+ group: "locale-month-names",
1683
+ defaultValue: "May",
1684
+ materializeDefaultFrom: "month_names",
1685
+ },
1686
+ "month_names.5": {
1687
+ kind: "text",
1688
+ label: "June",
1689
+ group: "locale-month-names",
1690
+ defaultValue: "June",
1691
+ materializeDefaultFrom: "month_names",
1692
+ },
1693
+ "month_names.6": {
1694
+ kind: "text",
1695
+ label: "July",
1696
+ group: "locale-month-names",
1697
+ defaultValue: "July",
1698
+ materializeDefaultFrom: "month_names",
1699
+ },
1700
+ "month_names.7": {
1701
+ kind: "text",
1702
+ label: "August",
1703
+ group: "locale-month-names",
1704
+ defaultValue: "August",
1705
+ materializeDefaultFrom: "month_names",
1706
+ },
1707
+ "month_names.8": {
1708
+ kind: "text",
1709
+ label: "September",
1710
+ group: "locale-month-names",
1711
+ defaultValue: "September",
1712
+ materializeDefaultFrom: "month_names",
1713
+ },
1714
+ "month_names.9": {
1715
+ kind: "text",
1716
+ label: "October",
1717
+ group: "locale-month-names",
1718
+ defaultValue: "October",
1719
+ materializeDefaultFrom: "month_names",
1720
+ },
1721
+ "month_names.10": {
1722
+ kind: "text",
1723
+ label: "November",
1724
+ group: "locale-month-names",
1725
+ defaultValue: "November",
1726
+ materializeDefaultFrom: "month_names",
1727
+ },
1728
+ "month_names.11": {
1729
+ kind: "text",
1730
+ label: "December",
1731
+ group: "locale-month-names",
1732
+ defaultValue: "December",
1733
+ materializeDefaultFrom: "month_names",
1734
+ },
1735
+ },
1736
+ });
1737
+
1738
+ export const completeSettingsConfig = defineFormConfig<SettingsFragment>()({
1739
+ id: "complete-cv-settings",
1740
+ layout: "stacked",
1741
+ defaults: {
1742
+ current_date: "today",
1743
+ pdf_title: "NAME - CV",
1744
+ bold_keywords: [],
1745
+ },
1746
+ groups: {
1747
+ document: {
1748
+ title: "Document Settings",
1749
+ collapsible: true,
1750
+ appearance: "subtle",
1751
+ },
1752
+ },
1753
+ fields: {
1754
+ current_date: {
1755
+ kind: "text",
1756
+ label: "Current date",
1757
+ group: "document",
1758
+ },
1759
+ pdf_title: { kind: "text", label: "PDF title", group: "document" },
1760
+ bold_keywords: {
1761
+ kind: "ordered-string-list",
1762
+ label: "Bold keywords",
1763
+ addLabel: "keyword",
1764
+ group: "document",
1765
+ },
1766
+ },
1767
+ });