@worknice/whiteboard 0.24.0 → 0.26.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 (37) hide show
  1. package/dist/controls/Action.stories.d.ts +52 -0
  2. package/dist/controls/Action.stories.js +93 -0
  3. package/dist/controls/Button.stories.d.ts +2 -16
  4. package/dist/controls/Button.stories.js +5 -28
  5. package/dist/controls/ButtonCard.stories.d.ts +31 -0
  6. package/dist/controls/ButtonCard.stories.js +77 -0
  7. package/dist/controls/ButtonLink.d.ts +6 -1
  8. package/dist/controls/ButtonLink.js +1 -1
  9. package/dist/controls/ButtonLink.stories.d.ts +46 -0
  10. package/dist/controls/ButtonLink.stories.js +72 -0
  11. package/dist/controls/Disclosure.d.ts +4 -0
  12. package/dist/controls/Disclosure.stories.d.ts +53 -0
  13. package/dist/controls/Disclosure.stories.js +132 -0
  14. package/dist/controls/Link.d.ts +5 -0
  15. package/dist/controls/Link.stories.d.ts +38 -0
  16. package/dist/controls/Link.stories.js +34 -0
  17. package/dist/controls/LinkCard.stories.d.ts +23 -0
  18. package/dist/controls/LinkCard.stories.js +25 -0
  19. package/dist/controls/MenuButton.d.ts +2 -0
  20. package/dist/controls/MenuButton.js +2 -1
  21. package/dist/controls/MenuButton.stories.d.ts +71 -0
  22. package/dist/controls/MenuButton.stories.js +275 -0
  23. package/dist/controls/PageTabSet.d.ts +6 -2
  24. package/dist/controls/PageTabSet.stories.d.ts +49 -0
  25. package/dist/controls/PageTabSet.stories.js +106 -0
  26. package/dist/controls/Sortable.d.ts +8 -4
  27. package/dist/controls/Sortable.stories.d.ts +32 -0
  28. package/dist/controls/Sortable.stories.js +106 -0
  29. package/dist/controls/SortableItem.d.ts +1 -0
  30. package/dist/controls/TabSet.stories.d.ts +43 -0
  31. package/dist/controls/TabSet.stories.js +109 -0
  32. package/dist/controls/TabSetLink.d.ts +3 -0
  33. package/dist/controls/TabSetLink.stories.d.ts +44 -0
  34. package/dist/controls/TabSetLink.stories.js +204 -0
  35. package/dist/utils/storybook.d.ts +2 -0
  36. package/dist/utils/storybook.js +26 -0
  37. package/package.json +2 -2
@@ -0,0 +1,204 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_storybook_preview_api_98c434a5__ from "storybook/preview-api";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__ from "../presentation/Badge.js";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__ from "../presentation/HStack.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__ from "../presentation/Icon.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__ from "../presentation/PlainText.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__TabSetLink_js_237d0287__ from "./TabSetLink.js";
8
+ const meta = {
9
+ component: __WEBPACK_EXTERNAL_MODULE__TabSetLink_js_237d0287__["default"],
10
+ argTypes: {
11
+ id: {
12
+ control: false
13
+ },
14
+ activeHref: {
15
+ control: "select",
16
+ options: [
17
+ "/page1",
18
+ "/page2",
19
+ "/page3"
20
+ ],
21
+ description: "The href of the currently active tab"
22
+ }
23
+ },
24
+ args: {
25
+ activeHref: "/page1",
26
+ items: [
27
+ {
28
+ label: "Page 1",
29
+ href: "/page1"
30
+ },
31
+ {
32
+ label: "Page 2",
33
+ href: "/page2"
34
+ },
35
+ {
36
+ label: "Page 3",
37
+ href: "/page3"
38
+ }
39
+ ]
40
+ },
41
+ render: (args)=>{
42
+ const [{ activeHref }] = (0, __WEBPACK_EXTERNAL_MODULE_storybook_preview_api_98c434a5__.useArgs)();
43
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)("div", {
44
+ children: [
45
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__TabSetLink_js_237d0287__["default"], {
46
+ ...args,
47
+ activeHref: activeHref
48
+ }),
49
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
50
+ style: {
51
+ marginTop: "1rem",
52
+ padding: "1rem",
53
+ background: "#f5f5f5"
54
+ },
55
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
56
+ tone: "muted",
57
+ font: "small",
58
+ children: "Note: Clicking links in Storybook won't navigate, but you can change the active tab using the storybook controls."
59
+ })
60
+ })
61
+ ]
62
+ });
63
+ }
64
+ };
65
+ const TabSetLink_stories_rslib_entry_ = meta;
66
+ const Default = {};
67
+ const WithPrefix = {
68
+ args: {
69
+ activeHref: "/page2",
70
+ items: [
71
+ {
72
+ label: "Page 1",
73
+ href: "/page1",
74
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
75
+ symbol: "Edit"
76
+ })
77
+ },
78
+ {
79
+ label: "Page 2",
80
+ href: "/page2",
81
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
82
+ symbol: "Archive"
83
+ })
84
+ },
85
+ {
86
+ label: "Page 3",
87
+ href: "/page3",
88
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
89
+ symbol: "Copy"
90
+ })
91
+ }
92
+ ]
93
+ }
94
+ };
95
+ const WithRichContent = {
96
+ args: {
97
+ activeHref: "/page2",
98
+ items: [
99
+ {
100
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
101
+ spacing: "n2",
102
+ children: [
103
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
104
+ children: "Page 1"
105
+ }),
106
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
107
+ children: "3"
108
+ })
109
+ ]
110
+ }),
111
+ href: "/page1"
112
+ },
113
+ {
114
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
115
+ spacing: "n2",
116
+ children: [
117
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
118
+ children: "Page 2"
119
+ }),
120
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
121
+ color: "red",
122
+ children: "20"
123
+ })
124
+ ]
125
+ }),
126
+ href: "/page2"
127
+ },
128
+ {
129
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
130
+ spacing: "n2",
131
+ children: [
132
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
133
+ children: "Page 3"
134
+ }),
135
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
136
+ children: "0"
137
+ })
138
+ ]
139
+ }),
140
+ href: "/page3"
141
+ }
142
+ ]
143
+ }
144
+ };
145
+ const WithPrefixAndRichContent = {
146
+ args: {
147
+ activeHref: "/inbox",
148
+ items: [
149
+ {
150
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
151
+ spacing: "n2",
152
+ children: [
153
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
154
+ children: "Inbox"
155
+ }),
156
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
157
+ color: "red",
158
+ children: "5"
159
+ })
160
+ ]
161
+ }),
162
+ href: "/inbox",
163
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
164
+ symbol: "Inbox"
165
+ })
166
+ },
167
+ {
168
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
169
+ spacing: "n2",
170
+ children: [
171
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
172
+ children: "Sent"
173
+ }),
174
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
175
+ children: "12"
176
+ })
177
+ ]
178
+ }),
179
+ href: "/sent",
180
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
181
+ symbol: "Email"
182
+ })
183
+ },
184
+ {
185
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__presentation_HStack_js_10bfc552__["default"], {
186
+ spacing: "n2",
187
+ children: [
188
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_PlainText_js_e98763ad__["default"], {
189
+ children: "Drafts"
190
+ }),
191
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Badge_js_d3f5e18a__["default"], {
192
+ children: "2"
193
+ })
194
+ ]
195
+ }),
196
+ href: "/drafts",
197
+ prefix: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
198
+ symbol: "Edit"
199
+ })
200
+ }
201
+ ]
202
+ }
203
+ };
204
+ export { Default, WithPrefix, WithPrefixAndRichContent, WithRichContent, TabSetLink_stories_rslib_entry_ as default };
@@ -0,0 +1,2 @@
1
+ import type { ArgTypes } from "@storybook/nextjs-vite";
2
+ export declare const iconStoryControl: () => ArgTypes[string];
@@ -0,0 +1,26 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE__icons_index_js_d6af4ddb__ from "../icons/index.js";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__ from "../presentation/Icon.js";
4
+ const iconStoryControl = ()=>{
5
+ const availableIcons = Object.keys(__WEBPACK_EXTERNAL_MODULE__icons_index_js_d6af4ddb__);
6
+ const options = [
7
+ "None",
8
+ ...Object.keys(__WEBPACK_EXTERNAL_MODULE__icons_index_js_d6af4ddb__)
9
+ ];
10
+ const mapping = {};
11
+ mapping.None = null;
12
+ for (const iconName of availableIcons)mapping[iconName] = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__presentation_Icon_js_6961aa57__["default"], {
13
+ symbol: iconName
14
+ });
15
+ return {
16
+ control: "select",
17
+ options,
18
+ mapping,
19
+ table: {
20
+ type: {
21
+ summary: "ReactNode"
22
+ }
23
+ }
24
+ };
25
+ };
26
+ export { iconStoryControl };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@worknice/whiteboard",
3
3
  "description": "",
4
- "version": "0.24.0",
4
+ "version": "0.26.0",
5
5
  "license": "MIT",
6
6
  "private": false,
7
7
  "files": [
@@ -39,7 +39,7 @@
39
39
  "react-markdown": "^10.1.0",
40
40
  "utf8": "^3.0.0",
41
41
  "zod": "^4.1.13",
42
- "@worknice/utils": "^0.7.0"
42
+ "@worknice/utils": "^0.9.0"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@anolilab/semantic-release-pnpm": "^3.2.2",