@dotcraft/avatar 0.7.1 → 0.7.3

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 (122) hide show
  1. package/README.md +18 -20
  2. package/dist/AnimatedDecoration.d.ts +2 -2
  3. package/dist/AnimatedDecoration.d.ts.map +1 -1
  4. package/dist/AnimatedDecoration.js +2 -2
  5. package/dist/AnimatedDecoration.js.map +1 -1
  6. package/dist/AppearanceRig.d.ts +7 -1
  7. package/dist/AppearanceRig.d.ts.map +1 -1
  8. package/dist/AppearanceRig.js +2 -2
  9. package/dist/AppearanceRig.js.map +1 -1
  10. package/dist/Avatar.d.ts +2 -0
  11. package/dist/Avatar.d.ts.map +1 -1
  12. package/dist/Avatar.js +19 -7
  13. package/dist/Avatar.js.map +1 -1
  14. package/dist/BackDecorations.d.ts +9 -0
  15. package/dist/BackDecorations.d.ts.map +1 -0
  16. package/dist/BackDecorations.js +73 -0
  17. package/dist/BackDecorations.js.map +1 -0
  18. package/dist/DecorationShapes.d.ts +9 -2
  19. package/dist/DecorationShapes.d.ts.map +1 -1
  20. package/dist/DecorationShapes.js +8 -2
  21. package/dist/DecorationShapes.js.map +1 -1
  22. package/dist/Decorations.d.ts +6 -9
  23. package/dist/Decorations.d.ts.map +1 -1
  24. package/dist/Decorations.js +33 -16
  25. package/dist/Decorations.js.map +1 -1
  26. package/dist/FaceDecorations.d.ts +14 -0
  27. package/dist/FaceDecorations.d.ts.map +1 -0
  28. package/dist/FaceDecorations.js +69 -0
  29. package/dist/FaceDecorations.js.map +1 -0
  30. package/dist/HandDecorations.d.ts +5 -0
  31. package/dist/HandDecorations.d.ts.map +1 -0
  32. package/dist/HandDecorations.js +8 -0
  33. package/dist/HandDecorations.js.map +1 -0
  34. package/dist/HatDecorations.d.ts +2 -2
  35. package/dist/HatDecorations.d.ts.map +1 -1
  36. package/dist/HatDecorations.js +4 -0
  37. package/dist/HatDecorations.js.map +1 -1
  38. package/dist/MascotRig.d.ts +13 -1
  39. package/dist/MascotRig.d.ts.map +1 -1
  40. package/dist/MascotRig.js +6 -26
  41. package/dist/MascotRig.js.map +1 -1
  42. package/dist/ObjectDecorations.d.ts +2 -2
  43. package/dist/ObjectDecorations.d.ts.map +1 -1
  44. package/dist/ObjectDecorations.js +18 -2
  45. package/dist/ObjectDecorations.js.map +1 -1
  46. package/dist/RigMaterial.d.ts +18 -0
  47. package/dist/RigMaterial.d.ts.map +1 -0
  48. package/dist/RigMaterial.js +9 -0
  49. package/dist/RigMaterial.js.map +1 -0
  50. package/dist/SkinDecorations.d.ts +10 -0
  51. package/dist/SkinDecorations.d.ts.map +1 -0
  52. package/dist/SkinDecorations.js +28 -0
  53. package/dist/SkinDecorations.js.map +1 -0
  54. package/dist/accessories.css +1 -1
  55. package/dist/appearanceModel.d.ts +18 -14
  56. package/dist/appearanceModel.d.ts.map +1 -1
  57. package/dist/appearanceModel.js +62 -30
  58. package/dist/appearanceModel.js.map +1 -1
  59. package/dist/composer/styles/energy.css +34 -0
  60. package/dist/decorationCatalog.d.ts +17 -7
  61. package/dist/decorationCatalog.d.ts.map +1 -1
  62. package/dist/decorationCatalog.js +95 -36
  63. package/dist/decorationCatalog.js.map +1 -1
  64. package/dist/decorationMotion.d.ts +2 -2
  65. package/dist/decorationMotion.d.ts.map +1 -1
  66. package/dist/decorationMotion.js +4 -1
  67. package/dist/decorationMotion.js.map +1 -1
  68. package/dist/effects.css +86 -0
  69. package/dist/index.d.ts +2 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +2 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/items.d.ts +460 -0
  74. package/dist/items.d.ts.map +1 -0
  75. package/dist/items.js +52 -0
  76. package/dist/items.js.map +1 -0
  77. package/dist/paintMaterials.d.ts +31 -0
  78. package/dist/paintMaterials.d.ts.map +1 -0
  79. package/dist/paintMaterials.js +10 -0
  80. package/dist/paintMaterials.js.map +1 -0
  81. package/dist/palette.d.ts +2 -0
  82. package/dist/palette.d.ts.map +1 -1
  83. package/dist/palette.js +4 -4
  84. package/dist/palette.js.map +1 -1
  85. package/dist/react.d.ts +2 -2
  86. package/dist/react.d.ts.map +1 -1
  87. package/dist/react.js +2 -2
  88. package/dist/react.js.map +1 -1
  89. package/dist/rig.css +6 -21
  90. package/dist/styles.css +1 -0
  91. package/package.json +1 -1
  92. package/src/AnimatedDecoration.tsx +4 -4
  93. package/src/AppearanceRig.tsx +5 -4
  94. package/src/Avatar.tsx +25 -11
  95. package/src/BackDecorations.tsx +134 -0
  96. package/src/DecorationShapes.tsx +11 -3
  97. package/src/Decorations.tsx +47 -22
  98. package/src/FaceDecorations.tsx +145 -0
  99. package/src/HandDecorations.tsx +113 -0
  100. package/src/HatDecorations.tsx +29 -2
  101. package/src/MascotRig.tsx +27 -44
  102. package/src/ObjectDecorations.tsx +69 -3
  103. package/src/RigMaterial.tsx +23 -0
  104. package/src/SkinDecorations.tsx +56 -0
  105. package/src/accessories.css +1 -1
  106. package/src/appearanceModel.ts +57 -37
  107. package/src/composer/styles/energy.css +34 -0
  108. package/src/decorationCatalog.ts +103 -38
  109. package/src/decorationMotion.ts +6 -3
  110. package/src/effects.css +86 -0
  111. package/src/index.ts +2 -0
  112. package/src/items.ts +86 -0
  113. package/src/paintMaterials.ts +18 -0
  114. package/src/palette.ts +7 -3
  115. package/src/react.ts +2 -2
  116. package/src/rig.css +6 -21
  117. package/src/styles.css +1 -0
  118. package/dist/HeldDecorations.d.ts +0 -5
  119. package/dist/HeldDecorations.d.ts.map +0 -1
  120. package/dist/HeldDecorations.js +0 -5
  121. package/dist/HeldDecorations.js.map +0 -1
  122. package/src/HeldDecorations.tsx +0 -48
package/src/react.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { Avatar, AppearanceAvatar, type AvatarProps, type AppearanceAvatarProps } from './Avatar.js'
2
- export { DecorationSwatch, PrimaryDecoration, SecondaryDecoration } from './Decorations.js'
1
+ export { Avatar, AppearanceAvatar, sizeTier, type AvatarProps, type AppearanceAvatarProps, type SizeTier } from './Avatar.js'
2
+ export { DecorationSwatch, SlotDecoration, HeadDecoration } from './Decorations.js'
3
3
 
4
4
  export { ComposerMascot } from './composer/ComposerMascot.js'
5
5
  export type { ComposerMascotProps, ComposerMascotContext, MascotExpression, MascotLight } from './composer/types.js'
package/src/rig.css CHANGED
@@ -1,6 +1,5 @@
1
- /* The robot's arm/antenna/face pieces carry stable dca-part-* classes (see
2
- MascotRig.tsx). Each arm's white and blue pieces are separate elements moving in
3
- lockstep, so transform-box: view-box resolves one shared origin for both. */
1
+ /* Arm outlines, material clips and held props move in lockstep.
2
+ transform-box: view-box resolves the same pivot for each layer. */
4
3
  .dca-part-eyes,
5
4
  .dca-part-glow,
6
5
  .dca-part-light,
@@ -40,6 +39,7 @@
40
39
  a prop is never left floating. Every rule that ENTERS a posed arm state overrides
41
40
  the delay back to 0 so raises stay immediate. */
42
41
  .dca-part-arm-l-w,
42
+ .dca-part-arm-l-b,
43
43
  .dca-part-arm-l {
44
44
  transform-box: view-box;
45
45
  transform-origin: 233px 514px;
@@ -103,9 +103,7 @@
103
103
  /* Props are always-mounted `dca-part-prop-*` groups inside MascotRobot at opacity 0,
104
104
  revealed by these composer root classes. */
105
105
 
106
- /* Mini terminal: the 1200ms transition delay keeps quick turns from flashing it. The
107
- arms only tuck inward by pure translate — a rotation would trigger the solid-colour
108
- swap and break the gradient's continuity with the torso. */
106
+ /* The 1200ms delay keeps quick turns from flashing the mini terminal. */
109
107
  .dca-part-prop-laptop {
110
108
  opacity: 0;
111
109
  transition: opacity 200ms ease;
@@ -117,6 +115,7 @@
117
115
  }
118
116
 
119
117
  .dca-action-prop-laptop .dca-part-arm-l-w,
118
+ .dca-action-prop-laptop .dca-part-arm-l-b,
120
119
  .dca-action-prop-laptop .dca-part-arm-l {
121
120
  transform: translate(18px, 0);
122
121
  transition: transform 320ms cubic-bezier(0.34, 1.56, 0.64, 1) 1200ms;
@@ -166,10 +165,6 @@
166
165
  transition-delay: 0ms;
167
166
  }
168
167
 
169
- .dca-action-hold-sign .dca-part-arm-r-b {
170
- fill: var(--dca-part-raised-arm-right, #7a96fb);
171
- }
172
-
173
168
  .dca-part-prop-sign {
174
169
  opacity: 0;
175
170
  transition: opacity 140ms ease;
@@ -242,6 +237,7 @@
242
237
  /* The cheer reuses the wave's slide-then-rotate hinge grammar, so the outline wraps
243
238
  the band and the colour stays seam-continuous. */
244
239
  .dca-action-celebrate .dca-part-arm-l-w,
240
+ .dca-action-celebrate .dca-part-arm-l-b,
245
241
  .dca-action-celebrate .dca-part-arm-l {
246
242
  transform: translate(48px, 88px) rotate(135deg) scaleY(0.82);
247
243
  transition-delay: 0ms;
@@ -252,14 +248,3 @@
252
248
  transform: translate(-48px, 88px) rotate(-135deg) scaleY(0.82);
253
249
  transition-delay: 0ms;
254
250
  }
255
-
256
- /* Raised arms swap the body gradient for a solid hinge colour, so a rotated arm has
257
- no gradient to diverge from the torso's field. White halo capsules stay white. */
258
- .dca-action-wave .dca-part-arm-r-b,
259
- .dca-action-celebrate .dca-part-arm-r-b {
260
- fill: var(--dca-part-raised-arm-right, #7a96fb);
261
- }
262
-
263
- .dca-action-celebrate .dca-part-arm-l-b {
264
- fill: var(--dca-part-raised-arm-left, #3161f7);
265
- }
package/src/styles.css CHANGED
@@ -1,6 +1,7 @@
1
1
  @import './rig.css';
2
2
  @import './avatar.css';
3
3
  @import './accessories.css';
4
+ @import './effects.css';
4
5
 
5
6
  @import "./composer/styles/foundation.css";
6
7
  @import "./composer/styles/overdrive.css";
@@ -1,5 +0,0 @@
1
- import type { HeldId } from './appearanceModel.js';
2
- export declare function HeldDecoration({ id }: {
3
- id: HeldId;
4
- }): import("react").JSX.Element;
5
- //# sourceMappingURL=HeldDecorations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HeldDecorations.d.ts","sourceRoot":"","sources":["../src/HeldDecorations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,wBAAgB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,+BA6CpD"}
@@ -1,5 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export function HeldDecoration({ id }) {
3
- return _jsxs("g", { "data-held-decoration": id, strokeLinecap: "round", strokeLinejoin: "round", children: [id === 'task-board' && _jsx("g", { transform: "translate(233 640) scale(.8) translate(-840 -665)", children: _jsxs("g", { children: [_jsx("rect", { x: "718", y: "562", width: "244", height: "194", rx: "36", fill: "#fff", stroke: "#fff", strokeWidth: "30" }), _jsx("rect", { x: "718", y: "562", width: "244", height: "194", rx: "36", fill: "#fff", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "11" }), _jsx("path", { d: "M760 620h114", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "18", strokeLinecap: "round" }), _jsx("circle", { cx: "775", cy: "689", r: "14", fill: "var(--dca-held-mark, #3161f7)" }), _jsx("circle", { cx: "842", cy: "661", r: "14", fill: "var(--dca-held-accent, #f6b500)" }), _jsx("circle", { cx: "907", cy: "708", r: "14", fill: "var(--dca-held-mark, #3161f7)" }), _jsx("path", { d: "M789 683 828 667 893 699", stroke: "#202124", strokeWidth: "13", strokeLinecap: "round", strokeLinejoin: "round", opacity: ".72" })] }) }), id === 'wrench' && _jsx("g", { transform: "translate(233 670) rotate(-60) scale(.65) translate(-642 -817)", children: _jsxs("g", { children: [_jsx("path", { d: "M756 595c30-30 74-39 113-23l-56 56 46 46 56-56c16 39 7 83-23 113-32 32-80 39-119 20L674 850c-18 18-47 18-65 0s-18-47 0-65l99-99c-19-39-12-87 20-119Z", fill: "#fff", stroke: "#fff", strokeWidth: "34", strokeLinejoin: "round" }), _jsx("path", { d: "M756 595c30-30 74-39 113-23l-56 56 46 46 56-56c16 39 7 83-23 113-32 32-80 39-119 20L674 850c-18 18-47 18-65 0s-18-47 0-65l99-99c-19-39-12-87 20-119Z", fill: "#fff", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "13", strokeLinejoin: "round" }), _jsx("circle", { cx: "642", cy: "817", r: "17", fill: "var(--dca-held-accent, #f6b500)" }), _jsx("path", { d: "M706 752 774 684", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "20", strokeLinecap: "round", opacity: ".78" })] }) }), id === 'shield' && _jsx("g", { transform: "translate(233 635) scale(.8) translate(-817 -690)", children: _jsxs("g", { children: [_jsx("path", { d: "M817 553 929 594v76c0 80-46 134-112 162-66-28-112-82-112-162v-76Z", fill: "#fff", stroke: "#fff", strokeWidth: "30", strokeLinejoin: "round" }), _jsx("path", { d: "M817 553 929 594v76c0 80-46 134-112 162-66-28-112-82-112-162v-76Z", fill: "#fff", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "11", strokeLinejoin: "round" }), _jsx("path", { d: "M761 683 802 722 881 632", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "28", strokeLinecap: "round", strokeLinejoin: "round" })] }) }), id === 'magnifier' && _jsx("g", { transform: "translate(233 670) rotate(-18) scale(.85) translate(-862 -735)", children: _jsx("g", { children: _jsxs("g", { children: [_jsx("path", { d: "M862 646v112", stroke: "#fff", strokeWidth: "48", strokeLinecap: "round" }), _jsx("path", { d: "M862 646v112", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "28", strokeLinecap: "round" }), _jsx("circle", { cx: "862", cy: "562", r: "82", fill: "#fff", stroke: "#fff", strokeWidth: "30" }), _jsx("circle", { cx: "862", cy: "562", r: "82", fill: "#fff", fillOpacity: ".72", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "18" }), _jsx("path", { d: "M828 534c21-22 54-30 82-19", stroke: "#fff", strokeWidth: "12", strokeLinecap: "round", opacity: ".9" })] }) }) }), id === 'control-panel' && _jsx("g", { transform: "translate(233 640) scale(.8) translate(-839 -686)", children: _jsxs("g", { children: [_jsx("rect", { x: "714", y: "592", width: "250", height: "190", rx: "38", fill: "#fff", stroke: "#fff", strokeWidth: "30" }), _jsx("rect", { x: "714", y: "592", width: "250", height: "190", rx: "38", fill: "#fff", stroke: "var(--dca-held-mark, #3161f7)", strokeWidth: "11" }), _jsx("path", { d: "M765 650h148", stroke: "#202124", strokeWidth: "14", strokeLinecap: "round", opacity: ".62" }), _jsx("path", { d: "M765 718h148", stroke: "#202124", strokeWidth: "14", strokeLinecap: "round", opacity: ".62" }), _jsx("circle", { cx: "818", cy: "650", r: "23", fill: "var(--dca-held-mark, #3161f7)", stroke: "#fff", strokeWidth: "8" }), _jsx("circle", { cx: "872", cy: "718", r: "23", fill: "var(--dca-held-accent, #f6b500)", stroke: "#fff", strokeWidth: "8" })] }) })] });
4
- }
5
- //# sourceMappingURL=HeldDecorations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HeldDecorations.js","sourceRoot":"","sources":["../src/HeldDecorations.tsx"],"names":[],"mappings":";AAEA,MAAM,UAAU,cAAc,CAAC,EAAE,EAAE,EAAkB;IACnD,OAAO,qCAAyB,EAAE,EAAE,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAC7E,EAAE,KAAK,YAAY,IAAI,YAAG,SAAS,EAAC,mDAAmD,YAAC,wBACzF,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,GAAG,EACpG,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,GAAG,EAC7H,eAAM,CAAC,EAAC,cAAc,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,GAAG,EACvG,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,+BAA+B,GAAG,EACxE,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,iCAAiC,GAAG,EAC1E,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,+BAA+B,GAAG,EACxE,eAAM,CAAC,EAAC,0BAA0B,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,GAAG,IAChI,GACF,EACC,EAAE,KAAK,QAAQ,IAAI,YAAG,SAAS,EAAC,gEAAgE,YAAC,wBAClG,eAAM,CAAC,EAAC,sJAAsJ,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,OAAO,GAAG,EACnO,eAAM,CAAC,EAAC,sJAAsJ,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,OAAO,GAAG,EAC5P,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,iCAAiC,GAAG,EAC1E,eAAM,CAAC,EAAC,kBAAkB,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,GAAG,IACvH,GACF,EACC,EAAE,KAAK,QAAQ,IAAI,YAAG,SAAS,EAAC,mDAAmD,YAAC,wBACrF,eAAM,CAAC,EAAC,mEAAmE,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,OAAO,GAAG,EAChJ,eAAM,CAAC,EAAC,mEAAmE,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,OAAO,GAAG,EACzK,eAAM,CAAC,EAAC,0BAA0B,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAG,IACxI,GACF,EACC,EAAE,KAAK,WAAW,IAAI,YAAG,SAAS,EAAC,gEAAgE,YAAC,sBACrG,wBACE,eAAM,CAAC,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,GAAG,EAC9E,eAAM,CAAC,EAAC,cAAc,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,GAAG,EACvG,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,GAAG,EAC9E,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,WAAW,EAAC,KAAK,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,GAAG,EACzH,eAAM,CAAC,EAAC,4BAA4B,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,OAAO,EAAC,IAAI,GAAG,IACvG,GACF,GACF,EACC,EAAE,KAAK,eAAe,IAAI,YAAG,SAAS,EAAC,mDAAmD,YAAC,wBAC5F,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,IAAI,GAAG,EACpG,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,+BAA+B,EAAC,WAAW,EAAC,IAAI,GAAG,EAC7H,eAAM,CAAC,EAAC,cAAc,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,GAAG,EAC/F,eAAM,CAAC,EAAC,cAAc,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,GAAG,EAC/F,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,+BAA+B,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,GAAG,EACtG,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,iCAAiC,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,GAAG,IACtG,GACF,IACE,CAAA;AACN,CAAC"}
@@ -1,48 +0,0 @@
1
- import type { HeldId } from './appearanceModel.js'
2
-
3
- export function HeldDecoration({ id }: { id: HeldId }) {
4
- return <g data-held-decoration={id} strokeLinecap="round" strokeLinejoin="round">
5
- {id === 'task-board' && <g transform="translate(233 640) scale(.8) translate(-840 -665)"><g>
6
- <rect x="718" y="562" width="244" height="194" rx="36" fill="#fff" stroke="#fff" strokeWidth="30" />
7
- <rect x="718" y="562" width="244" height="194" rx="36" fill="#fff" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="11" />
8
- <path d="M760 620h114" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="18" strokeLinecap="round" />
9
- <circle cx="775" cy="689" r="14" fill="var(--dca-held-mark, #3161f7)" />
10
- <circle cx="842" cy="661" r="14" fill="var(--dca-held-accent, #f6b500)" />
11
- <circle cx="907" cy="708" r="14" fill="var(--dca-held-mark, #3161f7)" />
12
- <path d="M789 683 828 667 893 699" stroke="#202124" strokeWidth="13" strokeLinecap="round" strokeLinejoin="round" opacity=".72" />
13
- </g>
14
- </g>}
15
- {id === 'wrench' && <g transform="translate(233 670) rotate(-60) scale(.65) translate(-642 -817)"><g>
16
- <path d="M756 595c30-30 74-39 113-23l-56 56 46 46 56-56c16 39 7 83-23 113-32 32-80 39-119 20L674 850c-18 18-47 18-65 0s-18-47 0-65l99-99c-19-39-12-87 20-119Z" fill="#fff" stroke="#fff" strokeWidth="34" strokeLinejoin="round" />
17
- <path d="M756 595c30-30 74-39 113-23l-56 56 46 46 56-56c16 39 7 83-23 113-32 32-80 39-119 20L674 850c-18 18-47 18-65 0s-18-47 0-65l99-99c-19-39-12-87 20-119Z" fill="#fff" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="13" strokeLinejoin="round" />
18
- <circle cx="642" cy="817" r="17" fill="var(--dca-held-accent, #f6b500)" />
19
- <path d="M706 752 774 684" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="20" strokeLinecap="round" opacity=".78" />
20
- </g>
21
- </g>}
22
- {id === 'shield' && <g transform="translate(233 635) scale(.8) translate(-817 -690)"><g>
23
- <path d="M817 553 929 594v76c0 80-46 134-112 162-66-28-112-82-112-162v-76Z" fill="#fff" stroke="#fff" strokeWidth="30" strokeLinejoin="round" />
24
- <path d="M817 553 929 594v76c0 80-46 134-112 162-66-28-112-82-112-162v-76Z" fill="#fff" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="11" strokeLinejoin="round" />
25
- <path d="M761 683 802 722 881 632" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="28" strokeLinecap="round" strokeLinejoin="round" />
26
- </g>
27
- </g>}
28
- {id === 'magnifier' && <g transform="translate(233 670) rotate(-18) scale(.85) translate(-862 -735)"><g>
29
- <g>
30
- <path d="M862 646v112" stroke="#fff" strokeWidth="48" strokeLinecap="round" />
31
- <path d="M862 646v112" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="28" strokeLinecap="round" />
32
- <circle cx="862" cy="562" r="82" fill="#fff" stroke="#fff" strokeWidth="30" />
33
- <circle cx="862" cy="562" r="82" fill="#fff" fillOpacity=".72" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="18" />
34
- <path d="M828 534c21-22 54-30 82-19" stroke="#fff" strokeWidth="12" strokeLinecap="round" opacity=".9" />
35
- </g>
36
- </g>
37
- </g>}
38
- {id === 'control-panel' && <g transform="translate(233 640) scale(.8) translate(-839 -686)"><g>
39
- <rect x="714" y="592" width="250" height="190" rx="38" fill="#fff" stroke="#fff" strokeWidth="30" />
40
- <rect x="714" y="592" width="250" height="190" rx="38" fill="#fff" stroke="var(--dca-held-mark, #3161f7)" strokeWidth="11" />
41
- <path d="M765 650h148" stroke="#202124" strokeWidth="14" strokeLinecap="round" opacity=".62" />
42
- <path d="M765 718h148" stroke="#202124" strokeWidth="14" strokeLinecap="round" opacity=".62" />
43
- <circle cx="818" cy="650" r="23" fill="var(--dca-held-mark, #3161f7)" stroke="#fff" strokeWidth="8" />
44
- <circle cx="872" cy="718" r="23" fill="var(--dca-held-accent, #f6b500)" stroke="#fff" strokeWidth="8" />
45
- </g>
46
- </g>}
47
- </g>
48
- }