@cyberskill/design 1.0.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 (970) hide show
  1. package/DESIGN.md +267 -0
  2. package/README.md +316 -0
  3. package/SKILL.md +64 -0
  4. package/VERSION +1 -0
  5. package/_ds_bundle.js +5377 -0
  6. package/_ds_manifest.json +1 -0
  7. package/_esm/cs.mjs +137 -0
  8. package/assets/aurora-gold.jpg +0 -0
  9. package/assets/aurora-hoa.png +0 -0
  10. package/assets/aurora-kim.png +0 -0
  11. package/assets/aurora-moc.png +0 -0
  12. package/assets/aurora-thuy.png +0 -0
  13. package/assets/favicon.svg +1 -0
  14. package/assets/logo-mark.png +0 -0
  15. package/assets/logo-mark.svg +10 -0
  16. package/assets/lumi-poster.webp +0 -0
  17. package/assets/og-dashboard.png +0 -0
  18. package/base/a11y.css +57 -0
  19. package/base/ai.css +67 -0
  20. package/base/collections.css +53 -0
  21. package/base/components.css +212 -0
  22. package/base/controls.css +329 -0
  23. package/base/data.css +48 -0
  24. package/base/feedback.css +60 -0
  25. package/base/forms.css +32 -0
  26. package/base/glass.css +119 -0
  27. package/base/interaction.css +50 -0
  28. package/base/navigation.css +39 -0
  29. package/base/reset.css +17 -0
  30. package/base/responsive.css +128 -0
  31. package/base/shell.css +55 -0
  32. package/base/typography.css +14 -0
  33. package/components/_i18n/i18n.js +56 -0
  34. package/components/_i18n/strings.js +187 -0
  35. package/components/_utils/cx.js +4 -0
  36. package/components/ai/AIDisclosureBadge.d.ts +16 -0
  37. package/components/ai/AIDisclosureBadge.figma.tsx +12 -0
  38. package/components/ai/AIDisclosureBadge.jsx +39 -0
  39. package/components/ai/AIDisclosureBadge.prompt.md +9 -0
  40. package/components/ai/ChatMessage.d.ts +17 -0
  41. package/components/ai/ChatMessage.figma.tsx +12 -0
  42. package/components/ai/ChatMessage.jsx +22 -0
  43. package/components/ai/ChatMessage.prompt.md +8 -0
  44. package/components/ai/CitationList.d.ts +13 -0
  45. package/components/ai/CitationList.figma.tsx +12 -0
  46. package/components/ai/CitationList.jsx +22 -0
  47. package/components/ai/CitationList.prompt.md +5 -0
  48. package/components/ai/ConfidenceMeter.d.ts +17 -0
  49. package/components/ai/ConfidenceMeter.figma.tsx +12 -0
  50. package/components/ai/ConfidenceMeter.jsx +43 -0
  51. package/components/ai/ConfidenceMeter.prompt.md +6 -0
  52. package/components/ai/HumanReviewGate.d.ts +20 -0
  53. package/components/ai/HumanReviewGate.figma.tsx +12 -0
  54. package/components/ai/HumanReviewGate.jsx +37 -0
  55. package/components/ai/HumanReviewGate.prompt.md +13 -0
  56. package/components/ai/PromptInput.d.ts +21 -0
  57. package/components/ai/PromptInput.figma.tsx +12 -0
  58. package/components/ai/PromptInput.jsx +48 -0
  59. package/components/ai/PromptInput.prompt.md +5 -0
  60. package/components/ai/PromptSuggestions.d.ts +12 -0
  61. package/components/ai/PromptSuggestions.figma.tsx +12 -0
  62. package/components/ai/PromptSuggestions.jsx +20 -0
  63. package/components/ai/PromptSuggestions.prompt.md +5 -0
  64. package/components/ai/TypingIndicator.d.ts +9 -0
  65. package/components/ai/TypingIndicator.figma.tsx +12 -0
  66. package/components/ai/TypingIndicator.jsx +14 -0
  67. package/components/ai/TypingIndicator.prompt.md +5 -0
  68. package/components/ai/ai-conversation.card.html +49 -0
  69. package/components/ai/ai-lumi.card.html +39 -0
  70. package/components/ai/ai.card.html +43 -0
  71. package/components/brand/LumiAvatar.d.ts +14 -0
  72. package/components/brand/LumiAvatar.figma.tsx +12 -0
  73. package/components/brand/LumiAvatar.jsx +11 -0
  74. package/components/brand/LumiAvatar.prompt.md +5 -0
  75. package/components/brand/brand.card.html +37 -0
  76. package/components/button/Button.d.ts +24 -0
  77. package/components/button/Button.figma.tsx +31 -0
  78. package/components/button/Button.jsx +42 -0
  79. package/components/button/Button.prompt.md +12 -0
  80. package/components/button/ButtonGroup.d.ts +11 -0
  81. package/components/button/ButtonGroup.figma.tsx +12 -0
  82. package/components/button/ButtonGroup.jsx +7 -0
  83. package/components/button/ButtonGroup.prompt.md +8 -0
  84. package/components/button/FloatingActionButton.d.ts +15 -0
  85. package/components/button/FloatingActionButton.figma.tsx +12 -0
  86. package/components/button/FloatingActionButton.jsx +20 -0
  87. package/components/button/FloatingActionButton.prompt.md +6 -0
  88. package/components/button/buttons.card.html +52 -0
  89. package/components/data/Accordion.d.ts +14 -0
  90. package/components/data/Accordion.figma.tsx +12 -0
  91. package/components/data/Accordion.jsx +25 -0
  92. package/components/data/Accordion.prompt.md +5 -0
  93. package/components/data/Avatar.d.ts +18 -0
  94. package/components/data/Avatar.figma.tsx +12 -0
  95. package/components/data/Avatar.jsx +17 -0
  96. package/components/data/Avatar.prompt.md +6 -0
  97. package/components/data/Card.d.ts +23 -0
  98. package/components/data/Card.figma.tsx +12 -0
  99. package/components/data/Card.jsx +27 -0
  100. package/components/data/Card.prompt.md +9 -0
  101. package/components/data/Carousel.d.ts +13 -0
  102. package/components/data/Carousel.figma.tsx +12 -0
  103. package/components/data/Carousel.jsx +26 -0
  104. package/components/data/Carousel.prompt.md +5 -0
  105. package/components/data/Chart.d.ts +17 -0
  106. package/components/data/Chart.figma.tsx +12 -0
  107. package/components/data/Chart.jsx +52 -0
  108. package/components/data/Chart.prompt.md +5 -0
  109. package/components/data/CodeBlock.d.ts +12 -0
  110. package/components/data/CodeBlock.figma.tsx +12 -0
  111. package/components/data/CodeBlock.jsx +21 -0
  112. package/components/data/CodeBlock.prompt.md +5 -0
  113. package/components/data/Comment.d.ts +18 -0
  114. package/components/data/Comment.figma.tsx +12 -0
  115. package/components/data/Comment.jsx +24 -0
  116. package/components/data/Comment.prompt.md +7 -0
  117. package/components/data/DescriptionList.d.ts +10 -0
  118. package/components/data/DescriptionList.figma.tsx +12 -0
  119. package/components/data/DescriptionList.jsx +16 -0
  120. package/components/data/DescriptionList.prompt.md +5 -0
  121. package/components/data/Divider.d.ts +13 -0
  122. package/components/data/Divider.figma.tsx +12 -0
  123. package/components/data/Divider.jsx +11 -0
  124. package/components/data/Divider.prompt.md +6 -0
  125. package/components/data/Image.d.ts +18 -0
  126. package/components/data/Image.figma.tsx +12 -0
  127. package/components/data/Image.jsx +37 -0
  128. package/components/data/Image.prompt.md +5 -0
  129. package/components/data/Kbd.d.ts +8 -0
  130. package/components/data/Kbd.figma.tsx +12 -0
  131. package/components/data/Kbd.jsx +7 -0
  132. package/components/data/Kbd.prompt.md +5 -0
  133. package/components/data/List.d.ts +16 -0
  134. package/components/data/List.figma.tsx +12 -0
  135. package/components/data/List.jsx +24 -0
  136. package/components/data/List.prompt.md +7 -0
  137. package/components/data/Masonry.d.ts +13 -0
  138. package/components/data/Masonry.figma.tsx +12 -0
  139. package/components/data/Masonry.jsx +11 -0
  140. package/components/data/Masonry.prompt.md +5 -0
  141. package/components/data/QRCode.d.ts +12 -0
  142. package/components/data/QRCode.figma.tsx +12 -0
  143. package/components/data/QRCode.jsx +17 -0
  144. package/components/data/QRCode.prompt.md +5 -0
  145. package/components/data/Sortable.d.ts +10 -0
  146. package/components/data/Sortable.figma.tsx +12 -0
  147. package/components/data/Sortable.jsx +30 -0
  148. package/components/data/Sortable.prompt.md +5 -0
  149. package/components/data/Splitter.d.ts +16 -0
  150. package/components/data/Splitter.figma.tsx +12 -0
  151. package/components/data/Splitter.jsx +31 -0
  152. package/components/data/Splitter.prompt.md +5 -0
  153. package/components/data/Stat.d.ts +15 -0
  154. package/components/data/Stat.figma.tsx +12 -0
  155. package/components/data/Stat.jsx +19 -0
  156. package/components/data/Stat.prompt.md +5 -0
  157. package/components/data/Terminal.d.ts +13 -0
  158. package/components/data/Terminal.figma.tsx +12 -0
  159. package/components/data/Terminal.jsx +32 -0
  160. package/components/data/Terminal.prompt.md +5 -0
  161. package/components/data/Timeline.d.ts +17 -0
  162. package/components/data/Timeline.figma.tsx +12 -0
  163. package/components/data/Timeline.jsx +20 -0
  164. package/components/data/Timeline.prompt.md +8 -0
  165. package/components/data/Tooltip.d.ts +14 -0
  166. package/components/data/Tooltip.figma.tsx +12 -0
  167. package/components/data/Tooltip.jsx +12 -0
  168. package/components/data/Tooltip.prompt.md +5 -0
  169. package/components/data/Tree.d.ts +13 -0
  170. package/components/data/Tree.figma.tsx +12 -0
  171. package/components/data/Tree.jsx +23 -0
  172. package/components/data/Tree.prompt.md +5 -0
  173. package/components/data/Watermark.d.ts +15 -0
  174. package/components/data/Watermark.figma.tsx +12 -0
  175. package/components/data/Watermark.jsx +15 -0
  176. package/components/data/Watermark.prompt.md +5 -0
  177. package/components/data/collections.card.html +52 -0
  178. package/components/data/data.card.html +50 -0
  179. package/components/data/qr-encode.js +80 -0
  180. package/components/datatable/DataGrid.d.ts +42 -0
  181. package/components/datatable/DataGrid.figma.tsx +12 -0
  182. package/components/datatable/DataGrid.jsx +149 -0
  183. package/components/datatable/DataGrid.prompt.md +12 -0
  184. package/components/datatable/DataTable.d.ts +25 -0
  185. package/components/datatable/DataTable.figma.tsx +12 -0
  186. package/components/datatable/DataTable.jsx +42 -0
  187. package/components/datatable/DataTable.prompt.md +15 -0
  188. package/components/datatable/TreeTable.d.ts +14 -0
  189. package/components/datatable/TreeTable.figma.tsx +12 -0
  190. package/components/datatable/TreeTable.jsx +47 -0
  191. package/components/datatable/TreeTable.prompt.md +6 -0
  192. package/components/datatable/datatable.card.html +51 -0
  193. package/components/dialog/Dialog.d.ts +22 -0
  194. package/components/dialog/Dialog.figma.tsx +12 -0
  195. package/components/dialog/Dialog.jsx +99 -0
  196. package/components/dialog/Dialog.prompt.md +17 -0
  197. package/components/dialog/dialog.card.html +46 -0
  198. package/components/feedback/Alert.d.ts +16 -0
  199. package/components/feedback/Alert.figma.tsx +17 -0
  200. package/components/feedback/Alert.jsx +29 -0
  201. package/components/feedback/Alert.prompt.md +6 -0
  202. package/components/feedback/Badge.d.ts +15 -0
  203. package/components/feedback/Badge.figma.tsx +12 -0
  204. package/components/feedback/Badge.jsx +12 -0
  205. package/components/feedback/Badge.prompt.md +6 -0
  206. package/components/feedback/EmptyState.d.ts +13 -0
  207. package/components/feedback/EmptyState.figma.tsx +12 -0
  208. package/components/feedback/EmptyState.jsx +16 -0
  209. package/components/feedback/EmptyState.prompt.md +7 -0
  210. package/components/feedback/ProgressBar.d.ts +15 -0
  211. package/components/feedback/ProgressBar.figma.tsx +12 -0
  212. package/components/feedback/ProgressBar.jsx +13 -0
  213. package/components/feedback/ProgressBar.prompt.md +5 -0
  214. package/components/feedback/Result.d.ts +15 -0
  215. package/components/feedback/Result.figma.tsx +12 -0
  216. package/components/feedback/Result.jsx +24 -0
  217. package/components/feedback/Result.prompt.md +7 -0
  218. package/components/feedback/Skeleton.d.ts +18 -0
  219. package/components/feedback/Skeleton.figma.tsx +12 -0
  220. package/components/feedback/Skeleton.jsx +22 -0
  221. package/components/feedback/Skeleton.prompt.md +6 -0
  222. package/components/feedback/Spinner.d.ts +11 -0
  223. package/components/feedback/Spinner.figma.tsx +12 -0
  224. package/components/feedback/Spinner.jsx +10 -0
  225. package/components/feedback/Spinner.prompt.md +5 -0
  226. package/components/feedback/StatusIndicator.d.ts +11 -0
  227. package/components/feedback/StatusIndicator.figma.tsx +12 -0
  228. package/components/feedback/StatusIndicator.jsx +12 -0
  229. package/components/feedback/StatusIndicator.prompt.md +5 -0
  230. package/components/feedback/Tag.d.ts +14 -0
  231. package/components/feedback/Tag.figma.tsx +12 -0
  232. package/components/feedback/Tag.jsx +19 -0
  233. package/components/feedback/Tag.prompt.md +6 -0
  234. package/components/feedback/Toast.d.ts +19 -0
  235. package/components/feedback/Toast.figma.tsx +12 -0
  236. package/components/feedback/Toast.jsx +30 -0
  237. package/components/feedback/Toast.prompt.md +7 -0
  238. package/components/feedback/feedback-2.card.html +43 -0
  239. package/components/feedback/feedback.card.html +50 -0
  240. package/components/forms/Calendar.d.ts +10 -0
  241. package/components/forms/Calendar.figma.tsx +12 -0
  242. package/components/forms/Calendar.jsx +43 -0
  243. package/components/forms/Calendar.prompt.md +5 -0
  244. package/components/forms/Cascader.d.ts +17 -0
  245. package/components/forms/Cascader.figma.tsx +12 -0
  246. package/components/forms/Cascader.jsx +58 -0
  247. package/components/forms/Cascader.prompt.md +5 -0
  248. package/components/forms/Checkbox.d.ts +13 -0
  249. package/components/forms/Checkbox.figma.tsx +12 -0
  250. package/components/forms/Checkbox.jsx +16 -0
  251. package/components/forms/Checkbox.prompt.md +6 -0
  252. package/components/forms/ColorPicker.d.ts +12 -0
  253. package/components/forms/ColorPicker.figma.tsx +12 -0
  254. package/components/forms/ColorPicker.jsx +44 -0
  255. package/components/forms/ColorPicker.prompt.md +5 -0
  256. package/components/forms/Combobox.d.ts +17 -0
  257. package/components/forms/Combobox.figma.tsx +12 -0
  258. package/components/forms/Combobox.jsx +49 -0
  259. package/components/forms/Combobox.prompt.md +6 -0
  260. package/components/forms/DatePicker.d.ts +15 -0
  261. package/components/forms/DatePicker.figma.tsx +12 -0
  262. package/components/forms/DatePicker.jsx +35 -0
  263. package/components/forms/DatePicker.prompt.md +5 -0
  264. package/components/forms/Editor.d.ts +12 -0
  265. package/components/forms/Editor.figma.tsx +12 -0
  266. package/components/forms/Editor.jsx +26 -0
  267. package/components/forms/Editor.prompt.md +5 -0
  268. package/components/forms/FileUpload.d.ts +14 -0
  269. package/components/forms/FileUpload.figma.tsx +12 -0
  270. package/components/forms/FileUpload.jsx +29 -0
  271. package/components/forms/FileUpload.prompt.md +5 -0
  272. package/components/forms/Form.d.ts +87 -0
  273. package/components/forms/Form.figma.tsx +12 -0
  274. package/components/forms/Form.jsx +316 -0
  275. package/components/forms/Form.prompt.md +46 -0
  276. package/components/forms/InlineEdit.d.ts +13 -0
  277. package/components/forms/InlineEdit.figma.tsx +12 -0
  278. package/components/forms/InlineEdit.jsx +27 -0
  279. package/components/forms/InlineEdit.prompt.md +5 -0
  280. package/components/forms/InputGroup.d.ts +20 -0
  281. package/components/forms/InputGroup.figma.tsx +12 -0
  282. package/components/forms/InputGroup.jsx +25 -0
  283. package/components/forms/InputGroup.prompt.md +6 -0
  284. package/components/forms/InputOTP.d.ts +16 -0
  285. package/components/forms/InputOTP.figma.tsx +12 -0
  286. package/components/forms/InputOTP.jsx +47 -0
  287. package/components/forms/InputOTP.prompt.md +5 -0
  288. package/components/forms/Mentions.d.ts +13 -0
  289. package/components/forms/Mentions.figma.tsx +12 -0
  290. package/components/forms/Mentions.jsx +31 -0
  291. package/components/forms/Mentions.prompt.md +5 -0
  292. package/components/forms/NumberField.d.ts +14 -0
  293. package/components/forms/NumberField.figma.tsx +12 -0
  294. package/components/forms/NumberField.jsx +21 -0
  295. package/components/forms/NumberField.prompt.md +5 -0
  296. package/components/forms/RadioGroup.d.ts +24 -0
  297. package/components/forms/RadioGroup.figma.tsx +12 -0
  298. package/components/forms/RadioGroup.jsx +32 -0
  299. package/components/forms/RadioGroup.prompt.md +6 -0
  300. package/components/forms/Rating.d.ts +16 -0
  301. package/components/forms/Rating.figma.tsx +12 -0
  302. package/components/forms/Rating.jsx +22 -0
  303. package/components/forms/Rating.prompt.md +6 -0
  304. package/components/forms/SearchField.d.ts +11 -0
  305. package/components/forms/SearchField.figma.tsx +12 -0
  306. package/components/forms/SearchField.jsx +25 -0
  307. package/components/forms/SearchField.prompt.md +5 -0
  308. package/components/forms/SegmentedControl.d.ts +13 -0
  309. package/components/forms/SegmentedControl.figma.tsx +12 -0
  310. package/components/forms/SegmentedControl.jsx +31 -0
  311. package/components/forms/SegmentedControl.prompt.md +6 -0
  312. package/components/forms/Select.d.ts +19 -0
  313. package/components/forms/Select.figma.tsx +12 -0
  314. package/components/forms/Select.jsx +27 -0
  315. package/components/forms/Select.prompt.md +6 -0
  316. package/components/forms/Slider.d.ts +6 -0
  317. package/components/forms/Slider.figma.tsx +12 -0
  318. package/components/forms/Slider.jsx +8 -0
  319. package/components/forms/Slider.prompt.md +5 -0
  320. package/components/forms/Switch.d.ts +12 -0
  321. package/components/forms/Switch.figma.tsx +12 -0
  322. package/components/forms/Switch.jsx +14 -0
  323. package/components/forms/Switch.prompt.md +5 -0
  324. package/components/forms/TagInput.d.ts +16 -0
  325. package/components/forms/TagInput.figma.tsx +12 -0
  326. package/components/forms/TagInput.jsx +39 -0
  327. package/components/forms/TagInput.prompt.md +5 -0
  328. package/components/forms/Textarea.d.ts +14 -0
  329. package/components/forms/Textarea.figma.tsx +12 -0
  330. package/components/forms/Textarea.jsx +19 -0
  331. package/components/forms/Textarea.prompt.md +5 -0
  332. package/components/forms/TimePicker.d.ts +16 -0
  333. package/components/forms/TimePicker.figma.tsx +12 -0
  334. package/components/forms/TimePicker.jsx +22 -0
  335. package/components/forms/TimePicker.prompt.md +5 -0
  336. package/components/forms/Toggle.d.ts +16 -0
  337. package/components/forms/Toggle.figma.tsx +12 -0
  338. package/components/forms/Toggle.jsx +15 -0
  339. package/components/forms/Toggle.prompt.md +6 -0
  340. package/components/forms/Transfer.d.ts +14 -0
  341. package/components/forms/Transfer.figma.tsx +12 -0
  342. package/components/forms/Transfer.jsx +41 -0
  343. package/components/forms/Transfer.prompt.md +5 -0
  344. package/components/forms/TreeSelect.d.ts +15 -0
  345. package/components/forms/TreeSelect.figma.tsx +12 -0
  346. package/components/forms/TreeSelect.jsx +35 -0
  347. package/components/forms/TreeSelect.prompt.md +5 -0
  348. package/components/forms/forms-2.card.html +40 -0
  349. package/components/forms/forms.card.html +40 -0
  350. package/components/icon/Icon.d.ts +26 -0
  351. package/components/icon/Icon.figma.tsx +12 -0
  352. package/components/icon/Icon.jsx +74 -0
  353. package/components/icon/Icon.prompt.md +8 -0
  354. package/components/icon/icon.card.html +38 -0
  355. package/components/logo/Logo.d.ts +18 -0
  356. package/components/logo/Logo.figma.tsx +12 -0
  357. package/components/logo/Logo.jsx +25 -0
  358. package/components/logo/Logo.prompt.md +10 -0
  359. package/components/logo/logo-data.js +214 -0
  360. package/components/logo/logo.card.html +44 -0
  361. package/components/navigation/Anchor.d.ts +11 -0
  362. package/components/navigation/Anchor.figma.tsx +12 -0
  363. package/components/navigation/Anchor.jsx +25 -0
  364. package/components/navigation/Anchor.prompt.md +5 -0
  365. package/components/navigation/BackTop.d.ts +9 -0
  366. package/components/navigation/BackTop.figma.tsx +12 -0
  367. package/components/navigation/BackTop.jsx +23 -0
  368. package/components/navigation/BackTop.prompt.md +5 -0
  369. package/components/navigation/Breadcrumb.d.ts +14 -0
  370. package/components/navigation/Breadcrumb.figma.tsx +12 -0
  371. package/components/navigation/Breadcrumb.jsx +24 -0
  372. package/components/navigation/Breadcrumb.prompt.md +5 -0
  373. package/components/navigation/CommandPalette.d.ts +19 -0
  374. package/components/navigation/CommandPalette.figma.tsx +12 -0
  375. package/components/navigation/CommandPalette.jsx +48 -0
  376. package/components/navigation/CommandPalette.prompt.md +7 -0
  377. package/components/navigation/Dock.d.ts +6 -0
  378. package/components/navigation/Dock.figma.tsx +12 -0
  379. package/components/navigation/Dock.jsx +22 -0
  380. package/components/navigation/Dock.prompt.md +5 -0
  381. package/components/navigation/HotKeys.d.ts +13 -0
  382. package/components/navigation/HotKeys.figma.tsx +12 -0
  383. package/components/navigation/HotKeys.jsx +44 -0
  384. package/components/navigation/HotKeys.prompt.md +5 -0
  385. package/components/navigation/Link.d.ts +12 -0
  386. package/components/navigation/Link.figma.tsx +12 -0
  387. package/components/navigation/Link.jsx +13 -0
  388. package/components/navigation/Link.prompt.md +5 -0
  389. package/components/navigation/Menu.d.ts +23 -0
  390. package/components/navigation/Menu.figma.tsx +12 -0
  391. package/components/navigation/Menu.jsx +36 -0
  392. package/components/navigation/Menu.prompt.md +9 -0
  393. package/components/navigation/Menubar.d.ts +7 -0
  394. package/components/navigation/Menubar.figma.tsx +12 -0
  395. package/components/navigation/Menubar.jsx +48 -0
  396. package/components/navigation/Menubar.prompt.md +5 -0
  397. package/components/navigation/NavigationMenu.d.ts +7 -0
  398. package/components/navigation/NavigationMenu.figma.tsx +12 -0
  399. package/components/navigation/NavigationMenu.jsx +38 -0
  400. package/components/navigation/NavigationMenu.prompt.md +5 -0
  401. package/components/navigation/Pagination.d.ts +13 -0
  402. package/components/navigation/Pagination.figma.tsx +12 -0
  403. package/components/navigation/Pagination.jsx +32 -0
  404. package/components/navigation/Pagination.prompt.md +5 -0
  405. package/components/navigation/Sidebar.d.ts +20 -0
  406. package/components/navigation/Sidebar.figma.tsx +12 -0
  407. package/components/navigation/Sidebar.jsx +24 -0
  408. package/components/navigation/Sidebar.prompt.md +8 -0
  409. package/components/navigation/Steps.d.ts +13 -0
  410. package/components/navigation/Steps.figma.tsx +12 -0
  411. package/components/navigation/Steps.jsx +20 -0
  412. package/components/navigation/Steps.prompt.md +5 -0
  413. package/components/navigation/Tabs.d.ts +21 -0
  414. package/components/navigation/Tabs.figma.tsx +12 -0
  415. package/components/navigation/Tabs.jsx +41 -0
  416. package/components/navigation/Tabs.prompt.md +6 -0
  417. package/components/navigation/Toolbar.d.ts +16 -0
  418. package/components/navigation/Toolbar.figma.tsx +12 -0
  419. package/components/navigation/Toolbar.jsx +32 -0
  420. package/components/navigation/Toolbar.prompt.md +5 -0
  421. package/components/navigation/navigation.card.html +51 -0
  422. package/components/navigation/shell.card.html +52 -0
  423. package/components/overlays/ContextMenu.d.ts +10 -0
  424. package/components/overlays/ContextMenu.figma.tsx +12 -0
  425. package/components/overlays/ContextMenu.jsx +28 -0
  426. package/components/overlays/ContextMenu.prompt.md +7 -0
  427. package/components/overlays/Drawer.d.ts +18 -0
  428. package/components/overlays/Drawer.figma.tsx +12 -0
  429. package/components/overlays/Drawer.jsx +44 -0
  430. package/components/overlays/Drawer.prompt.md +8 -0
  431. package/components/overlays/HoverCard.d.ts +13 -0
  432. package/components/overlays/HoverCard.figma.tsx +12 -0
  433. package/components/overlays/HoverCard.jsx +17 -0
  434. package/components/overlays/HoverCard.prompt.md +5 -0
  435. package/components/overlays/Popconfirm.d.ts +18 -0
  436. package/components/overlays/Popconfirm.figma.tsx +12 -0
  437. package/components/overlays/Popconfirm.jsx +33 -0
  438. package/components/overlays/Popconfirm.prompt.md +6 -0
  439. package/components/overlays/Popover.d.ts +17 -0
  440. package/components/overlays/Popover.figma.tsx +12 -0
  441. package/components/overlays/Popover.jsx +24 -0
  442. package/components/overlays/Popover.prompt.md +7 -0
  443. package/components/overlays/Tour.d.ts +13 -0
  444. package/components/overlays/Tour.figma.tsx +12 -0
  445. package/components/overlays/Tour.jsx +46 -0
  446. package/components/overlays/Tour.prompt.md +5 -0
  447. package/components/overlays/overlays.card.html +50 -0
  448. package/components/textfield/TextField.d.ts +18 -0
  449. package/components/textfield/TextField.figma.tsx +14 -0
  450. package/components/textfield/TextField.jsx +44 -0
  451. package/components/textfield/TextField.prompt.md +11 -0
  452. package/components/textfield/textfield.card.html +34 -0
  453. package/docs/ci-cd.md +84 -0
  454. package/docs/consuming.md +109 -0
  455. package/docs/contrast-report.md +125 -0
  456. package/docs/conventions.md +114 -0
  457. package/docs/decisions.md +94 -0
  458. package/docs/deploy.md +110 -0
  459. package/docs/design-styles.md +25 -0
  460. package/docs/figma.md +119 -0
  461. package/docs/live-hub.md +58 -0
  462. package/docs/products.md +26 -0
  463. package/docs/quality-gates.md +94 -0
  464. package/docs/release-notes.md +31 -0
  465. package/docs/storybook.md +56 -0
  466. package/docs/sync.md +48 -0
  467. package/docs/template-schema-v2.md +36 -0
  468. package/docs/vi/ci-cd.md +84 -0
  469. package/docs/vi/consuming.md +109 -0
  470. package/docs/vi/contrast-report.md +125 -0
  471. package/docs/vi/conventions.md +114 -0
  472. package/docs/vi/decisions.md +94 -0
  473. package/docs/vi/deploy.md +110 -0
  474. package/docs/vi/design-styles.md +25 -0
  475. package/docs/vi/figma.md +119 -0
  476. package/docs/vi/live-hub.md +58 -0
  477. package/docs/vi/products.md +26 -0
  478. package/docs/vi/quality-gates.md +94 -0
  479. package/docs/vi/release-notes.md +31 -0
  480. package/docs/vi/storybook.md +56 -0
  481. package/docs/vi/sync.md +48 -0
  482. package/docs/vi/template-schema-v2.md +36 -0
  483. package/docs/viewer.html +230 -0
  484. package/fonts/bevietnampro-300-latin-ext.woff2 +0 -0
  485. package/fonts/bevietnampro-300-latin.woff2 +0 -0
  486. package/fonts/bevietnampro-300-vietnamese.woff2 +0 -0
  487. package/fonts/bevietnampro-400-latin-ext.woff2 +0 -0
  488. package/fonts/bevietnampro-400-latin.woff2 +0 -0
  489. package/fonts/bevietnampro-400-vietnamese.woff2 +0 -0
  490. package/fonts/bevietnampro-400i-latin-ext.woff2 +0 -0
  491. package/fonts/bevietnampro-400i-latin.woff2 +0 -0
  492. package/fonts/bevietnampro-400i-vietnamese.woff2 +0 -0
  493. package/fonts/bevietnampro-500-latin-ext.woff2 +0 -0
  494. package/fonts/bevietnampro-500-latin.woff2 +0 -0
  495. package/fonts/bevietnampro-500-vietnamese.woff2 +0 -0
  496. package/fonts/bevietnampro-600-latin-ext.woff2 +0 -0
  497. package/fonts/bevietnampro-600-latin.woff2 +0 -0
  498. package/fonts/bevietnampro-600-vietnamese.woff2 +0 -0
  499. package/fonts/bevietnampro-600i-latin-ext.woff2 +0 -0
  500. package/fonts/bevietnampro-600i-latin.woff2 +0 -0
  501. package/fonts/bevietnampro-600i-vietnamese.woff2 +0 -0
  502. package/fonts/bevietnampro-700-latin-ext.woff2 +0 -0
  503. package/fonts/bevietnampro-700-latin.woff2 +0 -0
  504. package/fonts/bevietnampro-700-vietnamese.woff2 +0 -0
  505. package/fonts/bevietnampro-800-latin-ext.woff2 +0 -0
  506. package/fonts/bevietnampro-800-latin.woff2 +0 -0
  507. package/fonts/bevietnampro-800-vietnamese.woff2 +0 -0
  508. package/fonts/jetbrainsmono-400-cyrillic-ext.woff2 +0 -0
  509. package/fonts/jetbrainsmono-400-cyrillic.woff2 +0 -0
  510. package/fonts/jetbrainsmono-400-greek.woff2 +0 -0
  511. package/fonts/jetbrainsmono-400-latin-ext.woff2 +0 -0
  512. package/fonts/jetbrainsmono-400-latin.woff2 +0 -0
  513. package/fonts/jetbrainsmono-400-vietnamese.woff2 +0 -0
  514. package/fonts/jetbrainsmono-500-cyrillic-ext.woff2 +0 -0
  515. package/fonts/jetbrainsmono-500-cyrillic.woff2 +0 -0
  516. package/fonts/jetbrainsmono-500-greek.woff2 +0 -0
  517. package/fonts/jetbrainsmono-500-latin-ext.woff2 +0 -0
  518. package/fonts/jetbrainsmono-500-latin.woff2 +0 -0
  519. package/fonts/jetbrainsmono-500-vietnamese.woff2 +0 -0
  520. package/fonts/jetbrainsmono-700-cyrillic-ext.woff2 +0 -0
  521. package/fonts/jetbrainsmono-700-cyrillic.woff2 +0 -0
  522. package/fonts/jetbrainsmono-700-greek.woff2 +0 -0
  523. package/fonts/jetbrainsmono-700-latin-ext.woff2 +0 -0
  524. package/fonts/jetbrainsmono-700-latin.woff2 +0 -0
  525. package/fonts/jetbrainsmono-700-vietnamese.woff2 +0 -0
  526. package/guidelines/atomic-view.html +497 -0
  527. package/guidelines/brand-iconography.html +51 -0
  528. package/guidelines/brand-imagery.html +23 -0
  529. package/guidelines/brand-interaction.html +24 -0
  530. package/guidelines/brand-voice.html +24 -0
  531. package/guidelines/colors-anchors.html +20 -0
  532. package/guidelines/colors-semantic.html +19 -0
  533. package/guidelines/colors-surfaces.html +19 -0
  534. package/guidelines/colors-text.html +20 -0
  535. package/guidelines/documents.html +43 -0
  536. package/guidelines/elements-components.html +27 -0
  537. package/guidelines/elements-concept.html +48 -0
  538. package/guidelines/elements-variants.html +49 -0
  539. package/guidelines/motion-interaction.html +29 -0
  540. package/guidelines/motion.html +53 -0
  541. package/guidelines/nav-model.cjs +113 -0
  542. package/guidelines/responsive-bilingual.html +75 -0
  543. package/guidelines/rtl-preview.html +115 -0
  544. package/guidelines/spacing-breakpoints.html +20 -0
  545. package/guidelines/spacing-radius.html +19 -0
  546. package/guidelines/spacing-scale.html +21 -0
  547. package/guidelines/surfaces-aurora.html +20 -0
  548. package/guidelines/surfaces-depth.html +27 -0
  549. package/guidelines/surfaces-glass.html +21 -0
  550. package/guidelines/surfaces-shadow.html +20 -0
  551. package/guidelines/type-families.html +25 -0
  552. package/guidelines/type-lineheight.html +16 -0
  553. package/guidelines/type-scale.html +21 -0
  554. package/guidelines/type-weights.html +20 -0
  555. package/llms.txt +70 -0
  556. package/package.json +88 -0
  557. package/styles.css +39 -0
  558. package/templates/_vendor/deck-stage.js +2584 -0
  559. package/templates/ai-cluster-demo.html +46 -0
  560. package/templates/app-shell/.thumbnail +0 -0
  561. package/templates/app-shell/AppShell.dc.html +80 -0
  562. package/templates/app-shell/content-schema.json +114 -0
  563. package/templates/app-shell/ds-base.js +23 -0
  564. package/templates/app-shell/support.js +1841 -0
  565. package/templates/article/.thumbnail +0 -0
  566. package/templates/article/Article.dc.html +67 -0
  567. package/templates/article/content-schema.json +80 -0
  568. package/templates/article/ds-base.js +23 -0
  569. package/templates/article/support.js +1841 -0
  570. package/templates/auth/.thumbnail +0 -0
  571. package/templates/auth/Auth.dc.html +72 -0
  572. package/templates/auth/content-schema.json +74 -0
  573. package/templates/auth/ds-base.js +23 -0
  574. package/templates/auth/support.js +1841 -0
  575. package/templates/bod-deck/.thumbnail +0 -0
  576. package/templates/bod-deck/BodDeck.dc.html +106 -0
  577. package/templates/bod-deck/content-schema.json +171 -0
  578. package/templates/bod-deck/ds-base.js +23 -0
  579. package/templates/bod-deck/support.js +1841 -0
  580. package/templates/bod-investor-update/.thumbnail +0 -0
  581. package/templates/bod-investor-update/BodInvestorUpdate.dc.html +81 -0
  582. package/templates/bod-investor-update/content-schema.json +105 -0
  583. package/templates/bod-investor-update/ds-base.js +23 -0
  584. package/templates/bod-investor-update/support.js +1841 -0
  585. package/templates/bod-memo/.thumbnail +0 -0
  586. package/templates/bod-memo/BodMemo.dc.html +87 -0
  587. package/templates/bod-memo/ds-base.js +23 -0
  588. package/templates/bod-memo/support.js +1841 -0
  589. package/templates/bod-minutes/.thumbnail +0 -0
  590. package/templates/bod-minutes/BodMinutes.dc.html +84 -0
  591. package/templates/bod-minutes/ds-base.js +23 -0
  592. package/templates/bod-minutes/support.js +1841 -0
  593. package/templates/bod-report/.thumbnail +0 -0
  594. package/templates/bod-report/BodReport.dc.html +106 -0
  595. package/templates/bod-report/content-schema.json +29 -0
  596. package/templates/bod-report/ds-base.js +23 -0
  597. package/templates/bod-report/support.js +1841 -0
  598. package/templates/bod-resolution/.thumbnail +0 -0
  599. package/templates/bod-resolution/BodResolution.dc.html +87 -0
  600. package/templates/bod-resolution/content-schema.json +123 -0
  601. package/templates/bod-resolution/ds-base.js +23 -0
  602. package/templates/bod-resolution/support.js +1841 -0
  603. package/templates/culture-event-invite/.thumbnail +0 -0
  604. package/templates/culture-event-invite/CultureEventInvite.dc.html +73 -0
  605. package/templates/culture-event-invite/ds-base.js +23 -0
  606. package/templates/culture-event-invite/support.js +1841 -0
  607. package/templates/dashboard/.thumbnail +0 -0
  608. package/templates/dashboard/Dashboard.dc.html +120 -0
  609. package/templates/dashboard/content-schema.json +97 -0
  610. package/templates/dashboard/ds-base.js +23 -0
  611. package/templates/dashboard/support.js +1841 -0
  612. package/templates/delivery-change-note/.thumbnail +0 -0
  613. package/templates/delivery-change-note/DeliveryChangeNote.dc.html +85 -0
  614. package/templates/delivery-change-note/content-schema.json +158 -0
  615. package/templates/delivery-change-note/ds-base.js +23 -0
  616. package/templates/delivery-change-note/support.js +1841 -0
  617. package/templates/delivery-kickoff/.thumbnail +0 -0
  618. package/templates/delivery-kickoff/DeliveryKickoff.dc.html +112 -0
  619. package/templates/delivery-kickoff/content-schema.json +223 -0
  620. package/templates/delivery-kickoff/ds-base.js +23 -0
  621. package/templates/delivery-kickoff/support.js +1841 -0
  622. package/templates/delivery-qbr-deck/.thumbnail +0 -0
  623. package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +118 -0
  624. package/templates/delivery-qbr-deck/content-schema.json +177 -0
  625. package/templates/delivery-qbr-deck/ds-base.js +23 -0
  626. package/templates/delivery-qbr-deck/support.js +1841 -0
  627. package/templates/delivery-runbook/.thumbnail +0 -0
  628. package/templates/delivery-runbook/DeliveryRunbook.dc.html +91 -0
  629. package/templates/delivery-runbook/content-schema.json +211 -0
  630. package/templates/delivery-runbook/ds-base.js +23 -0
  631. package/templates/delivery-runbook/support.js +1841 -0
  632. package/templates/delivery-status-email/.thumbnail +0 -0
  633. package/templates/delivery-status-email/DeliveryStatusEmail.dc.html +78 -0
  634. package/templates/delivery-status-email/ds-base.js +23 -0
  635. package/templates/delivery-status-email/support.js +1841 -0
  636. package/templates/doc-style-guide/.thumbnail +0 -0
  637. package/templates/doc-style-guide/DocStyleGuide.dc.html +148 -0
  638. package/templates/doc-style-guide/ds-base.js +23 -0
  639. package/templates/doc-style-guide/support.js +1841 -0
  640. package/templates/doc-suite-index/.thumbnail +0 -0
  641. package/templates/doc-suite-index/DocSuiteIndex.dc.html +201 -0
  642. package/templates/doc-suite-index/content-schema.json +12 -0
  643. package/templates/doc-suite-index/ds-base.js +23 -0
  644. package/templates/doc-suite-index/support.js +1841 -0
  645. package/templates/doc-templates/.thumbnail +0 -0
  646. package/templates/doc-templates/DocTemplates.dc.html +118 -0
  647. package/templates/doc-templates/ds-base.js +23 -0
  648. package/templates/doc-templates/support.js +1841 -0
  649. package/templates/email/.thumbnail +0 -0
  650. package/templates/email/Email-VN-standalone.html +59 -0
  651. package/templates/email/Email.dc.html +67 -0
  652. package/templates/email/ds-base.js +23 -0
  653. package/templates/email/support.js +1841 -0
  654. package/templates/email-safe/README.md +28 -0
  655. package/templates/email-safe/email-announcement.html +88 -0
  656. package/templates/email-safe/email-dunning.html +59 -0
  657. package/templates/email-safe/email-investor.html +88 -0
  658. package/templates/email-safe/email-launch.html +88 -0
  659. package/templates/email-safe/email-newsletter.html +62 -0
  660. package/templates/email-safe/email-status.html +88 -0
  661. package/templates/email-safe/email-transactional.html +88 -0
  662. package/templates/finance-dunning-email/.thumbnail +0 -0
  663. package/templates/finance-dunning-email/FinanceDunningEmail.dc.html +58 -0
  664. package/templates/finance-dunning-email/ds-base.js +23 -0
  665. package/templates/finance-dunning-email/support.js +1841 -0
  666. package/templates/finance-expense-report/.thumbnail +0 -0
  667. package/templates/finance-expense-report/FinanceExpenseReport.dc.html +82 -0
  668. package/templates/finance-expense-report/ds-base.js +23 -0
  669. package/templates/finance-expense-report/support.js +1841 -0
  670. package/templates/finance-invoice/.thumbnail +0 -0
  671. package/templates/finance-invoice/FinanceInvoice.dc.html +92 -0
  672. package/templates/finance-invoice/ds-base.js +23 -0
  673. package/templates/finance-invoice/support.js +1841 -0
  674. package/templates/finance-quote/.thumbnail +0 -0
  675. package/templates/finance-quote/FinanceQuote.dc.html +86 -0
  676. package/templates/finance-quote/ds-base.js +23 -0
  677. package/templates/finance-quote/support.js +1841 -0
  678. package/templates/hr-announcement/.thumbnail +0 -0
  679. package/templates/hr-announcement/HrAnnouncement.dc.html +64 -0
  680. package/templates/hr-announcement/ds-base.js +23 -0
  681. package/templates/hr-announcement/support.js +1841 -0
  682. package/templates/hr-interview-kit/.thumbnail +0 -0
  683. package/templates/hr-interview-kit/HrInterviewKit.dc.html +102 -0
  684. package/templates/hr-interview-kit/ds-base.js +23 -0
  685. package/templates/hr-interview-kit/support.js +1841 -0
  686. package/templates/hr-offboarding/.thumbnail +0 -0
  687. package/templates/hr-offboarding/HrOffboarding.dc.html +86 -0
  688. package/templates/hr-offboarding/ds-base.js +23 -0
  689. package/templates/hr-offboarding/support.js +1841 -0
  690. package/templates/hr-performance-review/.thumbnail +0 -0
  691. package/templates/hr-performance-review/HrPerformanceReview.dc.html +95 -0
  692. package/templates/hr-performance-review/ds-base.js +23 -0
  693. package/templates/hr-performance-review/support.js +1841 -0
  694. package/templates/hr-pip/.thumbnail +0 -0
  695. package/templates/hr-pip/HrPip.dc.html +73 -0
  696. package/templates/hr-pip/ds-base.js +23 -0
  697. package/templates/hr-pip/support.js +1841 -0
  698. package/templates/image-slots-demo.html +57 -0
  699. package/templates/kitchen-sink.html +127 -0
  700. package/templates/legal-msa/.thumbnail +0 -0
  701. package/templates/legal-msa/LegalMsa.dc.html +85 -0
  702. package/templates/legal-msa/ds-base.js +23 -0
  703. package/templates/legal-msa/support.js +1841 -0
  704. package/templates/legal-sow/.thumbnail +0 -0
  705. package/templates/legal-sow/LegalSow.dc.html +125 -0
  706. package/templates/legal-sow/ds-base.js +23 -0
  707. package/templates/legal-sow/support.js +1841 -0
  708. package/templates/marketing-campaign-brief/.thumbnail +0 -0
  709. package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +86 -0
  710. package/templates/marketing-campaign-brief/content-schema.json +139 -0
  711. package/templates/marketing-campaign-brief/ds-base.js +23 -0
  712. package/templates/marketing-campaign-brief/support.js +1841 -0
  713. package/templates/marketing-case-study/.thumbnail +0 -0
  714. package/templates/marketing-case-study/MarketingCaseStudy.dc.html +82 -0
  715. package/templates/marketing-case-study/content-schema.json +103 -0
  716. package/templates/marketing-case-study/ds-base.js +23 -0
  717. package/templates/marketing-case-study/support.js +1841 -0
  718. package/templates/marketing-launch/.thumbnail +0 -0
  719. package/templates/marketing-launch/MarketingLaunch.dc.html +84 -0
  720. package/templates/marketing-launch/ds-base.js +23 -0
  721. package/templates/marketing-launch/support.js +1841 -0
  722. package/templates/marketing-newsletter/.thumbnail +0 -0
  723. package/templates/marketing-newsletter/MarketingNewsletter.dc.html +109 -0
  724. package/templates/marketing-newsletter/ds-base.js +23 -0
  725. package/templates/marketing-newsletter/support.js +1841 -0
  726. package/templates/marketing-page/.thumbnail +0 -0
  727. package/templates/marketing-page/MarketingPage.dc.html +132 -0
  728. package/templates/marketing-page/content-schema.json +33 -0
  729. package/templates/marketing-page/ds-base.js +23 -0
  730. package/templates/marketing-page/support.js +1841 -0
  731. package/templates/marketing-press-release/.thumbnail +0 -0
  732. package/templates/marketing-press-release/MarketingPressRelease.dc.html +84 -0
  733. package/templates/marketing-press-release/content-schema.json +116 -0
  734. package/templates/marketing-press-release/ds-base.js +23 -0
  735. package/templates/marketing-press-release/support.js +1841 -0
  736. package/templates/marketing-social-kit/.thumbnail +0 -0
  737. package/templates/marketing-social-kit/MarketingSocialKit.dc.html +77 -0
  738. package/templates/marketing-social-kit/content-schema.json +54 -0
  739. package/templates/marketing-social-kit/ds-base.js +23 -0
  740. package/templates/marketing-social-kit/support.js +1841 -0
  741. package/templates/playground.html +79 -0
  742. package/templates/sales-one-pager/.thumbnail +0 -0
  743. package/templates/sales-one-pager/SalesOnePager.dc.html +103 -0
  744. package/templates/sales-one-pager/content-schema.json +73 -0
  745. package/templates/sales-one-pager/ds-base.js +23 -0
  746. package/templates/sales-one-pager/support.js +1841 -0
  747. package/templates/sales-proposal-deck/.thumbnail +0 -0
  748. package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +159 -0
  749. package/templates/sales-proposal-deck/content-schema.json +273 -0
  750. package/templates/sales-proposal-deck/ds-base.js +23 -0
  751. package/templates/sales-proposal-deck/support.js +1841 -0
  752. package/templates/schema/content-schema.schema.json +31 -0
  753. package/templates/settings/.thumbnail +0 -0
  754. package/templates/settings/Settings.dc.html +86 -0
  755. package/templates/settings/content-schema.json +131 -0
  756. package/templates/settings/ds-base.js +23 -0
  757. package/templates/settings/support.js +1841 -0
  758. package/templates/slide-deck/.thumbnail +0 -0
  759. package/templates/slide-deck/SlideDeck.dc.html +86 -0
  760. package/templates/slide-deck/content-schema.json +23 -0
  761. package/templates/slide-deck/ds-base.js +23 -0
  762. package/templates/slide-deck/support.js +1841 -0
  763. package/templates/team-meeting-agenda/.thumbnail +0 -0
  764. package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +93 -0
  765. package/templates/team-meeting-agenda/ds-base.js +23 -0
  766. package/templates/team-meeting-agenda/support.js +1841 -0
  767. package/templates/tech-incident-report/.thumbnail +0 -0
  768. package/templates/tech-incident-report/TechIncidentReport.dc.html +111 -0
  769. package/templates/tech-incident-report/content-schema.json +25 -0
  770. package/templates/tech-incident-report/ds-base.js +23 -0
  771. package/templates/tech-incident-report/support.js +1841 -0
  772. package/templates/tech-release-notes/.thumbnail +0 -0
  773. package/templates/tech-release-notes/TechReleaseNotes.dc.html +79 -0
  774. package/templates/tech-release-notes/ds-base.js +23 -0
  775. package/templates/tech-release-notes/support.js +1841 -0
  776. package/templates/tech-retro/.thumbnail +0 -0
  777. package/templates/tech-retro/TechRetro.dc.html +84 -0
  778. package/templates/tech-retro/ds-base.js +23 -0
  779. package/templates/tech-retro/support.js +1841 -0
  780. package/templates/tech-rfc/.thumbnail +0 -0
  781. package/templates/tech-rfc/TechRfc.dc.html +87 -0
  782. package/templates/tech-rfc/content-schema.json +115 -0
  783. package/templates/tech-rfc/ds-base.js +23 -0
  784. package/templates/tech-rfc/support.js +1841 -0
  785. package/templates/vn-appointment-transfer/.thumbnail +0 -0
  786. package/templates/vn-appointment-transfer/VnAppointmentTransfer.dc.html +101 -0
  787. package/templates/vn-appointment-transfer/ds-base.js +23 -0
  788. package/templates/vn-appointment-transfer/support.js +1841 -0
  789. package/templates/vn-certificate-of-employment/.thumbnail +0 -0
  790. package/templates/vn-certificate-of-employment/VnCertificateOfEmployment.dc.html +84 -0
  791. package/templates/vn-certificate-of-employment/ds-base.js +23 -0
  792. package/templates/vn-certificate-of-employment/support.js +1841 -0
  793. package/templates/vn-code-of-conduct/.thumbnail +0 -0
  794. package/templates/vn-code-of-conduct/VnCodeOfConduct.dc.html +105 -0
  795. package/templates/vn-code-of-conduct/ds-base.js +23 -0
  796. package/templates/vn-code-of-conduct/support.js +1841 -0
  797. package/templates/vn-compensation-regulation/.thumbnail +0 -0
  798. package/templates/vn-compensation-regulation/VnCompensationRegulation.dc.html +122 -0
  799. package/templates/vn-compensation-regulation/ds-base.js +23 -0
  800. package/templates/vn-compensation-regulation/support.js +1841 -0
  801. package/templates/vn-contract-amendment/.thumbnail +0 -0
  802. package/templates/vn-contract-amendment/VnContractAmendment.dc.html +107 -0
  803. package/templates/vn-contract-amendment/ds-base.js +23 -0
  804. package/templates/vn-contract-amendment/support.js +1841 -0
  805. package/templates/vn-contractor-agreement/.thumbnail +0 -0
  806. package/templates/vn-contractor-agreement/VnContractorAgreement.dc.html +120 -0
  807. package/templates/vn-contractor-agreement/ds-base.js +23 -0
  808. package/templates/vn-contractor-agreement/support.js +1841 -0
  809. package/templates/vn-data-protection-policy/.thumbnail +0 -0
  810. package/templates/vn-data-protection-policy/VnDataProtectionPolicy.dc.html +116 -0
  811. package/templates/vn-data-protection-policy/ds-base.js +23 -0
  812. package/templates/vn-data-protection-policy/support.js +1841 -0
  813. package/templates/vn-disciplinary-case-file/.thumbnail +0 -0
  814. package/templates/vn-disciplinary-case-file/VnDisciplinaryCaseFile.dc.html +172 -0
  815. package/templates/vn-disciplinary-case-file/ds-base.js +23 -0
  816. package/templates/vn-disciplinary-case-file/support.js +1841 -0
  817. package/templates/vn-disciplinary-schedule/.thumbnail +0 -0
  818. package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +91 -0
  819. package/templates/vn-disciplinary-schedule/ds-base.js +23 -0
  820. package/templates/vn-disciplinary-schedule/support.js +1841 -0
  821. package/templates/vn-employee-request/.thumbnail +0 -0
  822. package/templates/vn-employee-request/VnEmployeeRequest.dc.html +137 -0
  823. package/templates/vn-employee-request/ds-base.js +23 -0
  824. package/templates/vn-employee-request/support.js +1841 -0
  825. package/templates/vn-exit-handover/.thumbnail +0 -0
  826. package/templates/vn-exit-handover/VnExitHandover.dc.html +228 -0
  827. package/templates/vn-exit-handover/ds-base.js +23 -0
  828. package/templates/vn-exit-handover/support.js +1841 -0
  829. package/templates/vn-foreign-employee-pack/.thumbnail +0 -0
  830. package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +129 -0
  831. package/templates/vn-foreign-employee-pack/content-schema.json +22 -0
  832. package/templates/vn-foreign-employee-pack/ds-base.js +23 -0
  833. package/templates/vn-foreign-employee-pack/support.js +1841 -0
  834. package/templates/vn-grassroots-democracy/.thumbnail +0 -0
  835. package/templates/vn-grassroots-democracy/VnGrassrootsDemocracy.dc.html +117 -0
  836. package/templates/vn-grassroots-democracy/ds-base.js +23 -0
  837. package/templates/vn-grassroots-democracy/support.js +1841 -0
  838. package/templates/vn-infosec-policy/.thumbnail +0 -0
  839. package/templates/vn-infosec-policy/VnInfosecPolicy.dc.html +116 -0
  840. package/templates/vn-infosec-policy/ds-base.js +23 -0
  841. package/templates/vn-infosec-policy/support.js +1841 -0
  842. package/templates/vn-internal-labor-regulations/.thumbnail +0 -0
  843. package/templates/vn-internal-labor-regulations/VnInternalLaborRegulations.dc.html +155 -0
  844. package/templates/vn-internal-labor-regulations/ds-base.js +23 -0
  845. package/templates/vn-internal-labor-regulations/support.js +1841 -0
  846. package/templates/vn-internship-agreement/.thumbnail +0 -0
  847. package/templates/vn-internship-agreement/VnInternshipAgreement.dc.html +112 -0
  848. package/templates/vn-internship-agreement/ds-base.js +23 -0
  849. package/templates/vn-internship-agreement/support.js +1841 -0
  850. package/templates/vn-job-description/.thumbnail +0 -0
  851. package/templates/vn-job-description/VnJobDescription.dc.html +85 -0
  852. package/templates/vn-job-description/ds-base.js +23 -0
  853. package/templates/vn-job-description/support.js +1841 -0
  854. package/templates/vn-labor-contract/.thumbnail +0 -0
  855. package/templates/vn-labor-contract/VnLaborContract.dc.html +180 -0
  856. package/templates/vn-labor-contract/ds-base.js +23 -0
  857. package/templates/vn-labor-contract/support.js +1841 -0
  858. package/templates/vn-labour-management-book/.thumbnail +0 -0
  859. package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +115 -0
  860. package/templates/vn-labour-management-book/ds-base.js +23 -0
  861. package/templates/vn-labour-management-book/support.js +1841 -0
  862. package/templates/vn-mutual-nda/.thumbnail +0 -0
  863. package/templates/vn-mutual-nda/VnMutualNda.dc.html +114 -0
  864. package/templates/vn-mutual-nda/ds-base.js +23 -0
  865. package/templates/vn-mutual-nda/support.js +1841 -0
  866. package/templates/vn-ndnca-ip/.thumbnail +0 -0
  867. package/templates/vn-ndnca-ip/VnNdncaIp.dc.html +157 -0
  868. package/templates/vn-ndnca-ip/ds-base.js +23 -0
  869. package/templates/vn-ndnca-ip/support.js +1841 -0
  870. package/templates/vn-offer-letter/.thumbnail +0 -0
  871. package/templates/vn-offer-letter/VnOfferLetter.dc.html +84 -0
  872. package/templates/vn-offer-letter/ds-base.js +23 -0
  873. package/templates/vn-offer-letter/support.js +1841 -0
  874. package/templates/vn-onboarding-checklist/.thumbnail +0 -0
  875. package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +98 -0
  876. package/templates/vn-onboarding-checklist/content-schema.json +12 -0
  877. package/templates/vn-onboarding-checklist/ds-base.js +23 -0
  878. package/templates/vn-onboarding-checklist/support.js +1841 -0
  879. package/templates/vn-pdpl-consent/.thumbnail +0 -0
  880. package/templates/vn-pdpl-consent/VnPdplConsent.dc.html +111 -0
  881. package/templates/vn-pdpl-consent/ds-base.js +23 -0
  882. package/templates/vn-pdpl-consent/support.js +1841 -0
  883. package/templates/vn-performance-evaluation-regulation/.thumbnail +0 -0
  884. package/templates/vn-performance-evaluation-regulation/VnPerformanceEvaluationRegulation.dc.html +135 -0
  885. package/templates/vn-performance-evaluation-regulation/ds-base.js +23 -0
  886. package/templates/vn-performance-evaluation-regulation/support.js +1841 -0
  887. package/templates/vn-performance-review-form/.thumbnail +0 -0
  888. package/templates/vn-performance-review-form/VnPerformanceReviewForm.dc.html +129 -0
  889. package/templates/vn-performance-review-form/ds-base.js +23 -0
  890. package/templates/vn-performance-review-form/support.js +1841 -0
  891. package/templates/vn-phantom-stock/.thumbnail +0 -0
  892. package/templates/vn-phantom-stock/VnPhantomStock.dc.html +184 -0
  893. package/templates/vn-phantom-stock/content-schema.json +17 -0
  894. package/templates/vn-phantom-stock/ds-base.js +23 -0
  895. package/templates/vn-phantom-stock/support.js +1841 -0
  896. package/templates/vn-probation-contract/.thumbnail +0 -0
  897. package/templates/vn-probation-contract/VnProbationContract.dc.html +126 -0
  898. package/templates/vn-probation-contract/ds-base.js +23 -0
  899. package/templates/vn-probation-contract/support.js +1841 -0
  900. package/templates/vn-receipt-acknowledgement/.thumbnail +0 -0
  901. package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +106 -0
  902. package/templates/vn-receipt-acknowledgement/ds-base.js +23 -0
  903. package/templates/vn-receipt-acknowledgement/support.js +1841 -0
  904. package/templates/vn-remote-work-policy/.thumbnail +0 -0
  905. package/templates/vn-remote-work-policy/VnRemoteWorkPolicy.dc.html +103 -0
  906. package/templates/vn-remote-work-policy/ds-base.js +23 -0
  907. package/templates/vn-remote-work-policy/support.js +1841 -0
  908. package/templates/vn-resignation-letter/.thumbnail +0 -0
  909. package/templates/vn-resignation-letter/VnResignationLetter.dc.html +71 -0
  910. package/templates/vn-resignation-letter/ds-base.js +23 -0
  911. package/templates/vn-resignation-letter/support.js +1841 -0
  912. package/templates/vn-salary-scale/.thumbnail +0 -0
  913. package/templates/vn-salary-scale/VnSalaryScale.dc.html +110 -0
  914. package/templates/vn-salary-scale/ds-base.js +23 -0
  915. package/templates/vn-salary-scale/support.js +1841 -0
  916. package/templates/vn-sow-appendix/.thumbnail +0 -0
  917. package/templates/vn-sow-appendix/VnSowAppendix.dc.html +70 -0
  918. package/templates/vn-sow-appendix/ds-base.js +23 -0
  919. package/templates/vn-sow-appendix/support.js +1841 -0
  920. package/templates/vn-termination-decision/.thumbnail +0 -0
  921. package/templates/vn-termination-decision/VnTerminationDecision.dc.html +80 -0
  922. package/templates/vn-termination-decision/ds-base.js +23 -0
  923. package/templates/vn-termination-decision/support.js +1841 -0
  924. package/templates/vn-total-rewards-appendix/.thumbnail +0 -0
  925. package/templates/vn-total-rewards-appendix/VnTotalRewardsAppendix.dc.html +138 -0
  926. package/templates/vn-total-rewards-appendix/ds-base.js +23 -0
  927. package/templates/vn-total-rewards-appendix/support.js +1841 -0
  928. package/templates/vn-training-commitment/.thumbnail +0 -0
  929. package/templates/vn-training-commitment/VnTrainingCommitment.dc.html +105 -0
  930. package/templates/vn-training-commitment/ds-base.js +23 -0
  931. package/templates/vn-training-commitment/support.js +1841 -0
  932. package/templates/vn-travel-expense-policy/.thumbnail +0 -0
  933. package/templates/vn-travel-expense-policy/VnTravelExpensePolicy.dc.html +113 -0
  934. package/templates/vn-travel-expense-policy/ds-base.js +23 -0
  935. package/templates/vn-travel-expense-policy/support.js +1841 -0
  936. package/tokens/colors.css +77 -0
  937. package/tokens/component-tokens.css +46 -0
  938. package/tokens/elements.css +300 -0
  939. package/tokens/elevation.css +46 -0
  940. package/tokens/fonts.css +51 -0
  941. package/tokens/motion.css +25 -0
  942. package/tokens/native/CSTokens.kt +255 -0
  943. package/tokens/native/CSTokens.swift +257 -0
  944. package/tokens/native/cs_tokens.dart +253 -0
  945. package/tokens/provenance.json +52 -0
  946. package/tokens/spacing.css +34 -0
  947. package/tokens/tokens.dtcg.json +1222 -0
  948. package/tokens/tokens.js +436 -0
  949. package/tokens/tokens.json +434 -0
  950. package/tokens/typography.css +67 -0
  951. package/tokens/viewer.html +261 -0
  952. package/ui_kits/deck/README.md +21 -0
  953. package/ui_kits/deck/index.html +120 -0
  954. package/ui_kits/status-hub/README.md +40 -0
  955. package/ui_kits/status-hub/StatusHub.jsx +270 -0
  956. package/ui_kits/status-hub/data.js +57 -0
  957. package/ui_kits/status-hub/identity-lab.html +134 -0
  958. package/ui_kits/status-hub/index.html +24 -0
  959. package/ui_kits/status-hub/login.html +65 -0
  960. package/ui_kits/status-hub/project.html +137 -0
  961. package/ui_kits/status-hub/settings.html +88 -0
  962. package/ui_kits/status-hub/status.css +199 -0
  963. package/ui_kits/website/README.md +36 -0
  964. package/ui_kits/website/Website.jsx +167 -0
  965. package/ui_kits/website/careers.html +109 -0
  966. package/ui_kits/website/chat.html +133 -0
  967. package/ui_kits/website/copy.js +76 -0
  968. package/ui_kits/website/index.html +24 -0
  969. package/ui_kits/website/site.css +121 -0
  970. package/ui_kits/website/work.html +119 -0
@@ -0,0 +1,172 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <meta name="omelette-owns-print" content="1">
7
+ <script src="./support.js"></script>
8
+ </head>
9
+ <body>
10
+ <x-dc>
11
+ <!-- @template name="HR Suite · Hồ sơ xử lý kỷ luật lao động — Disciplinary Case File" description="Lawyer-validated CyberSkill disciplinary case file (Labor Code Art. 122-125) — four ordered parts: A violation record, B meeting notice (5 working days), C meeting minutes, D disciplinary decision. A4, VN·EN, print-ready. Content verbatim." -->
12
+ <helmet>
13
+ <script src="./ds-base.js"></script>
14
+ <style>@page{size:A4;margin:23mm 20mm 20mm 20mm}@media print{html,body{background:#fff!important}.cs-desk{background:#fff!important;padding:0!important;min-height:0!important}.cs-sheet{box-shadow:none!important;border:none!important;max-width:none!important;border-radius:0!important;padding:0!important}.cs-avoid{break-inside:avoid}.cs-break{break-before:page}}</style>
15
+ </helmet>
16
+ <div lang="vi" data-cs-element="{{ elAttr }}" data-cs-variant="{{ vaAttr }}" class="cs-desk" style="background:#efe6d8;min-height:100vh;padding:40px 16px;font-family:var(--cs-font-family-ui);color:#1A1614">
17
+ <div class="cs-sheet" style="max-width:794px;margin:0 auto;background:#fff;border:1px solid var(--cs-color-border-default);border-radius:12px;box-shadow:var(--cs-shadow-md);padding:56px 60px;text-align:left">
18
+ <div style="display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--cs-color-text-muted);padding-bottom:6px;border-bottom:1px solid var(--cs-color-border-default);margin-bottom:14px">
19
+ <x-import component-from-global-scope="CyberSkillDS.Logo" size="18" hint-size="18px,18px"></x-import>
20
+ <b style="color:var(--cs-color-brand-umber)">CyberSkill</b><span>· Hồ sơ xử lý kỷ luật lao động</span><span style="margin-left:auto;font-family:var(--cs-font-family-mono)">Số/No. <span style="background:#FDE68A;padding:0 3px">.....</span>/2026/HSKL-CYBERSKILL</span>
21
+ </div>
22
+ <div class="cs-avoid" style="display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-bottom:18px">
23
+ <div><div style="font-weight:800;font-size:11.5px;line-height:1.45">CÔNG TY CỔ PHẦN TƯ VẤN VÀ PHÁT TRIỂN GIẢI PHÁP PHẦN MỀM CYBERSKILL</div><div style="font-size:10px;color:#3F4C55;font-style:italic;line-height:1.45;margin-top:2px">CYBERSKILL SOFTWARE SOLUTIONS CONSULTANCY AND DEVELOPMENT JOINT STOCK COMPANY</div><div style="font-size:10.5px;margin-top:4px">Hiện Thực Hoá Ý Chí · <span style="color:#3F4C55;font-style:italic">Turn Your Will Into Real</span></div></div>
24
+ <div style="text-align:center"><div style="font-weight:800;font-size:11.5px;line-height:1.5">CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</div><div style="font-weight:700;font-size:11px">Độc lập – Tự do – Hạnh phúc</div><div style="letter-spacing:0.1em;font-size:10px;margin:1px 0">———————————</div><div style="font-size:9.5px;color:#3F4C55;font-style:italic;line-height:1.4">The Socialist Republic of Vietnam · Independence – Freedom – Happiness</div></div>
25
+ </div>
26
+ <div class="cs-avoid" style="text-align:center;margin-bottom:14px">
27
+ <h1 style="font-size:23px;font-weight:800;color:var(--cs-color-brand-umber);letter-spacing:-0.01em;margin:0 0 3px;line-height:1.25">HỒ SƠ XỬ LÝ KỶ LUẬT LAO ĐỘNG</h1>
28
+ <div style="font-size:13.5px;color:#3F4C55;font-style:italic">Disciplinary Case File</div>
29
+ <div style="font-size:12.5px;margin-top:8px">Số / No.: <span style="background:#FDE68A;padding:0 3px">......</span>/2026/HSKL-CYBERSKILL</div>
30
+ <div style="font-size:12px;margin-top:2px">Phiên bản / Version 1.0 · Hiệu lực từ / Effective from: <span style="background:#FDE68A;padding:0 3px">......</span> / <span style="background:#FDE68A;padding:0 3px">......</span> / <span style="background:#FDE68A;padding:0 3px">......</span></div>
31
+ <div style="color:var(--cs-accent);font-size:13px;letter-spacing:0.5em;margin-top:10px">◆ ◆ ◆</div>
32
+ </div>
33
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">Hồ sơ này gồm bốn phần, sử dụng theo đúng thứ tự, cho MỘT vụ việc và MỘT số hồ sơ duy nhất. Trình tự dưới đây là trình tự bắt buộc tại Điều 122 Bộ luật Lao động; làm sai thứ tự khiến quyết định kỷ luật bị tuyên trái luật.</p>
34
+ <p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 10px">This file has four parts, used in order, for ONE case under ONE case number. The sequence below is the mandatory procedure in Article 122 of the Labor Code; taking it out of order renders the disciplinary decision unlawful.</p>
35
+ <table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12px;margin:0 0 10px">
36
+ <thead><tr style="background:var(--cs-color-brand-umber);color:#fff"><th style="text-align:left;padding:5px 9px;font-size:10px;width:40px">Phần <i style="font-weight:400">Part</i></th><th style="text-align:left;padding:5px 9px;font-size:10px">Nội dung <i style="font-weight:400">What it is</i></th><th style="text-align:left;padding:5px 9px;font-size:10px;width:200px">Thời hạn <i style="font-weight:400">Timing</i></th></tr></thead>
37
+ <tbody>
38
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:700">A</td><td style="padding:6px 9px">Biên bản ghi nhận sự việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Violation Record</div></td><td style="padding:6px 9px">Ngay khi phát hiện<div style="color:#3F4C55;font-style:italic;font-size:10.5px">As soon as it is discovered</div></td></tr>
39
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:700">B</td><td style="padding:6px 9px">Thông báo họp xử lý kỷ luật<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Notice of Disciplinary Meeting</div></td><td style="padding:6px 9px">Ít nhất 05 ngày làm việc trước cuộc họp<div style="color:#3F4C55;font-style:italic;font-size:10.5px">At least 05 working days before</div></td></tr>
40
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:700">C</td><td style="padding:6px 9px">Biên bản họp xử lý kỷ luật<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Minutes of the Meeting</div></td><td style="padding:6px 9px">Tại cuộc họp<div style="color:#3F4C55;font-style:italic;font-size:10.5px">At the meeting</div></td></tr>
41
+ <tr><td style="padding:6px 9px;font-weight:700">D</td><td style="padding:6px 9px">Quyết định xử lý kỷ luật<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Disciplinary Decision</div></td><td style="padding:6px 9px">Trong thời hiệu: 06 tháng, hoặc 12 tháng nếu liên quan tài chính, tài sản, bí mật kinh doanh<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Within the limitation period: 06 months, or 12 months for finance, property or business secrets</div></td></tr>
42
+ </tbody>
43
+ </table>
44
+ <div class="cs-avoid" style="background:#FBF4E9;border:1px solid var(--cs-color-border-default);border-radius:8px;padding:9px 13px;margin-bottom:8px">
45
+ <p style="font-size:12px;line-height:1.45;margin:0 0 1px"><b>Ghi chú soạn thảo:</b> Không hoàn thành công việc KHÔNG phải là vi phạm kỷ luật và KHÔNG dùng hồ sơ này. Trường hợp đó áp dụng Quy chế đánh giá mức độ hoàn thành công việc.</p>
46
+ <p style="font-size:11px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0"><b>Drafting note:</b> Failure to perform is NOT a disciplinary breach and does NOT use this file. That case is handled under the Performance Evaluation Regulation.</p>
47
+ </div>
48
+
49
+ <div class="cs-break cs-avoid" style="margin-top:20px">
50
+ <h2 style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px;padding-bottom:4px;border-bottom:2px solid var(--cs-color-brand-umber)">PHẦN A · BIÊN BẢN GHI NHẬN SỰ VIỆC <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part A · Violation Record</span></h2>
51
+ <table style="width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 10px">
52
+ <tbody>
53
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:210px;vertical-align:top">Số hồ sơ<div style="color:#3F4C55;font-style:italic;font-size:11px">Case number</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">......</span>/2026/HSKL-CYBERSKILL</td></tr>
54
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Người lao động<div style="color:#3F4C55;font-style:italic;font-size:11px">Employee</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
55
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Chức danh / Bộ phận<div style="color:#3F4C55;font-style:italic;font-size:11px">Position / Department</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
56
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Thời gian xảy ra<div style="color:#3F4C55;font-style:italic;font-size:11px">Date and time of the incident</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">...... / ...... / ...... lúc ......</span></td></tr>
57
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Địa điểm<div style="color:#3F4C55;font-style:italic;font-size:11px">Place</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
58
+ <tr><td style="padding:5px 10px;vertical-align:top">Người lập biên bản<div style="color:#3F4C55;font-style:italic;font-size:11px">Recorded by</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
59
+ </tbody>
60
+ </table>
61
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">1. Mô tả hành vi (khách quan, không suy đoán):</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">1. Description of the conduct (factual, no inference):</p>
62
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................<br>..............................................................................................................</p>
63
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">2. Chứng cứ kèm theo (nhật ký hệ thống, thư điện tử, ảnh, lời khai nhân chứng):</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">2. Evidence attached (system logs, emails, photographs, witness statements):</p>
64
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................</p>
65
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">3. Điều khoản bị vi phạm (dẫn chiếu Nội quy lao động và Bảng xử lý kỷ luật):</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">3. The provision breached (cite the Internal Labor Regulations and the Disciplinary Schedule):</p>
66
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................</p>
67
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">4. Người lao động có mặt khi lập biên bản? <span style="color:#3F4C55;font-style:italic">4. Was the employee present when this was recorded?</span></p>
68
+ <div style="display:grid;gap:6px;margin:4px 0 12px">
69
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Có, và đã ký vào biên bản</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Yes, and signed the record</p></div>
70
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Có, nhưng từ chối ký (ghi rõ lý do)</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Yes, but refused to sign (state the reason)</p></div>
71
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Không có mặt</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Not present</p></div>
72
+ </div>
73
+ <div style="display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:6px">
74
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI LAO ĐỘNG</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">The Employee (sign, full name)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
75
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI LẬP BIÊN BẢN</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">Recorded by (sign, full name)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
76
+ </div>
77
+ </div>
78
+
79
+ <div class="cs-break cs-avoid" style="margin-top:20px">
80
+ <h2 style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px;padding-bottom:4px;border-bottom:2px solid var(--cs-color-brand-umber)">PHẦN B · THÔNG BÁO HỌP XỬ LÝ KỶ LUẬT <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part B · Notice of Disciplinary Meeting</span></h2>
81
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">Công ty thông báo tổ chức cuộc họp xử lý kỷ luật lao động đối với Ông/Bà <span style="background:#FDE68A;padding:0 3px">..................</span> theo Điều 122 Bộ luật Lao động.</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 10px">The Company gives notice of a disciplinary meeting concerning Mr/Ms <span style="background:#FDE68A;padding:0 3px">..................</span>, under Article 122 of the Labor Code.</p>
82
+ <table style="width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 10px">
83
+ <tbody>
84
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:210px;vertical-align:top">Thời gian họp<div style="color:#3F4C55;font-style:italic;font-size:11px">Meeting date and time</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">...... / ...... / ...... lúc ......</span></td></tr>
85
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Địa điểm<div style="color:#3F4C55;font-style:italic;font-size:11px">Place</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
86
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Ngày gửi thông báo<div style="color:#3F4C55;font-style:italic;font-size:11px">Notice sent on</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">...... / ...... / ......</span></td></tr>
87
+ <tr><td style="padding:5px 10px;vertical-align:top">Thành phần bắt buộc<div style="color:#3F4C55;font-style:italic;font-size:11px">Required attendees</div></td><td style="padding:5px 10px">Người lao động; đại diện tổ chức đại diện NLĐ; người có thẩm quyền xử lý kỷ luật<div style="color:#3F4C55;font-style:italic;font-size:11px">The employee; the employee representative organization; the person competent to impose discipline</div></td></tr>
88
+ </tbody>
89
+ </table>
90
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">Ông/Bà có quyền tham dự, tự bào chữa hoặc nhờ luật sư, người bào chữa hoặc đại diện tổ chức đại diện người lao động bào chữa. Trường hợp đã được thông báo hợp lệ mà vắng mặt không có lý do chính đáng, Công ty có quyền tiến hành cuộc họp theo khoản 3 Điều 70 Nghị định 145/2020/NĐ-CP.</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 8px">You may attend, defend yourself, or be defended by a lawyer, a defender, or a representative of the employee representative organization. Where notice has been validly given and you are absent without a legitimate reason, the Company may proceed with the meeting under Article 70.3 of Decree 145/2020/ND-CP.</p>
91
+ <div class="cs-avoid" style="background:#FBF4E9;border:1px solid var(--cs-color-border-default);border-radius:8px;padding:9px 13px;margin-bottom:12px">
92
+ <p style="font-size:12px;line-height:1.45;margin:0 0 1px"><b>Ghi chú soạn thảo:</b> Thông báo phải đến tay người lao động ít nhất 05 ngày làm việc trước cuộc họp. Giữ bằng chứng đã gửi và đã nhận.</p>
93
+ <p style="font-size:11px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0"><b>Drafting note:</b> The notice must reach the employee at least 05 working days before the meeting. Keep proof of sending and of receipt.</p>
94
+ </div>
95
+ <div style="display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:6px">
96
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI NHẬN THÔNG BÁO</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">Notice received by (sign, full name)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
97
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI SỬ DỤNG LAO ĐỘNG</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">The Employer (sign, full name, seal)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
98
+ </div>
99
+ </div>
100
+
101
+ <div class="cs-break cs-avoid" style="margin-top:20px">
102
+ <h2 style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px;padding-bottom:4px;border-bottom:2px solid var(--cs-color-brand-umber)">PHẦN C · BIÊN BẢN HỌP XỬ LÝ KỶ LUẬT <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part C · Minutes of the Disciplinary Meeting</span></h2>
103
+ <table style="width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 10px">
104
+ <tbody>
105
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:210px;vertical-align:top">Thời gian họp<div style="color:#3F4C55;font-style:italic;font-size:11px">Date and time</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">...... / ...... / ...... lúc ......</span></td></tr>
106
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Địa điểm<div style="color:#3F4C55;font-style:italic;font-size:11px">Place</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
107
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Chủ trì · Thư ký<div style="color:#3F4C55;font-style:italic;font-size:11px">Chaired by · Minuted by</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">.................. · ..................</span></td></tr>
108
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Người lao động<div style="color:#3F4C55;font-style:italic;font-size:11px">The employee</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..........</span> ☐ có mặt ☐ vắng mặt<div style="color:#3F4C55;font-style:italic;font-size:11px">☐ present ☐ absent</div></td></tr>
109
+ <tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Đại diện tổ chức đại diện NLĐ<div style="color:#3F4C55;font-style:italic;font-size:11px">Employee representative</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..........</span> ☐ có mặt ☐ vắng mặt<div style="color:#3F4C55;font-style:italic;font-size:11px">☐ present ☐ absent</div></td></tr>
110
+ <tr><td style="padding:5px 10px;vertical-align:top">Người bào chữa (nếu có)<div style="color:#3F4C55;font-style:italic;font-size:11px">Defender, if any</div></td><td style="padding:5px 10px"><span style="background:#FDE68A;padding:0 3px">..............................</span></td></tr>
111
+ </tbody>
112
+ </table>
113
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">1. Hành vi vi phạm và chứng cứ được trình bày:</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">1. The conduct alleged, and the evidence presented:</p>
114
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................<br>..............................................................................................................</p>
115
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">2. Ý kiến của người lao động (ghi nguyên văn):</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">2. The employee's statement (recorded verbatim):</p>
116
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................<br>..............................................................................................................</p>
117
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">3. Ý kiến của tổ chức đại diện người lao động:</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">3. The view of the employee representative organization:</p>
118
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................</p>
119
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">4. Kết luận của cuộc họp:</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 2px">4. The meeting's conclusion:</p>
120
+ <p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................</p>
121
+ <div class="cs-avoid" style="background:#FBF4E9;border:1px solid var(--cs-color-border-default);border-radius:8px;padding:9px 13px;margin-bottom:12px">
122
+ <p style="font-size:12px;line-height:1.45;margin:0 0 1px"><b>Ghi chú soạn thảo:</b> Biên bản phải được thông qua tại cuộc họp và có chữ ký của tất cả những người tham dự. Người từ chối ký phải được ghi rõ lý do trong biên bản.</p>
123
+ <p style="font-size:11px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0"><b>Drafting note:</b> The minutes must be approved at the meeting and signed by everyone present. Where a person refuses to sign, the reason must be recorded in the minutes.</p>
124
+ </div>
125
+ <div style="display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:6px">
126
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI LAO ĐỘNG</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">The Employee (sign, full name)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
127
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">CHỦ TRÌ CUỘC HỌP</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">Chair of the meeting (sign, full name)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
128
+ </div>
129
+ </div>
130
+
131
+ <div class="cs-break cs-avoid" style="margin-top:20px">
132
+ <h2 style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px;padding-bottom:4px;border-bottom:2px solid var(--cs-color-brand-umber)">PHẦN D · QUYẾT ĐỊNH XỬ LÝ KỶ LUẬT <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part D · Disciplinary Decision</span></h2>
133
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">Căn cứ Bộ luật Lao động số 45/2019/QH14, đặc biệt các Điều 122, 123, 124 và 125; căn cứ Nội quy lao động và Bảng xử lý kỷ luật của Công ty; căn cứ Biên bản họp tại Phần C của Hồ sơ này,</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 6px">Pursuant to the Labor Code No. 45/2019/QH14, in particular Articles 122, 123, 124 and 125; pursuant to the Company's Internal Labor Regulations and Disciplinary Schedule; and on the basis of the Minutes in Part C of this file,</p>
134
+ <p style="font-size:13px;font-weight:700;line-height:1.5;margin:0 0 8px">QUYẾT ĐỊNH: <span style="font-weight:400;color:#3F4C55;font-style:italic">DECIDES:</span></p>
135
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px"><b>Điều 1.</b> Áp dụng hình thức xử lý kỷ luật lao động đối với Ông/Bà <span style="background:#FDE68A;padding:0 3px">..................</span> như sau:</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 4px"><b>Article 1.</b> The following disciplinary form is imposed on Mr/Ms <span style="background:#FDE68A;padding:0 3px">..................</span>:</p>
136
+ <div style="display:grid;gap:6px;margin:0 0 10px">
137
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Khiển trách (xóa kỷ luật sau 03 tháng)</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Reprimand (spent after 03 months)</p></div>
138
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Kéo dài thời hạn nâng lương không quá 06 tháng (xóa kỷ luật sau 06 tháng)</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Postponement of a pay rise for up to 06 months (spent after 06 months)</p></div>
139
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Cách chức (xem xét bổ nhiệm lại sau 03 năm)</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Demotion (reappointment may be considered after 03 years)</p></div>
140
+ <div><p style="font-size:13px;line-height:1.45;margin:0">☐ Sa thải (chỉ trong các trường hợp tại Điều 125 Bộ luật Lao động)</p><p style="font-size:12px;color:#3F4C55;font-style:italic;margin:1px 0 0">☐ Dismissal (only in the cases listed in Article 125 of the Labor Code)</p></div>
141
+ </div>
142
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px"><b>Điều 2.</b> Lý do và điều khoản áp dụng: <span style="background:#FDE68A;padding:0 3px">..............................</span></p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 6px"><b>Article 2.</b> The reason and the provision applied: <span style="background:#FDE68A;padding:0 3px">..............................</span></p>
143
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px"><b>Điều 3.</b> Quyết định có hiệu lực kể từ ngày <span style="background:#FDE68A;padding:0 3px">...... / ...... / ......</span>. Trường hợp sa thải, hợp đồng lao động chấm dứt kể từ ngày này và quyền lợi được giải quyết theo Điều 48 Bộ luật Lao động trong thời hạn 14 ngày làm việc.</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 6px"><b>Article 3.</b> This Decision takes effect on <span style="background:#FDE68A;padding:0 3px">...... / ...... / ......</span>. In the case of dismissal, the labor contract ends on that date and entitlements are settled under Article 48 within 14 working days.</p>
144
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px"><b>Điều 4.</b> Người lao động có quyền khiếu nại theo quy định của pháp luật, hoặc yêu cầu giải quyết tranh chấp lao động cá nhân theo trình tự tại Bộ luật Lao động.</p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 8px"><b>Article 4.</b> The employee may complain as provided by law, or refer the matter as an individual labor dispute under the procedure in the Labor Code.</p>
145
+ <div class="cs-avoid" style="background:var(--cs-color-surface-raised);border:1px solid var(--cs-color-border-default);border-radius:8px;padding:9px 13px;margin-bottom:12px">
146
+ <p style="font-size:12px;line-height:1.45;margin:0 0 1px"><b>Nơi nhận:</b> Người lao động; tổ chức đại diện NLĐ; bộ phận nhân sự; lưu hồ sơ.</p>
147
+ <p style="font-size:11px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0"><b>Recipients:</b> The Employee; the employee representative organization; HR; case file.</p>
148
+ </div>
149
+ <p style="font-size:13px;line-height:1.5;margin:0 0 1px">Thành phố Hồ Chí Minh, ngày <span style="background:#FDE68A;padding:0 3px">......</span> tháng <span style="background:#FDE68A;padding:0 3px">......</span> năm <span style="background:#FDE68A;padding:0 3px">......</span></p><p style="font-size:12px;line-height:1.4;color:#3F4C55;font-style:italic;margin:0 0 12px">Ho Chi Minh City, <span style="background:#FDE68A;padding:0 3px">......</span> / <span style="background:#FDE68A;padding:0 3px">......</span> / <span style="background:#FDE68A;padding:0 3px">......</span></p>
150
+ <div style="display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:6px">
151
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI LAO ĐỘNG (đã nhận quyết định)</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">The Employee (decision received)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
152
+ <div style="text-align:center"><div style="font-weight:700;font-size:12px">NGƯỜI SỬ DỤNG LAO ĐỘNG</div><div style="font-size:10.5px;color:#3F4C55;font-style:italic">The Employer (sign, full name, seal)</div><div style="height:52px"></div><div style="border-top:1px solid #1A1614;width:70%;margin:0 auto"></div></div>
153
+ </div>
154
+ </div>
155
+
156
+ <div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:24px;display:flex;gap:10px;font-size:10.5px;color:var(--cs-color-text-muted);flex-wrap:wrap">Hiện Thực Hoá Ý Chí · <i style="color:#3F4C55">Turn Your Will Into Real</i><span>·</span>MST: 0316475200<span>·</span>info@cyberskill.world<span>·</span>(+84) 906 878 091</div>
157
+ </div>
158
+ </div>
159
+ </x-dc>
160
+ <script type="text/x-dc" data-dc-script data-props="{
161
+ &quot;element&quot;: {&quot;editor&quot;:&quot;enum&quot;,&quot;options&quot;:[&quot;Thổ · studio&quot;,&quot;Thổ · clay&quot;,&quot;Thổ · sand&quot;,&quot;Hỏa · ember&quot;,&quot;Hỏa · lava&quot;,&quot;Hỏa · plasma&quot;,&quot;Thủy · river&quot;,&quot;Thủy · ocean&quot;,&quot;Thủy · mist&quot;,&quot;Mộc · leaf&quot;,&quot;Mộc · bamboo&quot;,&quot;Mộc · forest&quot;,&quot;Kim · champagne&quot;,&quot;Kim · steel&quot;,&quot;Kim · titanium&quot;],&quot;default&quot;:&quot;Thổ · studio&quot;,&quot;tsType&quot;:&quot;string&quot;,&quot;section&quot;:&quot;Element (Ngũ Hành)&quot;}
162
+ }">
163
+ class Component extends DCLogic {
164
+ renderVals() {
165
+ const EL = {"Thổ · studio":["tho",""],"Thổ · clay":["tho","clay"],"Thổ · sand":["tho","sand"],"Hỏa · ember":["hoa",""],"Hỏa · lava":["hoa","lava"],"Hỏa · plasma":["hoa","plasma"],"Thủy · river":["thuy",""],"Thủy · ocean":["thuy","ocean"],"Thủy · mist":["thuy","mist"],"Mộc · leaf":["moc",""],"Mộc · bamboo":["moc","bamboo"],"Mộc · forest":["moc","forest"],"Kim · champagne":["kim",""],"Kim · steel":["kim","steel"],"Kim · titanium":["kim","titanium"]};
166
+ const [elAttr, vaAttr] = EL[this.props.element] || EL["Thổ · studio"];
167
+ return { elAttr, vaAttr };
168
+ }
169
+ }
170
+ </script>
171
+ </body>
172
+ </html>
@@ -0,0 +1,23 @@
1
+ // Loads this design system into the template. In a consuming project, point
2
+ // base at the bound DS folder relative to this file (e.g. '_ds/<folder>' at
3
+ // the project root, '../_ds/<folder>' one level down) — one line to edit.
4
+ (() => {
5
+ const base = '../..';
6
+ for (const p of ['styles.css']) {
7
+ const l = document.createElement('link');
8
+ l.rel = 'stylesheet'; l.href = base + '/' + p;
9
+ document.head.appendChild(l);
10
+ }
11
+ const s = document.createElement('script');
12
+ s.src = base + '/_ds_bundle.js';
13
+ s.onload = () => {
14
+ // Expose a STABLE, project-id-independent alias. The compiler names the bundle
15
+ // global CyberSkillDesignSystem_<6-hex-project-id>, which changes whenever this
16
+ // system is re-imported into another project. Templates/cards read window.CyberSkillDS
17
+ // so no file ever has to be rewritten on re-import.
18
+ const k = Object.keys(window).find((k) => /^CyberSkillDesignSystem_[0-9a-f]{6}$/.test(k));
19
+ if (k) window.CyberSkillDS = window[k];
20
+ };
21
+ s.onerror = () => console.error('ds-base.js: failed to load ' + s.src + ' — if this is a consuming project, point the base line in ds-base.js at the bound _ds/<folder> tree relative to this page (e.g. _ds/<folder> at the project root, ../_ds/<folder> one level down); in a fresh design system this can just mean the bundle is not compiled yet');
22
+ document.head.appendChild(s);
23
+ })();