@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.
- package/DESIGN.md +267 -0
- package/README.md +316 -0
- package/SKILL.md +64 -0
- package/VERSION +1 -0
- package/_ds_bundle.js +5377 -0
- package/_ds_manifest.json +1 -0
- package/_esm/cs.mjs +137 -0
- package/assets/aurora-gold.jpg +0 -0
- package/assets/aurora-hoa.png +0 -0
- package/assets/aurora-kim.png +0 -0
- package/assets/aurora-moc.png +0 -0
- package/assets/aurora-thuy.png +0 -0
- package/assets/favicon.svg +1 -0
- package/assets/logo-mark.png +0 -0
- package/assets/logo-mark.svg +10 -0
- package/assets/lumi-poster.webp +0 -0
- package/assets/og-dashboard.png +0 -0
- package/base/a11y.css +57 -0
- package/base/ai.css +67 -0
- package/base/collections.css +53 -0
- package/base/components.css +212 -0
- package/base/controls.css +329 -0
- package/base/data.css +48 -0
- package/base/feedback.css +60 -0
- package/base/forms.css +32 -0
- package/base/glass.css +119 -0
- package/base/interaction.css +50 -0
- package/base/navigation.css +39 -0
- package/base/reset.css +17 -0
- package/base/responsive.css +128 -0
- package/base/shell.css +55 -0
- package/base/typography.css +14 -0
- package/components/_i18n/i18n.js +56 -0
- package/components/_i18n/strings.js +187 -0
- package/components/_utils/cx.js +4 -0
- package/components/ai/AIDisclosureBadge.d.ts +16 -0
- package/components/ai/AIDisclosureBadge.figma.tsx +12 -0
- package/components/ai/AIDisclosureBadge.jsx +39 -0
- package/components/ai/AIDisclosureBadge.prompt.md +9 -0
- package/components/ai/ChatMessage.d.ts +17 -0
- package/components/ai/ChatMessage.figma.tsx +12 -0
- package/components/ai/ChatMessage.jsx +22 -0
- package/components/ai/ChatMessage.prompt.md +8 -0
- package/components/ai/CitationList.d.ts +13 -0
- package/components/ai/CitationList.figma.tsx +12 -0
- package/components/ai/CitationList.jsx +22 -0
- package/components/ai/CitationList.prompt.md +5 -0
- package/components/ai/ConfidenceMeter.d.ts +17 -0
- package/components/ai/ConfidenceMeter.figma.tsx +12 -0
- package/components/ai/ConfidenceMeter.jsx +43 -0
- package/components/ai/ConfidenceMeter.prompt.md +6 -0
- package/components/ai/HumanReviewGate.d.ts +20 -0
- package/components/ai/HumanReviewGate.figma.tsx +12 -0
- package/components/ai/HumanReviewGate.jsx +37 -0
- package/components/ai/HumanReviewGate.prompt.md +13 -0
- package/components/ai/PromptInput.d.ts +21 -0
- package/components/ai/PromptInput.figma.tsx +12 -0
- package/components/ai/PromptInput.jsx +48 -0
- package/components/ai/PromptInput.prompt.md +5 -0
- package/components/ai/PromptSuggestions.d.ts +12 -0
- package/components/ai/PromptSuggestions.figma.tsx +12 -0
- package/components/ai/PromptSuggestions.jsx +20 -0
- package/components/ai/PromptSuggestions.prompt.md +5 -0
- package/components/ai/TypingIndicator.d.ts +9 -0
- package/components/ai/TypingIndicator.figma.tsx +12 -0
- package/components/ai/TypingIndicator.jsx +14 -0
- package/components/ai/TypingIndicator.prompt.md +5 -0
- package/components/ai/ai-conversation.card.html +49 -0
- package/components/ai/ai-lumi.card.html +39 -0
- package/components/ai/ai.card.html +43 -0
- package/components/brand/LumiAvatar.d.ts +14 -0
- package/components/brand/LumiAvatar.figma.tsx +12 -0
- package/components/brand/LumiAvatar.jsx +11 -0
- package/components/brand/LumiAvatar.prompt.md +5 -0
- package/components/brand/brand.card.html +37 -0
- package/components/button/Button.d.ts +24 -0
- package/components/button/Button.figma.tsx +31 -0
- package/components/button/Button.jsx +42 -0
- package/components/button/Button.prompt.md +12 -0
- package/components/button/ButtonGroup.d.ts +11 -0
- package/components/button/ButtonGroup.figma.tsx +12 -0
- package/components/button/ButtonGroup.jsx +7 -0
- package/components/button/ButtonGroup.prompt.md +8 -0
- package/components/button/FloatingActionButton.d.ts +15 -0
- package/components/button/FloatingActionButton.figma.tsx +12 -0
- package/components/button/FloatingActionButton.jsx +20 -0
- package/components/button/FloatingActionButton.prompt.md +6 -0
- package/components/button/buttons.card.html +52 -0
- package/components/data/Accordion.d.ts +14 -0
- package/components/data/Accordion.figma.tsx +12 -0
- package/components/data/Accordion.jsx +25 -0
- package/components/data/Accordion.prompt.md +5 -0
- package/components/data/Avatar.d.ts +18 -0
- package/components/data/Avatar.figma.tsx +12 -0
- package/components/data/Avatar.jsx +17 -0
- package/components/data/Avatar.prompt.md +6 -0
- package/components/data/Card.d.ts +23 -0
- package/components/data/Card.figma.tsx +12 -0
- package/components/data/Card.jsx +27 -0
- package/components/data/Card.prompt.md +9 -0
- package/components/data/Carousel.d.ts +13 -0
- package/components/data/Carousel.figma.tsx +12 -0
- package/components/data/Carousel.jsx +26 -0
- package/components/data/Carousel.prompt.md +5 -0
- package/components/data/Chart.d.ts +17 -0
- package/components/data/Chart.figma.tsx +12 -0
- package/components/data/Chart.jsx +52 -0
- package/components/data/Chart.prompt.md +5 -0
- package/components/data/CodeBlock.d.ts +12 -0
- package/components/data/CodeBlock.figma.tsx +12 -0
- package/components/data/CodeBlock.jsx +21 -0
- package/components/data/CodeBlock.prompt.md +5 -0
- package/components/data/Comment.d.ts +18 -0
- package/components/data/Comment.figma.tsx +12 -0
- package/components/data/Comment.jsx +24 -0
- package/components/data/Comment.prompt.md +7 -0
- package/components/data/DescriptionList.d.ts +10 -0
- package/components/data/DescriptionList.figma.tsx +12 -0
- package/components/data/DescriptionList.jsx +16 -0
- package/components/data/DescriptionList.prompt.md +5 -0
- package/components/data/Divider.d.ts +13 -0
- package/components/data/Divider.figma.tsx +12 -0
- package/components/data/Divider.jsx +11 -0
- package/components/data/Divider.prompt.md +6 -0
- package/components/data/Image.d.ts +18 -0
- package/components/data/Image.figma.tsx +12 -0
- package/components/data/Image.jsx +37 -0
- package/components/data/Image.prompt.md +5 -0
- package/components/data/Kbd.d.ts +8 -0
- package/components/data/Kbd.figma.tsx +12 -0
- package/components/data/Kbd.jsx +7 -0
- package/components/data/Kbd.prompt.md +5 -0
- package/components/data/List.d.ts +16 -0
- package/components/data/List.figma.tsx +12 -0
- package/components/data/List.jsx +24 -0
- package/components/data/List.prompt.md +7 -0
- package/components/data/Masonry.d.ts +13 -0
- package/components/data/Masonry.figma.tsx +12 -0
- package/components/data/Masonry.jsx +11 -0
- package/components/data/Masonry.prompt.md +5 -0
- package/components/data/QRCode.d.ts +12 -0
- package/components/data/QRCode.figma.tsx +12 -0
- package/components/data/QRCode.jsx +17 -0
- package/components/data/QRCode.prompt.md +5 -0
- package/components/data/Sortable.d.ts +10 -0
- package/components/data/Sortable.figma.tsx +12 -0
- package/components/data/Sortable.jsx +30 -0
- package/components/data/Sortable.prompt.md +5 -0
- package/components/data/Splitter.d.ts +16 -0
- package/components/data/Splitter.figma.tsx +12 -0
- package/components/data/Splitter.jsx +31 -0
- package/components/data/Splitter.prompt.md +5 -0
- package/components/data/Stat.d.ts +15 -0
- package/components/data/Stat.figma.tsx +12 -0
- package/components/data/Stat.jsx +19 -0
- package/components/data/Stat.prompt.md +5 -0
- package/components/data/Terminal.d.ts +13 -0
- package/components/data/Terminal.figma.tsx +12 -0
- package/components/data/Terminal.jsx +32 -0
- package/components/data/Terminal.prompt.md +5 -0
- package/components/data/Timeline.d.ts +17 -0
- package/components/data/Timeline.figma.tsx +12 -0
- package/components/data/Timeline.jsx +20 -0
- package/components/data/Timeline.prompt.md +8 -0
- package/components/data/Tooltip.d.ts +14 -0
- package/components/data/Tooltip.figma.tsx +12 -0
- package/components/data/Tooltip.jsx +12 -0
- package/components/data/Tooltip.prompt.md +5 -0
- package/components/data/Tree.d.ts +13 -0
- package/components/data/Tree.figma.tsx +12 -0
- package/components/data/Tree.jsx +23 -0
- package/components/data/Tree.prompt.md +5 -0
- package/components/data/Watermark.d.ts +15 -0
- package/components/data/Watermark.figma.tsx +12 -0
- package/components/data/Watermark.jsx +15 -0
- package/components/data/Watermark.prompt.md +5 -0
- package/components/data/collections.card.html +52 -0
- package/components/data/data.card.html +50 -0
- package/components/data/qr-encode.js +80 -0
- package/components/datatable/DataGrid.d.ts +42 -0
- package/components/datatable/DataGrid.figma.tsx +12 -0
- package/components/datatable/DataGrid.jsx +149 -0
- package/components/datatable/DataGrid.prompt.md +12 -0
- package/components/datatable/DataTable.d.ts +25 -0
- package/components/datatable/DataTable.figma.tsx +12 -0
- package/components/datatable/DataTable.jsx +42 -0
- package/components/datatable/DataTable.prompt.md +15 -0
- package/components/datatable/TreeTable.d.ts +14 -0
- package/components/datatable/TreeTable.figma.tsx +12 -0
- package/components/datatable/TreeTable.jsx +47 -0
- package/components/datatable/TreeTable.prompt.md +6 -0
- package/components/datatable/datatable.card.html +51 -0
- package/components/dialog/Dialog.d.ts +22 -0
- package/components/dialog/Dialog.figma.tsx +12 -0
- package/components/dialog/Dialog.jsx +99 -0
- package/components/dialog/Dialog.prompt.md +17 -0
- package/components/dialog/dialog.card.html +46 -0
- package/components/feedback/Alert.d.ts +16 -0
- package/components/feedback/Alert.figma.tsx +17 -0
- package/components/feedback/Alert.jsx +29 -0
- package/components/feedback/Alert.prompt.md +6 -0
- package/components/feedback/Badge.d.ts +15 -0
- package/components/feedback/Badge.figma.tsx +12 -0
- package/components/feedback/Badge.jsx +12 -0
- package/components/feedback/Badge.prompt.md +6 -0
- package/components/feedback/EmptyState.d.ts +13 -0
- package/components/feedback/EmptyState.figma.tsx +12 -0
- package/components/feedback/EmptyState.jsx +16 -0
- package/components/feedback/EmptyState.prompt.md +7 -0
- package/components/feedback/ProgressBar.d.ts +15 -0
- package/components/feedback/ProgressBar.figma.tsx +12 -0
- package/components/feedback/ProgressBar.jsx +13 -0
- package/components/feedback/ProgressBar.prompt.md +5 -0
- package/components/feedback/Result.d.ts +15 -0
- package/components/feedback/Result.figma.tsx +12 -0
- package/components/feedback/Result.jsx +24 -0
- package/components/feedback/Result.prompt.md +7 -0
- package/components/feedback/Skeleton.d.ts +18 -0
- package/components/feedback/Skeleton.figma.tsx +12 -0
- package/components/feedback/Skeleton.jsx +22 -0
- package/components/feedback/Skeleton.prompt.md +6 -0
- package/components/feedback/Spinner.d.ts +11 -0
- package/components/feedback/Spinner.figma.tsx +12 -0
- package/components/feedback/Spinner.jsx +10 -0
- package/components/feedback/Spinner.prompt.md +5 -0
- package/components/feedback/StatusIndicator.d.ts +11 -0
- package/components/feedback/StatusIndicator.figma.tsx +12 -0
- package/components/feedback/StatusIndicator.jsx +12 -0
- package/components/feedback/StatusIndicator.prompt.md +5 -0
- package/components/feedback/Tag.d.ts +14 -0
- package/components/feedback/Tag.figma.tsx +12 -0
- package/components/feedback/Tag.jsx +19 -0
- package/components/feedback/Tag.prompt.md +6 -0
- package/components/feedback/Toast.d.ts +19 -0
- package/components/feedback/Toast.figma.tsx +12 -0
- package/components/feedback/Toast.jsx +30 -0
- package/components/feedback/Toast.prompt.md +7 -0
- package/components/feedback/feedback-2.card.html +43 -0
- package/components/feedback/feedback.card.html +50 -0
- package/components/forms/Calendar.d.ts +10 -0
- package/components/forms/Calendar.figma.tsx +12 -0
- package/components/forms/Calendar.jsx +43 -0
- package/components/forms/Calendar.prompt.md +5 -0
- package/components/forms/Cascader.d.ts +17 -0
- package/components/forms/Cascader.figma.tsx +12 -0
- package/components/forms/Cascader.jsx +58 -0
- package/components/forms/Cascader.prompt.md +5 -0
- package/components/forms/Checkbox.d.ts +13 -0
- package/components/forms/Checkbox.figma.tsx +12 -0
- package/components/forms/Checkbox.jsx +16 -0
- package/components/forms/Checkbox.prompt.md +6 -0
- package/components/forms/ColorPicker.d.ts +12 -0
- package/components/forms/ColorPicker.figma.tsx +12 -0
- package/components/forms/ColorPicker.jsx +44 -0
- package/components/forms/ColorPicker.prompt.md +5 -0
- package/components/forms/Combobox.d.ts +17 -0
- package/components/forms/Combobox.figma.tsx +12 -0
- package/components/forms/Combobox.jsx +49 -0
- package/components/forms/Combobox.prompt.md +6 -0
- package/components/forms/DatePicker.d.ts +15 -0
- package/components/forms/DatePicker.figma.tsx +12 -0
- package/components/forms/DatePicker.jsx +35 -0
- package/components/forms/DatePicker.prompt.md +5 -0
- package/components/forms/Editor.d.ts +12 -0
- package/components/forms/Editor.figma.tsx +12 -0
- package/components/forms/Editor.jsx +26 -0
- package/components/forms/Editor.prompt.md +5 -0
- package/components/forms/FileUpload.d.ts +14 -0
- package/components/forms/FileUpload.figma.tsx +12 -0
- package/components/forms/FileUpload.jsx +29 -0
- package/components/forms/FileUpload.prompt.md +5 -0
- package/components/forms/Form.d.ts +87 -0
- package/components/forms/Form.figma.tsx +12 -0
- package/components/forms/Form.jsx +316 -0
- package/components/forms/Form.prompt.md +46 -0
- package/components/forms/InlineEdit.d.ts +13 -0
- package/components/forms/InlineEdit.figma.tsx +12 -0
- package/components/forms/InlineEdit.jsx +27 -0
- package/components/forms/InlineEdit.prompt.md +5 -0
- package/components/forms/InputGroup.d.ts +20 -0
- package/components/forms/InputGroup.figma.tsx +12 -0
- package/components/forms/InputGroup.jsx +25 -0
- package/components/forms/InputGroup.prompt.md +6 -0
- package/components/forms/InputOTP.d.ts +16 -0
- package/components/forms/InputOTP.figma.tsx +12 -0
- package/components/forms/InputOTP.jsx +47 -0
- package/components/forms/InputOTP.prompt.md +5 -0
- package/components/forms/Mentions.d.ts +13 -0
- package/components/forms/Mentions.figma.tsx +12 -0
- package/components/forms/Mentions.jsx +31 -0
- package/components/forms/Mentions.prompt.md +5 -0
- package/components/forms/NumberField.d.ts +14 -0
- package/components/forms/NumberField.figma.tsx +12 -0
- package/components/forms/NumberField.jsx +21 -0
- package/components/forms/NumberField.prompt.md +5 -0
- package/components/forms/RadioGroup.d.ts +24 -0
- package/components/forms/RadioGroup.figma.tsx +12 -0
- package/components/forms/RadioGroup.jsx +32 -0
- package/components/forms/RadioGroup.prompt.md +6 -0
- package/components/forms/Rating.d.ts +16 -0
- package/components/forms/Rating.figma.tsx +12 -0
- package/components/forms/Rating.jsx +22 -0
- package/components/forms/Rating.prompt.md +6 -0
- package/components/forms/SearchField.d.ts +11 -0
- package/components/forms/SearchField.figma.tsx +12 -0
- package/components/forms/SearchField.jsx +25 -0
- package/components/forms/SearchField.prompt.md +5 -0
- package/components/forms/SegmentedControl.d.ts +13 -0
- package/components/forms/SegmentedControl.figma.tsx +12 -0
- package/components/forms/SegmentedControl.jsx +31 -0
- package/components/forms/SegmentedControl.prompt.md +6 -0
- package/components/forms/Select.d.ts +19 -0
- package/components/forms/Select.figma.tsx +12 -0
- package/components/forms/Select.jsx +27 -0
- package/components/forms/Select.prompt.md +6 -0
- package/components/forms/Slider.d.ts +6 -0
- package/components/forms/Slider.figma.tsx +12 -0
- package/components/forms/Slider.jsx +8 -0
- package/components/forms/Slider.prompt.md +5 -0
- package/components/forms/Switch.d.ts +12 -0
- package/components/forms/Switch.figma.tsx +12 -0
- package/components/forms/Switch.jsx +14 -0
- package/components/forms/Switch.prompt.md +5 -0
- package/components/forms/TagInput.d.ts +16 -0
- package/components/forms/TagInput.figma.tsx +12 -0
- package/components/forms/TagInput.jsx +39 -0
- package/components/forms/TagInput.prompt.md +5 -0
- package/components/forms/Textarea.d.ts +14 -0
- package/components/forms/Textarea.figma.tsx +12 -0
- package/components/forms/Textarea.jsx +19 -0
- package/components/forms/Textarea.prompt.md +5 -0
- package/components/forms/TimePicker.d.ts +16 -0
- package/components/forms/TimePicker.figma.tsx +12 -0
- package/components/forms/TimePicker.jsx +22 -0
- package/components/forms/TimePicker.prompt.md +5 -0
- package/components/forms/Toggle.d.ts +16 -0
- package/components/forms/Toggle.figma.tsx +12 -0
- package/components/forms/Toggle.jsx +15 -0
- package/components/forms/Toggle.prompt.md +6 -0
- package/components/forms/Transfer.d.ts +14 -0
- package/components/forms/Transfer.figma.tsx +12 -0
- package/components/forms/Transfer.jsx +41 -0
- package/components/forms/Transfer.prompt.md +5 -0
- package/components/forms/TreeSelect.d.ts +15 -0
- package/components/forms/TreeSelect.figma.tsx +12 -0
- package/components/forms/TreeSelect.jsx +35 -0
- package/components/forms/TreeSelect.prompt.md +5 -0
- package/components/forms/forms-2.card.html +40 -0
- package/components/forms/forms.card.html +40 -0
- package/components/icon/Icon.d.ts +26 -0
- package/components/icon/Icon.figma.tsx +12 -0
- package/components/icon/Icon.jsx +74 -0
- package/components/icon/Icon.prompt.md +8 -0
- package/components/icon/icon.card.html +38 -0
- package/components/logo/Logo.d.ts +18 -0
- package/components/logo/Logo.figma.tsx +12 -0
- package/components/logo/Logo.jsx +25 -0
- package/components/logo/Logo.prompt.md +10 -0
- package/components/logo/logo-data.js +214 -0
- package/components/logo/logo.card.html +44 -0
- package/components/navigation/Anchor.d.ts +11 -0
- package/components/navigation/Anchor.figma.tsx +12 -0
- package/components/navigation/Anchor.jsx +25 -0
- package/components/navigation/Anchor.prompt.md +5 -0
- package/components/navigation/BackTop.d.ts +9 -0
- package/components/navigation/BackTop.figma.tsx +12 -0
- package/components/navigation/BackTop.jsx +23 -0
- package/components/navigation/BackTop.prompt.md +5 -0
- package/components/navigation/Breadcrumb.d.ts +14 -0
- package/components/navigation/Breadcrumb.figma.tsx +12 -0
- package/components/navigation/Breadcrumb.jsx +24 -0
- package/components/navigation/Breadcrumb.prompt.md +5 -0
- package/components/navigation/CommandPalette.d.ts +19 -0
- package/components/navigation/CommandPalette.figma.tsx +12 -0
- package/components/navigation/CommandPalette.jsx +48 -0
- package/components/navigation/CommandPalette.prompt.md +7 -0
- package/components/navigation/Dock.d.ts +6 -0
- package/components/navigation/Dock.figma.tsx +12 -0
- package/components/navigation/Dock.jsx +22 -0
- package/components/navigation/Dock.prompt.md +5 -0
- package/components/navigation/HotKeys.d.ts +13 -0
- package/components/navigation/HotKeys.figma.tsx +12 -0
- package/components/navigation/HotKeys.jsx +44 -0
- package/components/navigation/HotKeys.prompt.md +5 -0
- package/components/navigation/Link.d.ts +12 -0
- package/components/navigation/Link.figma.tsx +12 -0
- package/components/navigation/Link.jsx +13 -0
- package/components/navigation/Link.prompt.md +5 -0
- package/components/navigation/Menu.d.ts +23 -0
- package/components/navigation/Menu.figma.tsx +12 -0
- package/components/navigation/Menu.jsx +36 -0
- package/components/navigation/Menu.prompt.md +9 -0
- package/components/navigation/Menubar.d.ts +7 -0
- package/components/navigation/Menubar.figma.tsx +12 -0
- package/components/navigation/Menubar.jsx +48 -0
- package/components/navigation/Menubar.prompt.md +5 -0
- package/components/navigation/NavigationMenu.d.ts +7 -0
- package/components/navigation/NavigationMenu.figma.tsx +12 -0
- package/components/navigation/NavigationMenu.jsx +38 -0
- package/components/navigation/NavigationMenu.prompt.md +5 -0
- package/components/navigation/Pagination.d.ts +13 -0
- package/components/navigation/Pagination.figma.tsx +12 -0
- package/components/navigation/Pagination.jsx +32 -0
- package/components/navigation/Pagination.prompt.md +5 -0
- package/components/navigation/Sidebar.d.ts +20 -0
- package/components/navigation/Sidebar.figma.tsx +12 -0
- package/components/navigation/Sidebar.jsx +24 -0
- package/components/navigation/Sidebar.prompt.md +8 -0
- package/components/navigation/Steps.d.ts +13 -0
- package/components/navigation/Steps.figma.tsx +12 -0
- package/components/navigation/Steps.jsx +20 -0
- package/components/navigation/Steps.prompt.md +5 -0
- package/components/navigation/Tabs.d.ts +21 -0
- package/components/navigation/Tabs.figma.tsx +12 -0
- package/components/navigation/Tabs.jsx +41 -0
- package/components/navigation/Tabs.prompt.md +6 -0
- package/components/navigation/Toolbar.d.ts +16 -0
- package/components/navigation/Toolbar.figma.tsx +12 -0
- package/components/navigation/Toolbar.jsx +32 -0
- package/components/navigation/Toolbar.prompt.md +5 -0
- package/components/navigation/navigation.card.html +51 -0
- package/components/navigation/shell.card.html +52 -0
- package/components/overlays/ContextMenu.d.ts +10 -0
- package/components/overlays/ContextMenu.figma.tsx +12 -0
- package/components/overlays/ContextMenu.jsx +28 -0
- package/components/overlays/ContextMenu.prompt.md +7 -0
- package/components/overlays/Drawer.d.ts +18 -0
- package/components/overlays/Drawer.figma.tsx +12 -0
- package/components/overlays/Drawer.jsx +44 -0
- package/components/overlays/Drawer.prompt.md +8 -0
- package/components/overlays/HoverCard.d.ts +13 -0
- package/components/overlays/HoverCard.figma.tsx +12 -0
- package/components/overlays/HoverCard.jsx +17 -0
- package/components/overlays/HoverCard.prompt.md +5 -0
- package/components/overlays/Popconfirm.d.ts +18 -0
- package/components/overlays/Popconfirm.figma.tsx +12 -0
- package/components/overlays/Popconfirm.jsx +33 -0
- package/components/overlays/Popconfirm.prompt.md +6 -0
- package/components/overlays/Popover.d.ts +17 -0
- package/components/overlays/Popover.figma.tsx +12 -0
- package/components/overlays/Popover.jsx +24 -0
- package/components/overlays/Popover.prompt.md +7 -0
- package/components/overlays/Tour.d.ts +13 -0
- package/components/overlays/Tour.figma.tsx +12 -0
- package/components/overlays/Tour.jsx +46 -0
- package/components/overlays/Tour.prompt.md +5 -0
- package/components/overlays/overlays.card.html +50 -0
- package/components/textfield/TextField.d.ts +18 -0
- package/components/textfield/TextField.figma.tsx +14 -0
- package/components/textfield/TextField.jsx +44 -0
- package/components/textfield/TextField.prompt.md +11 -0
- package/components/textfield/textfield.card.html +34 -0
- package/docs/ci-cd.md +84 -0
- package/docs/consuming.md +109 -0
- package/docs/contrast-report.md +125 -0
- package/docs/conventions.md +114 -0
- package/docs/decisions.md +94 -0
- package/docs/deploy.md +110 -0
- package/docs/design-styles.md +25 -0
- package/docs/figma.md +119 -0
- package/docs/live-hub.md +58 -0
- package/docs/products.md +26 -0
- package/docs/quality-gates.md +94 -0
- package/docs/release-notes.md +31 -0
- package/docs/storybook.md +56 -0
- package/docs/sync.md +48 -0
- package/docs/template-schema-v2.md +36 -0
- package/docs/vi/ci-cd.md +84 -0
- package/docs/vi/consuming.md +109 -0
- package/docs/vi/contrast-report.md +125 -0
- package/docs/vi/conventions.md +114 -0
- package/docs/vi/decisions.md +94 -0
- package/docs/vi/deploy.md +110 -0
- package/docs/vi/design-styles.md +25 -0
- package/docs/vi/figma.md +119 -0
- package/docs/vi/live-hub.md +58 -0
- package/docs/vi/products.md +26 -0
- package/docs/vi/quality-gates.md +94 -0
- package/docs/vi/release-notes.md +31 -0
- package/docs/vi/storybook.md +56 -0
- package/docs/vi/sync.md +48 -0
- package/docs/vi/template-schema-v2.md +36 -0
- package/docs/viewer.html +230 -0
- package/fonts/bevietnampro-300-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-300-latin.woff2 +0 -0
- package/fonts/bevietnampro-300-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-400-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-400-latin.woff2 +0 -0
- package/fonts/bevietnampro-400-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-400i-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-400i-latin.woff2 +0 -0
- package/fonts/bevietnampro-400i-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-500-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-500-latin.woff2 +0 -0
- package/fonts/bevietnampro-500-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-600-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-600-latin.woff2 +0 -0
- package/fonts/bevietnampro-600-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-600i-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-600i-latin.woff2 +0 -0
- package/fonts/bevietnampro-600i-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-700-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-700-latin.woff2 +0 -0
- package/fonts/bevietnampro-700-vietnamese.woff2 +0 -0
- package/fonts/bevietnampro-800-latin-ext.woff2 +0 -0
- package/fonts/bevietnampro-800-latin.woff2 +0 -0
- package/fonts/bevietnampro-800-vietnamese.woff2 +0 -0
- package/fonts/jetbrainsmono-400-cyrillic-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-400-cyrillic.woff2 +0 -0
- package/fonts/jetbrainsmono-400-greek.woff2 +0 -0
- package/fonts/jetbrainsmono-400-latin-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-400-latin.woff2 +0 -0
- package/fonts/jetbrainsmono-400-vietnamese.woff2 +0 -0
- package/fonts/jetbrainsmono-500-cyrillic-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-500-cyrillic.woff2 +0 -0
- package/fonts/jetbrainsmono-500-greek.woff2 +0 -0
- package/fonts/jetbrainsmono-500-latin-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-500-latin.woff2 +0 -0
- package/fonts/jetbrainsmono-500-vietnamese.woff2 +0 -0
- package/fonts/jetbrainsmono-700-cyrillic-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-700-cyrillic.woff2 +0 -0
- package/fonts/jetbrainsmono-700-greek.woff2 +0 -0
- package/fonts/jetbrainsmono-700-latin-ext.woff2 +0 -0
- package/fonts/jetbrainsmono-700-latin.woff2 +0 -0
- package/fonts/jetbrainsmono-700-vietnamese.woff2 +0 -0
- package/guidelines/atomic-view.html +497 -0
- package/guidelines/brand-iconography.html +51 -0
- package/guidelines/brand-imagery.html +23 -0
- package/guidelines/brand-interaction.html +24 -0
- package/guidelines/brand-voice.html +24 -0
- package/guidelines/colors-anchors.html +20 -0
- package/guidelines/colors-semantic.html +19 -0
- package/guidelines/colors-surfaces.html +19 -0
- package/guidelines/colors-text.html +20 -0
- package/guidelines/documents.html +43 -0
- package/guidelines/elements-components.html +27 -0
- package/guidelines/elements-concept.html +48 -0
- package/guidelines/elements-variants.html +49 -0
- package/guidelines/motion-interaction.html +29 -0
- package/guidelines/motion.html +53 -0
- package/guidelines/nav-model.cjs +113 -0
- package/guidelines/responsive-bilingual.html +75 -0
- package/guidelines/rtl-preview.html +115 -0
- package/guidelines/spacing-breakpoints.html +20 -0
- package/guidelines/spacing-radius.html +19 -0
- package/guidelines/spacing-scale.html +21 -0
- package/guidelines/surfaces-aurora.html +20 -0
- package/guidelines/surfaces-depth.html +27 -0
- package/guidelines/surfaces-glass.html +21 -0
- package/guidelines/surfaces-shadow.html +20 -0
- package/guidelines/type-families.html +25 -0
- package/guidelines/type-lineheight.html +16 -0
- package/guidelines/type-scale.html +21 -0
- package/guidelines/type-weights.html +20 -0
- package/llms.txt +70 -0
- package/package.json +88 -0
- package/styles.css +39 -0
- package/templates/_vendor/deck-stage.js +2584 -0
- package/templates/ai-cluster-demo.html +46 -0
- package/templates/app-shell/.thumbnail +0 -0
- package/templates/app-shell/AppShell.dc.html +80 -0
- package/templates/app-shell/content-schema.json +114 -0
- package/templates/app-shell/ds-base.js +23 -0
- package/templates/app-shell/support.js +1841 -0
- package/templates/article/.thumbnail +0 -0
- package/templates/article/Article.dc.html +67 -0
- package/templates/article/content-schema.json +80 -0
- package/templates/article/ds-base.js +23 -0
- package/templates/article/support.js +1841 -0
- package/templates/auth/.thumbnail +0 -0
- package/templates/auth/Auth.dc.html +72 -0
- package/templates/auth/content-schema.json +74 -0
- package/templates/auth/ds-base.js +23 -0
- package/templates/auth/support.js +1841 -0
- package/templates/bod-deck/.thumbnail +0 -0
- package/templates/bod-deck/BodDeck.dc.html +106 -0
- package/templates/bod-deck/content-schema.json +171 -0
- package/templates/bod-deck/ds-base.js +23 -0
- package/templates/bod-deck/support.js +1841 -0
- package/templates/bod-investor-update/.thumbnail +0 -0
- package/templates/bod-investor-update/BodInvestorUpdate.dc.html +81 -0
- package/templates/bod-investor-update/content-schema.json +105 -0
- package/templates/bod-investor-update/ds-base.js +23 -0
- package/templates/bod-investor-update/support.js +1841 -0
- package/templates/bod-memo/.thumbnail +0 -0
- package/templates/bod-memo/BodMemo.dc.html +87 -0
- package/templates/bod-memo/ds-base.js +23 -0
- package/templates/bod-memo/support.js +1841 -0
- package/templates/bod-minutes/.thumbnail +0 -0
- package/templates/bod-minutes/BodMinutes.dc.html +84 -0
- package/templates/bod-minutes/ds-base.js +23 -0
- package/templates/bod-minutes/support.js +1841 -0
- package/templates/bod-report/.thumbnail +0 -0
- package/templates/bod-report/BodReport.dc.html +106 -0
- package/templates/bod-report/content-schema.json +29 -0
- package/templates/bod-report/ds-base.js +23 -0
- package/templates/bod-report/support.js +1841 -0
- package/templates/bod-resolution/.thumbnail +0 -0
- package/templates/bod-resolution/BodResolution.dc.html +87 -0
- package/templates/bod-resolution/content-schema.json +123 -0
- package/templates/bod-resolution/ds-base.js +23 -0
- package/templates/bod-resolution/support.js +1841 -0
- package/templates/culture-event-invite/.thumbnail +0 -0
- package/templates/culture-event-invite/CultureEventInvite.dc.html +73 -0
- package/templates/culture-event-invite/ds-base.js +23 -0
- package/templates/culture-event-invite/support.js +1841 -0
- package/templates/dashboard/.thumbnail +0 -0
- package/templates/dashboard/Dashboard.dc.html +120 -0
- package/templates/dashboard/content-schema.json +97 -0
- package/templates/dashboard/ds-base.js +23 -0
- package/templates/dashboard/support.js +1841 -0
- package/templates/delivery-change-note/.thumbnail +0 -0
- package/templates/delivery-change-note/DeliveryChangeNote.dc.html +85 -0
- package/templates/delivery-change-note/content-schema.json +158 -0
- package/templates/delivery-change-note/ds-base.js +23 -0
- package/templates/delivery-change-note/support.js +1841 -0
- package/templates/delivery-kickoff/.thumbnail +0 -0
- package/templates/delivery-kickoff/DeliveryKickoff.dc.html +112 -0
- package/templates/delivery-kickoff/content-schema.json +223 -0
- package/templates/delivery-kickoff/ds-base.js +23 -0
- package/templates/delivery-kickoff/support.js +1841 -0
- package/templates/delivery-qbr-deck/.thumbnail +0 -0
- package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +118 -0
- package/templates/delivery-qbr-deck/content-schema.json +177 -0
- package/templates/delivery-qbr-deck/ds-base.js +23 -0
- package/templates/delivery-qbr-deck/support.js +1841 -0
- package/templates/delivery-runbook/.thumbnail +0 -0
- package/templates/delivery-runbook/DeliveryRunbook.dc.html +91 -0
- package/templates/delivery-runbook/content-schema.json +211 -0
- package/templates/delivery-runbook/ds-base.js +23 -0
- package/templates/delivery-runbook/support.js +1841 -0
- package/templates/delivery-status-email/.thumbnail +0 -0
- package/templates/delivery-status-email/DeliveryStatusEmail.dc.html +78 -0
- package/templates/delivery-status-email/ds-base.js +23 -0
- package/templates/delivery-status-email/support.js +1841 -0
- package/templates/doc-style-guide/.thumbnail +0 -0
- package/templates/doc-style-guide/DocStyleGuide.dc.html +148 -0
- package/templates/doc-style-guide/ds-base.js +23 -0
- package/templates/doc-style-guide/support.js +1841 -0
- package/templates/doc-suite-index/.thumbnail +0 -0
- package/templates/doc-suite-index/DocSuiteIndex.dc.html +201 -0
- package/templates/doc-suite-index/content-schema.json +12 -0
- package/templates/doc-suite-index/ds-base.js +23 -0
- package/templates/doc-suite-index/support.js +1841 -0
- package/templates/doc-templates/.thumbnail +0 -0
- package/templates/doc-templates/DocTemplates.dc.html +118 -0
- package/templates/doc-templates/ds-base.js +23 -0
- package/templates/doc-templates/support.js +1841 -0
- package/templates/email/.thumbnail +0 -0
- package/templates/email/Email-VN-standalone.html +59 -0
- package/templates/email/Email.dc.html +67 -0
- package/templates/email/ds-base.js +23 -0
- package/templates/email/support.js +1841 -0
- package/templates/email-safe/README.md +28 -0
- package/templates/email-safe/email-announcement.html +88 -0
- package/templates/email-safe/email-dunning.html +59 -0
- package/templates/email-safe/email-investor.html +88 -0
- package/templates/email-safe/email-launch.html +88 -0
- package/templates/email-safe/email-newsletter.html +62 -0
- package/templates/email-safe/email-status.html +88 -0
- package/templates/email-safe/email-transactional.html +88 -0
- package/templates/finance-dunning-email/.thumbnail +0 -0
- package/templates/finance-dunning-email/FinanceDunningEmail.dc.html +58 -0
- package/templates/finance-dunning-email/ds-base.js +23 -0
- package/templates/finance-dunning-email/support.js +1841 -0
- package/templates/finance-expense-report/.thumbnail +0 -0
- package/templates/finance-expense-report/FinanceExpenseReport.dc.html +82 -0
- package/templates/finance-expense-report/ds-base.js +23 -0
- package/templates/finance-expense-report/support.js +1841 -0
- package/templates/finance-invoice/.thumbnail +0 -0
- package/templates/finance-invoice/FinanceInvoice.dc.html +92 -0
- package/templates/finance-invoice/ds-base.js +23 -0
- package/templates/finance-invoice/support.js +1841 -0
- package/templates/finance-quote/.thumbnail +0 -0
- package/templates/finance-quote/FinanceQuote.dc.html +86 -0
- package/templates/finance-quote/ds-base.js +23 -0
- package/templates/finance-quote/support.js +1841 -0
- package/templates/hr-announcement/.thumbnail +0 -0
- package/templates/hr-announcement/HrAnnouncement.dc.html +64 -0
- package/templates/hr-announcement/ds-base.js +23 -0
- package/templates/hr-announcement/support.js +1841 -0
- package/templates/hr-interview-kit/.thumbnail +0 -0
- package/templates/hr-interview-kit/HrInterviewKit.dc.html +102 -0
- package/templates/hr-interview-kit/ds-base.js +23 -0
- package/templates/hr-interview-kit/support.js +1841 -0
- package/templates/hr-offboarding/.thumbnail +0 -0
- package/templates/hr-offboarding/HrOffboarding.dc.html +86 -0
- package/templates/hr-offboarding/ds-base.js +23 -0
- package/templates/hr-offboarding/support.js +1841 -0
- package/templates/hr-performance-review/.thumbnail +0 -0
- package/templates/hr-performance-review/HrPerformanceReview.dc.html +95 -0
- package/templates/hr-performance-review/ds-base.js +23 -0
- package/templates/hr-performance-review/support.js +1841 -0
- package/templates/hr-pip/.thumbnail +0 -0
- package/templates/hr-pip/HrPip.dc.html +73 -0
- package/templates/hr-pip/ds-base.js +23 -0
- package/templates/hr-pip/support.js +1841 -0
- package/templates/image-slots-demo.html +57 -0
- package/templates/kitchen-sink.html +127 -0
- package/templates/legal-msa/.thumbnail +0 -0
- package/templates/legal-msa/LegalMsa.dc.html +85 -0
- package/templates/legal-msa/ds-base.js +23 -0
- package/templates/legal-msa/support.js +1841 -0
- package/templates/legal-sow/.thumbnail +0 -0
- package/templates/legal-sow/LegalSow.dc.html +125 -0
- package/templates/legal-sow/ds-base.js +23 -0
- package/templates/legal-sow/support.js +1841 -0
- package/templates/marketing-campaign-brief/.thumbnail +0 -0
- package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +86 -0
- package/templates/marketing-campaign-brief/content-schema.json +139 -0
- package/templates/marketing-campaign-brief/ds-base.js +23 -0
- package/templates/marketing-campaign-brief/support.js +1841 -0
- package/templates/marketing-case-study/.thumbnail +0 -0
- package/templates/marketing-case-study/MarketingCaseStudy.dc.html +82 -0
- package/templates/marketing-case-study/content-schema.json +103 -0
- package/templates/marketing-case-study/ds-base.js +23 -0
- package/templates/marketing-case-study/support.js +1841 -0
- package/templates/marketing-launch/.thumbnail +0 -0
- package/templates/marketing-launch/MarketingLaunch.dc.html +84 -0
- package/templates/marketing-launch/ds-base.js +23 -0
- package/templates/marketing-launch/support.js +1841 -0
- package/templates/marketing-newsletter/.thumbnail +0 -0
- package/templates/marketing-newsletter/MarketingNewsletter.dc.html +109 -0
- package/templates/marketing-newsletter/ds-base.js +23 -0
- package/templates/marketing-newsletter/support.js +1841 -0
- package/templates/marketing-page/.thumbnail +0 -0
- package/templates/marketing-page/MarketingPage.dc.html +132 -0
- package/templates/marketing-page/content-schema.json +33 -0
- package/templates/marketing-page/ds-base.js +23 -0
- package/templates/marketing-page/support.js +1841 -0
- package/templates/marketing-press-release/.thumbnail +0 -0
- package/templates/marketing-press-release/MarketingPressRelease.dc.html +84 -0
- package/templates/marketing-press-release/content-schema.json +116 -0
- package/templates/marketing-press-release/ds-base.js +23 -0
- package/templates/marketing-press-release/support.js +1841 -0
- package/templates/marketing-social-kit/.thumbnail +0 -0
- package/templates/marketing-social-kit/MarketingSocialKit.dc.html +77 -0
- package/templates/marketing-social-kit/content-schema.json +54 -0
- package/templates/marketing-social-kit/ds-base.js +23 -0
- package/templates/marketing-social-kit/support.js +1841 -0
- package/templates/playground.html +79 -0
- package/templates/sales-one-pager/.thumbnail +0 -0
- package/templates/sales-one-pager/SalesOnePager.dc.html +103 -0
- package/templates/sales-one-pager/content-schema.json +73 -0
- package/templates/sales-one-pager/ds-base.js +23 -0
- package/templates/sales-one-pager/support.js +1841 -0
- package/templates/sales-proposal-deck/.thumbnail +0 -0
- package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +159 -0
- package/templates/sales-proposal-deck/content-schema.json +273 -0
- package/templates/sales-proposal-deck/ds-base.js +23 -0
- package/templates/sales-proposal-deck/support.js +1841 -0
- package/templates/schema/content-schema.schema.json +31 -0
- package/templates/settings/.thumbnail +0 -0
- package/templates/settings/Settings.dc.html +86 -0
- package/templates/settings/content-schema.json +131 -0
- package/templates/settings/ds-base.js +23 -0
- package/templates/settings/support.js +1841 -0
- package/templates/slide-deck/.thumbnail +0 -0
- package/templates/slide-deck/SlideDeck.dc.html +86 -0
- package/templates/slide-deck/content-schema.json +23 -0
- package/templates/slide-deck/ds-base.js +23 -0
- package/templates/slide-deck/support.js +1841 -0
- package/templates/team-meeting-agenda/.thumbnail +0 -0
- package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +93 -0
- package/templates/team-meeting-agenda/ds-base.js +23 -0
- package/templates/team-meeting-agenda/support.js +1841 -0
- package/templates/tech-incident-report/.thumbnail +0 -0
- package/templates/tech-incident-report/TechIncidentReport.dc.html +111 -0
- package/templates/tech-incident-report/content-schema.json +25 -0
- package/templates/tech-incident-report/ds-base.js +23 -0
- package/templates/tech-incident-report/support.js +1841 -0
- package/templates/tech-release-notes/.thumbnail +0 -0
- package/templates/tech-release-notes/TechReleaseNotes.dc.html +79 -0
- package/templates/tech-release-notes/ds-base.js +23 -0
- package/templates/tech-release-notes/support.js +1841 -0
- package/templates/tech-retro/.thumbnail +0 -0
- package/templates/tech-retro/TechRetro.dc.html +84 -0
- package/templates/tech-retro/ds-base.js +23 -0
- package/templates/tech-retro/support.js +1841 -0
- package/templates/tech-rfc/.thumbnail +0 -0
- package/templates/tech-rfc/TechRfc.dc.html +87 -0
- package/templates/tech-rfc/content-schema.json +115 -0
- package/templates/tech-rfc/ds-base.js +23 -0
- package/templates/tech-rfc/support.js +1841 -0
- package/templates/vn-appointment-transfer/.thumbnail +0 -0
- package/templates/vn-appointment-transfer/VnAppointmentTransfer.dc.html +101 -0
- package/templates/vn-appointment-transfer/ds-base.js +23 -0
- package/templates/vn-appointment-transfer/support.js +1841 -0
- package/templates/vn-certificate-of-employment/.thumbnail +0 -0
- package/templates/vn-certificate-of-employment/VnCertificateOfEmployment.dc.html +84 -0
- package/templates/vn-certificate-of-employment/ds-base.js +23 -0
- package/templates/vn-certificate-of-employment/support.js +1841 -0
- package/templates/vn-code-of-conduct/.thumbnail +0 -0
- package/templates/vn-code-of-conduct/VnCodeOfConduct.dc.html +105 -0
- package/templates/vn-code-of-conduct/ds-base.js +23 -0
- package/templates/vn-code-of-conduct/support.js +1841 -0
- package/templates/vn-compensation-regulation/.thumbnail +0 -0
- package/templates/vn-compensation-regulation/VnCompensationRegulation.dc.html +122 -0
- package/templates/vn-compensation-regulation/ds-base.js +23 -0
- package/templates/vn-compensation-regulation/support.js +1841 -0
- package/templates/vn-contract-amendment/.thumbnail +0 -0
- package/templates/vn-contract-amendment/VnContractAmendment.dc.html +107 -0
- package/templates/vn-contract-amendment/ds-base.js +23 -0
- package/templates/vn-contract-amendment/support.js +1841 -0
- package/templates/vn-contractor-agreement/.thumbnail +0 -0
- package/templates/vn-contractor-agreement/VnContractorAgreement.dc.html +120 -0
- package/templates/vn-contractor-agreement/ds-base.js +23 -0
- package/templates/vn-contractor-agreement/support.js +1841 -0
- package/templates/vn-data-protection-policy/.thumbnail +0 -0
- package/templates/vn-data-protection-policy/VnDataProtectionPolicy.dc.html +116 -0
- package/templates/vn-data-protection-policy/ds-base.js +23 -0
- package/templates/vn-data-protection-policy/support.js +1841 -0
- package/templates/vn-disciplinary-case-file/.thumbnail +0 -0
- package/templates/vn-disciplinary-case-file/VnDisciplinaryCaseFile.dc.html +172 -0
- package/templates/vn-disciplinary-case-file/ds-base.js +23 -0
- package/templates/vn-disciplinary-case-file/support.js +1841 -0
- package/templates/vn-disciplinary-schedule/.thumbnail +0 -0
- package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +91 -0
- package/templates/vn-disciplinary-schedule/ds-base.js +23 -0
- package/templates/vn-disciplinary-schedule/support.js +1841 -0
- package/templates/vn-employee-request/.thumbnail +0 -0
- package/templates/vn-employee-request/VnEmployeeRequest.dc.html +137 -0
- package/templates/vn-employee-request/ds-base.js +23 -0
- package/templates/vn-employee-request/support.js +1841 -0
- package/templates/vn-exit-handover/.thumbnail +0 -0
- package/templates/vn-exit-handover/VnExitHandover.dc.html +228 -0
- package/templates/vn-exit-handover/ds-base.js +23 -0
- package/templates/vn-exit-handover/support.js +1841 -0
- package/templates/vn-foreign-employee-pack/.thumbnail +0 -0
- package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +129 -0
- package/templates/vn-foreign-employee-pack/content-schema.json +22 -0
- package/templates/vn-foreign-employee-pack/ds-base.js +23 -0
- package/templates/vn-foreign-employee-pack/support.js +1841 -0
- package/templates/vn-grassroots-democracy/.thumbnail +0 -0
- package/templates/vn-grassroots-democracy/VnGrassrootsDemocracy.dc.html +117 -0
- package/templates/vn-grassroots-democracy/ds-base.js +23 -0
- package/templates/vn-grassroots-democracy/support.js +1841 -0
- package/templates/vn-infosec-policy/.thumbnail +0 -0
- package/templates/vn-infosec-policy/VnInfosecPolicy.dc.html +116 -0
- package/templates/vn-infosec-policy/ds-base.js +23 -0
- package/templates/vn-infosec-policy/support.js +1841 -0
- package/templates/vn-internal-labor-regulations/.thumbnail +0 -0
- package/templates/vn-internal-labor-regulations/VnInternalLaborRegulations.dc.html +155 -0
- package/templates/vn-internal-labor-regulations/ds-base.js +23 -0
- package/templates/vn-internal-labor-regulations/support.js +1841 -0
- package/templates/vn-internship-agreement/.thumbnail +0 -0
- package/templates/vn-internship-agreement/VnInternshipAgreement.dc.html +112 -0
- package/templates/vn-internship-agreement/ds-base.js +23 -0
- package/templates/vn-internship-agreement/support.js +1841 -0
- package/templates/vn-job-description/.thumbnail +0 -0
- package/templates/vn-job-description/VnJobDescription.dc.html +85 -0
- package/templates/vn-job-description/ds-base.js +23 -0
- package/templates/vn-job-description/support.js +1841 -0
- package/templates/vn-labor-contract/.thumbnail +0 -0
- package/templates/vn-labor-contract/VnLaborContract.dc.html +180 -0
- package/templates/vn-labor-contract/ds-base.js +23 -0
- package/templates/vn-labor-contract/support.js +1841 -0
- package/templates/vn-labour-management-book/.thumbnail +0 -0
- package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +115 -0
- package/templates/vn-labour-management-book/ds-base.js +23 -0
- package/templates/vn-labour-management-book/support.js +1841 -0
- package/templates/vn-mutual-nda/.thumbnail +0 -0
- package/templates/vn-mutual-nda/VnMutualNda.dc.html +114 -0
- package/templates/vn-mutual-nda/ds-base.js +23 -0
- package/templates/vn-mutual-nda/support.js +1841 -0
- package/templates/vn-ndnca-ip/.thumbnail +0 -0
- package/templates/vn-ndnca-ip/VnNdncaIp.dc.html +157 -0
- package/templates/vn-ndnca-ip/ds-base.js +23 -0
- package/templates/vn-ndnca-ip/support.js +1841 -0
- package/templates/vn-offer-letter/.thumbnail +0 -0
- package/templates/vn-offer-letter/VnOfferLetter.dc.html +84 -0
- package/templates/vn-offer-letter/ds-base.js +23 -0
- package/templates/vn-offer-letter/support.js +1841 -0
- package/templates/vn-onboarding-checklist/.thumbnail +0 -0
- package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +98 -0
- package/templates/vn-onboarding-checklist/content-schema.json +12 -0
- package/templates/vn-onboarding-checklist/ds-base.js +23 -0
- package/templates/vn-onboarding-checklist/support.js +1841 -0
- package/templates/vn-pdpl-consent/.thumbnail +0 -0
- package/templates/vn-pdpl-consent/VnPdplConsent.dc.html +111 -0
- package/templates/vn-pdpl-consent/ds-base.js +23 -0
- package/templates/vn-pdpl-consent/support.js +1841 -0
- package/templates/vn-performance-evaluation-regulation/.thumbnail +0 -0
- package/templates/vn-performance-evaluation-regulation/VnPerformanceEvaluationRegulation.dc.html +135 -0
- package/templates/vn-performance-evaluation-regulation/ds-base.js +23 -0
- package/templates/vn-performance-evaluation-regulation/support.js +1841 -0
- package/templates/vn-performance-review-form/.thumbnail +0 -0
- package/templates/vn-performance-review-form/VnPerformanceReviewForm.dc.html +129 -0
- package/templates/vn-performance-review-form/ds-base.js +23 -0
- package/templates/vn-performance-review-form/support.js +1841 -0
- package/templates/vn-phantom-stock/.thumbnail +0 -0
- package/templates/vn-phantom-stock/VnPhantomStock.dc.html +184 -0
- package/templates/vn-phantom-stock/content-schema.json +17 -0
- package/templates/vn-phantom-stock/ds-base.js +23 -0
- package/templates/vn-phantom-stock/support.js +1841 -0
- package/templates/vn-probation-contract/.thumbnail +0 -0
- package/templates/vn-probation-contract/VnProbationContract.dc.html +126 -0
- package/templates/vn-probation-contract/ds-base.js +23 -0
- package/templates/vn-probation-contract/support.js +1841 -0
- package/templates/vn-receipt-acknowledgement/.thumbnail +0 -0
- package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +106 -0
- package/templates/vn-receipt-acknowledgement/ds-base.js +23 -0
- package/templates/vn-receipt-acknowledgement/support.js +1841 -0
- package/templates/vn-remote-work-policy/.thumbnail +0 -0
- package/templates/vn-remote-work-policy/VnRemoteWorkPolicy.dc.html +103 -0
- package/templates/vn-remote-work-policy/ds-base.js +23 -0
- package/templates/vn-remote-work-policy/support.js +1841 -0
- package/templates/vn-resignation-letter/.thumbnail +0 -0
- package/templates/vn-resignation-letter/VnResignationLetter.dc.html +71 -0
- package/templates/vn-resignation-letter/ds-base.js +23 -0
- package/templates/vn-resignation-letter/support.js +1841 -0
- package/templates/vn-salary-scale/.thumbnail +0 -0
- package/templates/vn-salary-scale/VnSalaryScale.dc.html +110 -0
- package/templates/vn-salary-scale/ds-base.js +23 -0
- package/templates/vn-salary-scale/support.js +1841 -0
- package/templates/vn-sow-appendix/.thumbnail +0 -0
- package/templates/vn-sow-appendix/VnSowAppendix.dc.html +70 -0
- package/templates/vn-sow-appendix/ds-base.js +23 -0
- package/templates/vn-sow-appendix/support.js +1841 -0
- package/templates/vn-termination-decision/.thumbnail +0 -0
- package/templates/vn-termination-decision/VnTerminationDecision.dc.html +80 -0
- package/templates/vn-termination-decision/ds-base.js +23 -0
- package/templates/vn-termination-decision/support.js +1841 -0
- package/templates/vn-total-rewards-appendix/.thumbnail +0 -0
- package/templates/vn-total-rewards-appendix/VnTotalRewardsAppendix.dc.html +138 -0
- package/templates/vn-total-rewards-appendix/ds-base.js +23 -0
- package/templates/vn-total-rewards-appendix/support.js +1841 -0
- package/templates/vn-training-commitment/.thumbnail +0 -0
- package/templates/vn-training-commitment/VnTrainingCommitment.dc.html +105 -0
- package/templates/vn-training-commitment/ds-base.js +23 -0
- package/templates/vn-training-commitment/support.js +1841 -0
- package/templates/vn-travel-expense-policy/.thumbnail +0 -0
- package/templates/vn-travel-expense-policy/VnTravelExpensePolicy.dc.html +113 -0
- package/templates/vn-travel-expense-policy/ds-base.js +23 -0
- package/templates/vn-travel-expense-policy/support.js +1841 -0
- package/tokens/colors.css +77 -0
- package/tokens/component-tokens.css +46 -0
- package/tokens/elements.css +300 -0
- package/tokens/elevation.css +46 -0
- package/tokens/fonts.css +51 -0
- package/tokens/motion.css +25 -0
- package/tokens/native/CSTokens.kt +255 -0
- package/tokens/native/CSTokens.swift +257 -0
- package/tokens/native/cs_tokens.dart +253 -0
- package/tokens/provenance.json +52 -0
- package/tokens/spacing.css +34 -0
- package/tokens/tokens.dtcg.json +1222 -0
- package/tokens/tokens.js +436 -0
- package/tokens/tokens.json +434 -0
- package/tokens/typography.css +67 -0
- package/tokens/viewer.html +261 -0
- package/ui_kits/deck/README.md +21 -0
- package/ui_kits/deck/index.html +120 -0
- package/ui_kits/status-hub/README.md +40 -0
- package/ui_kits/status-hub/StatusHub.jsx +270 -0
- package/ui_kits/status-hub/data.js +57 -0
- package/ui_kits/status-hub/identity-lab.html +134 -0
- package/ui_kits/status-hub/index.html +24 -0
- package/ui_kits/status-hub/login.html +65 -0
- package/ui_kits/status-hub/project.html +137 -0
- package/ui_kits/status-hub/settings.html +88 -0
- package/ui_kits/status-hub/status.css +199 -0
- package/ui_kits/website/README.md +36 -0
- package/ui_kits/website/Website.jsx +167 -0
- package/ui_kits/website/careers.html +109 -0
- package/ui_kits/website/chat.html +133 -0
- package/ui_kits/website/copy.js +76 -0
- package/ui_kits/website/index.html +24 -0
- package/ui_kits/website/site.css +121 -0
- package/ui_kits/website/work.html +119 -0
|
Binary file
|
|
@@ -0,0 +1,201 @@
|
|
|
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="Documents · Suite Index & Usage Guide" description="The catalogue of EVERY CyberSkill template (HR suite, legal, finance, sales, product, comms) plus how to use them — employment lifecycle, which docs carry disciplinary force, the house presentation rules, and how to add a new template. A4, print-ready. Content preserved 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 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>· Danh mục & hướng dẫn sử dụng tài liệu</span><span style="margin-left:auto;font-family:var(--cs-font-family-mono)">Số/No. DS-01/2026/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:16px">
|
|
27
|
+
<h1 style="font-size:24px;font-weight:800;color:var(--cs-color-brand-umber);letter-spacing:-0.01em;margin:0 0 3px;line-height:1.25">DANH MỤC & HƯỚNG DẪN SỬ DỤNG TÀI LIỆU</h1>
|
|
28
|
+
<div style="font-size:14px;color:#3F4C55;font-style:italic">Document Suite Index & Usage Guide</div>
|
|
29
|
+
<div style="font-size:12.5px;margin-top:8px">Số / No.: DS-01/2026/CYBERSKILL</div>
|
|
30
|
+
<div style="font-size:12px;margin-top:2px">Phiên bản / Version 2.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:13.5px;line-height:1.5;margin:0 0 2px">Tài liệu này gộp Danh mục và Hướng dẫn sử dụng thành một. Phần I liệt kê mọi mẫu trong hệ thống, chia theo nhóm. Phần II hướng dẫn cách dùng: vòng đời lao động, tài liệu nào có hiệu lực kỷ luật, quy tắc trình bày, và cách thêm mẫu mới. Chi tiết trình bày nằm trong <i>Cẩm nang Trình bày</i>; các dạng khung nằm trong <i>Mẫu tài liệu</i>.</p>
|
|
34
|
+
<p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:0 0 16px">This document merges the Suite Index and the Usage Guide. Part I lists every template in the system, by group. Part II covers how to use them: the employment lifecycle, which documents carry disciplinary force, the presentation rules, and how to add a new template. Presentation detail lives in the <i>Style Guide</i>; the frames live in <i>Document Templates</i>.</p>
|
|
35
|
+
|
|
36
|
+
<h2 class="cs-avoid" style="font-size:16px;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 I · DANH MỤC TÀI LIỆU <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part I · Document catalogue</span></h2>
|
|
37
|
+
<sc-for list="{{ sections }}" as="sec" hint-placeholder-count="10">
|
|
38
|
+
<div class="cs-avoid" style="margin-bottom:14px">
|
|
39
|
+
<h3 style="font-size:13px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px">{{ sec.vi }} <span style="font-weight:400;font-size:11.5px;color:#3F4C55;font-style:italic">{{ sec.en }}</span></h3>
|
|
40
|
+
<table style="width:100%;border-collapse:collapse;font-size:12px">
|
|
41
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:#fff"><th style="text-align:left;padding:5px 9px;font-size:10px">Tài liệu <i style="font-weight:400">Document</i></th><th style="text-align:left;padding:5px 9px;font-size:10px;width:150px">Mẫu <i style="font-weight:400">Template</i></th></tr></thead>
|
|
42
|
+
<tbody>
|
|
43
|
+
<sc-for list="{{ sec.rows }}" as="r" hint-placeholder-count="4">
|
|
44
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px"><span>{{ r.vi }}</span><div style="font-size:10.5px;color:#3F4C55;font-style:italic">{{ r.en }}</div></td><td style="padding:5px 9px;font-family:var(--cs-font-family-mono);font-size:10px">{{ r.code }}</td></tr>
|
|
45
|
+
</sc-for>
|
|
46
|
+
</tbody>
|
|
47
|
+
</table>
|
|
48
|
+
</div>
|
|
49
|
+
</sc-for>
|
|
50
|
+
|
|
51
|
+
<div class="cs-break"></div>
|
|
52
|
+
<h2 class="cs-avoid" style="font-size:16px;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 II · HƯỚNG DẪN SỬ DỤNG <span style="font-weight:400;font-size:12px;color:#3F4C55;font-style:italic">Part II · Usage guide</span></h2>
|
|
53
|
+
|
|
54
|
+
<h3 class="cs-avoid" style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">ĐIỀU 1 · VÒNG ĐỜI LAO ĐỘNG VÀ TÀI LIỆU <span style="font-weight:400;font-size:11.5px;color:#3F4C55;font-style:italic">Article 1 · The employment lifecycle and its documents</span></h3>
|
|
55
|
+
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12px;margin:0 0 18px">
|
|
56
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:#fff"><th style="text-align:left;padding:6px 9px;font-size:10.5px;width:120px">Giai đoạn <i style="font-weight:400">Stage</i></th><th style="text-align:left;padding:6px 9px;font-size:10.5px">Tài liệu ký / ban hành <i style="font-weight:400">Documents</i></th><th style="text-align:left;padding:6px 9px;font-size:10.5px;width:150px">Thời điểm <i style="font-weight:400">When</i></th></tr></thead>
|
|
57
|
+
<tbody>
|
|
58
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px">1. Mời nhận việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Offer</div></td><td style="padding:6px 9px">Thư mời nhận việc + Bản mô tả công việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Offer Letter + Job Description</div></td><td style="padding:6px 9px">Trước khi nhận việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Before joining</div></td></tr>
|
|
59
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px">2. Thử việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Probation</div></td><td style="padding:6px 9px">Hợp đồng thử việc (hoặc điều khoản thử việc trong HĐLĐ)<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Probation Contract (or a probation clause in the Labor Contract)</div></td><td style="padding:6px 9px">Tối đa 60 ngày; 180 ngày với người quản lý<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Max 60 days; 180 days for managers</div></td></tr>
|
|
60
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px">3. Nhận việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Onboarding</div></td><td style="padding:6px 9px">HĐLĐ + Thỏa thuận Bảo mật, KCT & SHTT + Đồng ý xử lý DLCN + Checklist<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Labor Contract + NDNCA & IP + PDPL Consent + Onboarding Checklist</div></td><td style="padding:6px 9px">Ngày đầu tiên<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Day one</div></td></tr>
|
|
61
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px">4. Đãi ngộ<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Rewards</div></td><td style="padding:6px 9px">Phụ lục Đãi ngộ; Thỏa thuận Cổ phần ảo (nếu được cấp)<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Total Rewards Appendix; Phantom Stock Agreement (if granted)</div></td><td style="padding:6px 9px">Khi ký HĐLĐ hoặc khi được cấp<div style="color:#3F4C55;font-style:italic;font-size:10.5px">On hire, or on grant</div></td></tr>
|
|
62
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px">5. Trong quá trình<div style="color:#3F4C55;font-style:italic;font-size:10.5px">In service</div></td><td style="padding:6px 9px">Phụ lục sửa đổi HĐLĐ; Đơn đề nghị của NLĐ (nghỉ phép · làm thêm giờ); Quyết định bổ nhiệm & điều chuyển; Hợp đồng đào tạo<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Amendment Appendix; Employee Request Form (leave · overtime); Appointment & Transfer Decision; Training Agreement</div></td><td style="padding:6px 9px">Theo sự kiện<div style="color:#3F4C55;font-style:italic;font-size:10.5px">As events arise</div></td></tr>
|
|
63
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px">6. Kỷ luật<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Discipline</div></td><td style="padding:6px 9px">Hồ sơ xử lý kỷ luật (4 phần: Phần A → B → C → D, một số hồ sơ duy nhất)<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Disciplinary Case File (4 parts: A → B → C → D, one case number)</div></td><td style="padding:6px 9px">Đúng trình tự Điều 122 BLLĐ<div style="color:#3F4C55;font-style:italic;font-size:10.5px">In the Article 122 order</div></td></tr>
|
|
64
|
+
<tr><td style="padding:6px 9px">7. Chấm dứt<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Exit</div></td><td style="padding:6px 9px">Đơn xin nghỉ việc hoặc Quyết định chấm dứt + Thỏa thuận chấm dứt & bàn giao + Giấy xác nhận quá trình công tác<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Resignation Letter or Decision on Termination + Exit-Handover Agreement + Certificate of Employment</div></td><td style="padding:6px 9px">Thanh toán trong 14 ngày làm việc<div style="color:#3F4C55;font-style:italic;font-size:10.5px">Settle within 14 working days</div></td></tr>
|
|
65
|
+
</tbody>
|
|
66
|
+
</table>
|
|
67
|
+
|
|
68
|
+
<h3 class="cs-avoid" style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">ĐIỀU 2 · TÀI LIỆU NÀO CÓ HIỆU LỰC KỶ LUẬT <span style="font-weight:400;font-size:11.5px;color:#3F4C55;font-style:italic">Article 2 · Which documents carry disciplinary force</span></h3>
|
|
69
|
+
<p style="font-size:13.5px;line-height:1.5;margin:0 0 2px">Chỉ Nội quy lao động đã đăng ký và Bảng xử lý kỷ luật kèm theo mới là căn cứ để xử lý kỷ luật lao động. Bộ Quy tắc Ứng xử và các Chính sách là tài liệu nội bộ: chúng chỉ có hiệu lực kỷ luật khi hành vi tương ứng được dẫn chiếu trong Nội quy hoặc Bảng xử lý kỷ luật.</p>
|
|
70
|
+
<p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:0 0 8px">Only the registered Internal Labor Regulations and their Disciplinary Schedule found labor discipline. The Code of Conduct and the Policies are internal documents: they carry disciplinary force only where the conduct in question is referenced in the Regulations or the Schedule.</p>
|
|
71
|
+
<div class="cs-avoid" style="background:#FBF4E9;border:1px solid var(--cs-color-border-default);border-radius:8px;padding:10px 14px;margin-bottom:18px">
|
|
72
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 2px"><b>Hệ quả thực tế:</b> khi sửa một Chính sách, hãy kiểm tra xem Bảng xử lý kỷ luật có cần cập nhật tương ứng không.</p>
|
|
73
|
+
<p style="font-size:11.5px;line-height:1.45;color:#3F4C55;font-style:italic;margin:0"><b>In practice:</b> when a Policy changes, check whether the Disciplinary Schedule needs the matching update.</p>
|
|
74
|
+
</div>
|
|
75
|
+
|
|
76
|
+
<h3 class="cs-avoid" style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">ĐIỀU 3 · QUY TẮC TRÌNH BÀY BẮT BUỘC <span style="font-weight:400;font-size:11.5px;color:#3F4C55;font-style:italic">Article 3 · The house presentation rules</span></h3>
|
|
77
|
+
<div style="display:grid;gap:6px;margin:0 0 8px">
|
|
78
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">a) Tiếng Việt trước, màu Ink. Tiếng Anh ngay dưới, màu Slate, in nghiêng, nhỏ hơn một cấp.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">a) Vietnamese first, in Ink. English immediately below, in Slate, italic, one size down.</p></div>
|
|
79
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">b) Umber chỉ dùng cho tiêu đề, header/footer và thanh tiêu đề bảng — không dùng cho chữ nội dung.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">b) Umber is for headings, header/footer and table title bars only — never for body text.</p></div>
|
|
80
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">c) Không canh đều hai bên. Toàn bộ tài liệu canh trái.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">c) Never justify. Every document is left-aligned.</p></div>
|
|
81
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">d) Mọi ô cần điền được tô nền vàng.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">d) Every fill-in blank is highlighted yellow.</p></div>
|
|
82
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">e) Mỗi ô chọn, gạch đầu dòng và điểm a) b) c) cách nhau 6 pt.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">e) Tick-boxes, bullets and a) b) c) items are 6 pt clear of each other.</p></div>
|
|
83
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">f) Khối ký chừa khoảng trống 2,5 cm và không bị cắt sang trang.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">f) The signing block leaves 2.5 cm of clear space and never splits across a page.</p></div>
|
|
84
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">g) Không đặt logo trong thân tài liệu — header đã mang dấu hiệu thương hiệu.</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">g) No logo in the body — the header already carries the mark.</p></div>
|
|
85
|
+
<div><p style="font-size:13.5px;line-height:1.5;margin:0">h) Tài liệu mẫu không bao giờ chứa dữ liệu cá nhân thật (BÊN B để trống).</p><p style="font-size:12px;line-height:1.45;color:#3F4C55;font-style:italic;margin:1px 0 0">h) A template never contains real personal data (Party B left blank).</p></div>
|
|
86
|
+
</div>
|
|
87
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 2px">Chi tiết đầy đủ trong Cẩm nang Trình bày Tài liệu. Với tài liệu số (email, màn hình, slide), xem Điều 11 của Cẩm nang.</p>
|
|
88
|
+
<p style="font-size:11.5px;line-height:1.45;color:#3F4C55;font-style:italic;margin:0 0 18px">The full detail is in the Document Style Guide. For digital documents (email, screens, decks), see Article 11 of the Guide.</p>
|
|
89
|
+
|
|
90
|
+
<h3 class="cs-avoid" style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">ĐIỀU 4 · TẠO MỘT MẪU MỚI <span style="font-weight:400;font-size:11.5px;color:#3F4C55;font-style:italic">Article 4 · Creating a new template</span></h3>
|
|
91
|
+
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12.5px">
|
|
92
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:#fff"><th style="text-align:left;padding:6px 9px;font-size:10.5px;width:56px">Bước <i style="font-weight:400">Step</i></th><th style="text-align:left;padding:6px 9px;font-size:10.5px">Việc cần làm <i style="font-weight:400">What to do</i></th></tr></thead>
|
|
93
|
+
<tbody>
|
|
94
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">1</td><td style="padding:6px 9px">Chọn dạng khung phù hợp trong <i>Mẫu tài liệu</i> (Document Templates) — A4 song ngữ, Letter in, email, màn hình, slide hoặc ảnh MXH.<div style="color:#3F4C55;font-style:italic;font-size:11px">Pick the right frame in Document Templates — A4 bilingual, Letter print, email, screen, deck or social image.</div></td></tr>
|
|
95
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">2</td><td style="padding:6px 9px">Tạo thư mục templates/<slug>/ và viết <Slug>.dc.html bằng dc_write; dòng đầu là chú thích @template với name và description.<div style="color:#3F4C55;font-style:italic;font-size:11px">Create templates/<slug>/ and write <Slug>.dc.html via dc_write; the first line is the @template comment with name and description.</div></td></tr>
|
|
96
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">3</td><td style="padding:6px 9px">Nạp hệ thống qua <helmet><script src="./ds-base.js">; tài liệu chính thức đặt khối @page A4/Letter và class cs-desk/cs-sheet.<div style="color:#3F4C55;font-style:italic;font-size:11px">Load the system via <helmet><script src="./ds-base.js">; formal docs set the A4/Letter @page block and cs-desk/cs-sheet.</div></td></tr>
|
|
97
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">4</td><td style="padding:6px 9px">Áp dụng Điều 1–10 Cẩm nang: cặp Việt/Anh (Ink/Slate nghiêng), thanh bảng Umber, ô điền vàng, BÊN B trống, khối ký cs-avoid.<div style="color:#3F4C55;font-style:italic;font-size:11px">Apply Style-Guide Articles 1–10: VN/EN pairs (Ink/Slate italic), umber table bars, yellow blanks, blank Party B, cs-avoid signing block.</div></td></tr>
|
|
98
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">5</td><td style="padding:6px 9px">Thêm tweak chuẩn: Element (15 biến thể Ngũ Hành) và Language (EN·VI). Nhấn dùng token --cs-accent-*.<div style="color:#3F4C55;font-style:italic;font-size:11px">Add the standard tweaks: Element (15 Ngũ Hành variants) and Language (EN·VI). Accents consume --cs-accent-*.</div></td></tr>
|
|
99
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default);background:var(--cs-color-surface-raised)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">6</td><td style="padding:6px 9px">Giữ nguyên nội dung đã được luật sư thẩm định; mọi sửa đổi phải qua rà soát pháp lý.<div style="color:#3F4C55;font-style:italic;font-size:11px">Keep lawyer-validated content verbatim; any change goes through counsel review.</div></td></tr>
|
|
100
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">7</td><td style="padding:6px 9px">Thêm mẫu mới vào Phần I của tài liệu này, và cập nhật README + SKILL.md theo quy tắc mở rộng.<div style="color:#3F4C55;font-style:italic;font-size:11px">Add the new template to Part I here, and update README + SKILL.md per the expansion rule.</div></td></tr>
|
|
101
|
+
<tr><td style="padding:6px 9px;font-family:var(--cs-font-family-mono)">8</td><td style="padding:6px 9px">Chạy check_design_system đến khi sạch, rồi kiểm tra bản in (Print / Save as PDF) không vỡ khối.<div style="color:#3F4C55;font-style:italic;font-size:11px">Run check_design_system until clean, then verify the print output (Print / Save as PDF) has no broken blocks.</div></td></tr>
|
|
102
|
+
</tbody>
|
|
103
|
+
</table>
|
|
104
|
+
|
|
105
|
+
<div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:16px;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<span style="margin-left:auto">Trang / Page 1</span></div>
|
|
106
|
+
</div>
|
|
107
|
+
</div>
|
|
108
|
+
</x-dc>
|
|
109
|
+
<script type="text/x-dc" data-dc-script data-props="{
|
|
110
|
+
"element": {"editor":"enum","options":["Thổ · studio","Thổ · clay","Thổ · sand","Hỏa · ember","Hỏa · lava","Hỏa · plasma","Thủy · river","Thủy · ocean","Thủy · mist","Mộc · leaf","Mộc · bamboo","Mộc · forest","Kim · champagne","Kim · steel","Kim · titanium"],"default":"Thổ · studio","tsType":"string","section":"Element (Ngũ Hành)"}
|
|
111
|
+
}">
|
|
112
|
+
class Component extends DCLogic {
|
|
113
|
+
renderVals() {
|
|
114
|
+
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"]};
|
|
115
|
+
const [elAttr, vaAttr] = EL[this.props.element] || EL["Thổ · studio"];
|
|
116
|
+
const sections = [
|
|
117
|
+
{ vi:"A · Tham chiếu", en:"Reference", rows:[
|
|
118
|
+
{ vi:"Cẩm nang Trình bày Tài liệu", en:"Document Style Guide", code:"doc-style-guide" },
|
|
119
|
+
{ vi:"Danh mục & Hướng dẫn sử dụng (tài liệu này)", en:"Suite Index & Usage Guide (this doc)", code:"doc-suite-index" },
|
|
120
|
+
{ vi:"Mẫu tài liệu — các dạng khung", en:"Document Templates — archetypes", code:"doc-templates" },
|
|
121
|
+
]},
|
|
122
|
+
{ vi:"B · Nhân sự — Tuyển dụng & nhận việc", en:"HR Suite — Hiring & onboarding", rows:[
|
|
123
|
+
{ vi:"Thư mời nhận việc", en:"Employment Offer Letter", code:"vn-offer-letter" },
|
|
124
|
+
{ vi:"Bản mô tả công việc", en:"Job Description", code:"vn-job-description" },
|
|
125
|
+
{ vi:"Hợp đồng thử việc", en:"Probation Contract", code:"vn-probation-contract" },
|
|
126
|
+
{ vi:"Hợp đồng lao động", en:"Labor Contract", code:"vn-labor-contract" },
|
|
127
|
+
{ vi:"Đồng ý xử lý dữ liệu cá nhân (PDPL)", en:"Personal Data Consent", code:"vn-pdpl-consent" },
|
|
128
|
+
{ vi:"Thỏa thuận Bảo mật, KCT & SHTT", en:"NDNCA & IP", code:"vn-ndnca-ip" },
|
|
129
|
+
{ vi:"Danh mục hồ sơ & checklist nhận việc", en:"Onboarding Checklist", code:"vn-onboarding-checklist" },
|
|
130
|
+
{ vi:"Phiếu xác nhận đã nhận tài liệu", en:"Acknowledgement of Receipt", code:"vn-receipt-acknowledgement" },
|
|
131
|
+
{ vi:"Sổ quản lý lao động (bắt buộc — Điều 12 BLLĐ)", en:"Labour Management Book (mandatory)", code:"vn-labour-management-book" },
|
|
132
|
+
{ vi:"Hồ sơ lao động người nước ngoài", en:"Foreign Employee Work Permit Pack", code:"vn-foreign-employee-pack" },
|
|
133
|
+
]},
|
|
134
|
+
{ vi:"C · Nhân sự — Đãi ngộ", en:"HR Suite — Compensation", rows:[
|
|
135
|
+
{ vi:"Quy chế Lương, Thưởng & Phúc lợi (phải công khai)", en:"Compensation & Reward Regulation", code:"vn-compensation-regulation" },
|
|
136
|
+
{ vi:"Thang lương, Bảng lương (bắt buộc — Điều 93)", en:"Salary Scale & Payroll Table (mandatory)", code:"vn-salary-scale" },
|
|
137
|
+
{ vi:"Phụ lục Đãi ngộ & Lộ trình phát triển", en:"Total Rewards Appendix", code:"vn-total-rewards-appendix" },
|
|
138
|
+
{ vi:"Thỏa thuận Cổ phần ảo", en:"Phantom Stock Agreement", code:"vn-phantom-stock" },
|
|
139
|
+
]},
|
|
140
|
+
{ vi:"D · Nhân sự — Nội quy, chính sách & đánh giá", en:"HR Suite — Rules, policies & evaluation", rows:[
|
|
141
|
+
{ vi:"Nội quy lao động (bắt buộc đăng ký — Điều 119)", en:"Internal Labor Regulations (must be registered)", code:"vn-internal-labor-regulations" },
|
|
142
|
+
{ vi:"Bảng xử lý kỷ luật lao động", en:"Disciplinary Schedule", code:"vn-disciplinary-schedule" },
|
|
143
|
+
{ vi:"Quy chế đánh giá mức độ hoàn thành công việc (bắt buộc)", en:"Performance Evaluation Regulation (mandatory)", code:"vn-performance-evaluation-regulation" },
|
|
144
|
+
{ vi:"Quy chế dân chủ ở cơ sở (bắt buộc — NĐ 145)", en:"Grassroots Democracy Regulation (mandatory)", code:"vn-grassroots-democracy" },
|
|
145
|
+
{ vi:"Bộ Quy tắc Ứng xử", en:"Code of Conduct", code:"vn-code-of-conduct" },
|
|
146
|
+
{ vi:"Chính sách An toàn Thông tin & Sử dụng CNTT", en:"Information Security & Acceptable Use", code:"vn-infosec-policy" },
|
|
147
|
+
{ vi:"Chính sách Bảo vệ Dữ liệu Cá nhân", en:"Personal Data Protection Policy", code:"vn-data-protection-policy" },
|
|
148
|
+
{ vi:"Chính sách Làm việc Từ xa & Kết hợp", en:"Remote & Hybrid Work Policy", code:"vn-remote-work-policy" },
|
|
149
|
+
{ vi:"Quy chế Công tác phí & Chi phí", en:"Travel & Expense Policy", code:"vn-travel-expense-policy" },
|
|
150
|
+
]},
|
|
151
|
+
{ vi:"E · Nhân sự — Trong quá trình làm việc", en:"HR Suite — During employment", rows:[
|
|
152
|
+
{ vi:"Phụ lục sửa đổi HĐLĐ", en:"Labor Contract Amendment Appendix", code:"vn-contract-amendment" },
|
|
153
|
+
{ vi:"Đơn đề nghị của người lao động", en:"Employee Request Form", code:"vn-employee-request" },
|
|
154
|
+
{ vi:"Hợp đồng đào tạo & cam kết", en:"Training & Service Commitment", code:"vn-training-commitment" },
|
|
155
|
+
{ vi:"Quyết định bổ nhiệm & điều chuyển", en:"Appointment & Transfer Decision", code:"vn-appointment-transfer" },
|
|
156
|
+
{ vi:"Biểu mẫu đánh giá kết quả công việc", en:"Performance Review Form", code:"vn-performance-review-form" },
|
|
157
|
+
]},
|
|
158
|
+
{ vi:"F · Nhân sự — Kỷ luật & chấm dứt", en:"HR Suite — Discipline & exit", rows:[
|
|
159
|
+
{ vi:"Hồ sơ xử lý kỷ luật lao động (4 phần)", en:"Disciplinary Case File (4 parts)", code:"vn-disciplinary-case-file" },
|
|
160
|
+
{ vi:"Đơn xin nghỉ việc", en:"Resignation Letter", code:"vn-resignation-letter" },
|
|
161
|
+
{ vi:"Quyết định chấm dứt HĐLĐ", en:"Decision on Termination", code:"vn-termination-decision" },
|
|
162
|
+
{ vi:"Thỏa thuận chấm dứt HĐLĐ & bàn giao", en:"Exit-Handover Agreement", code:"vn-exit-handover" },
|
|
163
|
+
{ vi:"Giấy xác nhận quá trình công tác", en:"Certificate of Employment", code:"vn-certificate-of-employment" },
|
|
164
|
+
]},
|
|
165
|
+
{ vi:"G · Ngoài quan hệ lao động", en:"Outside the employment relationship", rows:[
|
|
166
|
+
{ vi:"Thỏa thuận thực tập", en:"Internship Agreement", code:"vn-internship-agreement" },
|
|
167
|
+
{ vi:"Hợp đồng dịch vụ (cộng tác viên)", en:"Independent Contractor Agreement", code:"vn-contractor-agreement" },
|
|
168
|
+
{ vi:"Phụ lục phạm vi công việc (SOW)", en:"Statement of Work Appendix", code:"vn-sow-appendix" },
|
|
169
|
+
{ vi:"Thỏa thuận bảo mật song phương", en:"Mutual NDA", code:"vn-mutual-nda" },
|
|
170
|
+
]},
|
|
171
|
+
{ vi:"H · Pháp lý, tài chính & bán hàng", en:"Legal, finance & sales (client-facing)", rows:[
|
|
172
|
+
{ vi:"Hợp đồng dịch vụ khung", en:"Master Services Agreement", code:"legal-msa" },
|
|
173
|
+
{ vi:"Bản mô tả công việc (client SOW)", en:"Statement of Work", code:"legal-sow" },
|
|
174
|
+
{ vi:"Hóa đơn", en:"Invoice", code:"finance-invoice" },
|
|
175
|
+
{ vi:"Báo giá", en:"Quote", code:"finance-quote" },
|
|
176
|
+
{ vi:"Báo cáo chi phí", en:"Expense Report", code:"finance-expense-report" },
|
|
177
|
+
{ vi:"Thư nhắc thanh toán", en:"Dunning Email", code:"finance-dunning-email" },
|
|
178
|
+
{ vi:"Tờ giới thiệu một trang", en:"Sales One-pager", code:"sales-one-pager" },
|
|
179
|
+
{ vi:"Bộ slide đề xuất", en:"Proposal Deck", code:"sales-proposal-deck" },
|
|
180
|
+
]},
|
|
181
|
+
{ vi:"I · Sản phẩm & màn hình", en:"Product & screens", rows:[
|
|
182
|
+
{ vi:"Trang marketing", en:"Marketing page", code:"marketing-page" },
|
|
183
|
+
{ vi:"Bảng điều khiển", en:"Dashboard", code:"dashboard" },
|
|
184
|
+
{ vi:"Đăng nhập · Cài đặt · App shell", en:"Auth · Settings · App shell", code:"auth · settings · app-shell" },
|
|
185
|
+
{ vi:"Bài viết · Slide 16:9", en:"Article · Slide deck", code:"article · slide-deck" },
|
|
186
|
+
]},
|
|
187
|
+
{ vi:"J · Nhóm & truyền thông", en:"Team & communications", rows:[
|
|
188
|
+
{ vi:"Kỹ thuật: release · sự cố · RFC · retro", en:"Tech: release · incident · rfc · retro", code:"tech-*" },
|
|
189
|
+
{ vi:"Ban lãnh đạo: báo cáo · slide · memo · biên bản · nghị quyết⚠ · cập nhật NĐT", en:"Board: report · deck · memo · minutes · resolution⚠ · investor-update", code:"bod-*" },
|
|
190
|
+
{ vi:"Nhân sự (EN-first): thông báo · phỏng vấn · đánh giá · offboarding · PIP⚠", en:"HR (EN-first): announcement · interview-kit · perf-review · offboarding · PIP⚠", code:"hr-*" },
|
|
191
|
+
{ vi:"Marketing: brief · newsletter · launch · case study · press release · social kit", en:"Marketing: brief · newsletter · launch · case-study · press-release · social-kit", code:"marketing-*" },
|
|
192
|
+
{ vi:"Delivery & Culture: kickoff · status · change note · runbook · QBR · thư mời sự kiện", en:"Delivery & Culture: kickoff · status · change-note · runbook · qbr · event-invite", code:"delivery-* · culture-*" },
|
|
193
|
+
{ vi:"Team & Email", en:"Meeting agenda · Email", code:"team-meeting-agenda · email" },
|
|
194
|
+
]},
|
|
195
|
+
];
|
|
196
|
+
return { elAttr, vaAttr, sections };
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
</script>
|
|
200
|
+
</body>
|
|
201
|
+
</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
|
+
})();
|