@orangecheck/app-design 0.0.0-stage → 0.1.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 (48) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +39 -2
  3. package/dist/brand.d.mts +46 -0
  4. package/dist/brand.d.ts +46 -0
  5. package/dist/brand.js +144 -0
  6. package/dist/brand.js.map +1 -0
  7. package/dist/brand.mjs +136 -0
  8. package/dist/brand.mjs.map +1 -0
  9. package/dist/chrome.d.mts +64 -0
  10. package/dist/chrome.d.ts +64 -0
  11. package/dist/chrome.js +479 -0
  12. package/dist/chrome.js.map +1 -0
  13. package/dist/chrome.mjs +447 -0
  14. package/dist/chrome.mjs.map +1 -0
  15. package/dist/components.d.mts +474 -0
  16. package/dist/components.d.ts +474 -0
  17. package/dist/components.js +619 -0
  18. package/dist/components.js.map +1 -0
  19. package/dist/components.mjs +588 -0
  20. package/dist/components.mjs.map +1 -0
  21. package/dist/index.d.mts +21 -0
  22. package/dist/index.d.ts +21 -0
  23. package/dist/index.js +1597 -0
  24. package/dist/index.js.map +1 -0
  25. package/dist/index.mjs +1448 -0
  26. package/dist/index.mjs.map +1 -0
  27. package/dist/primitives.d.mts +140 -0
  28. package/dist/primitives.d.ts +140 -0
  29. package/dist/primitives.js +706 -0
  30. package/dist/primitives.js.map +1 -0
  31. package/dist/primitives.mjs +606 -0
  32. package/dist/primitives.mjs.map +1 -0
  33. package/dist/styles/fonts/inter-latin-ext.woff2 +0 -0
  34. package/dist/styles/fonts/inter-latin.woff2 +0 -0
  35. package/dist/styles/fonts/jetbrains-mono-latin-ext.woff2 +0 -0
  36. package/dist/styles/fonts/jetbrains-mono-latin.woff2 +0 -0
  37. package/dist/styles/fonts.css +74 -0
  38. package/dist/styles/motion.css +80 -0
  39. package/dist/styles/theme.css +227 -0
  40. package/dist/styles/tokens.css +152 -0
  41. package/dist/styles.css +14 -0
  42. package/dist/tokens.d.mts +42 -0
  43. package/dist/tokens.d.ts +42 -0
  44. package/dist/tokens.js +50 -0
  45. package/dist/tokens.js.map +1 -0
  46. package/dist/tokens.mjs +45 -0
  47. package/dist/tokens.mjs.map +1 -0
  48. package/package.json +114 -4
@@ -0,0 +1,14 @@
1
+ /*
2
+ * @orangecheck/app-design — the whole system in one import.
3
+ *
4
+ * @import 'tailwindcss';
5
+ * @custom-variant dark (&:is(.dark *));
6
+ * @source '../../node_modules/@orangecheck/app-design/dist';
7
+ * @import '@orangecheck/app-design/styles.css';
8
+ *
9
+ * and <html data-oc-app="ochk">. Nothing here applies without the attribute.
10
+ */
11
+ @import './styles/fonts.css';
12
+ @import './styles/theme.css';
13
+ @import './styles/tokens.css';
14
+ @import './styles/motion.css';
@@ -0,0 +1,42 @@
1
+ declare const APP_ATTRIBUTE = "data-oc-app";
2
+ declare const APP_ID = "ochk";
3
+ declare const appColors: {
4
+ readonly light: {
5
+ readonly background: "#FAFAFA";
6
+ readonly foreground: "#0A0A0A";
7
+ readonly card: "#FFFFFF";
8
+ readonly muted: "#F2F2F2";
9
+ readonly mutedForeground: "#54585E";
10
+ readonly subtleForeground: "#686C72";
11
+ readonly border: "#ECECEC";
12
+ readonly hairlineStrong: "#DADADA";
13
+ readonly accentDisplay: "#F55819";
14
+ readonly accentInk: "#C73F09";
15
+ };
16
+ readonly dark: {
17
+ readonly background: "#0A0A0A";
18
+ readonly foreground: "#FAFAFA";
19
+ readonly card: "#161616";
20
+ readonly muted: "#1E1E1E";
21
+ readonly mutedForeground: "#A3A6AA";
22
+ readonly subtleForeground: "#8B8E93";
23
+ readonly border: "#262626";
24
+ readonly hairlineStrong: "#333333";
25
+ readonly accentDisplay: "#F66D36";
26
+ readonly accentInk: "#F0835A";
27
+ };
28
+ readonly brand: {
29
+ readonly orange: "#F66D36";
30
+ readonly orangeLight: "#FB933C";
31
+ readonly orangeDeep: "#EA580B";
32
+ readonly peach: "#FED8AB";
33
+ readonly ink: "#0A0A0A";
34
+ readonly inkCard: "#1E1E1E";
35
+ };
36
+ };
37
+ declare const appFonts: {
38
+ readonly sans: "'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif";
39
+ readonly mono: "'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace";
40
+ };
41
+
42
+ export { APP_ATTRIBUTE, APP_ID, appColors, appFonts };
@@ -0,0 +1,42 @@
1
+ declare const APP_ATTRIBUTE = "data-oc-app";
2
+ declare const APP_ID = "ochk";
3
+ declare const appColors: {
4
+ readonly light: {
5
+ readonly background: "#FAFAFA";
6
+ readonly foreground: "#0A0A0A";
7
+ readonly card: "#FFFFFF";
8
+ readonly muted: "#F2F2F2";
9
+ readonly mutedForeground: "#54585E";
10
+ readonly subtleForeground: "#686C72";
11
+ readonly border: "#ECECEC";
12
+ readonly hairlineStrong: "#DADADA";
13
+ readonly accentDisplay: "#F55819";
14
+ readonly accentInk: "#C73F09";
15
+ };
16
+ readonly dark: {
17
+ readonly background: "#0A0A0A";
18
+ readonly foreground: "#FAFAFA";
19
+ readonly card: "#161616";
20
+ readonly muted: "#1E1E1E";
21
+ readonly mutedForeground: "#A3A6AA";
22
+ readonly subtleForeground: "#8B8E93";
23
+ readonly border: "#262626";
24
+ readonly hairlineStrong: "#333333";
25
+ readonly accentDisplay: "#F66D36";
26
+ readonly accentInk: "#F0835A";
27
+ };
28
+ readonly brand: {
29
+ readonly orange: "#F66D36";
30
+ readonly orangeLight: "#FB933C";
31
+ readonly orangeDeep: "#EA580B";
32
+ readonly peach: "#FED8AB";
33
+ readonly ink: "#0A0A0A";
34
+ readonly inkCard: "#1E1E1E";
35
+ };
36
+ };
37
+ declare const appFonts: {
38
+ readonly sans: "'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif";
39
+ readonly mono: "'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace";
40
+ };
41
+
42
+ export { APP_ATTRIBUTE, APP_ID, appColors, appFonts };
package/dist/tokens.js ADDED
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ // src/tokens/index.ts
4
+ var APP_ATTRIBUTE = "data-oc-app";
5
+ var APP_ID = "ochk";
6
+ var appColors = {
7
+ light: {
8
+ background: "#FAFAFA",
9
+ foreground: "#0A0A0A",
10
+ card: "#FFFFFF",
11
+ muted: "#F2F2F2",
12
+ mutedForeground: "#54585E",
13
+ subtleForeground: "#686C72",
14
+ border: "#ECECEC",
15
+ hairlineStrong: "#DADADA",
16
+ accentDisplay: "#F55819",
17
+ accentInk: "#C73F09"
18
+ },
19
+ dark: {
20
+ background: "#0A0A0A",
21
+ foreground: "#FAFAFA",
22
+ card: "#161616",
23
+ muted: "#1E1E1E",
24
+ mutedForeground: "#A3A6AA",
25
+ subtleForeground: "#8B8E93",
26
+ border: "#262626",
27
+ hairlineStrong: "#333333",
28
+ accentDisplay: "#F66D36",
29
+ accentInk: "#F0835A"
30
+ },
31
+ brand: {
32
+ orange: "#F66D36",
33
+ orangeLight: "#FB933C",
34
+ orangeDeep: "#EA580B",
35
+ peach: "#FED8AB",
36
+ ink: "#0A0A0A",
37
+ inkCard: "#1E1E1E"
38
+ }
39
+ };
40
+ var appFonts = {
41
+ sans: "'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif",
42
+ mono: "'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace"
43
+ };
44
+
45
+ exports.APP_ATTRIBUTE = APP_ATTRIBUTE;
46
+ exports.APP_ID = APP_ID;
47
+ exports.appColors = appColors;
48
+ exports.appFonts = appFonts;
49
+ //# sourceMappingURL=tokens.js.map
50
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tokens/index.ts"],"names":[],"mappings":";;;AAKO,IAAM,aAAA,GAAgB;AACtB,IAAM,MAAA,GAAS;AAEf,IAAM,SAAA,GAAY;AAAA,EACrB,KAAA,EAAO;AAAA,IACH,UAAA,EAAY,SAAA;AAAA,IACZ,UAAA,EAAY,SAAA;AAAA,IACZ,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,eAAA,EAAiB,SAAA;AAAA,IACjB,gBAAA,EAAkB,SAAA;AAAA,IAClB,MAAA,EAAQ,SAAA;AAAA,IACR,cAAA,EAAgB,SAAA;AAAA,IAChB,aAAA,EAAe,SAAA;AAAA,IACf,SAAA,EAAW;AAAA,GACf;AAAA,EACA,IAAA,EAAM;AAAA,IACF,UAAA,EAAY,SAAA;AAAA,IACZ,UAAA,EAAY,SAAA;AAAA,IACZ,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,eAAA,EAAiB,SAAA;AAAA,IACjB,gBAAA,EAAkB,SAAA;AAAA,IAClB,MAAA,EAAQ,SAAA;AAAA,IACR,cAAA,EAAgB,SAAA;AAAA,IAChB,aAAA,EAAe,SAAA;AAAA,IACf,SAAA,EAAW;AAAA,GACf;AAAA,EACA,KAAA,EAAO;AAAA,IACH,MAAA,EAAQ,SAAA;AAAA,IACR,WAAA,EAAa,SAAA;AAAA,IACb,UAAA,EAAY,SAAA;AAAA,IACZ,KAAA,EAAO,SAAA;AAAA,IACP,GAAA,EAAK,SAAA;AAAA,IACL,OAAA,EAAS;AAAA;AAEjB;AAEO,IAAM,QAAA,GAAW;AAAA,EACpB,IAAA,EAAM,yEAAA;AAAA,EACN,IAAA,EAAM;AACV","file":"tokens.js","sourcesContent":["/*\n * The ochk.app palette as data, for places CSS variables cannot reach: OG\n * images, canvas, charts, email. Must match styles/tokens.css; the contrast\n * check reads both.\n */\nexport const APP_ATTRIBUTE = 'data-oc-app';\nexport const APP_ID = 'ochk';\n\nexport const appColors = {\n light: {\n background: '#FAFAFA',\n foreground: '#0A0A0A',\n card: '#FFFFFF',\n muted: '#F2F2F2',\n mutedForeground: '#54585E',\n subtleForeground: '#686C72',\n border: '#ECECEC',\n hairlineStrong: '#DADADA',\n accentDisplay: '#F55819',\n accentInk: '#C73F09',\n },\n dark: {\n background: '#0A0A0A',\n foreground: '#FAFAFA',\n card: '#161616',\n muted: '#1E1E1E',\n mutedForeground: '#A3A6AA',\n subtleForeground: '#8B8E93',\n border: '#262626',\n hairlineStrong: '#333333',\n accentDisplay: '#F66D36',\n accentInk: '#F0835A',\n },\n brand: {\n orange: '#F66D36',\n orangeLight: '#FB933C',\n orangeDeep: '#EA580B',\n peach: '#FED8AB',\n ink: '#0A0A0A',\n inkCard: '#1E1E1E',\n },\n} as const;\n\nexport const appFonts = {\n sans: \"'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif\",\n mono: \"'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace\",\n} as const;\n"]}
@@ -0,0 +1,45 @@
1
+ // src/tokens/index.ts
2
+ var APP_ATTRIBUTE = "data-oc-app";
3
+ var APP_ID = "ochk";
4
+ var appColors = {
5
+ light: {
6
+ background: "#FAFAFA",
7
+ foreground: "#0A0A0A",
8
+ card: "#FFFFFF",
9
+ muted: "#F2F2F2",
10
+ mutedForeground: "#54585E",
11
+ subtleForeground: "#686C72",
12
+ border: "#ECECEC",
13
+ hairlineStrong: "#DADADA",
14
+ accentDisplay: "#F55819",
15
+ accentInk: "#C73F09"
16
+ },
17
+ dark: {
18
+ background: "#0A0A0A",
19
+ foreground: "#FAFAFA",
20
+ card: "#161616",
21
+ muted: "#1E1E1E",
22
+ mutedForeground: "#A3A6AA",
23
+ subtleForeground: "#8B8E93",
24
+ border: "#262626",
25
+ hairlineStrong: "#333333",
26
+ accentDisplay: "#F66D36",
27
+ accentInk: "#F0835A"
28
+ },
29
+ brand: {
30
+ orange: "#F66D36",
31
+ orangeLight: "#FB933C",
32
+ orangeDeep: "#EA580B",
33
+ peach: "#FED8AB",
34
+ ink: "#0A0A0A",
35
+ inkCard: "#1E1E1E"
36
+ }
37
+ };
38
+ var appFonts = {
39
+ sans: "'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif",
40
+ mono: "'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace"
41
+ };
42
+
43
+ export { APP_ATTRIBUTE, APP_ID, appColors, appFonts };
44
+ //# sourceMappingURL=tokens.mjs.map
45
+ //# sourceMappingURL=tokens.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tokens/index.ts"],"names":[],"mappings":";AAKO,IAAM,aAAA,GAAgB;AACtB,IAAM,MAAA,GAAS;AAEf,IAAM,SAAA,GAAY;AAAA,EACrB,KAAA,EAAO;AAAA,IACH,UAAA,EAAY,SAAA;AAAA,IACZ,UAAA,EAAY,SAAA;AAAA,IACZ,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,eAAA,EAAiB,SAAA;AAAA,IACjB,gBAAA,EAAkB,SAAA;AAAA,IAClB,MAAA,EAAQ,SAAA;AAAA,IACR,cAAA,EAAgB,SAAA;AAAA,IAChB,aAAA,EAAe,SAAA;AAAA,IACf,SAAA,EAAW;AAAA,GACf;AAAA,EACA,IAAA,EAAM;AAAA,IACF,UAAA,EAAY,SAAA;AAAA,IACZ,UAAA,EAAY,SAAA;AAAA,IACZ,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,eAAA,EAAiB,SAAA;AAAA,IACjB,gBAAA,EAAkB,SAAA;AAAA,IAClB,MAAA,EAAQ,SAAA;AAAA,IACR,cAAA,EAAgB,SAAA;AAAA,IAChB,aAAA,EAAe,SAAA;AAAA,IACf,SAAA,EAAW;AAAA,GACf;AAAA,EACA,KAAA,EAAO;AAAA,IACH,MAAA,EAAQ,SAAA;AAAA,IACR,WAAA,EAAa,SAAA;AAAA,IACb,UAAA,EAAY,SAAA;AAAA,IACZ,KAAA,EAAO,SAAA;AAAA,IACP,GAAA,EAAK,SAAA;AAAA,IACL,OAAA,EAAS;AAAA;AAEjB;AAEO,IAAM,QAAA,GAAW;AAAA,EACpB,IAAA,EAAM,yEAAA;AAAA,EACN,IAAA,EAAM;AACV","file":"tokens.mjs","sourcesContent":["/*\n * The ochk.app palette as data, for places CSS variables cannot reach: OG\n * images, canvas, charts, email. Must match styles/tokens.css; the contrast\n * check reads both.\n */\nexport const APP_ATTRIBUTE = 'data-oc-app';\nexport const APP_ID = 'ochk';\n\nexport const appColors = {\n light: {\n background: '#FAFAFA',\n foreground: '#0A0A0A',\n card: '#FFFFFF',\n muted: '#F2F2F2',\n mutedForeground: '#54585E',\n subtleForeground: '#686C72',\n border: '#ECECEC',\n hairlineStrong: '#DADADA',\n accentDisplay: '#F55819',\n accentInk: '#C73F09',\n },\n dark: {\n background: '#0A0A0A',\n foreground: '#FAFAFA',\n card: '#161616',\n muted: '#1E1E1E',\n mutedForeground: '#A3A6AA',\n subtleForeground: '#8B8E93',\n border: '#262626',\n hairlineStrong: '#333333',\n accentDisplay: '#F66D36',\n accentInk: '#F0835A',\n },\n brand: {\n orange: '#F66D36',\n orangeLight: '#FB933C',\n orangeDeep: '#EA580B',\n peach: '#FED8AB',\n ink: '#0A0A0A',\n inkCard: '#1E1E1E',\n },\n} as const;\n\nexport const appFonts = {\n sans: \"'OCA Inter', 'OCA Inter Fallback', ui-sans-serif, system-ui, sans-serif\",\n mono: \"'OCA JetBrains Mono', 'OCA JetBrains Mono Fallback', ui-monospace, monospace\",\n} as const;\n"]}
package/package.json CHANGED
@@ -1,6 +1,116 @@
1
1
  {
2
2
  "name": "@orangecheck/app-design",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.1.1",
4
+ "description": "The ochk.app design system: tokens, type, the isometric check, halftone photography, primitives and app chrome. Its own system, scoped under data-oc-app=\"ochk\" so it never reaches the .ochk.io family sites.",
5
+ "keywords": [
6
+ "orangecheck",
7
+ "ochk.app",
8
+ "design-system",
9
+ "tokens",
10
+ "react",
11
+ "internal"
12
+ ],
13
+ "author": "OrangeCheck",
14
+ "license": "MIT",
15
+ "homepage": "https://design.ochk.io",
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "https://github.com/orangecheck/oc-packages.git",
19
+ "directory": "app-design"
20
+ },
21
+ "bugs": {
22
+ "url": "https://github.com/orangecheck/oc-packages/issues"
23
+ },
24
+ "main": "./dist/index.js",
25
+ "module": "./dist/index.mjs",
26
+ "types": "./dist/index.d.ts",
27
+ "exports": {
28
+ ".": {
29
+ "types": "./dist/index.d.ts",
30
+ "import": "./dist/index.mjs",
31
+ "require": "./dist/index.js"
32
+ },
33
+ "./tokens": {
34
+ "types": "./dist/tokens.d.ts",
35
+ "import": "./dist/tokens.mjs",
36
+ "require": "./dist/tokens.js"
37
+ },
38
+ "./primitives": {
39
+ "types": "./dist/primitives.d.ts",
40
+ "import": "./dist/primitives.mjs",
41
+ "require": "./dist/primitives.js"
42
+ },
43
+ "./brand": {
44
+ "types": "./dist/brand.d.ts",
45
+ "import": "./dist/brand.mjs",
46
+ "require": "./dist/brand.js"
47
+ },
48
+ "./components": {
49
+ "types": "./dist/components.d.ts",
50
+ "import": "./dist/components.mjs",
51
+ "require": "./dist/components.js"
52
+ },
53
+ "./chrome": {
54
+ "types": "./dist/chrome.d.ts",
55
+ "import": "./dist/chrome.mjs",
56
+ "require": "./dist/chrome.js"
57
+ },
58
+ "./styles.css": "./dist/styles.css",
59
+ "./styles/*": "./dist/styles/*"
60
+ },
61
+ "files": [
62
+ "dist",
63
+ "README.md",
64
+ "LICENSE"
65
+ ],
66
+ "scripts": {
67
+ "build": "tsup && yarn copy:css",
68
+ "copy:css": "rm -rf dist/styles && mkdir -p dist/styles && cp src/styles.css dist/styles.css && cp -R src/styles/. dist/styles/",
69
+ "test": "node scripts/check-contrast.mjs && node scripts/check-isolation.mjs",
70
+ "dev": "tsup --watch",
71
+ "type-check": "tsc --noEmit",
72
+ "clean": "rm -rf dist"
73
+ },
74
+ "sideEffects": [
75
+ "**/*.css"
76
+ ],
77
+ "dependencies": {
78
+ "@radix-ui/react-checkbox": "^1.3.3",
79
+ "@radix-ui/react-dialog": "^1.1.15",
80
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
81
+ "@radix-ui/react-label": "^2.1.7",
82
+ "@radix-ui/react-popover": "^1.1.15",
83
+ "@radix-ui/react-radio-group": "^1.3.8",
84
+ "@radix-ui/react-select": "^2.2.6",
85
+ "@radix-ui/react-separator": "^1.1.7",
86
+ "@radix-ui/react-slot": "^1.2.3",
87
+ "@radix-ui/react-switch": "^1.2.6",
88
+ "@radix-ui/react-tabs": "^1.1.13",
89
+ "@radix-ui/react-tooltip": "^1.2.8",
90
+ "class-variance-authority": "^0.7.1",
91
+ "clsx": "^2.1.1",
92
+ "sonner": "^2.0.7",
93
+ "tailwind-merge": "^3.3.1"
94
+ },
95
+ "peerDependencies": {
96
+ "lucide-react": ">=0.400.0",
97
+ "next": "^15.0.0 || ^16.0.0",
98
+ "next-themes": "^0.4.0",
99
+ "react": "^18.0.0 || ^19.0.0",
100
+ "react-dom": "^18.0.0 || ^19.0.0"
101
+ },
102
+ "devDependencies": {
103
+ "@types/react": "^19.0.0",
104
+ "@types/react-dom": "^19.0.0",
105
+ "lucide-react": "^0.544.0",
106
+ "next": "^16.3.8",
107
+ "next-themes": "^0.4.6",
108
+ "react": "19.1.0",
109
+ "react-dom": "19.1.0",
110
+ "tsup": "^8.3.5",
111
+ "typescript": "^5.6.3"
112
+ },
113
+ "engines": {
114
+ "node": ">=18"
115
+ }
116
+ }