@rpg-engine/long-bow 0.6.19 → 0.6.21

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.
@@ -3,7 +3,7 @@ import React from 'react';
3
3
  export interface IPartyManagerProps {
4
4
  partyRows: ICharacterPartyShared | null;
5
5
  isLeader: boolean;
6
- onClose?: () => void;
6
+ userId: string;
7
7
  onRemovePlayer: (id: string) => void;
8
8
  onChangeLeader: (id: string) => void;
9
9
  }
@@ -5,6 +5,7 @@ export interface IPartyManagerRowProps {
5
5
  charClass: string;
6
6
  isLeader: boolean;
7
7
  leaderId: string;
8
+ userId: string;
8
9
  onRemovePlayer: (id: string) => void;
9
10
  onChangeLeader: (id: string) => void;
10
11
  }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ interface IProps extends React.HTMLAttributes<HTMLParagraphElement> {
3
+ children: string;
4
+ }
5
+ export declare const HighlightedText: ({ children, ...rest }: IProps) => JSX.Element;
6
+ export {};
@@ -31354,52 +31354,67 @@ var RowsWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
31354
31354
  componentId: "sc-eu8ggt-2"
31355
31355
  })(["overflow-y:scroll;-webkit-overflow-scrolling:touch;width:100%;height:200px;"]);
31356
31356
 
31357
+ var _excluded$3 = ["children"];
31358
+ var HighlightedText = function HighlightedText(_ref) {
31359
+ var children = _ref.children,
31360
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
31361
+ return React__default.createElement(Text, Object.assign({}, rest), children);
31362
+ };
31363
+ var Text = /*#__PURE__*/styled__default.p.withConfig({
31364
+ displayName: "HighlightedText__Text",
31365
+ componentId: "sc-17nih08-0"
31366
+ })(["color:", " !important;font-weight:bold;font-size:1.2rem;&:hover{text-decoration:underline;cursor:pointer;}"], uiColors.yellow);
31367
+
31357
31368
  var PartyManagerRow = function PartyManagerRow(_ref) {
31358
31369
  var charName = _ref.charName,
31359
31370
  charClass = _ref.charClass,
31360
31371
  isLeader = _ref.isLeader,
31361
31372
  id = _ref.id,
31362
31373
  leaderId = _ref.leaderId,
31374
+ userId = _ref.userId,
31363
31375
  onRemovePlayer = _ref.onRemovePlayer,
31364
31376
  onChangeLeader = _ref.onChangeLeader;
31365
- return React__default.createElement(PartyWrapper$2, null, React__default.createElement(TextContainer$5, null, charName), React__default.createElement(TextContainer$5, null, charClass), React__default.createElement("div", {
31366
- className: "cancel-button"
31367
- }, React__default.createElement(Button, {
31368
- buttonType: exports.ButtonTypes.RPGUIButton,
31377
+ var isCurrentUser = id === userId;
31378
+ var canRemove = isLeader || isCurrentUser; // Only leaders or the current user can remove
31379
+ return React__default.createElement(PartyWrapper$2, null, React__default.createElement(TextContainer$5, null, React__default.createElement(Ellipsis, {
31380
+ maxLines: 1,
31381
+ maxWidth: "200px",
31382
+ fontSize: "0.8rem"
31383
+ }, charName)), React__default.createElement(TextContainer$5, null, React__default.createElement(Ellipsis, {
31384
+ maxLines: 1,
31385
+ maxWidth: "200px",
31386
+ fontSize: "0.8rem"
31387
+ }, charClass)), React__default.createElement(ButtonContainer$3, null, canRemove && React__default.createElement(HighlightedText, {
31369
31388
  onPointerDown: function onPointerDown() {
31370
31389
  return onRemovePlayer(id);
31371
31390
  }
31372
- }, "Remove")), React__default.createElement(Button, {
31373
- buttonType: exports.ButtonTypes.RPGUIButton,
31374
- disabled: !isLeader || leaderId === id,
31391
+ }, isCurrentUser ? 'Leave' : 'Remove'), isLeader && leaderId !== id && React__default.createElement(HighlightedText, {
31375
31392
  onPointerDown: function onPointerDown() {
31376
31393
  return onChangeLeader(id);
31377
31394
  }
31378
- }, "New Leader"));
31395
+ }, "New Leader")));
31379
31396
  };
31380
31397
  var PartyWrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
31381
31398
  displayName: "PartyManagerRows__PartyWrapper",
31382
31399
  componentId: "sc-uqajew-0"
31383
- })(["width:100%;display:flex;align-items:center;justify-content:space-around;.cancel-button{filter:grayscale(0.7);}"]);
31400
+ })(["width:100%;display:flex;align-items:center;justify-content:space-between;padding:0.5rem;min-height:50px;box-sizing:border-box;gap:1rem;transition:background-color 0.3s ease;overflow-x:auto;&:hover{background-color:", ";cursor:pointer;}"], uiColors.darkGray);
31384
31401
  var TextContainer$5 = /*#__PURE__*/styled__default.div.withConfig({
31385
31402
  displayName: "PartyManagerRows__TextContainer",
31386
31403
  componentId: "sc-uqajew-1"
31387
- })(["color:", ";"], uiColors.white);
31404
+ })(["flex:1;color:", ";overflow:hidden;white-space:nowrap;text-overflow:ellipsis;"], uiColors.white);
31405
+ var ButtonContainer$3 = /*#__PURE__*/styled__default.div.withConfig({
31406
+ displayName: "PartyManagerRows__ButtonContainer",
31407
+ componentId: "sc-uqajew-2"
31408
+ })(["display:flex;align-items:center;justify-content:flex-end;min-width:150px;gap:0.5rem;"]);
31388
31409
 
31389
31410
  var PartyManager = function PartyManager(_ref) {
31390
31411
  var partyRows = _ref.partyRows,
31391
31412
  isLeader = _ref.isLeader,
31392
- onClose = _ref.onClose,
31413
+ userId = _ref.userId,
31393
31414
  _onRemovePlayer = _ref.onRemovePlayer,
31394
31415
  _onChangeLeader = _ref.onChangeLeader;
31395
31416
  var invitationActionText = shared.isMobileOrTablet() ? 'Tap' : 'Right click';
31396
- return React__default.createElement(DraggableContainer, {
31397
- type: exports.RPGUIContainerTypes.Framed,
31398
- onCloseButton: onClose,
31399
- width: "800px",
31400
- height: "400px",
31401
- cancelDrag: ".partyRows"
31402
- }, React__default.createElement(Wrapper$5, null, React__default.createElement("div", {
31417
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(Wrapper$5, null, React__default.createElement("div", {
31403
31418
  style: {
31404
31419
  width: '100%'
31405
31420
  }
@@ -31408,6 +31423,7 @@ var PartyManager = function PartyManager(_ref) {
31408
31423
  }))), React__default.createElement(RowsWrapper$2, {
31409
31424
  className: "partyRows"
31410
31425
  }, partyRows && partyRows.members ? React__default.createElement(React__default.Fragment, null, React__default.createElement(PartyManagerRow, {
31426
+ userId: userId,
31411
31427
  key: partyRows.leader._id,
31412
31428
  id: partyRows.leader._id,
31413
31429
  leaderId: partyRows.leader._id,
@@ -31422,6 +31438,7 @@ var PartyManager = function PartyManager(_ref) {
31422
31438
  }
31423
31439
  }), partyRows.members.map(function (partyRow) {
31424
31440
  return React__default.createElement(PartyManagerRow, {
31441
+ userId: userId,
31425
31442
  key: partyRow._id,
31426
31443
  charName: partyRow.name,
31427
31444
  charClass: partyRow["class"],
@@ -31435,20 +31452,20 @@ var PartyManager = function PartyManager(_ref) {
31435
31452
  return _onChangeLeader(partyRow._id);
31436
31453
  }
31437
31454
  });
31438
- })) : React__default.createElement(React__default.Fragment, null, React__default.createElement(NotInParty, null, React__default.createElement("p", null, "You're not in a party."), React__default.createElement("p", null, "Tip: ", React__default.createElement(YellowText, null, invitationActionText), " on a player to invite them.")))));
31455
+ })) : React__default.createElement(NotInParty, null, React__default.createElement("p", null, "You're not in a party."), React__default.createElement("p", null, "Tip: ", React__default.createElement(YellowText, null, invitationActionText), " on a player to invite them."))));
31439
31456
  };
31457
+ var RowsWrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
31458
+ displayName: "PartyManager__RowsWrapper",
31459
+ componentId: "sc-1yqcad8-0"
31460
+ })(["width:100%;max-height:300px;overflow-y:auto;overflow-x:hidden;"]);
31440
31461
  var YellowText = /*#__PURE__*/styled__default.span.withConfig({
31441
31462
  displayName: "PartyManager__YellowText",
31442
- componentId: "sc-1yqcad8-0"
31463
+ componentId: "sc-1yqcad8-1"
31443
31464
  })(["color:", " !important;"], uiColors.yellow);
31444
31465
  var Wrapper$5 = /*#__PURE__*/styled__default.div.withConfig({
31445
31466
  displayName: "PartyManager__Wrapper",
31446
- componentId: "sc-1yqcad8-1"
31447
- })(["display:flex;flex-direction:column;width:100%;"]);
31448
- var RowsWrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
31449
- displayName: "PartyManager__RowsWrapper",
31450
31467
  componentId: "sc-1yqcad8-2"
31451
- })(["width:100%;"]);
31468
+ })(["display:flex;flex-direction:column;width:100%;"]);
31452
31469
  var Title$7 = /*#__PURE__*/styled__default.h1.withConfig({
31453
31470
  displayName: "PartyManager__Title",
31454
31471
  componentId: "sc-1yqcad8-3"
@@ -31546,6 +31563,34 @@ var mockedPlayersRows2 = {
31546
31563
  _id: /*#__PURE__*/uuid.v4(),
31547
31564
  "class": shared.CharacterClass.Druid,
31548
31565
  name: 'blblb'
31566
+ }, {
31567
+ _id: /*#__PURE__*/uuid.v4(),
31568
+ "class": shared.CharacterClass.Druid,
31569
+ name: 'blblb'
31570
+ }, {
31571
+ _id: /*#__PURE__*/uuid.v4(),
31572
+ "class": shared.CharacterClass.Druid,
31573
+ name: 'blblb'
31574
+ }, {
31575
+ _id: /*#__PURE__*/uuid.v4(),
31576
+ "class": shared.CharacterClass.Druid,
31577
+ name: 'blblb'
31578
+ }, {
31579
+ _id: /*#__PURE__*/uuid.v4(),
31580
+ "class": shared.CharacterClass.Druid,
31581
+ name: 'blblb'
31582
+ }, {
31583
+ _id: /*#__PURE__*/uuid.v4(),
31584
+ "class": shared.CharacterClass.Druid,
31585
+ name: 'blblb'
31586
+ }, {
31587
+ _id: /*#__PURE__*/uuid.v4(),
31588
+ "class": shared.CharacterClass.Druid,
31589
+ name: 'blblb'
31590
+ }, {
31591
+ _id: /*#__PURE__*/uuid.v4(),
31592
+ "class": shared.CharacterClass.Druid,
31593
+ name: 'blblb'
31549
31594
  }],
31550
31595
  maxSize: 5,
31551
31596
  size: 4