@m3ui-vue/m3ui-vue 0.1.11 → 0.2.1

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 (98) hide show
  1. package/dist/{MMenuItem-_n5OG5MT.js → MMenuItem-DpoEsH91.js} +215 -122
  2. package/dist/MMenuItem-DpoEsH91.js.map +1 -0
  3. package/dist/components/MAlert.vue.d.ts +1 -0
  4. package/dist/components/MButton.vue.d.ts +1 -1
  5. package/dist/components/MCalendar.vue.d.ts +3 -0
  6. package/dist/components/MCarousel.vue.d.ts +36 -0
  7. package/dist/components/MChip.vue.d.ts +3 -3
  8. package/dist/components/MCommandPalette.vue.d.ts +3 -2
  9. package/dist/components/MConfirmDialog.vue.d.ts +0 -2
  10. package/dist/components/MDataTable.vue.d.ts +25 -2
  11. package/dist/components/MDatePicker.vue.d.ts +2 -0
  12. package/dist/components/MDateRangePicker.vue.d.ts +5 -0
  13. package/dist/components/MDialog.vue.d.ts +1 -0
  14. package/dist/components/MFab.vue.d.ts +1 -1
  15. package/dist/components/MFileUpload.vue.d.ts +15 -1
  16. package/dist/components/MFlex.vue.d.ts +1 -1
  17. package/dist/components/MInfiniteScroll.vue.d.ts +7 -5
  18. package/dist/components/MMaskField.vue.d.ts +24 -0
  19. package/dist/components/MMultiSelect.vue.d.ts +20 -6
  20. package/dist/components/MNavigationDrawer.vue.d.ts +9 -3
  21. package/dist/components/MNumberField.vue.d.ts +27 -0
  22. package/dist/components/MRichTextEditor.vue.d.ts +28 -1
  23. package/dist/components/MScheduler.vue.d.ts +5 -0
  24. package/dist/components/MSelect.vue.d.ts +12 -9
  25. package/dist/components/MSnackbar.vue.d.ts +4 -1
  26. package/dist/components/MSpinner.vue.d.ts +1 -0
  27. package/dist/components/MSplitter.vue.d.ts +1 -1
  28. package/dist/components/MSpotlightSearch.vue.d.ts +3 -2
  29. package/dist/components/MStack.vue.d.ts +1 -1
  30. package/dist/components/MTable.vue.d.ts +3 -2
  31. package/dist/components/MTextField.vue.d.ts +2 -5
  32. package/dist/components/MTimePicker.vue.d.ts +1 -0
  33. package/dist/components/MTour.vue.d.ts +3 -0
  34. package/dist/components/MTransferList.vue.d.ts +19 -3
  35. package/dist/components/MTree.vue.d.ts +1 -1
  36. package/dist/components/_MDrawerItemList.vue.d.ts +57 -0
  37. package/dist/composables/useLocale.d.ts +74 -0
  38. package/dist/index.d.ts +10 -1
  39. package/dist/locales/de.d.ts +2 -0
  40. package/dist/locales/es.d.ts +2 -0
  41. package/dist/locales/fr.d.ts +2 -0
  42. package/dist/locales/index.d.ts +8 -0
  43. package/dist/locales/ja.d.ts +2 -0
  44. package/dist/locales/ko.d.ts +2 -0
  45. package/dist/locales/pt.d.ts +2 -0
  46. package/dist/locales/zh.d.ts +2 -0
  47. package/dist/m3ui-vue.css +1 -1
  48. package/dist/m3ui.js +3278 -2489
  49. package/dist/m3ui.js.map +1 -1
  50. package/dist/plugin.d.ts +3 -1
  51. package/dist/rich-text-editor.d.ts +1 -0
  52. package/dist/rich-text-editor.js +141 -113
  53. package/dist/rich-text-editor.js.map +1 -1
  54. package/dist/styles/palettes.css +660 -0
  55. package/dist/styles.css +1 -1
  56. package/package.json +6 -2
  57. package/src/components/MAlert.vue +5 -1
  58. package/src/components/MCalendar.vue +14 -5
  59. package/src/components/MCarousel.vue +203 -0
  60. package/src/components/MCommandPalette.vue +11 -7
  61. package/src/components/MConfirmDialog.vue +6 -5
  62. package/src/components/MDataTable.vue +78 -14
  63. package/src/components/MDatePicker.vue +11 -4
  64. package/src/components/MDateRangePicker.vue +15 -5
  65. package/src/components/MDialog.vue +5 -1
  66. package/src/components/MFileUpload.vue +22 -10
  67. package/src/components/MInfiniteScroll.vue +14 -9
  68. package/src/components/MMaskField.vue +198 -0
  69. package/src/components/MMultiSelect.vue +53 -24
  70. package/src/components/MNavigationDrawer.vue +282 -107
  71. package/src/components/MNumberField.vue +176 -0
  72. package/src/components/MRichTextEditor.vue +95 -34
  73. package/src/components/MScheduler.vue +12 -4
  74. package/src/components/MSelect.vue +41 -14
  75. package/src/components/MSnackbar.vue +8 -1
  76. package/src/components/MSpinner.vue +5 -1
  77. package/src/components/MSpotlightSearch.vue +11 -7
  78. package/src/components/MTable.vue +8 -4
  79. package/src/components/MTextField.vue +19 -10
  80. package/src/components/MTimePicker.vue +5 -1
  81. package/src/components/MTour.vue +12 -9
  82. package/src/components/MTransferList.vue +30 -15
  83. package/src/components/_MDrawerItemList.vue +105 -0
  84. package/src/composables/useColorPalette.ts +30 -20
  85. package/src/composables/useLocale.ts +181 -0
  86. package/src/index.ts +10 -1
  87. package/src/locales/de.ts +93 -0
  88. package/src/locales/es.ts +93 -0
  89. package/src/locales/fr.ts +93 -0
  90. package/src/locales/index.ts +8 -0
  91. package/src/locales/ja.ts +93 -0
  92. package/src/locales/ko.ts +93 -0
  93. package/src/locales/pt.ts +93 -0
  94. package/src/locales/zh.ts +93 -0
  95. package/src/plugin.ts +7 -1
  96. package/src/rich-text-editor.ts +1 -0
  97. package/src/styles/palettes.css +660 -0
  98. package/dist/MMenuItem-_n5OG5MT.js.map +0 -1
@@ -1,8 +1,36 @@
1
+ export interface RichTextEditorLabels {
2
+ bold?: string;
3
+ italic?: string;
4
+ underline?: string;
5
+ strikethrough?: string;
6
+ highlight?: string;
7
+ bulletList?: string;
8
+ orderedList?: string;
9
+ blockquote?: string;
10
+ code?: string;
11
+ alignLeft?: string;
12
+ alignCenter?: string;
13
+ alignRight?: string;
14
+ undo?: string;
15
+ redo?: string;
16
+ link?: string;
17
+ image?: string;
18
+ paragraph?: string;
19
+ heading1?: string;
20
+ heading2?: string;
21
+ heading3?: string;
22
+ insertLink?: string;
23
+ insertImage?: string;
24
+ imageUrlLabel?: string;
25
+ cancel?: string;
26
+ insert?: string;
27
+ }
1
28
  type __VLS_Props = {
2
29
  modelValue: string;
3
30
  placeholder?: string;
4
31
  disabled?: boolean;
5
32
  minHeight?: string;
33
+ labels?: RichTextEditorLabels;
6
34
  };
7
35
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
36
  "update:modelValue": (args_0: string) => any;
@@ -10,7 +38,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
10
38
  "onUpdate:modelValue"?: ((args_0: string) => any) | undefined;
11
39
  }>, {
12
40
  minHeight: string;
13
- placeholder: string;
14
41
  disabled: boolean;
15
42
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
43
  declare const _default: typeof __VLS_export;
@@ -11,6 +11,11 @@ type __VLS_Props = {
11
11
  startHour?: number;
12
12
  endHour?: number;
13
13
  locale?: string;
14
+ prevLabel?: string;
15
+ nextLabel?: string;
16
+ todayLabel?: string;
17
+ dayViewLabel?: string;
18
+ weekViewLabel?: string;
14
19
  };
15
20
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
16
21
  eventClick: (args_0: SchedulerEvent) => any;
@@ -1,10 +1,11 @@
1
+ export interface SelectOption {
2
+ label: string;
3
+ value: unknown;
4
+ disabled?: boolean;
5
+ }
1
6
  type __VLS_Props = {
2
- modelValue: string | number | null;
3
- options: {
4
- label: string;
5
- value: string | number;
6
- disabled?: boolean;
7
- }[];
7
+ modelValue: unknown;
8
+ options: SelectOption[];
8
9
  label?: string;
9
10
  placeholder?: string;
10
11
  variant?: 'filled' | 'outlined';
@@ -13,17 +14,19 @@ type __VLS_Props = {
13
14
  hint?: string;
14
15
  required?: boolean;
15
16
  leadingIcon?: string;
17
+ clearable?: boolean;
16
18
  fieldBg?: string;
17
19
  };
18
20
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
- "update:modelValue": (args_0: string | number) => any;
21
+ "update:modelValue": (args_0: unknown) => any;
20
22
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
21
- "onUpdate:modelValue"?: ((args_0: string | number) => any) | undefined;
23
+ "onUpdate:modelValue"?: ((args_0: unknown) => any) | undefined;
22
24
  }>, {
23
25
  required: boolean;
24
- modelValue: string | number | null;
26
+ modelValue: undefined;
25
27
  variant: "filled" | "outlined";
26
28
  disabled: boolean;
29
+ clearable: boolean;
27
30
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
31
  declare const _default: typeof __VLS_export;
29
32
  export default _default;
@@ -1,3 +1,6 @@
1
- declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1
+ type __VLS_Props = {
2
+ closeAriaLabel?: string;
3
+ };
4
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
2
5
  declare const _default: typeof __VLS_export;
3
6
  export default _default;
@@ -1,6 +1,7 @@
1
1
  type __VLS_Props = {
2
2
  size?: number;
3
3
  wavy?: boolean;
4
+ label?: string;
4
5
  };
5
6
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
7
  size: number;
@@ -12,8 +12,8 @@ type __VLS_Slots = {} & {
12
12
  };
13
13
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
14
14
  max: number;
15
- min: number;
16
15
  direction: "horizontal" | "vertical";
16
+ min: number;
17
17
  initialSplit: number;
18
18
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
19
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -13,6 +13,9 @@ type __VLS_Props = {
13
13
  noResultsText?: string;
14
14
  hotkey?: string;
15
15
  debounce?: number;
16
+ navigateHint?: string;
17
+ openHint?: string;
18
+ closeHint?: string;
16
19
  };
17
20
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
21
  search: (args_0: string) => any;
@@ -23,9 +26,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
23
26
  onSelect?: ((args_0: SpotlightResult) => any) | undefined;
24
27
  "onUpdate:modelValue"?: ((args_0: boolean) => any) | undefined;
25
28
  }>, {
26
- placeholder: string;
27
29
  loading: boolean;
28
- noResultsText: string;
29
30
  hotkey: string;
30
31
  results: SpotlightResult[];
31
32
  debounce: number;
@@ -13,8 +13,8 @@ type __VLS_Slots = {} & {
13
13
  };
14
14
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
15
15
  wrap: boolean;
16
- inline: boolean;
17
16
  direction: "column" | "row";
17
+ inline: boolean;
18
18
  align: "start" | "center" | "end" | "stretch" | "baseline";
19
19
  justify: "start" | "center" | "end" | "between" | "around" | "evenly";
20
20
  gap: "none" | "xs" | "sm" | "md" | "lg" | "xl";
@@ -26,6 +26,8 @@ type __VLS_Props = {
26
26
  serverSide?: boolean;
27
27
  total?: number;
28
28
  page?: number;
29
+ searchPlaceholder?: string;
30
+ selectedText?: string;
29
31
  };
30
32
  declare var __VLS_11: {}, __VLS_41: {}, __VLS_56: `cell-${string}`, __VLS_57: {
31
33
  row: Record<string, any>;
@@ -54,10 +56,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
54
56
  }>, {
55
57
  modelValue: Record<string, any>[];
56
58
  loading: boolean;
59
+ total: number;
57
60
  page: number;
58
61
  perPage: number;
59
- total: number;
60
- emptyText: string;
61
62
  rowKey: string;
62
63
  selectable: boolean;
63
64
  searchable: boolean;
@@ -11,11 +11,7 @@ type __VLS_Props = {
11
11
  rows?: number;
12
12
  autocomplete?: string;
13
13
  leadingIcon?: string;
14
- /**
15
- * Background color behind the label in outlined variant.
16
- * Defaults to the page surface color. Pass e.g. 'var(--color-surface-container-low)'
17
- * when the input is inside a card.
18
- */
14
+ clearable?: boolean;
19
15
  fieldBg?: string;
20
16
  };
21
17
  declare var __VLS_6: {};
@@ -30,6 +26,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
30
26
  type: string;
31
27
  variant: "filled" | "outlined";
32
28
  rows: number;
29
+ clearable: boolean;
33
30
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
34
31
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
35
32
  declare const _default: typeof __VLS_export;
@@ -1,6 +1,7 @@
1
1
  type __VLS_Props = {
2
2
  modelValue: string | null;
3
3
  label?: string;
4
+ placeholder?: string;
4
5
  disabled?: boolean;
5
6
  error?: string;
6
7
  hint?: string;
@@ -7,6 +7,9 @@ export interface TourStep {
7
7
  type __VLS_Props = {
8
8
  modelValue: boolean;
9
9
  steps: TourStep[];
10
+ prevLabel?: string;
11
+ nextLabel?: string;
12
+ finishLabel?: string;
10
13
  };
11
14
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
12
15
  "update:modelValue": (args_0: boolean) => any;
@@ -9,15 +9,31 @@ type __VLS_Props = {
9
9
  sourceTitle?: string;
10
10
  targetTitle?: string;
11
11
  filterable?: boolean;
12
+ searchPlaceholder?: string;
13
+ emptyText?: string;
14
+ moveAllRightLabel?: string;
15
+ moveRightLabel?: string;
16
+ moveLeftLabel?: string;
17
+ moveAllLeftLabel?: string;
12
18
  };
13
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
+ declare var __VLS_13: {}, __VLS_55: {};
20
+ type __VLS_Slots = {} & {
21
+ 'source-empty'?: (props: typeof __VLS_13) => any;
22
+ } & {
23
+ 'target-empty'?: (props: typeof __VLS_55) => any;
24
+ };
25
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
14
26
  "update:modelValue": (args_0: (string | number)[]) => any;
15
27
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
28
  "onUpdate:modelValue"?: ((args_0: (string | number)[]) => any) | undefined;
17
29
  }>, {
18
- sourceTitle: string;
19
- targetTitle: string;
20
30
  filterable: boolean;
21
31
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
32
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
22
33
  declare const _default: typeof __VLS_export;
23
34
  export default _default;
35
+ type __VLS_WithSlots<T, S> = T & {
36
+ new (): {
37
+ $slots: S;
38
+ };
39
+ };
@@ -52,8 +52,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
52
52
  "onUpdate:checked"?: ((args_0: (string | number)[]) => any) | undefined;
53
53
  "onNode-click"?: ((args_0: TreeNode) => any) | undefined;
54
54
  }>, {
55
- checked: (string | number)[];
56
55
  selected: string | number | null;
56
+ checked: (string | number)[];
57
57
  emptyText: string;
58
58
  checkable: boolean;
59
59
  defaultExpanded: (string | number)[] | "all" | "none";
@@ -0,0 +1,57 @@
1
+ import { type PropType, type Ref } from 'vue';
2
+ import type { DrawerItem } from './MNavigationDrawer.vue';
3
+ declare const _default: typeof __VLS_export;
4
+ export default _default;
5
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6
+ items: {
7
+ type: PropType<DrawerItem[]>;
8
+ required: true;
9
+ };
10
+ selected: {
11
+ type: PropType<string | number>;
12
+ default: undefined;
13
+ };
14
+ depth: {
15
+ type: NumberConstructor;
16
+ default: number;
17
+ };
18
+ }>, {
19
+ openItems: Record<string | number, boolean>;
20
+ toggleItem: (item: DrawerItem) => void;
21
+ selectItem: (item: DrawerItem) => void;
22
+ collapsed: Ref<boolean, boolean>;
23
+ }, {}, {}, {
24
+ itemTag(item: DrawerItem): "button" | "RouterLink";
25
+ onClick(item: DrawerItem): void;
26
+ itemStyle(item: DrawerItem): Record<string, string>;
27
+ iSize(item: DrawerItem): number;
28
+ lClass(item: DrawerItem): string;
29
+ onEnter(el: Element, done: () => void): void;
30
+ onLeave(el: Element, done: () => void): void;
31
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
32
+ items: {
33
+ type: PropType<DrawerItem[]>;
34
+ required: true;
35
+ };
36
+ selected: {
37
+ type: PropType<string | number>;
38
+ default: undefined;
39
+ };
40
+ depth: {
41
+ type: NumberConstructor;
42
+ default: number;
43
+ };
44
+ }>> & Readonly<{}>, {
45
+ selected: string | number;
46
+ depth: number;
47
+ }, {}, {
48
+ MIcon: import("vue").DefineComponent<{
49
+ name: string;
50
+ size?: number;
51
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
52
+ name: string;
53
+ size?: number;
54
+ }> & Readonly<{}>, {
55
+ size: number;
56
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
57
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -0,0 +1,74 @@
1
+ import { type InjectionKey } from 'vue';
2
+ export interface M3Locale {
3
+ search: string;
4
+ noResults: string;
5
+ close: string;
6
+ cancel: string;
7
+ confirm: string;
8
+ loading: string;
9
+ previous: string;
10
+ next: string;
11
+ today: string;
12
+ more: string;
13
+ selectedCount: string;
14
+ recordCount: string;
15
+ expand: string;
16
+ columns: string;
17
+ exportCsv: string;
18
+ noGroup: string;
19
+ finish: string;
20
+ dropText: string;
21
+ selectText: string;
22
+ maxSizePrefix: string;
23
+ remove: string;
24
+ selectDate: string;
25
+ selectTime: string;
26
+ selectRange: string;
27
+ pickStart: string;
28
+ pickEnd: string;
29
+ previousMonth: string;
30
+ nextMonth: string;
31
+ dayView: string;
32
+ weekView: string;
33
+ available: string;
34
+ selected: string;
35
+ noItems: string;
36
+ moveAllRight: string;
37
+ moveRight: string;
38
+ moveLeft: string;
39
+ moveAllLeft: string;
40
+ searchCommand: string;
41
+ navigateHint: string;
42
+ selectHint: string;
43
+ openHint: string;
44
+ closeHint: string;
45
+ loadingMore: string;
46
+ noMoreItems: string;
47
+ bold: string;
48
+ italic: string;
49
+ underline: string;
50
+ strikethrough: string;
51
+ highlight: string;
52
+ bulletList: string;
53
+ orderedList: string;
54
+ blockquote: string;
55
+ code: string;
56
+ alignLeft: string;
57
+ alignCenter: string;
58
+ alignRight: string;
59
+ undo: string;
60
+ redo: string;
61
+ link: string;
62
+ image: string;
63
+ paragraph: string;
64
+ heading1: string;
65
+ heading2: string;
66
+ heading3: string;
67
+ insertLink: string;
68
+ insertImage: string;
69
+ imageUrlLabel: string;
70
+ insert: string;
71
+ }
72
+ export declare const defaultLocale: M3Locale;
73
+ export declare const M3_LOCALE_KEY: InjectionKey<Partial<M3Locale>>;
74
+ export declare function useLocale(): M3Locale;
package/dist/index.d.ts CHANGED
@@ -7,6 +7,8 @@ export type { Palette } from './composables/useColorPalette';
7
7
  export { useToast } from './composables/useToast';
8
8
  export type { Toast, ToastVariant, ToastPosition, ToastAction, ToastOptions } from './composables/useToast';
9
9
  export { useFieldBg } from './composables/useFieldBg';
10
+ export { useLocale, defaultLocale } from './composables/useLocale';
11
+ export type { M3Locale } from './composables/useLocale';
10
12
  export { default as MAbsolute } from './components/MAbsolute.vue';
11
13
  export { default as MAlert } from './components/MAlert.vue';
12
14
  export { default as MAppBar } from './components/MAppBar.vue';
@@ -20,6 +22,7 @@ export { default as MBreadcrumbs } from './components/MBreadcrumbs.vue';
20
22
  export { default as MButton } from './components/MButton.vue';
21
23
  export { default as MCalendar } from './components/MCalendar.vue';
22
24
  export { default as MCard } from './components/MCard.vue';
25
+ export { default as MCarousel } from './components/MCarousel.vue';
23
26
  export { default as MCenter } from './components/MCenter.vue';
24
27
  export { default as MCheckbox } from './components/MCheckbox.vue';
25
28
  export { default as MChip } from './components/MChip.vue';
@@ -58,8 +61,12 @@ export { default as MLoadingOverlay } from './components/MLoadingOverlay.vue';
58
61
  export { default as MMasonry } from './components/MMasonry.vue';
59
62
  export { default as MMenu } from './components/MMenu.vue';
60
63
  export { default as MMenuItem } from './components/MMenuItem.vue';
64
+ export { default as MMaskField } from './components/MMaskField.vue';
65
+ export type { MaskPreset } from './components/MMaskField.vue';
61
66
  export { default as MMultiSelect } from './components/MMultiSelect.vue';
67
+ export type { MultiSelectOption } from './components/MMultiSelect.vue';
62
68
  export { default as MNavigationBar } from './components/MNavigationBar.vue';
69
+ export { default as MNumberField } from './components/MNumberField.vue';
63
70
  export { default as MNavigationDrawer } from './components/MNavigationDrawer.vue';
64
71
  export { default as MNavigationRail } from './components/MNavigationRail.vue';
65
72
  export { default as MOverlay } from './components/MOverlay.vue';
@@ -76,6 +83,7 @@ export { default as MScrollable } from './components/MScrollable.vue';
76
83
  export { default as MSection } from './components/MSection.vue';
77
84
  export { default as MSegmentedButton } from './components/MSegmentedButton.vue';
78
85
  export { default as MSelect } from './components/MSelect.vue';
86
+ export type { SelectOption } from './components/MSelect.vue';
79
87
  export { default as MSideSheet } from './components/MSideSheet.vue';
80
88
  export { default as MSkeleton } from './components/MSkeleton.vue';
81
89
  export { default as MSlider } from './components/MSlider.vue';
@@ -109,8 +117,9 @@ export { emojiCategories, allEmojis, randomEmoji } from './data/emojis';
109
117
  export type { Placement } from './components/MAbsolute.vue';
110
118
  export type { BadgePosition, BadgeOverlap } from './components/MBadge.vue';
111
119
  export type { CalendarEvent } from './components/MCalendar.vue';
120
+ export type { CarouselItem } from './components/MCarousel.vue';
112
121
  export type { ContextMenuItem } from './components/MContextMenu.vue';
113
- export type { DataTableColumn } from './components/MDataTable.vue';
122
+ export type { DataTableColumn, DataTableFetchParams } from './components/MDataTable.vue';
114
123
  export type { DateRange } from './components/MDateRangePicker.vue';
115
124
  export type { DragDropItem } from './components/MDragDropList.vue';
116
125
  export type { UploadFile } from './components/MFileUpload.vue';
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const deLocale: M3Locale;
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const esLocale: M3Locale;
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const frLocale: M3Locale;
@@ -0,0 +1,8 @@
1
+ export { esLocale } from './es';
2
+ export { frLocale } from './fr';
3
+ export { ptLocale } from './pt';
4
+ export { deLocale } from './de';
5
+ export { jaLocale } from './ja';
6
+ export { zhLocale } from './zh';
7
+ export { koLocale } from './ko';
8
+ export type { M3Locale } from '../composables/useLocale';
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const jaLocale: M3Locale;
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const koLocale: M3Locale;
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const ptLocale: M3Locale;
@@ -0,0 +1,2 @@
1
+ import type { M3Locale } from '../composables/useLocale';
2
+ export declare const zhLocale: M3Locale;
package/dist/m3ui-vue.css CHANGED
@@ -1,2 +1,2 @@
1
- .code-editor-container[data-v-b0a66a4b] .cm-editor{height:100%;min-height:inherit;font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:.8125rem;line-height:1.6}.code-editor-container[data-v-b0a66a4b] .cm-editor.cm-focused{outline:none}.code-editor-container[data-v-b0a66a4b] .cm-scroller{min-height:inherit}.code-editor-container[data-v-b0a66a4b] .cm-content{padding:12px 0}.code-editor-container[data-v-b0a66a4b] .cm-line{padding:0 16px}.code-editor-container[data-v-b0a66a4b] .cm-gutters{background:var(--color-surface-container);border-right:1px solid var(--color-outline-variant);color:var(--color-outline);padding:0 4px;font-size:.75rem}.code-editor-container[data-v-b0a66a4b] .cm-activeLineGutter{background:var(--color-surface-container-high);color:var(--color-on-surface-variant)}.code-editor-container[data-v-b0a66a4b] .cm-activeLine{background:var(--color-surface-container-lowest)}.code-editor-container[data-v-b0a66a4b] .cm-selectionBackground{background:var(--color-primary-container)!important}.code-editor-container[data-v-b0a66a4b] .cm-cursor{border-left-color:var(--color-primary);border-left-width:2px}.code-editor-container[data-v-b0a66a4b] .cm-matchingBracket{background:var(--color-tertiary-container);color:var(--color-on-tertiary-container);border-radius:2px}.code-editor-container[data-v-b0a66a4b] .cm-foldGutter span{color:var(--color-on-surface-variant)}@keyframes m3-wavy-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes m3-wavy-travel{0%{stroke-dashoffset:0}to{stroke-dashoffset:calc(var(--m3-wave-len) * -1px)}}@media (prefers-reduced-motion:reduce){.animate-\[m3-wavy-spin_2\.8s_linear_infinite\]{animation:2.8s linear infinite m3-wavy-spin}.animate-\[m3-wavy-travel_2s_linear_infinite\]{animation:none!important}}.m3-dialog-enter-active[data-v-e7dfca29],.m3-dialog-leave-active[data-v-e7dfca29]{transition:opacity .15s}.m3-dialog-enter-from[data-v-e7dfca29],.m3-dialog-leave-to[data-v-e7dfca29]{opacity:0}.m3-dialog-enter-active .dialog-box[data-v-e7dfca29],.m3-dialog-leave-active .dialog-box[data-v-e7dfca29]{transition:transform .15s}.m3-dialog-enter-from .dialog-box[data-v-e7dfca29],.m3-dialog-leave-to .dialog-box[data-v-e7dfca29]{transform:scale(.95)}.bs-scrim[data-v-5b1fb748]{transition:opacity .3s}.bs-enter-from .bs-scrim[data-v-5b1fb748],.bs-leave-to .bs-scrim[data-v-5b1fb748]{opacity:0}.bs-panel[data-v-5b1fb748]{transition:transform .32s cubic-bezier(.2,0,0,1),opacity .24s}.bs-enter-from .bs-panel[data-v-5b1fb748]{opacity:0;transform:translateY(40%)}.bs-leave-to .bs-panel[data-v-5b1fb748]{opacity:0;transform:translateY(100%)!important}.hue-slider[data-v-872ab758]{background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.hue-slider[data-v-872ab758]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0006}.hue-slider[data-v-872ab758]::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0006}.m3-cmd-enter-active[data-v-da578f14],.m3-cmd-leave-active[data-v-da578f14]{transition:opacity .15s}.m3-cmd-enter-from[data-v-da578f14],.m3-cmd-leave-to[data-v-da578f14]{opacity:0}.m3-cmd-enter-active .cmd-box[data-v-da578f14],.m3-cmd-leave-active .cmd-box[data-v-da578f14]{transition:transform .15s}.m3-cmd-enter-from .cmd-box[data-v-da578f14],.m3-cmd-leave-to .cmd-box[data-v-da578f14]{transform:scale(.95)translateY(-10px)}.dt-expand-grid[data-v-fcd73278]{grid-template-rows:0fr;transition:grid-template-rows .25s cubic-bezier(.2,0,0,1);display:grid}.dt-expand-grid.dt-expand-open[data-v-fcd73278]{grid-template-rows:1fr}.dt-expand-body[data-v-fcd73278]{min-height:0;overflow:hidden}.expand-grid[data-v-89e4475b]{grid-template-rows:1fr;display:grid}.expand-body[data-v-89e4475b]{min-height:0;overflow:hidden}.expand-enter-active[data-v-89e4475b]{transition:grid-template-rows .28s cubic-bezier(.2,0,0,1)}.expand-enter-active>.expand-body[data-v-89e4475b]{transition:opacity .22s}.expand-enter-from[data-v-89e4475b]{grid-template-rows:0fr}.expand-enter-from>.expand-body[data-v-89e4475b]{opacity:0}.expand-leave-active[data-v-89e4475b]{transition:grid-template-rows .22s cubic-bezier(.4,0,1,1)}.expand-leave-active>.expand-body[data-v-89e4475b]{transition:opacity .15s}.expand-leave-to[data-v-89e4475b]{grid-template-rows:0fr}.expand-leave-to>.expand-body[data-v-89e4475b]{opacity:0}.m3-file-enter-active[data-v-34a862f0],.m3-file-leave-active[data-v-34a862f0]{transition:all .2s}.m3-file-enter-from[data-v-34a862f0],.m3-file-leave-to[data-v-34a862f0]{opacity:0;transform:translateY(-8px)}.mli-expand-grid{grid-template-rows:1fr;display:grid}.mli-expand-body{min-height:0;padding-left:2rem;overflow:hidden}.mli-expand-enter-active{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1)}.mli-expand-enter-active>.mli-expand-body{transition:opacity .2s cubic-bezier(.2,0,0,1) 80ms}.mli-expand-enter-from{grid-template-rows:0fr}.mli-expand-enter-from>.mli-expand-body{opacity:0}.mli-expand-leave-active{transition:grid-template-rows .25s cubic-bezier(.4,0,1,1)}.mli-expand-leave-active>.mli-expand-body{transition:opacity .12s cubic-bezier(.4,0,1,1)}.mli-expand-leave-to{grid-template-rows:0fr}.mli-expand-leave-to>.mli-expand-body{opacity:0}.nd-scrim[data-v-ae3b65c3]{transition:opacity .28s}.nd-enter-from .nd-scrim[data-v-ae3b65c3],.nd-leave-to .nd-scrim[data-v-ae3b65c3]{opacity:0}.nd-panel[data-v-ae3b65c3]{transition:transform .3s cubic-bezier(.2,0,0,1)}.nd-enter-from .nd-panel[data-v-ae3b65c3],.nd-leave-to .nd-panel[data-v-ae3b65c3]{transform:translate(-100%)}.nd-section-grid[data-v-ae3b65c3]{grid-template-rows:1fr;display:grid}.nd-section-body[data-v-ae3b65c3]{min-height:0;overflow:hidden}.nd-section-enter-active[data-v-ae3b65c3]{transition:grid-template-rows .35s cubic-bezier(.2,0,0,1)}.nd-section-enter-active>.nd-section-body[data-v-ae3b65c3]{transition:opacity .25s cubic-bezier(.2,0,0,1) 80ms}.nd-section-enter-from[data-v-ae3b65c3]{grid-template-rows:0fr}.nd-section-enter-from>.nd-section-body[data-v-ae3b65c3]{opacity:0}.nd-section-leave-active[data-v-ae3b65c3]{transition:grid-template-rows .28s cubic-bezier(.4,0,1,1)}.nd-section-leave-active>.nd-section-body[data-v-ae3b65c3]{transition:opacity .15s cubic-bezier(.4,0,1,1)}.nd-section-leave-to[data-v-ae3b65c3]{grid-template-rows:0fr}.nd-section-leave-to>.nd-section-body[data-v-ae3b65c3]{opacity:0}.nd-inline[data-v-ae3b65c3]{transition:width .3s cubic-bezier(.2,0,0,1);overflow:hidden}.nd-inline[data-v-ae3b65c3]>*{min-width:18rem}.nd-inline.nd-collapsed[data-v-ae3b65c3]>*{min-width:0}.nd-label[data-v-ae3b65c3]{transition:opacity .2s cubic-bezier(.2,0,0,1) 80ms}.nd-inline.nd-collapsed .nd-label[data-v-ae3b65c3]{opacity:0;transition:opacity .1s cubic-bezier(.2,0,0,1)}.nd-inline .nd-collapse-h[data-v-ae3b65c3]{max-height:80px;transition:max-height .3s cubic-bezier(.2,0,0,1)}.nd-inline.nd-collapsed .nd-collapse-h[data-v-ae3b65c3]{max-height:0}.nd-inline .nd-section-body[data-v-ae3b65c3]>*{transition:padding .3s cubic-bezier(.2,0,0,1)}@keyframes m3-wave-flow{0%{transform:translate(0)}to{transform:translate(-20px)}}@keyframes m3-progress-indeterminate{0%{left:-40%}to{left:100%}}@media (prefers-reduced-motion:reduce){.animate-\[m3-wave-flow_1\.2s_linear_infinite\],.animate-\[m3-wave-flow_0\.9s_linear_infinite\],.animate-\[m3-progress-indeterminate_1\.6s_ease-in-out_infinite\]{animation:none!important}}.m3-radio-dot[data-v-cdb650b5]{transform-box:fill-box;transform-origin:50%;transition:transform .15s;transform:scale(0)}.m3-radio-dot.is-checked[data-v-cdb650b5]{transform:scale(1)}.ss-scrim[data-v-ba5b6f4b]{transition:opacity .28s}.ss-enter-from .ss-scrim[data-v-ba5b6f4b],.ss-leave-to .ss-scrim[data-v-ba5b6f4b]{opacity:0}.ss-panel[data-v-ba5b6f4b]{transition:transform .32s cubic-bezier(.2,0,0,1),opacity .24s}.ss-enter-from .ss-panel[data-v-ba5b6f4b]{opacity:0;transform:translate(40%)}.ss-leave-to .ss-panel[data-v-ba5b6f4b]{opacity:0;transform:translate(100%)!important}@keyframes skeleton-wave-move-32ecf05b{0%{transform:translate(-100%)}60%{transform:translate(100%)}to{transform:translate(100%)}}.skeleton-wave[data-v-32ecf05b]{position:relative;overflow:hidden}.skeleton-wave[data-v-32ecf05b]:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-on-surface) 50%, transparent 100%);opacity:.06;animation:1.8s ease-in-out infinite skeleton-wave-move-32ecf05b;position:absolute;inset:0}.toast-row[data-v-746fa345]{grid-template-rows:1fr;padding-bottom:8px;display:grid}.toast-row>.toast-inner[data-v-746fa345]{min-height:0}.m3-toast-bot-enter-active[data-v-746fa345]{transition:grid-template-rows .22s cubic-bezier(.2,0,0,1),padding-bottom .22s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-bot-enter-active>.toast-inner[data-v-746fa345]{transition:opacity .18s,transform .22s cubic-bezier(.2,0,0,1)}.m3-toast-bot-enter-from[data-v-746fa345]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-bot-enter-from>.toast-inner[data-v-746fa345]{opacity:0;transform:translateY(20px)scale(.94)}.m3-toast-bot-leave-active[data-v-746fa345]{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1),padding-bottom .3s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-bot-leave-active>.toast-inner[data-v-746fa345]{transition:opacity .18s,transform .18s}.m3-toast-bot-leave-to[data-v-746fa345]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-bot-leave-to>.toast-inner[data-v-746fa345]{opacity:0;transform:scale(.92)}.m3-toast-top-enter-active[data-v-746fa345]{transition:grid-template-rows .22s cubic-bezier(.2,0,0,1),padding-bottom .22s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-top-enter-active>.toast-inner[data-v-746fa345]{transition:opacity .18s,transform .22s cubic-bezier(.2,0,0,1)}.m3-toast-top-enter-from[data-v-746fa345]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-top-enter-from>.toast-inner[data-v-746fa345]{opacity:0;transform:translateY(-20px)scale(.94)}.m3-toast-top-leave-active[data-v-746fa345]{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1),padding-bottom .3s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-top-leave-active>.toast-inner[data-v-746fa345]{transition:opacity .18s,transform .18s}.m3-toast-top-leave-to[data-v-746fa345]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-top-leave-to>.toast-inner[data-v-746fa345]{opacity:0;transform:scale(.92)}@keyframes m3-toast-progress-746fa345{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.m3-spot-enter-active[data-v-51b103ff],.m3-spot-leave-active[data-v-51b103ff]{transition:opacity .15s}.m3-spot-enter-from[data-v-51b103ff],.m3-spot-leave-to[data-v-51b103ff]{opacity:0}.m3-spot-enter-active .spot-box[data-v-51b103ff],.m3-spot-leave-active .spot-box[data-v-51b103ff]{transition:transform .15s,opacity .15s}.m3-spot-enter-from .spot-box[data-v-51b103ff]{opacity:0;transform:scale(.96)translateY(-8px)}.m3-spot-leave-to .spot-box[data-v-51b103ff]{opacity:0;transform:scale(.98)}.m3-tour-highlight{box-shadow:0 0 0 4px var(--color-primary);border-radius:8px;position:relative;z-index:201!important}.m3-tour-enter-active,.m3-tour-leave-active{transition:opacity .2s}.m3-tour-enter-from,.m3-tour-leave-to{opacity:0}.m3-markdown[data-v-23db2c2c] h1{font-size:var(--text-headline-large);line-height:var(--text-headline-large--line-height);color:var(--color-on-surface);margin:1em 0 .5em;font-weight:600}.m3-markdown[data-v-23db2c2c] h2{font-size:var(--text-headline-medium);line-height:var(--text-headline-medium--line-height);color:var(--color-on-surface);margin:1em 0 .5em;font-weight:600}.m3-markdown[data-v-23db2c2c] h3{font-size:var(--text-headline-small);line-height:var(--text-headline-small--line-height);color:var(--color-on-surface);margin:.75em 0 .25em;font-weight:600}.m3-markdown[data-v-23db2c2c] h4{font-size:var(--text-title-large);line-height:var(--text-title-large--line-height);color:var(--color-on-surface);margin:.75em 0 .25em;font-weight:600}.m3-markdown[data-v-23db2c2c] p{margin:.5em 0}.m3-markdown[data-v-23db2c2c] a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.m3-markdown[data-v-23db2c2c] a:hover{opacity:.8}.m3-markdown[data-v-23db2c2c] strong{color:var(--color-on-surface);font-weight:600}.m3-markdown[data-v-23db2c2c] em{font-style:italic}.m3-markdown[data-v-23db2c2c] ul{margin:.5em 0;padding-left:1.5em;list-style-type:disc}.m3-markdown[data-v-23db2c2c] ol{margin:.5em 0;padding-left:1.5em;list-style-type:decimal}.m3-markdown[data-v-23db2c2c] li{margin:.25em 0}.m3-markdown[data-v-23db2c2c] li::marker{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] blockquote{border-left:3px solid var(--color-primary);background:var(--color-surface-container);color:var(--color-on-surface-variant);border-radius:0 8px 8px 0;margin:.75em 0;padding:.5em 1em}.m3-markdown[data-v-23db2c2c] code{background:var(--color-surface-container-highest);color:var(--color-primary);border-radius:4px;padding:.15em .4em;font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:.875em}.m3-markdown[data-v-23db2c2c] pre{background:var(--color-surface-container-highest);border:1px solid var(--color-outline-variant);border-radius:12px;margin:.75em 0;padding:1em;overflow-x:auto}.m3-markdown[data-v-23db2c2c] pre code{color:var(--color-on-surface);background:0 0;padding:0;font-size:.8125rem;line-height:1.6}.m3-markdown[data-v-23db2c2c] .hljs-keyword,.m3-markdown[data-v-23db2c2c] .hljs-selector-tag,.m3-markdown[data-v-23db2c2c] .hljs-built_in,.m3-markdown[data-v-23db2c2c] .hljs-tag .hljs-keyword{color:var(--color-primary)}.m3-markdown[data-v-23db2c2c] .hljs-string,.m3-markdown[data-v-23db2c2c] .hljs-regexp,.m3-markdown[data-v-23db2c2c] .hljs-template-variable{color:var(--color-tertiary)}.m3-markdown[data-v-23db2c2c] .hljs-number,.m3-markdown[data-v-23db2c2c] .hljs-literal{color:var(--color-error)}.m3-markdown[data-v-23db2c2c] .hljs-title.function_,.m3-markdown[data-v-23db2c2c] .hljs-title.function_>.hljs-keyword{color:var(--color-secondary);font-weight:500}.m3-markdown[data-v-23db2c2c] .hljs-type,.m3-markdown[data-v-23db2c2c] .hljs-title.class_{color:var(--color-primary);font-style:italic}.m3-markdown[data-v-23db2c2c] .hljs-comment,.m3-markdown[data-v-23db2c2c] .hljs-quote{color:var(--color-outline);font-style:italic}.m3-markdown[data-v-23db2c2c] .hljs-attr,.m3-markdown[data-v-23db2c2c] .hljs-attribute{color:var(--color-tertiary)}.m3-markdown[data-v-23db2c2c] .hljs-tag{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] .hljs-name{color:var(--color-primary)}.m3-markdown[data-v-23db2c2c] .hljs-punctuation,.m3-markdown[data-v-23db2c2c] .hljs-operator,.m3-markdown[data-v-23db2c2c] .hljs-meta,.m3-markdown[data-v-23db2c2c] .hljs-meta .hljs-keyword{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] .hljs-variable,.m3-markdown[data-v-23db2c2c] .hljs-property,.m3-markdown[data-v-23db2c2c] .hljs-symbol,.m3-markdown[data-v-23db2c2c] .hljs-params{color:var(--color-on-surface)}.m3-markdown[data-v-23db2c2c] .m3-code-block{position:relative}.m3-markdown[data-v-23db2c2c] .m3-code-copy{background:var(--color-surface-container);width:28px;height:28px;color:var(--color-on-surface-variant);cursor:pointer;opacity:0;z-index:1;border:none;border-radius:6px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:8px;right:8px}.m3-markdown[data-v-23db2c2c] .m3-code-block:hover .m3-code-copy{opacity:1}.m3-markdown[data-v-23db2c2c] .m3-code-copy:hover{background:var(--color-surface-container-high);color:var(--color-on-surface)}.m3-markdown[data-v-23db2c2c] .m3-code-line{display:block}.m3-markdown[data-v-23db2c2c] .m3-line-hl{background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-left:2px solid color-mix(in srgb, var(--color-primary) 40%, transparent);margin:0 -1em;padding:0 1em 0 calc(1em - 2px)}.m3-markdown[data-v-23db2c2c] hr{border:none;border-top:1px solid var(--color-outline-variant);margin:1.5em 0}.m3-markdown[data-v-23db2c2c] table{border-collapse:collapse;width:100%;margin:.75em 0}.m3-markdown[data-v-23db2c2c] th{background:var(--color-surface-container);text-align:left;border-bottom:2px solid var(--color-outline-variant);font-weight:600;font-size:var(--text-label-large);color:var(--color-on-surface);padding:.5em .75em}.m3-markdown[data-v-23db2c2c] td{border-bottom:1px solid var(--color-outline-variant);padding:.5em .75em}.m3-markdown[data-v-23db2c2c] img{border-radius:12px;max-width:100%;height:auto;margin:.5em 0}.rte-content[data-v-c59a60e3] .tiptap{min-height:inherit;outline:none}.rte-content[data-v-c59a60e3] .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-on-surface-variant);opacity:.5;pointer-events:none;height:0}.rte-content[data-v-c59a60e3] h1{font-size:var(--text-headline-large);line-height:var(--text-headline-large--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-c59a60e3] h2{font-size:var(--text-headline-medium);line-height:var(--text-headline-medium--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-c59a60e3] h3{font-size:var(--text-headline-small);line-height:var(--text-headline-small--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-c59a60e3] p{margin:.5em 0}.rte-content[data-v-c59a60e3] ul{margin:.5em 0;padding-left:1.5em;list-style-type:disc}.rte-content[data-v-c59a60e3] ol{margin:.5em 0;padding-left:1.5em;list-style-type:decimal}.rte-content[data-v-c59a60e3] blockquote{border-left:3px solid var(--color-primary);color:var(--color-on-surface-variant);margin:.5em 0;padding-left:1em}.rte-content[data-v-c59a60e3] code{background:var(--color-surface-container-highest);border-radius:4px;padding:.15em .4em;font-size:.875em}.rte-content[data-v-c59a60e3] pre{background:var(--color-surface-container-highest);border-radius:8px;margin:.5em 0;padding:1em;overflow-x:auto}.rte-content[data-v-c59a60e3] pre code{background:0 0;padding:0}.rte-content[data-v-c59a60e3] a{color:var(--color-primary);text-decoration:underline}.rte-content[data-v-c59a60e3] mark{background:var(--color-tertiary-container);color:var(--color-on-tertiary-container);border-radius:2px;padding:.1em .2em}.rte-content[data-v-c59a60e3] img{border-radius:8px;max-width:100%;height:auto;margin:.5em 0}
1
+ .code-editor-container[data-v-b0a66a4b] .cm-editor{height:100%;min-height:inherit;font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:.8125rem;line-height:1.6}.code-editor-container[data-v-b0a66a4b] .cm-editor.cm-focused{outline:none}.code-editor-container[data-v-b0a66a4b] .cm-scroller{min-height:inherit}.code-editor-container[data-v-b0a66a4b] .cm-content{padding:12px 0}.code-editor-container[data-v-b0a66a4b] .cm-line{padding:0 16px}.code-editor-container[data-v-b0a66a4b] .cm-gutters{background:var(--color-surface-container);border-right:1px solid var(--color-outline-variant);color:var(--color-outline);padding:0 4px;font-size:.75rem}.code-editor-container[data-v-b0a66a4b] .cm-activeLineGutter{background:var(--color-surface-container-high);color:var(--color-on-surface-variant)}.code-editor-container[data-v-b0a66a4b] .cm-activeLine{background:var(--color-surface-container-lowest)}.code-editor-container[data-v-b0a66a4b] .cm-selectionBackground{background:var(--color-primary-container)!important}.code-editor-container[data-v-b0a66a4b] .cm-cursor{border-left-color:var(--color-primary);border-left-width:2px}.code-editor-container[data-v-b0a66a4b] .cm-matchingBracket{background:var(--color-tertiary-container);color:var(--color-on-tertiary-container);border-radius:2px}.code-editor-container[data-v-b0a66a4b] .cm-foldGutter span{color:var(--color-on-surface-variant)}@keyframes m3-wavy-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes m3-wavy-travel{0%{stroke-dashoffset:0}to{stroke-dashoffset:calc(var(--m3-wave-len) * -1px)}}@media (prefers-reduced-motion:reduce){.animate-\[m3-wavy-spin_2\.8s_linear_infinite\]{animation:2.8s linear infinite m3-wavy-spin}.animate-\[m3-wavy-travel_2s_linear_infinite\]{animation:none!important}}.m3-dialog-enter-active[data-v-4ccfbc3c],.m3-dialog-leave-active[data-v-4ccfbc3c]{transition:opacity .15s}.m3-dialog-enter-from[data-v-4ccfbc3c],.m3-dialog-leave-to[data-v-4ccfbc3c]{opacity:0}.m3-dialog-enter-active .dialog-box[data-v-4ccfbc3c],.m3-dialog-leave-active .dialog-box[data-v-4ccfbc3c]{transition:transform .15s}.m3-dialog-enter-from .dialog-box[data-v-4ccfbc3c],.m3-dialog-leave-to .dialog-box[data-v-4ccfbc3c]{transform:scale(.95)}.bs-scrim[data-v-5b1fb748]{transition:opacity .3s}.bs-enter-from .bs-scrim[data-v-5b1fb748],.bs-leave-to .bs-scrim[data-v-5b1fb748]{opacity:0}.bs-panel[data-v-5b1fb748]{transition:transform .32s cubic-bezier(.2,0,0,1),opacity .24s}.bs-enter-from .bs-panel[data-v-5b1fb748]{opacity:0;transform:translateY(40%)}.bs-leave-to .bs-panel[data-v-5b1fb748]{opacity:0;transform:translateY(100%)!important}.m3-carousel-right-enter-active,.m3-carousel-right-leave-active,.m3-carousel-left-enter-active,.m3-carousel-left-leave-active{transition:transform .5s cubic-bezier(.2,0,0,1),opacity .5s cubic-bezier(.2,0,0,1)}.m3-carousel-right-enter-from{opacity:0;transform:translate(100%)}.m3-carousel-right-leave-to,.m3-carousel-left-enter-from{opacity:0;transform:translate(-100%)}.m3-carousel-left-leave-to{opacity:0;transform:translate(100%)}.hue-slider[data-v-872ab758]{background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.hue-slider[data-v-872ab758]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0006}.hue-slider[data-v-872ab758]::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0006}.m3-cmd-enter-active[data-v-4d6cca63],.m3-cmd-leave-active[data-v-4d6cca63]{transition:opacity .15s}.m3-cmd-enter-from[data-v-4d6cca63],.m3-cmd-leave-to[data-v-4d6cca63]{opacity:0}.m3-cmd-enter-active .cmd-box[data-v-4d6cca63],.m3-cmd-leave-active .cmd-box[data-v-4d6cca63]{transition:transform .15s}.m3-cmd-enter-from .cmd-box[data-v-4d6cca63],.m3-cmd-leave-to .cmd-box[data-v-4d6cca63]{transform:scale(.95)translateY(-10px)}.dt-expand-grid[data-v-857139c7]{grid-template-rows:0fr;transition:grid-template-rows .25s cubic-bezier(.2,0,0,1);display:grid}.dt-expand-grid.dt-expand-open[data-v-857139c7]{grid-template-rows:1fr}.dt-expand-body[data-v-857139c7]{min-height:0;overflow:hidden}.expand-grid[data-v-89e4475b]{grid-template-rows:1fr;display:grid}.expand-body[data-v-89e4475b]{min-height:0;overflow:hidden}.expand-enter-active[data-v-89e4475b]{transition:grid-template-rows .28s cubic-bezier(.2,0,0,1)}.expand-enter-active>.expand-body[data-v-89e4475b]{transition:opacity .22s}.expand-enter-from[data-v-89e4475b]{grid-template-rows:0fr}.expand-enter-from>.expand-body[data-v-89e4475b]{opacity:0}.expand-leave-active[data-v-89e4475b]{transition:grid-template-rows .22s cubic-bezier(.4,0,1,1)}.expand-leave-active>.expand-body[data-v-89e4475b]{transition:opacity .15s}.expand-leave-to[data-v-89e4475b]{grid-template-rows:0fr}.expand-leave-to>.expand-body[data-v-89e4475b]{opacity:0}.m3-file-enter-active[data-v-6b150427],.m3-file-leave-active[data-v-6b150427]{transition:all .2s}.m3-file-enter-from[data-v-6b150427],.m3-file-leave-to[data-v-6b150427]{opacity:0;transform:translateY(-8px)}.mli-expand-grid{grid-template-rows:1fr;display:grid}.mli-expand-body{min-height:0;padding-left:2rem;overflow:hidden}.mli-expand-enter-active{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1)}.mli-expand-enter-active>.mli-expand-body{transition:opacity .2s cubic-bezier(.2,0,0,1) 80ms}.mli-expand-enter-from{grid-template-rows:0fr}.mli-expand-enter-from>.mli-expand-body{opacity:0}.mli-expand-leave-active{transition:grid-template-rows .25s cubic-bezier(.4,0,1,1)}.mli-expand-leave-active>.mli-expand-body{transition:opacity .12s cubic-bezier(.4,0,1,1)}.mli-expand-leave-to{grid-template-rows:0fr}.mli-expand-leave-to>.mli-expand-body{opacity:0}input[type=number][data-v-9068433a]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-9068433a]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-9068433a]{-moz-appearance:textfield}.nd-scrim[data-v-51e30965]{transition:opacity .28s}.nd-enter-from .nd-scrim[data-v-51e30965],.nd-leave-to .nd-scrim[data-v-51e30965]{opacity:0}.nd-panel[data-v-51e30965]{transition:transform .3s cubic-bezier(.2,0,0,1)}.nd-enter-from .nd-panel[data-v-51e30965],.nd-leave-to .nd-panel[data-v-51e30965]{transform:translate(-100%)}.nd-section-grid[data-v-51e30965]{grid-template-rows:1fr;display:grid}.nd-section-body[data-v-51e30965]{min-height:0;overflow:hidden}.nd-section-enter-active[data-v-51e30965]{transition:grid-template-rows .35s cubic-bezier(.2,0,0,1)}.nd-section-enter-active>.nd-section-body[data-v-51e30965]{transition:opacity .25s cubic-bezier(.2,0,0,1) 80ms}.nd-section-enter-from[data-v-51e30965]{grid-template-rows:0fr}.nd-section-enter-from>.nd-section-body[data-v-51e30965]{opacity:0}.nd-section-leave-active[data-v-51e30965]{transition:grid-template-rows .28s cubic-bezier(.4,0,1,1)}.nd-section-leave-active>.nd-section-body[data-v-51e30965]{transition:opacity .15s cubic-bezier(.4,0,1,1)}.nd-section-leave-to[data-v-51e30965]{grid-template-rows:0fr}.nd-section-leave-to>.nd-section-body[data-v-51e30965]{opacity:0}.nd-inline[data-v-51e30965]{transition:width .3s cubic-bezier(.2,0,0,1);overflow:hidden}.nd-inline[data-v-51e30965]>*{min-width:18rem}.nd-inline.nd-collapsed[data-v-51e30965]>*{min-width:0}.nd-label[data-v-51e30965]{transition:opacity .2s cubic-bezier(.2,0,0,1) 80ms}.nd-inline.nd-collapsed .nd-label[data-v-51e30965],.nd-inline.nd-collapsed[data-v-51e30965] .nd-label{opacity:0;transition:opacity .1s cubic-bezier(.2,0,0,1)}.nd-inline .nd-collapse-h[data-v-51e30965]{max-height:80px;transition:max-height .3s cubic-bezier(.2,0,0,1)}.nd-inline.nd-collapsed .nd-collapse-h[data-v-51e30965]{max-height:0}.nd-inline .nd-section-body[data-v-51e30965]>*,.nd-inline[data-v-51e30965] .nd-section-body>*{transition:padding .3s cubic-bezier(.2,0,0,1)}.nd-children-divider[data-v-51e30965]{border-top:1px solid #0000;height:0;margin:0 .75rem;transition:border-color .1s,margin .1s}.nd-inline.nd-collapsed .nd-children-divider[data-v-51e30965]{border-top-color:var(--color-outline-variant);margin:.25rem .75rem;transition:border-color .2s .3s,margin .2s .3s}@keyframes m3-wave-flow{0%{transform:translate(0)}to{transform:translate(-20px)}}@keyframes m3-progress-indeterminate{0%{left:-40%}to{left:100%}}@media (prefers-reduced-motion:reduce){.animate-\[m3-wave-flow_1\.2s_linear_infinite\],.animate-\[m3-wave-flow_0\.9s_linear_infinite\],.animate-\[m3-progress-indeterminate_1\.6s_ease-in-out_infinite\]{animation:none!important}}.m3-radio-dot[data-v-cdb650b5]{transform-box:fill-box;transform-origin:50%;transition:transform .15s;transform:scale(0)}.m3-radio-dot.is-checked[data-v-cdb650b5]{transform:scale(1)}.ss-scrim[data-v-ba5b6f4b]{transition:opacity .28s}.ss-enter-from .ss-scrim[data-v-ba5b6f4b],.ss-leave-to .ss-scrim[data-v-ba5b6f4b]{opacity:0}.ss-panel[data-v-ba5b6f4b]{transition:transform .32s cubic-bezier(.2,0,0,1),opacity .24s}.ss-enter-from .ss-panel[data-v-ba5b6f4b]{opacity:0;transform:translate(40%)}.ss-leave-to .ss-panel[data-v-ba5b6f4b]{opacity:0;transform:translate(100%)!important}@keyframes skeleton-wave-move-32ecf05b{0%{transform:translate(-100%)}60%{transform:translate(100%)}to{transform:translate(100%)}}.skeleton-wave[data-v-32ecf05b]{position:relative;overflow:hidden}.skeleton-wave[data-v-32ecf05b]:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-on-surface) 50%, transparent 100%);opacity:.06;animation:1.8s ease-in-out infinite skeleton-wave-move-32ecf05b;position:absolute;inset:0}.toast-row[data-v-64ce9e7c]{grid-template-rows:1fr;padding-bottom:8px;display:grid}.toast-row>.toast-inner[data-v-64ce9e7c]{min-height:0}.m3-toast-bot-enter-active[data-v-64ce9e7c]{transition:grid-template-rows .22s cubic-bezier(.2,0,0,1),padding-bottom .22s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-bot-enter-active>.toast-inner[data-v-64ce9e7c]{transition:opacity .18s,transform .22s cubic-bezier(.2,0,0,1)}.m3-toast-bot-enter-from[data-v-64ce9e7c]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-bot-enter-from>.toast-inner[data-v-64ce9e7c]{opacity:0;transform:translateY(20px)scale(.94)}.m3-toast-bot-leave-active[data-v-64ce9e7c]{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1),padding-bottom .3s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-bot-leave-active>.toast-inner[data-v-64ce9e7c]{transition:opacity .18s,transform .18s}.m3-toast-bot-leave-to[data-v-64ce9e7c]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-bot-leave-to>.toast-inner[data-v-64ce9e7c]{opacity:0;transform:scale(.92)}.m3-toast-top-enter-active[data-v-64ce9e7c]{transition:grid-template-rows .22s cubic-bezier(.2,0,0,1),padding-bottom .22s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-top-enter-active>.toast-inner[data-v-64ce9e7c]{transition:opacity .18s,transform .22s cubic-bezier(.2,0,0,1)}.m3-toast-top-enter-from[data-v-64ce9e7c]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-top-enter-from>.toast-inner[data-v-64ce9e7c]{opacity:0;transform:translateY(-20px)scale(.94)}.m3-toast-top-leave-active[data-v-64ce9e7c]{transition:grid-template-rows .3s cubic-bezier(.2,0,0,1),padding-bottom .3s cubic-bezier(.2,0,0,1);overflow:hidden}.m3-toast-top-leave-active>.toast-inner[data-v-64ce9e7c]{transition:opacity .18s,transform .18s}.m3-toast-top-leave-to[data-v-64ce9e7c]{grid-template-rows:0fr;padding-bottom:0}.m3-toast-top-leave-to>.toast-inner[data-v-64ce9e7c]{opacity:0;transform:scale(.92)}@keyframes m3-toast-progress-64ce9e7c{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.m3-spot-enter-active[data-v-1fa0da82],.m3-spot-leave-active[data-v-1fa0da82]{transition:opacity .15s}.m3-spot-enter-from[data-v-1fa0da82],.m3-spot-leave-to[data-v-1fa0da82]{opacity:0}.m3-spot-enter-active .spot-box[data-v-1fa0da82],.m3-spot-leave-active .spot-box[data-v-1fa0da82]{transition:transform .15s,opacity .15s}.m3-spot-enter-from .spot-box[data-v-1fa0da82]{opacity:0;transform:scale(.96)translateY(-8px)}.m3-spot-leave-to .spot-box[data-v-1fa0da82]{opacity:0;transform:scale(.98)}.m3-tour-highlight{box-shadow:0 0 0 4px var(--color-primary);border-radius:8px;position:relative;z-index:201!important}.m3-tour-enter-active,.m3-tour-leave-active{transition:opacity .2s}.m3-tour-enter-from,.m3-tour-leave-to{opacity:0}.m3-markdown[data-v-23db2c2c] h1{font-size:var(--text-headline-large);line-height:var(--text-headline-large--line-height);color:var(--color-on-surface);margin:1em 0 .5em;font-weight:600}.m3-markdown[data-v-23db2c2c] h2{font-size:var(--text-headline-medium);line-height:var(--text-headline-medium--line-height);color:var(--color-on-surface);margin:1em 0 .5em;font-weight:600}.m3-markdown[data-v-23db2c2c] h3{font-size:var(--text-headline-small);line-height:var(--text-headline-small--line-height);color:var(--color-on-surface);margin:.75em 0 .25em;font-weight:600}.m3-markdown[data-v-23db2c2c] h4{font-size:var(--text-title-large);line-height:var(--text-title-large--line-height);color:var(--color-on-surface);margin:.75em 0 .25em;font-weight:600}.m3-markdown[data-v-23db2c2c] p{margin:.5em 0}.m3-markdown[data-v-23db2c2c] a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.m3-markdown[data-v-23db2c2c] a:hover{opacity:.8}.m3-markdown[data-v-23db2c2c] strong{color:var(--color-on-surface);font-weight:600}.m3-markdown[data-v-23db2c2c] em{font-style:italic}.m3-markdown[data-v-23db2c2c] ul{margin:.5em 0;padding-left:1.5em;list-style-type:disc}.m3-markdown[data-v-23db2c2c] ol{margin:.5em 0;padding-left:1.5em;list-style-type:decimal}.m3-markdown[data-v-23db2c2c] li{margin:.25em 0}.m3-markdown[data-v-23db2c2c] li::marker{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] blockquote{border-left:3px solid var(--color-primary);background:var(--color-surface-container);color:var(--color-on-surface-variant);border-radius:0 8px 8px 0;margin:.75em 0;padding:.5em 1em}.m3-markdown[data-v-23db2c2c] code{background:var(--color-surface-container-highest);color:var(--color-primary);border-radius:4px;padding:.15em .4em;font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:.875em}.m3-markdown[data-v-23db2c2c] pre{background:var(--color-surface-container-highest);border:1px solid var(--color-outline-variant);border-radius:12px;margin:.75em 0;padding:1em;overflow-x:auto}.m3-markdown[data-v-23db2c2c] pre code{color:var(--color-on-surface);background:0 0;padding:0;font-size:.8125rem;line-height:1.6}.m3-markdown[data-v-23db2c2c] .hljs-keyword,.m3-markdown[data-v-23db2c2c] .hljs-selector-tag,.m3-markdown[data-v-23db2c2c] .hljs-built_in,.m3-markdown[data-v-23db2c2c] .hljs-tag .hljs-keyword{color:var(--color-primary)}.m3-markdown[data-v-23db2c2c] .hljs-string,.m3-markdown[data-v-23db2c2c] .hljs-regexp,.m3-markdown[data-v-23db2c2c] .hljs-template-variable{color:var(--color-tertiary)}.m3-markdown[data-v-23db2c2c] .hljs-number,.m3-markdown[data-v-23db2c2c] .hljs-literal{color:var(--color-error)}.m3-markdown[data-v-23db2c2c] .hljs-title.function_,.m3-markdown[data-v-23db2c2c] .hljs-title.function_>.hljs-keyword{color:var(--color-secondary);font-weight:500}.m3-markdown[data-v-23db2c2c] .hljs-type,.m3-markdown[data-v-23db2c2c] .hljs-title.class_{color:var(--color-primary);font-style:italic}.m3-markdown[data-v-23db2c2c] .hljs-comment,.m3-markdown[data-v-23db2c2c] .hljs-quote{color:var(--color-outline);font-style:italic}.m3-markdown[data-v-23db2c2c] .hljs-attr,.m3-markdown[data-v-23db2c2c] .hljs-attribute{color:var(--color-tertiary)}.m3-markdown[data-v-23db2c2c] .hljs-tag{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] .hljs-name{color:var(--color-primary)}.m3-markdown[data-v-23db2c2c] .hljs-punctuation,.m3-markdown[data-v-23db2c2c] .hljs-operator,.m3-markdown[data-v-23db2c2c] .hljs-meta,.m3-markdown[data-v-23db2c2c] .hljs-meta .hljs-keyword{color:var(--color-on-surface-variant)}.m3-markdown[data-v-23db2c2c] .hljs-variable,.m3-markdown[data-v-23db2c2c] .hljs-property,.m3-markdown[data-v-23db2c2c] .hljs-symbol,.m3-markdown[data-v-23db2c2c] .hljs-params{color:var(--color-on-surface)}.m3-markdown[data-v-23db2c2c] .m3-code-block{position:relative}.m3-markdown[data-v-23db2c2c] .m3-code-copy{background:var(--color-surface-container);width:28px;height:28px;color:var(--color-on-surface-variant);cursor:pointer;opacity:0;z-index:1;border:none;border-radius:6px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:8px;right:8px}.m3-markdown[data-v-23db2c2c] .m3-code-block:hover .m3-code-copy{opacity:1}.m3-markdown[data-v-23db2c2c] .m3-code-copy:hover{background:var(--color-surface-container-high);color:var(--color-on-surface)}.m3-markdown[data-v-23db2c2c] .m3-code-line{display:block}.m3-markdown[data-v-23db2c2c] .m3-line-hl{background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-left:2px solid color-mix(in srgb, var(--color-primary) 40%, transparent);margin:0 -1em;padding:0 1em 0 calc(1em - 2px)}.m3-markdown[data-v-23db2c2c] hr{border:none;border-top:1px solid var(--color-outline-variant);margin:1.5em 0}.m3-markdown[data-v-23db2c2c] table{border-collapse:collapse;width:100%;margin:.75em 0}.m3-markdown[data-v-23db2c2c] th{background:var(--color-surface-container);text-align:left;border-bottom:2px solid var(--color-outline-variant);font-weight:600;font-size:var(--text-label-large);color:var(--color-on-surface);padding:.5em .75em}.m3-markdown[data-v-23db2c2c] td{border-bottom:1px solid var(--color-outline-variant);padding:.5em .75em}.m3-markdown[data-v-23db2c2c] img{border-radius:12px;max-width:100%;height:auto;margin:.5em 0}.rte-content[data-v-e6829e5c] .tiptap{min-height:inherit;outline:none}.rte-content[data-v-e6829e5c] .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-on-surface-variant);opacity:.5;pointer-events:none;height:0}.rte-content[data-v-e6829e5c] h1{font-size:var(--text-headline-large);line-height:var(--text-headline-large--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-e6829e5c] h2{font-size:var(--text-headline-medium);line-height:var(--text-headline-medium--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-e6829e5c] h3{font-size:var(--text-headline-small);line-height:var(--text-headline-small--line-height);margin:.75em 0 .25em;font-weight:600}.rte-content[data-v-e6829e5c] p{margin:.5em 0}.rte-content[data-v-e6829e5c] ul{margin:.5em 0;padding-left:1.5em;list-style-type:disc}.rte-content[data-v-e6829e5c] ol{margin:.5em 0;padding-left:1.5em;list-style-type:decimal}.rte-content[data-v-e6829e5c] blockquote{border-left:3px solid var(--color-primary);color:var(--color-on-surface-variant);margin:.5em 0;padding-left:1em}.rte-content[data-v-e6829e5c] code{background:var(--color-surface-container-highest);border-radius:4px;padding:.15em .4em;font-size:.875em}.rte-content[data-v-e6829e5c] pre{background:var(--color-surface-container-highest);border-radius:8px;margin:.5em 0;padding:1em;overflow-x:auto}.rte-content[data-v-e6829e5c] pre code{background:0 0;padding:0}.rte-content[data-v-e6829e5c] a{color:var(--color-primary);text-decoration:underline}.rte-content[data-v-e6829e5c] mark{background:var(--color-tertiary-container);color:var(--color-on-tertiary-container);border-radius:2px;padding:.1em .2em}.rte-content[data-v-e6829e5c] img{border-radius:8px;max-width:100%;height:auto;margin:.5em 0}
2
2
  /*$vite$:1*/