@orioncactuscorp/ui 1.9.2 → 1.11.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/README.md +119 -54
- package/dist/components/Accordion/Accordion.css +1 -1
- package/dist/components/Accordion/Accordion.js +169 -177
- package/dist/components/ActionArea/ActionAreaLayout.js +20 -24
- package/dist/components/Cell/Cell.css +1 -1
- package/dist/components/Cell/Cell.js +57 -58
- package/dist/components/CheckMark/CheckMark.css +1 -1
- package/dist/components/Checkbox/Checkbox.css +1 -1
- package/dist/components/Checkbox/Checkbox.js +50 -51
- package/dist/components/Menu/Menu.css +1 -1
- package/dist/components/Menu/Menu.module.scss.js +20 -22
- package/dist/components/Modal/Modal.css +1 -1
- package/dist/components/Modal/Modal.js +585 -575
- package/dist/components/Modal/bottomSheetGeometry.js +46 -33
- package/dist/components/Modal/modalScrollArbitration.js +71 -49
- package/dist/components/Modal/snapPoints.js +42 -38
- package/dist/components/Modal/useModalContentBlockTransition.js +49 -44
- package/dist/components/Modal/useModalDrag.js +937 -854
- package/dist/components/Radio/Radio.css +1 -1
- package/dist/components/ScrollArea/ScrollArea.js +197 -200
- package/dist/components/Select/Select.js +31 -34
- package/dist/components/Switch/Switch.css +1 -1
- package/dist/components/Tabs/Tabs.css +1 -0
- package/dist/components/Tabs/Tabs.js +208 -0
- package/dist/components/Tabs/Tabs.module.scss.js +27 -0
- package/dist/components/Tabs.d.ts +6 -0
- package/dist/components/Tabs.js +8 -0
- package/dist/components/TextArea/TextArea.js +57 -58
- package/dist/components/TextInput/TextInput.js +30 -33
- package/dist/components/Tooltip/Tooltip.css +1 -1
- package/dist/foundations/color.theme.dark.css +1 -1
- package/dist/foundations/color.theme.light.css +1 -1
- package/dist/foundations/focus.css +1 -0
- package/dist/foundations/reset.css +1 -1
- package/dist/foundations.css +4 -3
- package/dist/index.js +69 -64
- package/dist/react/motion.js +31 -35
- package/dist/reset.css +1 -1
- package/dist/styles.css +14 -12
- package/dist/ui/src/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/ui/src/components/ActionArea/ActionAreaLayout.d.ts.map +1 -1
- package/dist/ui/src/components/Cell/Cell.d.ts.map +1 -1
- package/dist/ui/src/components/CheckMark/types.d.ts +10 -0
- package/dist/ui/src/components/CheckMark/types.d.ts.map +1 -1
- package/dist/ui/src/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/ui/src/components/Checkbox/types.d.ts +16 -0
- package/dist/ui/src/components/Checkbox/types.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/Modal.d.ts +1 -1
- package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/bottomSheetGeometry.d.ts +13 -0
- package/dist/ui/src/components/Modal/bottomSheetGeometry.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/snapPoints.d.ts +3 -1
- package/dist/ui/src/components/Modal/snapPoints.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/types.d.ts +8 -0
- package/dist/ui/src/components/Modal/types.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/useModalContentBlockTransition.d.ts.map +1 -1
- package/dist/ui/src/components/Modal/useModalDrag.d.ts +27 -10
- package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -1
- package/dist/ui/src/components/Radio/types.d.ts +16 -0
- package/dist/ui/src/components/Radio/types.d.ts.map +1 -1
- package/dist/ui/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/dist/ui/src/components/Select/Select.d.ts.map +1 -1
- package/dist/ui/src/components/Switch/types.d.ts +10 -0
- package/dist/ui/src/components/Switch/types.d.ts.map +1 -1
- package/dist/ui/src/components/Tabs/Tabs.d.ts +7 -0
- package/dist/ui/src/components/Tabs/Tabs.d.ts.map +1 -0
- package/dist/ui/src/components/Tabs/index.d.ts +3 -0
- package/dist/ui/src/components/Tabs/index.d.ts.map +1 -0
- package/dist/ui/src/components/Tabs/types.d.ts +26 -0
- package/dist/ui/src/components/Tabs/types.d.ts.map +1 -0
- package/dist/ui/src/components/TextArea/TextArea.d.ts.map +1 -1
- package/dist/ui/src/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/ui/src/index.d.ts +2 -0
- package/dist/ui/src/index.d.ts.map +1 -1
- package/dist/ui/src/react/motion/index.d.ts.map +1 -1
- package/dist/ui/src/utils/mergeRefs.d.ts +13 -0
- package/dist/ui/src/utils/mergeRefs.d.ts.map +1 -0
- package/dist/utils/mergeRefs.js +24 -0
- package/dist/vscode/oc-ui-vars.css +13 -0
- package/docs/editor-setup.md +42 -0
- package/docs/motion.md +665 -0
- package/docs/responsive-foundation-profile.md +230 -0
- package/docs/scss-helpers.md +189 -0
- package/docs/selector-contract.md +260 -0
- package/docs/spring.md +382 -0
- package/docs/stability.md +62 -0
- package/docs/tokens.md +559 -0
- package/package.json +9 -4
- package/src/scss/foundations/color-theme.test.ts +14 -0
- package/src/scss/foundations/color.theme.dark.scss +1 -0
- package/src/scss/foundations/color.theme.light.scss +1 -0
- package/src/scss/foundations/focus.scss +4 -0
- package/src/scss/foundations/focus.test.ts +48 -0
- package/src/scss/foundations/reset.scss +9 -4
- package/src/scss/foundations/reset.test.ts +32 -0
- package/src/scss/index.scss +2 -0
- package/src/scss/mixins/_focus.scss +11 -0
- package/src/scss/mixins/_focus.test.ts +58 -0
|
@@ -21,11 +21,13 @@
|
|
|
21
21
|
--oc-atomic-shadow-normal-xlarge: initial;
|
|
22
22
|
--oc-atomic-shadow-normal-xsmall: initial;
|
|
23
23
|
--oc-atomic-shadow-spread-small: initial;
|
|
24
|
+
--oc-atomic-shadow-spread-xlarge: initial;
|
|
24
25
|
--oc-atomic-width-content: initial;
|
|
25
26
|
--oc-atomic-width-section-large: initial;
|
|
26
27
|
--oc-atomic-width-section-medium: initial;
|
|
27
28
|
--oc-atomic-width-section-small: initial;
|
|
28
29
|
--oc-atomic-width-section-xsmall: initial;
|
|
30
|
+
--oc-breakpoint-hg: initial;
|
|
29
31
|
--oc-breakpoint-lg: initial;
|
|
30
32
|
--oc-breakpoint-md: initial;
|
|
31
33
|
--oc-breakpoint-sm: initial;
|
|
@@ -142,6 +144,7 @@
|
|
|
142
144
|
--oc-color-global-neutral-95: initial;
|
|
143
145
|
--oc-color-global-neutral-99: initial;
|
|
144
146
|
--oc-color-global-opacity-0: initial;
|
|
147
|
+
--oc-color-global-opacity-100: initial;
|
|
145
148
|
--oc-color-global-opacity-12: initial;
|
|
146
149
|
--oc-color-global-opacity-16: initial;
|
|
147
150
|
--oc-color-global-opacity-22: initial;
|
|
@@ -266,6 +269,7 @@
|
|
|
266
269
|
--oc-color-theme-fill-alternative: initial;
|
|
267
270
|
--oc-color-theme-fill-normal: initial;
|
|
268
271
|
--oc-color-theme-fill-strong: initial;
|
|
272
|
+
--oc-color-theme-focus-ring: initial;
|
|
269
273
|
--oc-color-theme-interaction-disable: initial;
|
|
270
274
|
--oc-color-theme-interaction-inactive: initial;
|
|
271
275
|
--oc-color-theme-inverse-background: initial;
|
|
@@ -285,6 +289,7 @@
|
|
|
285
289
|
--oc-color-theme-line-solid-neutral: initial;
|
|
286
290
|
--oc-color-theme-line-solid-normal: initial;
|
|
287
291
|
--oc-color-theme-line-solid-strong: initial;
|
|
292
|
+
--oc-color-theme-material-dimmer: initial;
|
|
288
293
|
--oc-color-theme-primary-normal: initial;
|
|
289
294
|
--oc-color-theme-static-black: initial;
|
|
290
295
|
--oc-color-theme-static-transparent: initial;
|
|
@@ -292,6 +297,8 @@
|
|
|
292
297
|
--oc-color-theme-status-cautionary: initial;
|
|
293
298
|
--oc-color-theme-status-negative: initial;
|
|
294
299
|
--oc-color-theme-status-positive: initial;
|
|
300
|
+
--oc-focus-ring-offset: initial;
|
|
301
|
+
--oc-focus-ring-width: initial;
|
|
295
302
|
--oc-motion-distance-factor: initial;
|
|
296
303
|
--oc-motion-distance-factor-reject: initial;
|
|
297
304
|
--oc-motion-distance-factor-spatial: initial;
|
|
@@ -338,6 +345,7 @@
|
|
|
338
345
|
--oc-motion-timing-sheet-release: initial;
|
|
339
346
|
--oc-motion-timing-surface: initial;
|
|
340
347
|
--oc-motion-timing-surface-exit: initial;
|
|
348
|
+
--oc-space-item-gap-atom: initial;
|
|
341
349
|
--oc-space-item-gap-huge: initial;
|
|
342
350
|
--oc-space-item-gap-large: initial;
|
|
343
351
|
--oc-space-item-gap-medium: initial;
|
|
@@ -368,6 +376,7 @@
|
|
|
368
376
|
--oc-space-section-padding-viewport-inline-safe-start: initial;
|
|
369
377
|
--oc-space-section-padding-viewport-x: initial;
|
|
370
378
|
--oc-space-section-padding-viewport-y: initial;
|
|
379
|
+
--oc-spring-bouncy-duration-scale: initial;
|
|
371
380
|
--oc-spring-bouncy-timing: initial;
|
|
372
381
|
--oc-spring-smooth-duration-scale: initial;
|
|
373
382
|
--oc-spring-smooth-timing: initial;
|
|
@@ -379,6 +388,7 @@
|
|
|
379
388
|
--oc-typo-height-body2: initial;
|
|
380
389
|
--oc-typo-height-body2reading: initial;
|
|
381
390
|
--oc-typo-height-caption1: initial;
|
|
391
|
+
--oc-typo-height-caption2: initial;
|
|
382
392
|
--oc-typo-height-display1: initial;
|
|
383
393
|
--oc-typo-height-display2: initial;
|
|
384
394
|
--oc-typo-height-display3: initial;
|
|
@@ -397,6 +407,7 @@
|
|
|
397
407
|
--oc-typo-size-body2: initial;
|
|
398
408
|
--oc-typo-size-body2reading: initial;
|
|
399
409
|
--oc-typo-size-caption1: initial;
|
|
410
|
+
--oc-typo-size-caption2: initial;
|
|
400
411
|
--oc-typo-size-display1: initial;
|
|
401
412
|
--oc-typo-size-display2: initial;
|
|
402
413
|
--oc-typo-size-display3: initial;
|
|
@@ -445,6 +456,7 @@
|
|
|
445
456
|
--oc-typo-weight-caption1-bold: initial;
|
|
446
457
|
--oc-typo-weight-caption1-medium: initial;
|
|
447
458
|
--oc-typo-weight-caption1-normal: initial;
|
|
459
|
+
--oc-typo-weight-caption2-bold: initial;
|
|
448
460
|
--oc-typo-weight-caption2-medium: initial;
|
|
449
461
|
--oc-typo-weight-caption2-normal: initial;
|
|
450
462
|
--oc-typo-weight-display1-bold: initial;
|
|
@@ -491,4 +503,5 @@
|
|
|
491
503
|
--oc-zindex-2: initial;
|
|
492
504
|
--oc-zindex-3: initial;
|
|
493
505
|
--oc-zindex-4: initial;
|
|
506
|
+
--oc-zindex-5: initial;
|
|
494
507
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Editor Setup
|
|
2
|
+
|
|
3
|
+
## VS Code CSS Variable Autocomplete
|
|
4
|
+
|
|
5
|
+
package는 VS Code CSS variable autocomplete 확장이 읽을 수 있는 foundation token index를 함께 배포합니다.
|
|
6
|
+
|
|
7
|
+
```text
|
|
8
|
+
node_modules/@orioncactuscorp/ui/dist/vscode/oc-ui-vars.css
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
consumer repository에서 `phoenisx.cssvar` 확장을 사용할 경우 `.vscode/settings.json`에 아래 설정을 추가합니다.
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"editor.quickSuggestions": {
|
|
16
|
+
"other": "on",
|
|
17
|
+
"comments": "off",
|
|
18
|
+
"strings": "off"
|
|
19
|
+
},
|
|
20
|
+
"editor.suggestOnTriggerCharacters": true,
|
|
21
|
+
"editor.inlineSuggest.suppressSuggestions": false,
|
|
22
|
+
"cssvar.files": [
|
|
23
|
+
"./node_modules/@orioncactuscorp/ui/dist/vscode/oc-ui-vars.css"
|
|
24
|
+
],
|
|
25
|
+
"cssvar.ignore": [],
|
|
26
|
+
"cssvar.extensions": ["css", "scss", "sass", "js", "jsx", "ts", "tsx"]
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
기존 `cssvar.files`가 있다면 덮어쓰지 말고 위 경로를 추가합니다. 단, oc-ui token 자동완성용으로 `@orioncactuscorp/ui/scss/foundations/*` source file을 fallback처럼 함께 추가하지 않습니다. `color.theme.light.scss`와 `color.theme.dark.scss`는 같은 `--oc-color-theme-*` semantic token 이름을 theme별 값으로 다시 선언하므로, raw source file을 같이 읽으면 completion 후보가 중복됩니다.
|
|
31
|
+
|
|
32
|
+
`phoenisx.cssvar`의 기본 `cssvar.ignore`는 `**/node_modules/**`를 제외하므로, node_modules 안의 oc-ui index를 읽으려면 `cssvar.ignore`에서 해당 제외를 제거해야 합니다. 위 예시는 oc-ui index만 명시적으로 읽는 설정이므로 빈 배열을 사용합니다.
|
|
33
|
+
|
|
34
|
+
`phoenisx.cssvar`는 빈 CSS value 위치에서 전체 token 목록을 먼저 띄우지 않습니다. `padding: --`처럼 CSS variable 이름을 직접 입력하거나 `padding: var(--`처럼 `var()` 안에서 `--`를 입력하면 oc-ui token completion이 표시됩니다.
|
|
35
|
+
|
|
36
|
+
VS Code Insiders 또는 Copilot inline suggestion이 켜진 환경에서 token이 회색 inline suggestion으로만 보이고 completion popup이 열리지 않으면, 위 예시처럼 `editor.quickSuggestions`, `editor.suggestOnTriggerCharacters`, `editor.inlineSuggest.suppressSuggestions`를 함께 설정합니다.
|
|
37
|
+
|
|
38
|
+
이 파일은 `foundations.css`에서 생성되므로 설치된 `@orioncactuscorp/ui` package 버전의 `--oc-*` foundation token과 자동완성 목록이 함께 움직입니다. 자동완성 전용 index이므로 runtime stylesheet로 import하지 않습니다.
|
|
39
|
+
|
|
40
|
+
## oc-ui source repository에서의 설정
|
|
41
|
+
|
|
42
|
+
oc-ui source repository에서도 `.vscode/settings.json`은 `packages/ui/dist/vscode/oc-ui-vars.css`를 읽습니다. 이 index는 `foundations.css`에서 token 이름만 dedupe해 생성한 자동완성 전용 파일입니다. source checkout에서는 extension의 default CSS scan이나 이전 cache가 compiled CSS를 다시 읽지 않도록 `packages/ui/dist/styles.css`, `packages/ui/dist/foundations.css`, `packages/ui/dist/foundations/**`, `packages/ui/src/scss/foundations/**`를 `cssvar.ignore`에 둡니다. source checkout에서 index 파일이 없다면 `bun run --cwd packages/ui build:css`를 먼저 실행합니다.
|