playbook_ui 14.12.0.pre.alpha.PBNTR779railsdraggablecrosscontainer5863 → 14.12.0.pre.alpha.PBNTR8335887

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Playbook
4
4
  PREVIOUS_VERSION = "14.12.0"
5
- VERSION = "14.12.0.pre.alpha.PBNTR779railsdraggablecrosscontainer5863"
5
+ VERSION = "14.12.0.pre.alpha.PBNTR8335887"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playbook_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.12.0.pre.alpha.PBNTR779railsdraggablecrosscontainer5863
4
+ version: 14.12.0.pre.alpha.PBNTR8335887
5
5
  platform: ruby
6
6
  authors:
7
7
  - Power UX
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2025-02-03 00:00:00.000000000 Z
12
+ date: 2025-02-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
@@ -265,6 +265,7 @@ files:
265
265
  - app/pb_kits/playbook/pb_advanced_table/README.md
266
266
  - app/pb_kits/playbook/pb_advanced_table/SubKits/TableBody.tsx
267
267
  - app/pb_kits/playbook/pb_advanced_table/SubKits/TableHeader.tsx
268
+ - app/pb_kits/playbook/pb_advanced_table/Utilities/ActionBarAnimationHelper.ts
268
269
  - app/pb_kits/playbook/pb_advanced_table/Utilities/BrowserCheck.tsx
269
270
  - app/pb_kits/playbook/pb_advanced_table/Utilities/ExpansionControlHelpers.tsx
270
271
  - app/pb_kits/playbook/pb_advanced_table/Utilities/IconHelpers.tsx
@@ -1163,8 +1164,6 @@ files:
1163
1164
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_default_rails.md
1164
1165
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.jsx
1165
1166
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.md
1166
- - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.html.erb
1167
- - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.md
1168
1167
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards.jsx
1169
1168
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards.md
1170
1169
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards_rails.html.erb
@@ -3321,7 +3320,7 @@ files:
3321
3320
  - app/pb_kits/playbook/utilities/text.ts
3322
3321
  - app/pb_kits/playbook/utilities/validEmojiChecker.ts
3323
3322
  - dist/chunks/_typeahead-W0hatdPs.js
3324
- - dist/chunks/_weekday_stacked-C98LOqgG.js
3323
+ - dist/chunks/_weekday_stacked-Be4uzzgn.js
3325
3324
  - dist/chunks/lazysizes-B7xYodB-.js
3326
3325
  - dist/chunks/lib-kMuhBuU7.js
3327
3326
  - dist/chunks/pb_form_validation-DBJ0wZuS.js
@@ -1,193 +0,0 @@
1
- <% content_for :helper_methods do %>
2
- <% def badge_properties(container)
3
- case container
4
- when "To Do"
5
- { text: "queue", variant: "warning" }
6
- when "In Progress"
7
- { text: "progress", variant: "primary" }
8
- else
9
- { text: "done", variant: "success" }
10
- end
11
- end %>
12
- <% end %>
13
-
14
- <% containers = [
15
- "To Do",
16
- "In Progress",
17
- "Done"
18
- ] %>
19
-
20
- <% items_data = [
21
- {
22
- id: "11",
23
- container: "To Do",
24
- title: "Task 1",
25
- description: "Bug fixes",
26
- assignee_name: "Terry Miles",
27
- assignee_img: "https://randomuser.me/api/portraits/men/44.jpg",
28
- },
29
- {
30
- id: "12",
31
- container: "To Do",
32
- title: "Task 2",
33
- description: "Documentation",
34
- assignee_name: "Sophia Miles",
35
- assignee_img: "https://randomuser.me/api/portraits/women/8.jpg",
36
- },
37
- {
38
- id: "13",
39
- container: "In Progress",
40
- title: "Task 3",
41
- description: "Add a variant",
42
- assignee_name: "Alice Jones",
43
- assignee_img: "https://randomuser.me/api/portraits/women/10.jpg",
44
- },
45
- {
46
- id: "14",
47
- container: "To Do",
48
- title: "Task 4",
49
- description: "Add jest tests",
50
- assignee_name: "Mike James",
51
- assignee_img: "https://randomuser.me/api/portraits/men/8.jpg",
52
- },
53
- {
54
- id: "15",
55
- container: "Done",
56
- title: "Task 5",
57
- description: "Alpha testing",
58
- assignee_name: "James Guy",
59
- assignee_img: "https://randomuser.me/api/portraits/men/18.jpg",
60
- },
61
- {
62
- id: "16",
63
- container: "In Progress",
64
- title: "Task 6",
65
- description: "Release",
66
- assignee_name: "Sally Jones",
67
- assignee_img: "https://randomuser.me/api/portraits/women/28.jpg",
68
- },
69
- ] %>
70
-
71
- <%= pb_rails("draggable", props: { initial_items: items_data }) do %>
72
- <%= pb_rails("flex", props: { justify_content: "center" }) do %>
73
- <% containers.each do |container| %>
74
- <%= pb_rails("draggable/draggable_container", props: {
75
- container: container,
76
- width: "xs",
77
- height: "xs",
78
- padding: "sm",
79
- data: { container: container }
80
- }) do %>
81
- <%= pb_rails("caption", props: { text_align: "center" }) do %><%= container %><% end %>
82
- <%= pb_rails("flex", props: {align_items: "stretch", orientation: "column"}) do %>
83
- <% items_data.select { |item| item[:container] == container }.each do |item| %>
84
- <%= pb_rails("draggable/draggable_item", props: {
85
- container: container,
86
- drag_id: item[:id]
87
- }) do %>
88
- <%= pb_rails("card", props: { margin_bottom: "sm", padding: "sm"}) do %>
89
- <%= pb_rails("flex", props: { justify: "between" }) do %>
90
- <%= pb_rails("flex/flex_item") do %>
91
- <%= pb_rails("flex") do %>
92
- <%= pb_rails("avatar", props: {
93
- image_url: item[:assignee_img],
94
- name: item[:assignee_name],
95
- size: "xxs"
96
- }) %>
97
- <%= pb_rails("title", props: {
98
- padding_left: "xs",
99
- size: 4,
100
- text: item[:title]
101
- }) %>
102
- <% end %>
103
- <% end %>
104
- <%= pb_rails("badge", props: {
105
- margin_left: "sm",
106
- rounded: true,
107
- text: badge_properties(container)[:text],
108
- variant: badge_properties(container)[:variant],
109
- data: {
110
- pb_status_badge: true,
111
- pb_tag_type: "badge"
112
- }
113
- }) %>
114
- <% end %>
115
- <%= pb_rails("body", props: { padding_top: "xs", text: item[:description] }) %>
116
- <% end %>
117
- <% end %>
118
- <% end %>
119
- <% end %>
120
- <% end %>
121
- <% end %>
122
- <% end %>
123
- <% end %>
124
-
125
- <script>
126
- const initBadgeUpdates = function() {
127
- const updateBadge = function(container) {
128
- switch (container) {
129
- case 'To Do':
130
- return { text: 'queue', variant: 'warning' };
131
- case 'In Progress':
132
- return { text: 'progress', variant: 'primary' };
133
- case 'Done':
134
- return { text: 'done', variant: 'success' };
135
- default:
136
- return { text: 'queue', variant: 'warning' };
137
- }
138
- };
139
-
140
- let draggedElement = null;
141
- let startContainer = null;
142
-
143
- document.querySelectorAll('.pb_draggable_item').forEach(function(item) {
144
- item.addEventListener('dragstart', function(event) {
145
- draggedElement = event.target;
146
- startContainer = draggedElement.closest('.pb_draggable_container');
147
- });
148
- });
149
-
150
- document.querySelectorAll('.pb_draggable_container').forEach(function(container) {
151
- container.addEventListener('drop', function(event) {
152
- event.preventDefault();
153
-
154
- if (draggedElement) {
155
- setTimeout(function() {
156
- const currentContainer = container;
157
-
158
- if (currentContainer && startContainer && currentContainer !== startContainer) {
159
- const containerData = currentContainer.getAttribute('data-container');
160
- const badge = draggedElement.querySelector('[data-pb-status-badge]');
161
-
162
- if (badge && containerData) {
163
- const newProperties = updateBadge(containerData);
164
- const span = badge.querySelector('span');
165
-
166
- if (span) {
167
- span.textContent = newProperties.text;
168
- }
169
-
170
- badge.classList.forEach(function(className) {
171
- if (className.includes('pb_badge_kit_') || className === 'ml_sm') {
172
- badge.classList.remove(className);
173
- }
174
- });
175
-
176
- badge.className = `pb_badge_kit_${newProperties.variant}_rounded ml_sm`;
177
- }
178
- }
179
-
180
- draggedElement = null;
181
- startContainer = null;
182
- }, 50);
183
- }
184
- });
185
- });
186
- };
187
-
188
- if (document.readyState === 'loading') {
189
- document.addEventListener('DOMContentLoaded', initBadgeUpdates);
190
- } else {
191
- initBadgeUpdates();
192
- }
193
- </script>
@@ -1 +0,0 @@
1
- The Draggable kit can also be used to achieve more complex, multiple container functionality as shown here. This complex usage requires the full subcomponent structure.