fluent-svelte-extra 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/.prettierignore +1 -0
  2. package/.prettierrc +7 -0
  3. package/CHANGELOG.md +7 -0
  4. package/LICENSE +21 -0
  5. package/README.md +33 -0
  6. package/package.json +83 -0
  7. package/src/app.html +12 -0
  8. package/src/global.d.ts +1 -0
  9. package/src/lib/AutoSuggestBox/AutoSuggestBox.scss +44 -0
  10. package/src/lib/AutoSuggestBox/AutoSuggestBox.svelte +173 -0
  11. package/src/lib/Button/Button.scss +94 -0
  12. package/src/lib/Button/Button.svelte +48 -0
  13. package/src/lib/CalendarDatePicker/CalendarDatePicker.scss +15 -0
  14. package/src/lib/CalendarDatePicker/CalendarDatePicker.svelte +86 -0
  15. package/src/lib/CalendarView/CalendarView.scss +156 -0
  16. package/src/lib/CalendarView/CalendarView.svelte +753 -0
  17. package/src/lib/CalendarView/CalendarViewItem.scss +130 -0
  18. package/src/lib/CalendarView/CalendarViewItem.svelte +33 -0
  19. package/src/lib/Checkbox/Checkbox.scss +117 -0
  20. package/src/lib/Checkbox/Checkbox.svelte +81 -0
  21. package/src/lib/ComboBox/ComboBox.scss +152 -0
  22. package/src/lib/ComboBox/ComboBox.svelte +360 -0
  23. package/src/lib/ComboBox/ComboBoxItem.scss +80 -0
  24. package/src/lib/ComboBox/ComboBoxItem.svelte +30 -0
  25. package/src/lib/ContentDialog/ContentDialog.scss +68 -0
  26. package/src/lib/ContentDialog/ContentDialog.svelte +123 -0
  27. package/src/lib/ContextMenu/ContextMenu.scss +11 -0
  28. package/src/lib/ContextMenu/ContextMenu.svelte +104 -0
  29. package/src/lib/Expander/Expander.scss +134 -0
  30. package/src/lib/Expander/Expander.svelte +123 -0
  31. package/src/lib/Flipper/Flipper.svelte +49 -0
  32. package/src/lib/Flyout/FlyoutSurface.scss +14 -0
  33. package/src/lib/Flyout/FlyoutSurface.svelte +21 -0
  34. package/src/lib/Flyout/FlyoutWrapper.scss +81 -0
  35. package/src/lib/Flyout/FlyoutWrapper.svelte +126 -0
  36. package/src/lib/IconButton/IconButton.scss +31 -0
  37. package/src/lib/IconButton/IconButton.svelte +49 -0
  38. package/src/lib/InfoBadge/InfoBadge.scss +39 -0
  39. package/src/lib/InfoBadge/InfoBadge.svelte +81 -0
  40. package/src/lib/InfoBar/InfoBar.scss +122 -0
  41. package/src/lib/InfoBar/InfoBar.svelte +133 -0
  42. package/src/lib/ListItem/ListItem.scss +74 -0
  43. package/src/lib/ListItem/ListItem.svelte +88 -0
  44. package/src/lib/MenuBar/MenuBar.scss +10 -0
  45. package/src/lib/MenuBar/MenuBar.svelte +49 -0
  46. package/src/lib/MenuBar/MenuBarItem.scss +38 -0
  47. package/src/lib/MenuBar/MenuBarItem.svelte +135 -0
  48. package/src/lib/MenuBar/flyoutState.ts +5 -0
  49. package/src/lib/MenuFlyout/MenuFlyoutDivider.scss +7 -0
  50. package/src/lib/MenuFlyout/MenuFlyoutDivider.svelte +14 -0
  51. package/src/lib/MenuFlyout/MenuFlyoutItem.scss +147 -0
  52. package/src/lib/MenuFlyout/MenuFlyoutItem.svelte +239 -0
  53. package/src/lib/MenuFlyout/MenuFlyoutSurface.scss +42 -0
  54. package/src/lib/MenuFlyout/MenuFlyoutSurface.svelte +28 -0
  55. package/src/lib/MenuFlyout/MenuFlyoutWrapper.scss +64 -0
  56. package/src/lib/MenuFlyout/MenuFlyoutWrapper.svelte +114 -0
  57. package/src/lib/NavigationView/NavigationView.scss +0 -0
  58. package/src/lib/NavigationView/NavigationView.svelte +82 -0
  59. package/src/lib/NumberBox/NumberBox.scss +31 -0
  60. package/src/lib/NumberBox/NumberBox.svelte +267 -0
  61. package/src/lib/PersonPicture/PersonPicture.scss +35 -0
  62. package/src/lib/PersonPicture/PersonPicture.svelte +62 -0
  63. package/src/lib/ProgressBar/ProgressBar.scss +83 -0
  64. package/src/lib/ProgressBar/ProgressBar.svelte +60 -0
  65. package/src/lib/ProgressRing/ProgressRing.scss +37 -0
  66. package/src/lib/ProgressRing/ProgressRing.svelte +73 -0
  67. package/src/lib/RadioButton/RadioButton.scss +114 -0
  68. package/src/lib/RadioButton/RadioButton.svelte +67 -0
  69. package/src/lib/RangeSlider/RangeSlider.svelte +91 -0
  70. package/src/lib/ScrollView/ScrollView.svelte +9 -0
  71. package/src/lib/Slider/Slider.scss +263 -0
  72. package/src/lib/Slider/Slider.svelte +261 -0
  73. package/src/lib/TextBlock/TextBlock.scss +62 -0
  74. package/src/lib/TextBlock/TextBlock.svelte +70 -0
  75. package/src/lib/TextBox/TextBox.scss +108 -0
  76. package/src/lib/TextBox/TextBox.svelte +225 -0
  77. package/src/lib/TextBox/TextBoxButton.scss +34 -0
  78. package/src/lib/TextBox/TextBoxButton.svelte +27 -0
  79. package/src/lib/ToggleSwitch/ToggleSwitch.scss +118 -0
  80. package/src/lib/ToggleSwitch/ToggleSwitch.svelte +55 -0
  81. package/src/lib/Tooltip/TooltipSurface.scss +16 -0
  82. package/src/lib/Tooltip/TooltipSurface.svelte +27 -0
  83. package/src/lib/Tooltip/TooltipWrapper.scss +66 -0
  84. package/src/lib/Tooltip/TooltipWrapper.svelte +117 -0
  85. package/src/lib/_mixins.scss +130 -0
  86. package/src/lib/index.ts +33 -0
  87. package/src/lib/internal.ts +213 -0
  88. package/src/lib/svelte-jsx.d.ts +14 -0
  89. package/src/lib/theme.css +414 -0
  90. package/src/routes/__layout.svelte +48 -0
  91. package/src/routes/docs/__layout.svelte +122 -0
  92. package/src/routes/docs/components/button.md +43 -0
  93. package/src/routes/docs/components/calendarview.md +188 -0
  94. package/src/routes/docs/components/checkbox.md +87 -0
  95. package/src/routes/docs/components/contentdialog.md +155 -0
  96. package/src/routes/docs/components/expander.md +115 -0
  97. package/src/routes/docs/components/flyout.md +107 -0
  98. package/src/routes/docs/components/iconbutton.md +39 -0
  99. package/src/routes/docs/components/infobadge.md +54 -0
  100. package/src/routes/docs/components/infobar.md +102 -0
  101. package/src/routes/docs/components/listitem.md +87 -0
  102. package/src/routes/docs/components/personpicture.md +125 -0
  103. package/src/routes/docs/components/progressring.md +83 -0
  104. package/src/routes/docs/components/radiobutton.md +88 -0
  105. package/src/routes/docs/components/slider.md +165 -0
  106. package/src/routes/docs/components/textblock.md +46 -0
  107. package/src/routes/docs/components/textbox.md +124 -0
  108. package/src/routes/docs/components/toggleswitch.md +73 -0
  109. package/src/routes/docs/getting-started.md +116 -0
  110. package/src/routes/docs/index.md +37 -0
  111. package/src/routes/docs/internals/index.md +0 -0
  112. package/src/routes/index.svelte +121 -0
  113. package/src/routes/test/__layout-test.svelte +1 -0
  114. package/src/routes/test/index.svelte +757 -0
  115. package/src/routes/test/nav.svelte +7 -0
  116. package/src/site/data/docs.ts +176 -0
  117. package/src/site/data/home.ts +12 -0
  118. package/src/site/lib/APIDocs/APIDocs.svelte +178 -0
  119. package/src/site/lib/APIDocs/ParsedComponent.d.ts +85 -0
  120. package/src/site/lib/CopyBox/CopyBox.svelte +23 -0
  121. package/src/site/lib/Example/Example.scss +33 -0
  122. package/src/site/lib/Example/Example.svelte +18 -0
  123. package/src/site/lib/HeroCard/HeroCard.scss +24 -0
  124. package/src/site/lib/HeroCard/HeroCard.svelte +36 -0
  125. package/src/site/lib/Metadata/Metadata.svelte +14 -0
  126. package/src/site/lib/Navbar/Navbar.scss +92 -0
  127. package/src/site/lib/Navbar/Navbar.svelte +47 -0
  128. package/src/site/lib/PageSection/PageSection.scss +57 -0
  129. package/src/site/lib/PageSection/PageSection.svelte +10 -0
  130. package/src/site/lib/Showcase/Showcase.scss +53 -0
  131. package/src/site/lib/Showcase/Showcase.svelte +67 -0
  132. package/src/site/lib/Toc/Toc.scss +18 -0
  133. package/src/site/lib/Toc/Toc.svelte +59 -0
  134. package/src/site/lib/TreeView/TreeView.svelte +89 -0
  135. package/src/site/lib/index.ts +9 -0
  136. package/src/site/styles/_markdown.scss +260 -0
  137. package/src/site/styles/_mixins.scss +319 -0
  138. package/src/site/styles/global.scss +40 -0
  139. package/src/site/styles/pages/docs.scss +74 -0
  140. package/src/site/styles/pages/home.scss +134 -0
  141. package/static/bloom-mica-dark.png +0 -0
  142. package/static/bloom-mica-light.png +0 -0
  143. package/static/logo.svg +11 -0
  144. package/svelte.config.js +57 -0
  145. package/tsconfig.json +38 -0
@@ -0,0 +1,134 @@
1
+ @use "src/lib/mixins" as *;
2
+ @use "src/site/styles/mixins" as *;
3
+
4
+ :global {
5
+ #hero-section {
6
+ @include flex($direction: column, $justify: center, $align: center);
7
+ position: relative;
8
+ min-block-size: 596px;
9
+ text-align: center;
10
+ background: url("/bloom-mica-light.png") center/170% no-repeat;
11
+ @media (prefers-color-scheme: dark) {
12
+ background-image: url("/bloom-mica-dark.png");
13
+ }
14
+ > .page-section-inner {
15
+ @include flex($direction: column, $align: center);
16
+ position: relative;
17
+ padding-block: 58px 128px;
18
+ }
19
+ h1 {
20
+ font-size: 5.4rem;
21
+ }
22
+ .hero-card {
23
+ .text-box-container {
24
+ margin-block-start: 4px;
25
+ margin-block-end: 14px;
26
+ }
27
+ .copy-box {
28
+ font-family: var(--font-family-monospace);
29
+ }
30
+ header > .icon-button {
31
+ position: absolute;
32
+ inset-block-start: 6px;
33
+ inset-inline-end: 6px;
34
+ }
35
+ }
36
+ .buttons-spacer .button {
37
+ min-width: 128px;
38
+ }
39
+ }
40
+ }
41
+
42
+ .hero- {
43
+ &contents,
44
+ &cards {
45
+ position: relative;
46
+ }
47
+ &cards {
48
+ padding: 0 72px;
49
+ text-align: start;
50
+ position: absolute;
51
+ display: grid;
52
+ grid-gap: 24px;
53
+ inset-block-start: calc(100% - 48px);
54
+ grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
55
+ inline-size: 100%;
56
+ inline-size: 90vw;
57
+ max-inline-size: 1160px;
58
+ }
59
+ }
60
+
61
+ .editor-body {
62
+ @include flex($direction: column);
63
+ flex: 1 1 auto;
64
+ max-height: 100%;
65
+ min-height: 0;
66
+ line-height: 18px;
67
+ font: {
68
+ size: var(--body-font-size);
69
+ family: var(--font-family-monospace);
70
+ }
71
+ .editor-tabs {
72
+ @include flex($align: center);
73
+ flex: 0 0 auto;
74
+ margin: 0;
75
+ padding: 0;
76
+ li {
77
+ @include typography-body;
78
+ margin: 0;
79
+ border: 1px solid var(--divider-stroke-default);
80
+ border-block-start: 2px solid #ff3e00;
81
+ border-bottom: none;
82
+ background-color: var(--solid-background-base);
83
+ padding: 6px 12px;
84
+ list-style-type: none;
85
+ }
86
+ }
87
+ .editor {
88
+ flex: 1 1 auto;
89
+ display: flex;
90
+ overflow: auto;
91
+ overflow: overlay;
92
+ max-height: 100%;
93
+ min-height: 0;
94
+ border-radius: var(--control-corner-radius);
95
+ border-start-start-radius: 0;
96
+ background-color: var(--solid-background-base);
97
+ border: 1px solid var(--divider-stroke-default);
98
+ pre {
99
+ user-select: text;
100
+ padding: 4px;
101
+ margin: 0;
102
+ code {
103
+ line-height: inherit;
104
+ }
105
+ }
106
+ }
107
+ .line-numbers {
108
+ position: sticky;
109
+ align-self: flex-start;
110
+ z-index: 1;
111
+ left: 0;
112
+ flex: 0 0 auto;
113
+ font-weight: 400;
114
+ background-color: var(--solid-background-base);
115
+ color: var(--text-secondary);
116
+ padding: 4px 6px;
117
+ inline-size: fit-content;
118
+ min-inline-size: 32px;
119
+ text-align: end;
120
+ border-inline-end: 1px solid var(--divider-stroke-default);
121
+ span {
122
+ display: block;
123
+ }
124
+ }
125
+ }
126
+
127
+ .example-app {
128
+ @include flex($direction: column, $align: center, $justify: center);
129
+ flex: 1 1 auto;
130
+ padding-bottom: 32px;
131
+ > div {
132
+ margin-top: 12px;
133
+ }
134
+ }
Binary file
Binary file
@@ -0,0 +1,11 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="480" height="480" viewBox="0 0 480 453">
2
+ <defs>
3
+ <linearGradient id="shadow" gradientTransform="rotate(30)">
4
+ <stop offset="5%" stop-color="#014fd5"/><stop offset="95%" stop-color="#2e7cfe"/>
5
+ </linearGradient>
6
+ </defs>
7
+ <path fill="#c00172" d="M164.449,91.604c0,-0 -64.968,37.264 -112.03,64.258c-9.797,5.619 -15.84,16.051 -15.84,27.346c0,11.294 6.043,21.726 15.84,27.346c45.54,26.12 107.287,61.537 107.287,61.537l159.707,-91.604l-154.964,-88.883Z"/>
8
+ <path fill="#fe2e96" d="M339.841,8.997c-9.715,-5.572 -21.656,-5.572 -31.37,-0c-40.245,23.083 -144.022,82.607 -144.022,82.607l154.964,88.883c-0,0 64.968,-37.264 112.03,-64.257c9.797,-5.62 15.84,-16.052 15.84,-27.347c-0,-11.294 -6.043,-21.726 -15.84,-27.346c-31.322,-17.965 -70.31,-40.328 -91.602,-52.54Z"/>
9
+ <path fill="#2e7cfe" d="M319.413,180.487l-159.707,91.604l154.964,88.884c-0,-0 64.968,-37.265 112.03,-64.258c9.797,-5.62 15.84,-16.052 15.84,-27.346c-0,-11.295 -6.043,-21.727 -15.84,-27.346c-45.54,-26.121 -107.287,-61.538 -107.287,-61.538Z"/>
10
+ <path fill="#3b2efe" d="M159.706,272.091c0,0 -64.968,37.264 -112.03,64.258c-9.797,5.619 -15.84,16.051 -15.84,27.346c0,11.295 6.043,21.726 15.84,27.346c31.322,17.965 70.31,40.328 91.602,52.541c9.715,5.572 21.656,5.572 31.371,-0c40.244,-23.084 144.021,-82.607 144.021,-82.607l-154.964,-88.884Z"/>
11
+ </svg>
@@ -0,0 +1,57 @@
1
+ import path from "path";
2
+ import preprocess from "svelte-preprocess";
3
+ import vercel from "@sveltejs/adapter-vercel";
4
+ import cssnano from "cssnano";
5
+ import autoprefixer from "autoprefixer";
6
+ import prefixer from "postcss-variables-prefixer";
7
+
8
+ import a11yEmoji from "@fec/remark-a11y-emoji";
9
+ import slug from "rehype-slug";
10
+ import github from "remark-github";
11
+ import examples from "mdsvexamples";
12
+ import examplesVite from "mdsvexamples/vite";
13
+
14
+ import sveld from "vite-plugin-sveld";
15
+
16
+ import { mdsvex } from "mdsvex";
17
+
18
+ /** @type {import("@sveltejs/kit").Config} */
19
+ const config = {
20
+ extensions: [".svelte", ".md", ".svx"],
21
+ preprocess: [
22
+ mdsvex({
23
+ extensions: [".svx", ".md"],
24
+ remarkPlugins: [
25
+ github,
26
+ a11yEmoji,
27
+ [
28
+ examples,
29
+ {
30
+ ExampleComponent: "/src/site/lib/Example/Example.svelte"
31
+ }
32
+ ]
33
+ ],
34
+ rehypePlugins: [slug]
35
+ }),
36
+ preprocess({
37
+ postcss: {
38
+ plugins: [autoprefixer(), cssnano(), prefixer({ prefix: "fds-" })]
39
+ }
40
+ })
41
+ ],
42
+ kit: {
43
+ adapter: vercel(),
44
+ vite: {
45
+ plugins: [sveld(), examplesVite],
46
+ resolve: {
47
+ extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", "svg"],
48
+ alias: {
49
+ $site: path.resolve("src/site"),
50
+ "fluent-svelte": path.resolve("src/lib")
51
+ }
52
+ }
53
+ }
54
+ }
55
+ };
56
+
57
+ export default config;
package/tsconfig.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "compilerOptions": {
3
+ "moduleResolution": "node",
4
+ "module": "es2020",
5
+ "lib": ["es2020", "DOM"],
6
+ "target": "es2019",
7
+ /**
8
+ svelte-preprocess cannot figure out whether you have a value or a type, so tell TypeScript
9
+ to enforce using \`import type\` instead of \`import\` for Types.
10
+ */
11
+ "importsNotUsedAsValues": "error",
12
+ "isolatedModules": true,
13
+ "resolveJsonModule": true,
14
+ /**
15
+ To have warnings/errors of the Svelte compiler at the correct position,
16
+ enable source maps by default.
17
+ */
18
+ "sourceMap": true,
19
+ "esModuleInterop": true,
20
+ "skipLibCheck": true,
21
+ "forceConsistentCasingInFileNames": true,
22
+ "baseUrl": ".",
23
+ "allowJs": true,
24
+ "checkJs": true,
25
+ "paths": {
26
+ "fluent-svelte": ["src/lib"],
27
+ "fluent-svelte/*": ["src/lib/*"],
28
+ "$lib": ["src/lib"],
29
+ "$lib/*": ["src/lib/*"],
30
+ "$site": ["src/site"],
31
+ "$site/*": ["src/site/*"],
32
+ "$site/lib": ["src/site/lib"],
33
+ "$site/lib/*": ["src/site/lib/*"]
34
+ }
35
+ },
36
+ "extends": "./.svelte-kit/tsconfig.json",
37
+ "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.ts", "src/**/*.svelte"]
38
+ }