react-native-exp-fig 0.1.25 → 0.1.27

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 (199) hide show
  1. package/lib/commonjs/components/input-text-counter/index.js +66 -0
  2. package/lib/commonjs/components/input-text-counter/index.js.map +1 -0
  3. package/lib/commonjs/components/input-text-counter/interface.d.js.map +1 -0
  4. package/lib/commonjs/components/input-text-counter/styles.js +42 -0
  5. package/lib/commonjs/components/input-text-counter/styles.js.map +1 -0
  6. package/lib/commonjs/components/modal-create-activitie/index.js +202 -0
  7. package/lib/commonjs/components/modal-create-activitie/index.js.map +1 -0
  8. package/lib/commonjs/components/modal-create-activitie/interface.js +2 -0
  9. package/lib/commonjs/components/modal-create-activitie/interface.js.map +1 -0
  10. package/lib/commonjs/components/modal-create-activitie/styles.js +42 -0
  11. package/lib/commonjs/components/modal-create-activitie/styles.js.map +1 -0
  12. package/lib/commonjs/components/modal-journey-rectification/index.js +202 -0
  13. package/lib/commonjs/components/modal-journey-rectification/index.js.map +1 -0
  14. package/lib/commonjs/components/modal-journey-rectification/interface.d.js +2 -0
  15. package/lib/commonjs/components/modal-journey-rectification/interface.d.js.map +1 -0
  16. package/lib/commonjs/components/modal-journey-rectification/styles.js +42 -0
  17. package/lib/commonjs/components/modal-journey-rectification/styles.js.map +1 -0
  18. package/lib/commonjs/components/{modal-activities → modals/modal-activities}/data-activities/index.js +2 -2
  19. package/lib/commonjs/components/modals/modal-activities/data-activities/index.js.map +1 -0
  20. package/lib/commonjs/components/{modal-activities → modals/modal-activities}/index.js +8 -8
  21. package/lib/commonjs/components/modals/modal-activities/index.js.map +1 -0
  22. package/lib/commonjs/components/modals/modal-activities/interface.d.js +6 -0
  23. package/lib/commonjs/components/modals/modal-activities/interface.d.js.map +1 -0
  24. package/lib/commonjs/components/modals/modal-activity-reason/index.js +161 -0
  25. package/lib/commonjs/components/modals/modal-activity-reason/index.js.map +1 -0
  26. package/lib/commonjs/components/modals/modal-activity-reason/interface.d.js +2 -0
  27. package/lib/commonjs/components/modals/modal-activity-reason/interface.d.js.map +1 -0
  28. package/lib/commonjs/components/{modal-change-activity → modals/modal-change-activity}/index.js +7 -7
  29. package/lib/commonjs/components/modals/modal-change-activity/index.js.map +1 -0
  30. package/lib/commonjs/components/selects/select-date-and-hours/index.js +95 -0
  31. package/lib/commonjs/components/selects/select-date-and-hours/index.js.map +1 -0
  32. package/lib/commonjs/components/selects/select-date-and-hours/interface.js +6 -0
  33. package/lib/commonjs/components/selects/select-date-and-hours/interface.js.map +1 -0
  34. package/lib/commonjs/components/selects/select-date-and-hours/styles.js +33 -0
  35. package/lib/commonjs/components/selects/select-date-and-hours/styles.js.map +1 -0
  36. package/lib/commonjs/components/selects/select-option/index.js +41 -39
  37. package/lib/commonjs/components/selects/select-option/index.js.map +1 -1
  38. package/lib/commonjs/components/step-indicator/index.js +10 -10
  39. package/lib/commonjs/components/step-indicator/index.js.map +1 -1
  40. package/lib/commonjs/components/step-indicator/interface.d.js.map +1 -1
  41. package/lib/commonjs/index.js +32 -4
  42. package/lib/commonjs/index.js.map +1 -1
  43. package/lib/commonjs/stories/input-text-counter/input-text-counter.stories.js +259 -0
  44. package/lib/commonjs/stories/input-text-counter/input-text-counter.stories.js.map +1 -0
  45. package/lib/commonjs/stories/modal-activities/modal-activities.stories.js +1 -1
  46. package/lib/commonjs/stories/modal-activities/modal-activities.stories.js.map +1 -1
  47. package/lib/commonjs/stories/modal-activity-reason/modal-activity-reason.stories.js +198 -0
  48. package/lib/commonjs/stories/modal-activity-reason/modal-activity-reason.stories.js.map +1 -0
  49. package/lib/commonjs/stories/modal-change-activity/modal-change-activity.stories.js +3 -3
  50. package/lib/commonjs/stories/modal-change-activity/modal-change-activity.stories.js.map +1 -1
  51. package/lib/commonjs/stories/modal-create-activitie/modal-create-activitie.stories.js +86 -0
  52. package/lib/commonjs/stories/modal-create-activitie/modal-create-activitie.stories.js.map +1 -0
  53. package/lib/commonjs/stories/modal-journey-rectification/modal-journey-rectification.stories.js +172 -0
  54. package/lib/commonjs/stories/modal-journey-rectification/modal-journey-rectification.stories.js.map +1 -0
  55. package/lib/commonjs/stories/select-option/select-option.stories.js +3 -2
  56. package/lib/commonjs/stories/select-option/select-option.stories.js.map +1 -1
  57. package/lib/commonjs/stories/step-indicator/step-indicator.stories.js +2 -1
  58. package/lib/commonjs/stories/step-indicator/step-indicator.stories.js.map +1 -1
  59. package/lib/commonjs/styles/theme/theme.js +18 -2
  60. package/lib/commonjs/styles/theme/theme.js.map +1 -1
  61. package/lib/commonjs/utils/options-activity/index.js +27 -0
  62. package/lib/commonjs/utils/options-activity/index.js.map +1 -0
  63. package/lib/commonjs/utils/text-limit/index.js +37 -0
  64. package/lib/commonjs/utils/text-limit/index.js.map +1 -0
  65. package/lib/module/components/input-text-counter/index.js +63 -0
  66. package/lib/module/components/input-text-counter/index.js.map +1 -0
  67. package/lib/module/components/input-text-counter/interface.d.js.map +1 -0
  68. package/lib/module/components/input-text-counter/styles.js +37 -0
  69. package/lib/module/components/input-text-counter/styles.js.map +1 -0
  70. package/lib/module/components/modal-create-activitie/index.js +192 -0
  71. package/lib/module/components/modal-create-activitie/index.js.map +1 -0
  72. package/lib/module/components/modal-create-activitie/interface.js +2 -0
  73. package/lib/module/components/modal-create-activitie/interface.js.map +1 -0
  74. package/lib/module/components/modal-create-activitie/styles.js +37 -0
  75. package/lib/module/components/modal-create-activitie/styles.js.map +1 -0
  76. package/lib/module/components/modal-journey-rectification/index.js +192 -0
  77. package/lib/module/components/modal-journey-rectification/index.js.map +1 -0
  78. package/lib/module/components/modal-journey-rectification/interface.d.js +2 -0
  79. package/lib/module/components/modal-journey-rectification/interface.d.js.map +1 -0
  80. package/lib/module/components/modal-journey-rectification/styles.js +37 -0
  81. package/lib/module/components/modal-journey-rectification/styles.js.map +1 -0
  82. package/lib/module/components/{modal-activities → modals/modal-activities}/data-activities/index.js +2 -2
  83. package/lib/module/components/modals/modal-activities/data-activities/index.js.map +1 -0
  84. package/lib/module/components/{modal-activities → modals/modal-activities}/index.js +8 -8
  85. package/lib/module/components/modals/modal-activities/index.js.map +1 -0
  86. package/lib/module/components/modals/modal-activities/interface.d.js +2 -0
  87. package/lib/module/components/modals/modal-activities/interface.d.js.map +1 -0
  88. package/lib/module/components/modals/modal-activity-reason/index.js +151 -0
  89. package/lib/module/components/modals/modal-activity-reason/index.js.map +1 -0
  90. package/lib/module/components/modals/modal-activity-reason/interface.d.js +2 -0
  91. package/lib/module/components/modals/modal-activity-reason/interface.d.js.map +1 -0
  92. package/lib/module/components/{modal-change-activity → modals/modal-change-activity}/index.js +6 -6
  93. package/lib/module/components/modals/modal-change-activity/index.js.map +1 -0
  94. package/lib/module/components/selects/select-date-and-hours/index.js +86 -0
  95. package/lib/module/components/selects/select-date-and-hours/index.js.map +1 -0
  96. package/lib/module/components/selects/select-date-and-hours/interface.js +2 -0
  97. package/lib/module/components/selects/select-date-and-hours/interface.js.map +1 -0
  98. package/lib/module/components/selects/select-date-and-hours/styles.js +28 -0
  99. package/lib/module/components/selects/select-date-and-hours/styles.js.map +1 -0
  100. package/lib/module/components/selects/select-option/index.js +41 -42
  101. package/lib/module/components/selects/select-option/index.js.map +1 -1
  102. package/lib/module/components/step-indicator/index.js +10 -10
  103. package/lib/module/components/step-indicator/index.js.map +1 -1
  104. package/lib/module/components/step-indicator/interface.d.js.map +1 -1
  105. package/lib/module/index.js +9 -5
  106. package/lib/module/index.js.map +1 -1
  107. package/lib/module/stories/input-text-counter/input-text-counter.stories.js +253 -0
  108. package/lib/module/stories/input-text-counter/input-text-counter.stories.js.map +1 -0
  109. package/lib/module/stories/modal-activities/modal-activities.stories.js +1 -1
  110. package/lib/module/stories/modal-activities/modal-activities.stories.js.map +1 -1
  111. package/lib/module/stories/modal-activity-reason/modal-activity-reason.stories.js +193 -0
  112. package/lib/module/stories/modal-activity-reason/modal-activity-reason.stories.js.map +1 -0
  113. package/lib/module/stories/modal-change-activity/modal-change-activity.stories.js +3 -3
  114. package/lib/module/stories/modal-change-activity/modal-change-activity.stories.js.map +1 -1
  115. package/lib/module/stories/modal-create-activitie/modal-create-activitie.stories.js +78 -0
  116. package/lib/module/stories/modal-create-activitie/modal-create-activitie.stories.js.map +1 -0
  117. package/lib/module/stories/modal-journey-rectification/modal-journey-rectification.stories.js +168 -0
  118. package/lib/module/stories/modal-journey-rectification/modal-journey-rectification.stories.js.map +1 -0
  119. package/lib/module/stories/select-option/select-option.stories.js +1 -1
  120. package/lib/module/stories/select-option/select-option.stories.js.map +1 -1
  121. package/lib/module/stories/step-indicator/step-indicator.stories.js +2 -1
  122. package/lib/module/stories/step-indicator/step-indicator.stories.js.map +1 -1
  123. package/lib/module/styles/theme/theme.js +18 -2
  124. package/lib/module/styles/theme/theme.js.map +1 -1
  125. package/lib/module/utils/options-activity/index.js +22 -0
  126. package/lib/module/utils/options-activity/index.js.map +1 -0
  127. package/lib/module/utils/text-limit/index.js +30 -0
  128. package/lib/module/utils/text-limit/index.js.map +1 -0
  129. package/lib/typescript/src/components/input-text-counter/index.d.ts +33 -0
  130. package/lib/typescript/src/components/input-text-counter/styles.d.ts +34 -0
  131. package/lib/typescript/src/components/modal-create-activitie/index.d.ts +7 -0
  132. package/lib/typescript/src/components/modal-create-activitie/interface.d.ts +18 -0
  133. package/lib/typescript/src/components/modal-create-activitie/styles.d.ts +32 -0
  134. package/lib/typescript/src/components/modal-journey-rectification/index.d.ts +7 -0
  135. package/lib/typescript/src/components/modal-journey-rectification/styles.d.ts +32 -0
  136. package/lib/typescript/src/components/modals/modal-activity-reason/index.d.ts +7 -0
  137. package/lib/typescript/src/components/selects/select-date-and-hours/index.d.ts +12 -0
  138. package/lib/typescript/src/components/selects/select-date-and-hours/interface.d.ts +21 -0
  139. package/lib/typescript/src/components/selects/select-date-and-hours/styles.d.ts +24 -0
  140. package/lib/typescript/src/components/selects/select-option/index.d.ts +3 -6
  141. package/lib/typescript/src/index.d.ts +7 -3
  142. package/lib/typescript/src/stories/input-text-counter/input-text-counter.stories.d.ts +17 -0
  143. package/lib/typescript/src/stories/modal-activities/modal-activities.stories.d.ts +1 -1
  144. package/lib/typescript/src/stories/modal-activity-reason/modal-activity-reason.stories.d.ts +15 -0
  145. package/lib/typescript/src/stories/modal-change-activity/modal-change-activity.stories.d.ts +1 -1
  146. package/lib/typescript/src/stories/modal-create-activitie/modal-create-activitie.stories.d.ts +12 -0
  147. package/lib/typescript/src/stories/modal-journey-rectification/modal-journey-rectification.stories.d.ts +34 -0
  148. package/lib/typescript/src/stories/select-option/select-option.stories.d.ts +1 -1
  149. package/lib/typescript/src/styles/global/theme-provider.d.ts +16 -0
  150. package/lib/typescript/src/styles/theme/theme.d.ts +16 -0
  151. package/lib/typescript/src/utils/options-activity/index.d.ts +20 -0
  152. package/lib/typescript/src/utils/text-limit/index.d.ts +13 -0
  153. package/package.json +1 -1
  154. package/src/components/input-text-counter/index.tsx +64 -0
  155. package/src/components/input-text-counter/interface.d.ts +41 -0
  156. package/src/components/input-text-counter/styles.ts +38 -0
  157. package/src/components/modal-create-activitie/index.tsx +211 -0
  158. package/src/components/modal-create-activitie/interface.ts +22 -0
  159. package/src/components/modal-create-activitie/styles.ts +24 -0
  160. package/src/components/modal-journey-rectification/index.tsx +211 -0
  161. package/src/components/modal-journey-rectification/interface.d.ts +22 -0
  162. package/src/components/modal-journey-rectification/styles.ts +24 -0
  163. package/src/components/{modal-activities → modals/modal-activities}/data-activities/index.ts +65 -65
  164. package/src/components/{modal-activities → modals/modal-activities}/index.tsx +137 -137
  165. package/src/components/{modal-activities → modals/modal-activities}/interface.d.ts +32 -32
  166. package/src/components/modals/modal-activity-reason/index.tsx +162 -0
  167. package/src/components/modals/modal-activity-reason/interface.d.ts +10 -0
  168. package/src/components/{modal-change-activity → modals/modal-change-activity}/index.tsx +6 -6
  169. package/src/components/selects/select-date-and-hours/index.tsx +97 -0
  170. package/src/components/selects/select-date-and-hours/interface.ts +31 -0
  171. package/src/components/selects/select-date-and-hours/styles.ts +24 -0
  172. package/src/components/selects/select-option/index.tsx +50 -41
  173. package/src/components/step-indicator/index.tsx +235 -235
  174. package/src/components/step-indicator/interface.d.ts +2 -2
  175. package/src/index.ts +49 -45
  176. package/src/stories/input-text-counter/input-text-counter.stories.tsx +232 -0
  177. package/src/stories/modal-activities/modal-activities.stories.tsx +64 -64
  178. package/src/stories/modal-activity-reason/modal-activity-reason.stories.tsx +192 -0
  179. package/src/stories/modal-change-activity/modal-change-activity.stories.tsx +49 -49
  180. package/src/stories/modal-create-activitie/modal-create-activitie.stories.tsx +82 -0
  181. package/src/stories/modal-journey-rectification/modal-journey-rectification.stories.tsx +161 -0
  182. package/src/stories/select-option/select-option.stories.tsx +1 -1
  183. package/src/stories/step-indicator/step-indicator.stories.tsx +2 -1
  184. package/src/styles/theme/theme.ts +17 -0
  185. package/src/utils/options-activity/index.ts +14 -0
  186. package/src/utils/text-limit/index.ts +28 -0
  187. package/lib/commonjs/components/modal-activities/data-activities/index.js.map +0 -1
  188. package/lib/commonjs/components/modal-activities/index.js.map +0 -1
  189. package/lib/commonjs/components/modal-activities/interface.d.js.map +0 -1
  190. package/lib/commonjs/components/modal-change-activity/index.js.map +0 -1
  191. package/lib/module/components/modal-activities/data-activities/index.js.map +0 -1
  192. package/lib/module/components/modal-activities/index.js.map +0 -1
  193. package/lib/module/components/modal-activities/interface.d.js.map +0 -1
  194. package/lib/module/components/modal-change-activity/index.js.map +0 -1
  195. /package/lib/commonjs/components/{modal-activities → input-text-counter}/interface.d.js +0 -0
  196. /package/lib/module/components/{modal-activities → input-text-counter}/interface.d.js +0 -0
  197. /package/lib/typescript/src/components/{modal-activities → modals/modal-activities}/data-activities/index.d.ts +0 -0
  198. /package/lib/typescript/src/components/{modal-activities → modals/modal-activities}/index.d.ts +0 -0
  199. /package/lib/typescript/src/components/{modal-change-activity → modals/modal-change-activity}/index.d.ts +0 -0
@@ -0,0 +1,259 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.PlaceholderOrientativo = exports.PertoDoLimite = exports.InputDefault = exports.Desabilitado = exports.ControladoInterativo = exports.ComValorInicial = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _inputTextCounter = _interopRequireDefault(require("../../components/input-text-counter"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
14
+ * IMPORTS
15
+ */ // components
16
+ /**
17
+ * META
18
+ */
19
+ const meta = {
20
+ title: "componente/InputTextCounter",
21
+ component: _inputTextCounter.default,
22
+ tags: ["autodocs"],
23
+ args: {
24
+ label: "Descreva o problema encontrado",
25
+ placeholder: "Ex: O caminhão apresentou falha no freio durante o trajeto...",
26
+ // props comuns de TextInput (assumindo que o componente as repasse):
27
+ maxLength: 150,
28
+ multiline: true
29
+ },
30
+ argTypes: {
31
+ label: {
32
+ control: {
33
+ type: "text"
34
+ },
35
+ description: "Rótulo exibido acima do campo.",
36
+ table: {
37
+ category: "Aparência"
38
+ }
39
+ },
40
+ placeholder: {
41
+ control: {
42
+ type: "text"
43
+ },
44
+ description: "Texto de dica quando o campo está vazio.",
45
+ table: {
46
+ category: "Aparência"
47
+ }
48
+ },
49
+ maxLength: {
50
+ control: {
51
+ type: "number",
52
+ min: 50,
53
+ max: 500,
54
+ step: 10
55
+ },
56
+ description: "Limite máximo de caracteres (ex.: 150).",
57
+ table: {
58
+ category: "Comportamento"
59
+ }
60
+ },
61
+ multiline: {
62
+ control: {
63
+ type: "boolean"
64
+ },
65
+ description: "Habilita múltiplas linhas para textos longos.",
66
+ table: {
67
+ category: "Comportamento"
68
+ }
69
+ },
70
+ editable: {
71
+ control: {
72
+ type: "boolean"
73
+ },
74
+ description: "Se falso, o campo fica somente leitura (desabilitado).",
75
+ table: {
76
+ category: "Comportamento"
77
+ }
78
+ },
79
+ defaultValue: {
80
+ control: {
81
+ type: "text"
82
+ },
83
+ description: "Valor inicial não controlado (apenas na montagem).",
84
+ table: {
85
+ category: "Valor"
86
+ }
87
+ },
88
+ value: {
89
+ control: {
90
+ type: "text"
91
+ },
92
+ description: "Valor controlado do campo. Use junto de `onChangeText` (controlado).",
93
+ table: {
94
+ category: "Valor"
95
+ }
96
+ },
97
+ onChangeText: {
98
+ action: "onChangeText",
99
+ description: "Callback disparado a cada alteração de texto.",
100
+ table: {
101
+ category: "Eventos"
102
+ }
103
+ }
104
+ },
105
+ parameters: {
106
+ controls: {
107
+ expanded: true
108
+ },
109
+ layout: "centered",
110
+ notes: `
111
+ # InputTextCounter
112
+
113
+ Campo de texto **multilinha** para descrição de manutenção com **contador de caracteres** e estilo seguindo o Figma.
114
+
115
+ ## ✅ Recursos
116
+ - **Contador dinâmico** (ex.: \`85/150\`)
117
+ - **Limite configurável** via \`maxLength\` (padrão: 150)
118
+ - **Multilinha** para textos longos
119
+ - **Placeholder** claro com exemplo de preenchimento
120
+
121
+ ## 🔧 Props principais
122
+ - \`label: string\` — título acima do campo
123
+ - \`placeholder: string\` — dica de preenchimento
124
+ - \`maxLength?: number\` — limite de caracteres (ex.: 150)
125
+ - \`multiline?: boolean\` — permite múltiplas linhas
126
+ - \`editable?: boolean\` — desabilita/ativa edição
127
+ - \`defaultValue?: string\` — valor inicial (não controlado)
128
+ - \`value?: string\`, \`onChangeText?: (t: string) => void\` — modo controlado
129
+
130
+ > Observação: se o componente estende \`TextInputProps\`, essas props já são suportadas.
131
+
132
+ ## 🧩 Padrões de UX
133
+ - Mostre o **contador** sempre que houver \`maxLength\`.
134
+ - Use \`placeholder\` com **exemplo concreto** (melhora taxa de preenchimento).
135
+ - Em formulários longos, mantenha o campo **multilinha** com altura inicial confortável.
136
+
137
+ ## 🧪 Testes (ideias)
138
+ - Renderiza label e placeholder corretos
139
+ - Respeita \`maxLength\` e exibe contador
140
+ - Dispara \`onChangeText\` ao digitar
141
+ - \`editable=false\` impede edição
142
+
143
+ ## 💡 Uso básico
144
+ \`\`\`tsx
145
+ <InputTextCounter
146
+ label="Descreva o problema encontrado"
147
+ placeholder="Ex: O caminhão apresentou falha no freio durante o trajeto..."
148
+ maxLength={150}
149
+ multiline
150
+ />
151
+ \`\`\`
152
+ `
153
+ },
154
+ decorators: [Story => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
155
+ style: {
156
+ width: 360,
157
+ padding: 16,
158
+ backgroundColor: "#F7F7F7",
159
+ borderRadius: 12
160
+ }
161
+ }, /*#__PURE__*/_react.default.createElement(Story, null))]
162
+ };
163
+ var _default = exports.default = meta;
164
+ /**
165
+ * STORIES
166
+ */
167
+
168
+ // 1) Padrão
169
+ const InputDefault = exports.InputDefault = {
170
+ name: "input-descricao-default",
171
+ args: {
172
+ label: "Descrição da manutenção",
173
+ placeholder: "Ex: Vazamento de óleo no motor.",
174
+ maxLength: 150,
175
+ multiline: true
176
+ }
177
+ };
178
+
179
+ // 2) Valor inicial (não controlado)
180
+ const ComValorInicial = exports.ComValorInicial = {
181
+ name: "com-valor-inicial",
182
+ args: {
183
+ defaultValue: "Durante o trajeto na BR-262, notei ruído metálico vindo da roda traseira direita."
184
+ }
185
+ };
186
+
187
+ // 3) Perto do limite (simula campo quase cheio)
188
+ const PertoDoLimite = exports.PertoDoLimite = {
189
+ name: "perto-do-limite",
190
+ args: {
191
+ maxLength: 100,
192
+ defaultValue: "Barulho intermitente na transmissão ao reduzir de 4ª para 3ª em descida."
193
+ }
194
+ };
195
+
196
+ // 4) Desabilitado / Somente leitura
197
+ const Desabilitado = exports.Desabilitado = {
198
+ name: "desabilitado",
199
+ args: {
200
+ editable: false,
201
+ placeholder: "Campo indisponível no momento"
202
+ },
203
+ parameters: {
204
+ docs: {
205
+ description: {
206
+ story: "Use `editable={false}` para estados de checklist revisado ou quando a OS estiver bloqueada."
207
+ }
208
+ }
209
+ }
210
+ };
211
+
212
+ // 5) Interativo controlado (demonstração de value + onChangeText)
213
+ const ControladoInterativo = exports.ControladoInterativo = {
214
+ name: "controlado-interativo",
215
+ render: args => {
216
+ const Wrapper = () => {
217
+ var _args$label, _args$maxLength;
218
+ const [text, setText] = (0, _react.useState)("Inicial: ruído ao frear levemente após 20min de uso.");
219
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_inputTextCounter.default, _extends({}, args, {
220
+ label: (_args$label = args.label) !== null && _args$label !== void 0 ? _args$label : "Descrição",
221
+ value: text,
222
+ onChangeText: t => {
223
+ var _args$onChangeText;
224
+ setText(t);
225
+ // Storybook action:
226
+ // @ts-ignore - vincula ao painel de ações se existir
227
+ args === null || args === void 0 || (_args$onChangeText = args.onChangeText) === null || _args$onChangeText === void 0 || _args$onChangeText.call(args, t);
228
+ }
229
+ })), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
230
+ style: {
231
+ marginTop: 8,
232
+ fontSize: 12,
233
+ color: "#666"
234
+ }
235
+ }, text.length, "/", (_args$maxLength = args.maxLength) !== null && _args$maxLength !== void 0 ? _args$maxLength : 150, " caracteres"));
236
+ };
237
+ return /*#__PURE__*/_react.default.createElement(Wrapper, null);
238
+ },
239
+ args: {
240
+ maxLength: 200,
241
+ multiline: true
242
+ },
243
+ parameters: {
244
+ docs: {
245
+ description: {
246
+ story: "Exemplo **controlado**: o estado vive no Story e é atualizado via `onChangeText`."
247
+ }
248
+ }
249
+ }
250
+ };
251
+
252
+ // 6) Placeholder extenso (orientação contextual)
253
+ const PlaceholderOrientativo = exports.PlaceholderOrientativo = {
254
+ name: "placeholder-orientativo",
255
+ args: {
256
+ placeholder: "Descreva quando ocorreu, o local no veículo e se o problema é constante ou intermitente."
257
+ }
258
+ };
259
+ //# sourceMappingURL=input-text-counter.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_inputTextCounter","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","meta","title","component","InputTextCounter","tags","args","label","placeholder","maxLength","multiline","argTypes","control","type","description","table","category","min","max","step","editable","defaultValue","value","onChangeText","action","parameters","controls","expanded","layout","notes","decorators","Story","createElement","View","style","width","padding","backgroundColor","borderRadius","_default","exports","InputDefault","name","ComValorInicial","PertoDoLimite","Desabilitado","docs","story","ControladoInterativo","render","Wrapper","_args$label","_args$maxLength","text","setText","useState","_args$onChangeText","Text","marginTop","fontSize","color","PlaceholderOrientativo"],"sources":["input-text-counter.stories.tsx"],"sourcesContent":["/**\r\n * IMPORTS\r\n */\r\nimport React, { useState } from \"react\";\r\nimport { View, Text } from \"react-native\";\r\n\r\n// components\r\nimport InputTextCounter from \"../../components/input-text-counter\";\r\n\r\nimport type { Meta, StoryObj } from \"@storybook/react\";\r\n\r\n/**\r\n * META\r\n */\r\nconst meta: Meta<typeof InputTextCounter> = {\r\n title: \"componente/InputTextCounter\",\r\n component: InputTextCounter as React.FC,\r\n tags: [\"autodocs\"],\r\n args: {\r\n label: \"Descreva o problema encontrado\",\r\n placeholder: \"Ex: O caminhão apresentou falha no freio durante o trajeto...\",\r\n // props comuns de TextInput (assumindo que o componente as repasse):\r\n maxLength: 150,\r\n multiline: true,\r\n },\r\n argTypes: {\r\n label: {\r\n control: { type: \"text\" },\r\n description: \"Rótulo exibido acima do campo.\",\r\n table: { category: \"Aparência\" },\r\n },\r\n placeholder: {\r\n control: { type: \"text\" },\r\n description: \"Texto de dica quando o campo está vazio.\",\r\n table: { category: \"Aparência\" },\r\n },\r\n maxLength: {\r\n control: { type: \"number\", min: 50, max: 500, step: 10 },\r\n description: \"Limite máximo de caracteres (ex.: 150).\",\r\n table: { category: \"Comportamento\" },\r\n },\r\n multiline: {\r\n control: { type: \"boolean\" },\r\n description: \"Habilita múltiplas linhas para textos longos.\",\r\n table: { category: \"Comportamento\" },\r\n },\r\n editable: {\r\n control: { type: \"boolean\" },\r\n description: \"Se falso, o campo fica somente leitura (desabilitado).\",\r\n table: { category: \"Comportamento\" },\r\n },\r\n defaultValue: {\r\n control: { type: \"text\" },\r\n description: \"Valor inicial não controlado (apenas na montagem).\",\r\n table: { category: \"Valor\" },\r\n },\r\n value: {\r\n control: { type: \"text\" },\r\n description: \"Valor controlado do campo. Use junto de `onChangeText` (controlado).\",\r\n table: { category: \"Valor\" },\r\n },\r\n onChangeText: {\r\n action: \"onChangeText\",\r\n description: \"Callback disparado a cada alteração de texto.\",\r\n table: { category: \"Eventos\" },\r\n },\r\n },\r\n parameters: {\r\n controls: { expanded: true },\r\n layout: \"centered\",\r\n notes: `\r\n# InputTextCounter\r\n\r\nCampo de texto **multilinha** para descrição de manutenção com **contador de caracteres** e estilo seguindo o Figma.\r\n\r\n## ✅ Recursos\r\n- **Contador dinâmico** (ex.: \\`85/150\\`)\r\n- **Limite configurável** via \\`maxLength\\` (padrão: 150)\r\n- **Multilinha** para textos longos\r\n- **Placeholder** claro com exemplo de preenchimento\r\n\r\n## 🔧 Props principais\r\n- \\`label: string\\` — título acima do campo\r\n- \\`placeholder: string\\` — dica de preenchimento\r\n- \\`maxLength?: number\\` — limite de caracteres (ex.: 150)\r\n- \\`multiline?: boolean\\` — permite múltiplas linhas\r\n- \\`editable?: boolean\\` — desabilita/ativa edição\r\n- \\`defaultValue?: string\\` — valor inicial (não controlado)\r\n- \\`value?: string\\`, \\`onChangeText?: (t: string) => void\\` — modo controlado\r\n\r\n> Observação: se o componente estende \\`TextInputProps\\`, essas props já são suportadas.\r\n\r\n## 🧩 Padrões de UX\r\n- Mostre o **contador** sempre que houver \\`maxLength\\`.\r\n- Use \\`placeholder\\` com **exemplo concreto** (melhora taxa de preenchimento).\r\n- Em formulários longos, mantenha o campo **multilinha** com altura inicial confortável.\r\n\r\n## 🧪 Testes (ideias)\r\n- Renderiza label e placeholder corretos\r\n- Respeita \\`maxLength\\` e exibe contador\r\n- Dispara \\`onChangeText\\` ao digitar\r\n- \\`editable=false\\` impede edição\r\n\r\n## 💡 Uso básico\r\n\\`\\`\\`tsx\r\n<InputTextCounter\r\n label=\"Descreva o problema encontrado\"\r\n placeholder=\"Ex: O caminhão apresentou falha no freio durante o trajeto...\"\r\n maxLength={150}\r\n multiline\r\n/>\r\n\\`\\`\\`\r\n`,\r\n },\r\n decorators: [\r\n (Story) => (\r\n <View\r\n style={{\r\n width: 360,\r\n padding: 16,\r\n backgroundColor: \"#F7F7F7\",\r\n borderRadius: 12,\r\n }}\r\n >\r\n <Story />\r\n </View>\r\n ),\r\n ],\r\n};\r\n\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\n\r\n/**\r\n * STORIES\r\n */\r\n\r\n// 1) Padrão\r\nexport const InputDefault: Story = {\r\n name: \"input-descricao-default\",\r\n args: {\r\n label: \"Descrição da manutenção\",\r\n placeholder: \"Ex: Vazamento de óleo no motor.\",\r\n maxLength: 150,\r\n multiline: true,\r\n },\r\n};\r\n\r\n// 2) Valor inicial (não controlado)\r\nexport const ComValorInicial: Story = {\r\n name: \"com-valor-inicial\",\r\n args: {\r\n defaultValue:\r\n \"Durante o trajeto na BR-262, notei ruído metálico vindo da roda traseira direita.\",\r\n },\r\n};\r\n\r\n// 3) Perto do limite (simula campo quase cheio)\r\nexport const PertoDoLimite: Story = {\r\n name: \"perto-do-limite\",\r\n args: {\r\n maxLength: 100,\r\n defaultValue: \"Barulho intermitente na transmissão ao reduzir de 4ª para 3ª em descida.\",\r\n },\r\n};\r\n\r\n// 4) Desabilitado / Somente leitura\r\nexport const Desabilitado: Story = {\r\n name: \"desabilitado\",\r\n args: {\r\n editable: false,\r\n placeholder: \"Campo indisponível no momento\",\r\n },\r\n parameters: {\r\n docs: {\r\n description: {\r\n story:\r\n \"Use `editable={false}` para estados de checklist revisado ou quando a OS estiver bloqueada.\",\r\n },\r\n },\r\n },\r\n};\r\n\r\n// 5) Interativo controlado (demonstração de value + onChangeText)\r\nexport const ControladoInterativo: Story = {\r\n name: \"controlado-interativo\",\r\n render: (args) => {\r\n const Wrapper = () => {\r\n const [text, setText] = useState(\"Inicial: ruído ao frear levemente após 20min de uso.\");\r\n return (\r\n <View>\r\n <InputTextCounter\r\n {...args}\r\n label={args.label ?? \"Descrição\"}\r\n value={text}\r\n onChangeText={(t: string) => {\r\n setText(t);\r\n // Storybook action:\r\n // @ts-ignore - vincula ao painel de ações se existir\r\n args?.onChangeText?.(t);\r\n }}\r\n />\r\n <Text style={{ marginTop: 8, fontSize: 12, color: \"#666\" }}>\r\n {text.length}/{args.maxLength ?? 150} caracteres\r\n </Text>\r\n </View>\r\n );\r\n };\r\n return <Wrapper />;\r\n },\r\n args: {\r\n maxLength: 200,\r\n multiline: true,\r\n },\r\n parameters: {\r\n docs: {\r\n description: {\r\n story: \"Exemplo **controlado**: o estado vive no Story e é atualizado via `onChangeText`.\",\r\n },\r\n },\r\n },\r\n};\r\n\r\n// 6) Placeholder extenso (orientação contextual)\r\nexport const PlaceholderOrientativo: Story = {\r\n name: \"placeholder-orientativo\",\r\n args: {\r\n placeholder:\r\n \"Descreva quando ocorreu, o local no veículo e se o problema é constante ou intermitente.\",\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = exports.DefaultWork = exports.DefaultRest = void 0;
7
- var _modalActivities = require("../../components/modal-activities");
7
+ var _modalActivities = require("../../components/modals/modal-activities");
8
8
  const meta = {
9
9
  title: "componente/ModalActivities",
10
10
  component: _modalActivities.ModalActivities,
@@ -1 +1 @@
1
- {"version":3,"names":["_modalActivities","require","meta","title","component","ModalActivities","args","width","onClose","activityType","isLoading","handleActivity","activity","parameters","notes","_default","exports","default","DefaultWork","name","DefaultRest","style","marginLeft"],"sources":["modal-activities.stories.tsx"],"sourcesContent":["import { StoryObj, Meta } from \"@storybook/react\";\nimport { ModalActivities } from \"../../components/modal-activities\";\nimport { IActivity } from \"../../components/modal-activities/interface\";\n\nconst meta: Meta<typeof ModalActivities> = {\n title: \"componente/ModalActivities\",\n component: ModalActivities,\n args: {\n width: 120,\n onClose: () => {},\n activityType: \"trabalho\",\n isLoading: false,\n handleActivity: (activity: IActivity) => {\n return activity;\n },\n },\n parameters: {\n notes: `\n# MenuItem\n\nEste é um componente de MenuItem de menu.\nVocê usa assim:\n\\`\\`\\`tsx\n <ModalActivities\n {...args}\n activityType={activity?.tipo || \"trabalho\"}\n onClose={() => setIsVisible(false)}\n handleActivity={handleActivity}\n />\n\\`\\`\\`\n`,\n },\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const DefaultWork: Story = {\n name: \"modal-activities-work\",\n args: {\n isLoading: false,\n activityType: \"trabalho\",\n onClose: () => {},\n handleActivity: (activity: IActivity) => () => {\n return activity;\n },\n },\n};\n\nexport const DefaultRest: Story = {\n name: \"modal-activities-rest\",\n args: {\n isLoading: false,\n activityType: \"descanso\",\n style: {\n marginLeft: 0,\n },\n onClose: () => {},\n handleActivity: (activity: IActivity) => () => {\n return activity;\n },\n },\n};\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,OAAA;AAGA,MAAMC,IAAkC,GAAG;EACzCC,KAAK,EAAE,4BAA4B;EACnCC,SAAS,EAAEC,gCAAe;EAC1BC,IAAI,EAAE;IACJC,KAAK,EAAE,GAAG;IACVC,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBC,YAAY,EAAE,UAAU;IACxBC,SAAS,EAAE,KAAK;IAChBC,cAAc,EAAGC,QAAmB,IAAK;MACvC,OAAOA,QAAQ;IACjB;EACF,CAAC;EACDC,UAAU,EAAE;IACVC,KAAK,EAAE;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE;AACF,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaf,IAAI;AAIZ,MAAMgB,WAAkB,GAAAF,OAAA,CAAAE,WAAA,GAAG;EAChCC,IAAI,EAAE,uBAAuB;EAC7Bb,IAAI,EAAE;IACJI,SAAS,EAAE,KAAK;IAChBD,YAAY,EAAE,UAAU;IACxBD,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBG,cAAc,EAAGC,QAAmB,IAAK,MAAM;MAC7C,OAAOA,QAAQ;IACjB;EACF;AACF,CAAC;AAEM,MAAMQ,WAAkB,GAAAJ,OAAA,CAAAI,WAAA,GAAG;EAChCD,IAAI,EAAE,uBAAuB;EAC7Bb,IAAI,EAAE;IACJI,SAAS,EAAE,KAAK;IAChBD,YAAY,EAAE,UAAU;IACxBY,KAAK,EAAE;MACLC,UAAU,EAAE;IACd,CAAC;IACDd,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBG,cAAc,EAAGC,QAAmB,IAAK,MAAM;MAC7C,OAAOA,QAAQ;IACjB;EACF;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_modalActivities","require","meta","title","component","ModalActivities","args","width","onClose","activityType","isLoading","handleActivity","activity","parameters","notes","_default","exports","default","DefaultWork","name","DefaultRest","style","marginLeft"],"sources":["modal-activities.stories.tsx"],"sourcesContent":["import { StoryObj, Meta } from \"@storybook/react\";\r\nimport { ModalActivities } from \"../../components/modals/modal-activities\";\r\nimport { IActivity } from \"../../components/modals/modal-activities/interface\";\r\n\r\nconst meta: Meta<typeof ModalActivities> = {\r\n title: \"componente/ModalActivities\",\r\n component: ModalActivities,\r\n args: {\r\n width: 120,\r\n onClose: () => {},\r\n activityType: \"trabalho\",\r\n isLoading: false,\r\n handleActivity: (activity: IActivity) => {\r\n return activity;\r\n },\r\n },\r\n parameters: {\r\n notes: `\r\n# MenuItem\r\n\r\nEste é um componente de MenuItem de menu.\r\nVocê usa assim:\r\n\\`\\`\\`tsx\r\n <ModalActivities\r\n {...args}\r\n activityType={activity?.tipo || \"trabalho\"}\r\n onClose={() => setIsVisible(false)}\r\n handleActivity={handleActivity}\r\n />\r\n\\`\\`\\`\r\n`,\r\n },\r\n};\r\n\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\n\r\nexport const DefaultWork: Story = {\r\n name: \"modal-activities-work\",\r\n args: {\r\n isLoading: false,\r\n activityType: \"trabalho\",\r\n onClose: () => {},\r\n handleActivity: (activity: IActivity) => () => {\r\n return activity;\r\n },\r\n },\r\n};\r\n\r\nexport const DefaultRest: Story = {\r\n name: \"modal-activities-rest\",\r\n args: {\r\n isLoading: false,\r\n activityType: \"descanso\",\r\n style: {\r\n marginLeft: 0,\r\n },\r\n onClose: () => {},\r\n handleActivity: (activity: IActivity) => () => {\r\n return activity;\r\n },\r\n },\r\n};\r\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,OAAA;AAGA,MAAMC,IAAkC,GAAG;EACzCC,KAAK,EAAE,4BAA4B;EACnCC,SAAS,EAAEC,gCAAe;EAC1BC,IAAI,EAAE;IACJC,KAAK,EAAE,GAAG;IACVC,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBC,YAAY,EAAE,UAAU;IACxBC,SAAS,EAAE,KAAK;IAChBC,cAAc,EAAGC,QAAmB,IAAK;MACvC,OAAOA,QAAQ;IACjB;EACF,CAAC;EACDC,UAAU,EAAE;IACVC,KAAK,EAAE;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE;AACF,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaf,IAAI;AAIZ,MAAMgB,WAAkB,GAAAF,OAAA,CAAAE,WAAA,GAAG;EAChCC,IAAI,EAAE,uBAAuB;EAC7Bb,IAAI,EAAE;IACJI,SAAS,EAAE,KAAK;IAChBD,YAAY,EAAE,UAAU;IACxBD,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBG,cAAc,EAAGC,QAAmB,IAAK,MAAM;MAC7C,OAAOA,QAAQ;IACjB;EACF;AACF,CAAC;AAEM,MAAMQ,WAAkB,GAAAJ,OAAA,CAAAI,WAAA,GAAG;EAChCD,IAAI,EAAE,uBAAuB;EAC7Bb,IAAI,EAAE;IACJI,SAAS,EAAE,KAAK;IAChBD,YAAY,EAAE,UAAU;IACxBY,KAAK,EAAE;MACLC,UAAU,EAAE;IACd,CAAC;IACDd,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBG,cAAc,EAAGC,QAAmB,IAAK,MAAM;MAC7C,OAAOA,QAAQ;IACjB;EACF;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,198 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.TituloPersonalizado = exports.Fechado = exports.ControladoInterativo = exports.AbertoBasico = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _modalActivityReason = _interopRequireDefault(require("../../components/modals/modal-activity-reason"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
14
+ * IMPORTS
15
+ */ // components
16
+ /**
17
+ * META
18
+ */
19
+ const meta = {
20
+ title: "componente/ModalActivityReason",
21
+ component: _modalActivityReason.default,
22
+ tags: ["autodocs"],
23
+ args: {
24
+ visible: false,
25
+ textTitle: undefined
26
+ },
27
+ argTypes: {
28
+ visible: {
29
+ control: {
30
+ type: "boolean"
31
+ },
32
+ description: "Controla a visibilidade do modal.",
33
+ table: {
34
+ category: "Comportamento"
35
+ }
36
+ },
37
+ textTitle: {
38
+ control: {
39
+ type: "text"
40
+ },
41
+ description: "Título exibido no cabeçalho do modal. Se não informado, usa 'Motivo da exclusão'.",
42
+ table: {
43
+ category: "Aparência"
44
+ }
45
+ },
46
+ onClose: {
47
+ action: "onClose",
48
+ description: "Chamado ao fechar/cancelar o modal. Deve alternar `visible` para `false` no uso controlado.",
49
+ table: {
50
+ category: "Eventos"
51
+ }
52
+ },
53
+ modalConfirm: {
54
+ action: "modalConfirm",
55
+ description: "Chamado ao confirmar a ação. Por padrão, o componente chama `modalConfirm(true)` e em seguida `onClose()`.",
56
+ table: {
57
+ category: "Eventos"
58
+ }
59
+ }
60
+ },
61
+ parameters: {
62
+ controls: {
63
+ expanded: true
64
+ },
65
+ layout: "centered",
66
+ docs: {
67
+ description: {
68
+ component: `
69
+ ### ModalActivityReason
70
+
71
+ Modal para solicitar **motivo/justificativa** antes de executar uma ação crítica (ex.: excluir atividade).
72
+
73
+ #### Recursos
74
+ - Título personalizável via \`textTitle\`
75
+ - Campo de texto (interno) para descrição do motivo
76
+ - Botões **CANCELAR** e **CONFIRMAR**
77
+ - Dispara \`onClose\` e \`modalConfirm\` conforme interação do usuário
78
+
79
+ #### Props
80
+ - \`visible: boolean\` — controla abertura/fechamento do modal
81
+ - \`onClose: () => void\` — chamado ao cancelar/fechar
82
+ - \`modalConfirm: (ok?: boolean) => void\` — chamado ao confirmar; o componente invoca \`modalConfirm(true)\` e depois \`onClose()\`
83
+ - \`textTitle?: string\` — título opcional do cabeçalho
84
+
85
+ > Caso \`textTitle\` não seja informado, o título padrão é **"Motivo da exclusão"**.
86
+
87
+ #### Padrão de Uso (controlado)
88
+ No consumo real, gerencie o estado \`visible\` fora do componente e passe callbacks:
89
+ \`\`\`tsx
90
+ const [open, setOpen] = useState(false);
91
+
92
+ <ModalActivityReason
93
+ visible={open}
94
+ onClose={() => setOpen(false)}
95
+ modalConfirm={() => {
96
+ // enviar justificativa para API (se o componente expuser)
97
+ setOpen(false);
98
+ }}
99
+ textTitle="Motivo da exclusão"
100
+ />
101
+ \`\`\`
102
+
103
+ #### Testes (ideias)
104
+ - Renderiza com \`visible=true\`
105
+ - Exibe título padrão e título customizado
106
+ - Dispara \`onClose\` ao cancelar
107
+ - Dispara \`modalConfirm\` ao confirmar (e fecha em seguida)
108
+ `
109
+ }
110
+ }
111
+ },
112
+ decorators: [Story => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
113
+ style: {
114
+ width: 360,
115
+ padding: 16,
116
+ backgroundColor: "#F7F7F7",
117
+ borderRadius: 12
118
+ }
119
+ }, /*#__PURE__*/_react.default.createElement(Story, null))]
120
+ };
121
+ var _default = exports.default = meta;
122
+ /**
123
+ * STORIES
124
+ */
125
+
126
+ // 1) Aberto (básico)
127
+ const AbertoBasico = exports.AbertoBasico = {
128
+ name: "aberto-basico",
129
+ args: {
130
+ visible: true
131
+ }
132
+ };
133
+
134
+ // 2) Fechado (estado inicial comum)
135
+ const Fechado = exports.Fechado = {
136
+ name: "fechado",
137
+ args: {
138
+ visible: false
139
+ }
140
+ };
141
+
142
+ // 3) Com título personalizado
143
+ const TituloPersonalizado = exports.TituloPersonalizado = {
144
+ name: "titulo-personalizado",
145
+ args: {
146
+ visible: true,
147
+ textTitle: "Justifique a alteração da atividade"
148
+ }
149
+ };
150
+
151
+ // 4) Interativo (controlado) — demonstra fluxo completo
152
+ const ControladoInterativo = exports.ControladoInterativo = {
153
+ name: "controlado-interativo",
154
+ render: args => {
155
+ const Wrapper = () => {
156
+ var _args$textTitle;
157
+ const [open, setOpen] = (0, _react.useState)(false);
158
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.Button, {
159
+ title: "Abrir modal",
160
+ onPress: () => setOpen(true)
161
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
162
+ style: {
163
+ marginTop: 12,
164
+ fontSize: 12,
165
+ color: "#666"
166
+ }
167
+ }, "Clique para abrir e testar CANCELAR/CONFIRMAR."), /*#__PURE__*/_react.default.createElement(_modalActivityReason.default, _extends({}, args, {
168
+ visible: open,
169
+ onClose: () => {
170
+ var _args$onClose;
171
+ // aciona painel de ações do Storybook
172
+ // @ts-ignore
173
+ args === null || args === void 0 || (_args$onClose = args.onClose) === null || _args$onClose === void 0 || _args$onClose.call(args);
174
+ setOpen(false);
175
+ },
176
+ modalConfirm: ok => {
177
+ var _args$modalConfirm;
178
+ // @ts-ignore
179
+ args === null || args === void 0 || (_args$modalConfirm = args.modalConfirm) === null || _args$modalConfirm === void 0 || _args$modalConfirm.call(args, ok);
180
+ setOpen(false);
181
+ },
182
+ textTitle: (_args$textTitle = args.textTitle) !== null && _args$textTitle !== void 0 ? _args$textTitle : "Motivo da exclusão"
183
+ })));
184
+ };
185
+ return /*#__PURE__*/_react.default.createElement(Wrapper, null);
186
+ },
187
+ args: {
188
+ visible: false
189
+ },
190
+ parameters: {
191
+ docs: {
192
+ description: {
193
+ story: "Exemplo **controlado**: o estado `visible` é gerenciado no Story para simular uso real."
194
+ }
195
+ }
196
+ }
197
+ };
198
+ //# sourceMappingURL=modal-activity-reason.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_modalActivityReason","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","meta","title","component","ModalActivityReason","tags","args","visible","textTitle","undefined","argTypes","control","type","description","table","category","onClose","action","modalConfirm","parameters","controls","expanded","layout","docs","decorators","Story","createElement","View","style","width","padding","backgroundColor","borderRadius","_default","exports","AbertoBasico","name","Fechado","TituloPersonalizado","ControladoInterativo","render","Wrapper","_args$textTitle","open","setOpen","useState","Button","onPress","Text","marginTop","fontSize","color","_args$onClose","ok","_args$modalConfirm","story"],"sources":["modal-activity-reason.stories.tsx"],"sourcesContent":["/**\r\n * IMPORTS\r\n */\r\nimport React, { useState } from \"react\";\r\nimport type { Meta, StoryObj } from \"@storybook/react\";\r\nimport { View, Text, Button } from \"react-native\";\r\n\r\n// components\r\nimport ModalActivityReason from \"../../components/modals/modal-activity-reason\";\r\n\r\n/**\r\n * META\r\n */\r\nconst meta: Meta<typeof ModalActivityReason> = {\r\n title: \"componente/ModalActivityReason\",\r\n component: ModalActivityReason as React.FC,\r\n tags: [\"autodocs\"],\r\n args: {\r\n visible: false,\r\n textTitle: undefined,\r\n },\r\n argTypes: {\r\n visible: {\r\n control: { type: \"boolean\" },\r\n description: \"Controla a visibilidade do modal.\",\r\n table: { category: \"Comportamento\" },\r\n },\r\n textTitle: {\r\n control: { type: \"text\" },\r\n description:\r\n \"Título exibido no cabeçalho do modal. Se não informado, usa 'Motivo da exclusão'.\",\r\n table: { category: \"Aparência\" },\r\n },\r\n onClose: {\r\n action: \"onClose\",\r\n description:\r\n \"Chamado ao fechar/cancelar o modal. Deve alternar `visible` para `false` no uso controlado.\",\r\n table: { category: \"Eventos\" },\r\n },\r\n modalConfirm: {\r\n action: \"modalConfirm\",\r\n description:\r\n \"Chamado ao confirmar a ação. Por padrão, o componente chama `modalConfirm(true)` e em seguida `onClose()`.\",\r\n table: { category: \"Eventos\" },\r\n },\r\n },\r\n parameters: {\r\n controls: { expanded: true },\r\n layout: \"centered\",\r\n docs: {\r\n description: {\r\n component: `\r\n### ModalActivityReason\r\n\r\nModal para solicitar **motivo/justificativa** antes de executar uma ação crítica (ex.: excluir atividade).\r\n\r\n#### Recursos\r\n- Título personalizável via \\`textTitle\\`\r\n- Campo de texto (interno) para descrição do motivo\r\n- Botões **CANCELAR** e **CONFIRMAR**\r\n- Dispara \\`onClose\\` e \\`modalConfirm\\` conforme interação do usuário\r\n\r\n#### Props\r\n- \\`visible: boolean\\` — controla abertura/fechamento do modal\r\n- \\`onClose: () => void\\` — chamado ao cancelar/fechar\r\n- \\`modalConfirm: (ok?: boolean) => void\\` — chamado ao confirmar; o componente invoca \\`modalConfirm(true)\\` e depois \\`onClose()\\`\r\n- \\`textTitle?: string\\` — título opcional do cabeçalho\r\n\r\n> Caso \\`textTitle\\` não seja informado, o título padrão é **\"Motivo da exclusão\"**.\r\n\r\n#### Padrão de Uso (controlado)\r\nNo consumo real, gerencie o estado \\`visible\\` fora do componente e passe callbacks:\r\n\\`\\`\\`tsx\r\nconst [open, setOpen] = useState(false);\r\n\r\n<ModalActivityReason\r\n visible={open}\r\n onClose={() => setOpen(false)}\r\n modalConfirm={() => {\r\n // enviar justificativa para API (se o componente expuser)\r\n setOpen(false);\r\n }}\r\n textTitle=\"Motivo da exclusão\"\r\n/>\r\n\\`\\`\\`\r\n\r\n#### Testes (ideias)\r\n- Renderiza com \\`visible=true\\`\r\n- Exibe título padrão e título customizado\r\n- Dispara \\`onClose\\` ao cancelar\r\n- Dispara \\`modalConfirm\\` ao confirmar (e fecha em seguida)\r\n`,\r\n },\r\n },\r\n },\r\n decorators: [\r\n (Story) => (\r\n <View\r\n style={{\r\n width: 360,\r\n padding: 16,\r\n backgroundColor: \"#F7F7F7\",\r\n borderRadius: 12,\r\n }}\r\n >\r\n <Story />\r\n </View>\r\n ),\r\n ],\r\n};\r\n\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\n\r\n/**\r\n * STORIES\r\n */\r\n\r\n// 1) Aberto (básico)\r\nexport const AbertoBasico: Story = {\r\n name: \"aberto-basico\",\r\n args: {\r\n visible: true,\r\n },\r\n};\r\n\r\n// 2) Fechado (estado inicial comum)\r\nexport const Fechado: Story = {\r\n name: \"fechado\",\r\n args: {\r\n visible: false,\r\n },\r\n};\r\n\r\n// 3) Com título personalizado\r\nexport const TituloPersonalizado: Story = {\r\n name: \"titulo-personalizado\",\r\n args: {\r\n visible: true,\r\n textTitle: \"Justifique a alteração da atividade\",\r\n },\r\n};\r\n\r\n// 4) Interativo (controlado) — demonstra fluxo completo\r\nexport const ControladoInterativo: Story = {\r\n name: \"controlado-interativo\",\r\n render: (args) => {\r\n const Wrapper = () => {\r\n const [open, setOpen] = useState(false);\r\n\r\n return (\r\n <View>\r\n <Button title=\"Abrir modal\" onPress={() => setOpen(true)} />\r\n <Text style={{ marginTop: 12, fontSize: 12, color: \"#666\" }}>\r\n Clique para abrir e testar CANCELAR/CONFIRMAR.\r\n </Text>\r\n\r\n <ModalActivityReason\r\n {...args}\r\n visible={open}\r\n onClose={() => {\r\n // aciona painel de ações do Storybook\r\n // @ts-ignore\r\n args?.onClose?.();\r\n setOpen(false);\r\n }}\r\n modalConfirm={(ok?: boolean) => {\r\n // @ts-ignore\r\n args?.modalConfirm?.(ok);\r\n setOpen(false);\r\n }}\r\n textTitle={args.textTitle ?? \"Motivo da exclusão\"}\r\n />\r\n </View>\r\n );\r\n };\r\n\r\n return <Wrapper />;\r\n },\r\n args: {\r\n visible: false,\r\n },\r\n parameters: {\r\n docs: {\r\n description: {\r\n story:\r\n \"Exemplo **controlado**: o estado `visible` é gerenciado no Story para simular uso real.\",\r\n },\r\n },\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = exports.Default = void 0;
7
- var _modalChangeActivity = require("../../components/modal-change-activity");
8
- /**
9
- * IMPORTS
7
+ var _modalChangeActivity = require("../../components/modals/modal-change-activity");
8
+ /**
9
+ * IMPORTS
10
10
  */
11
11
 
12
12
  // component
@@ -1 +1 @@
1
- {"version":3,"names":["_modalChangeActivity","require","meta","title","component","ModalChangeActivity","args","visible","descricao","onClose","modalConfirm","parameters","docs","description","_default","exports","default","Default","name"],"sources":["modal-change-activity.stories.tsx"],"sourcesContent":["/**\n * IMPORTS\n */\n\nimport type { Meta, StoryObj } from \"@storybook/react\";\n\n// component\nimport { ModalChangeActivity } from \"../../components/modal-change-activity\";\n\nconst meta: Meta<typeof ModalChangeActivity> = {\n title: \"Componente/ModalChangeActivity\",\n component: ModalChangeActivity,\n args: {\n visible: true,\n descricao: \"Repouso Noturno\",\n onClose: () => {},\n modalConfirm: () => {},\n },\n parameters: {\n docs: {\n description: {\n component: `\n# ModalChangeActivity\n\nComponente de modal para alterar a atividade do usuário.\n\n## Uso\n\\`\\`\\`tsx\n<ModalChangeActivity\n visible\n dataRegistro=\"07/03/2024\"\n descricao=\"Repouso Noturno\"\n modalConfirm={(data) => console.log(data)}\n onClose={() => console.log(\"fechar modal\")}\n/>\n\\`\\`\\`\n `,\n },\n },\n },\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n name: \"Modal - Alterar Descanso\",\n};\n"],"mappings":";;;;;;AAOA,IAAAA,oBAAA,GAAAC,OAAA;AAPA;AACA;AACA;;AAIA;;AAGA,MAAMC,IAAsC,GAAG;EAC7CC,KAAK,EAAE,gCAAgC;EACvCC,SAAS,EAAEC,wCAAmB;EAC9BC,IAAI,EAAE;IACJC,OAAO,EAAE,IAAI;IACbC,SAAS,EAAE,iBAAiB;IAC5BC,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBC,YAAY,EAAEA,CAAA,KAAM,CAAC;EACvB,CAAC;EACDC,UAAU,EAAE;IACVC,IAAI,EAAE;MACJC,WAAW,EAAE;QACXT,SAAS,EAAE;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACM;IACF;EACF;AACF,CAAC;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,IAAI;AAIZ,MAAMe,OAAc,GAAAF,OAAA,CAAAE,OAAA,GAAG;EAC5BC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_modalChangeActivity","require","meta","title","component","ModalChangeActivity","args","visible","descricao","onClose","modalConfirm","parameters","docs","description","_default","exports","default","Default","name"],"sources":["modal-change-activity.stories.tsx"],"sourcesContent":["/**\r\n * IMPORTS\r\n */\r\n\r\nimport type { Meta, StoryObj } from \"@storybook/react\";\r\n\r\n// component\r\nimport { ModalChangeActivity } from \"../../components/modals/modal-change-activity\";\r\n\r\nconst meta: Meta<typeof ModalChangeActivity> = {\r\n title: \"Componente/ModalChangeActivity\",\r\n component: ModalChangeActivity,\r\n args: {\r\n visible: true,\r\n descricao: \"Repouso Noturno\",\r\n onClose: () => {},\r\n modalConfirm: () => {},\r\n },\r\n parameters: {\r\n docs: {\r\n description: {\r\n component: `\r\n# ModalChangeActivity\r\n\r\nComponente de modal para alterar a atividade do usuário.\r\n\r\n## Uso\r\n\\`\\`\\`tsx\r\n<ModalChangeActivity\r\n visible\r\n dataRegistro=\"07/03/2024\"\r\n descricao=\"Repouso Noturno\"\r\n modalConfirm={(data) => console.log(data)}\r\n onClose={() => console.log(\"fechar modal\")}\r\n/>\r\n\\`\\`\\`\r\n `,\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\n\r\nexport const Default: Story = {\r\n name: \"Modal - Alterar Descanso\",\r\n};\r\n"],"mappings":";;;;;;AAOA,IAAAA,oBAAA,GAAAC,OAAA;AAPA;AACA;AACA;;AAIA;;AAGA,MAAMC,IAAsC,GAAG;EAC7CC,KAAK,EAAE,gCAAgC;EACvCC,SAAS,EAAEC,wCAAmB;EAC9BC,IAAI,EAAE;IACJC,OAAO,EAAE,IAAI;IACbC,SAAS,EAAE,iBAAiB;IAC5BC,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;IACjBC,YAAY,EAAEA,CAAA,KAAM,CAAC;EACvB,CAAC;EACDC,UAAU,EAAE;IACVC,IAAI,EAAE;MACJC,WAAW,EAAE;QACXT,SAAS,EAAE;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACM;IACF;EACF;AACF,CAAC;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,IAAI;AAIZ,MAAMe,OAAc,GAAAF,OAAA,CAAAE,OAAA,GAAG;EAC5BC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.Playground = exports.Fechado = exports.Aberto = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _modalCreateActivitie = _interopRequireDefault(require("../../components/modal-create-activitie"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ /**
11
+ * IMPORTS
12
+ */
13
+
14
+ // component
15
+
16
+ // utils / types
17
+
18
+ const meta = {
19
+ title: "Componente/ModalCreteActivitie",
20
+ component: _modalCreateActivitie.default,
21
+ args: {
22
+ visible: false,
23
+ textTitle: "Incluir atividade"
24
+ },
25
+ argTypes: {
26
+ onClose: {
27
+ action: "onClose"
28
+ },
29
+ onPressConfirm: {
30
+ action: "onPressConfirm"
31
+ },
32
+ textTitle: {
33
+ control: "text",
34
+ description: "Título exibido no cabeçalho do modal"
35
+ },
36
+ visible: {
37
+ control: "boolean",
38
+ description: "Controla a visibilidade do modal"
39
+ }
40
+ },
41
+ parameters: {
42
+ docs: {
43
+ description: {
44
+ component: `
45
+ ### ModalCreteActivitie
46
+ Modal para incluir uma atividade com motivo, data e hora.
47
+
48
+ #### Uso
49
+ \`\`\`tsx
50
+ <ModalCreteActivitie
51
+ visible={visible}
52
+ onClose={() => {}}
53
+ onPressConfirm={(payload) => {}}
54
+ textTitle="Incluir atividade"
55
+ />
56
+ \`\`\`
57
+
58
+ - \`visible\`: abre/fecha o modal
59
+ - \`onClose\`: chamado ao cancelar/fechar
60
+ - \`onPressConfirm\`: retorna { reasonValue, label, dateAndHours }
61
+ - \`textTitle\`: título opcional
62
+ `
63
+ }
64
+ }
65
+ }
66
+ };
67
+ var _default = exports.default = meta;
68
+ /**
69
+ * Apenas controla via Controls (visible true/false no painel do Storybook).
70
+ * Evita Template com "args: any" e mantém tipagem estrita.
71
+ */
72
+ const Playground = exports.Playground = {
73
+ render: args => /*#__PURE__*/_react.default.createElement(_modalCreateActivitie.default, args)
74
+ };
75
+ const Fechado = exports.Fechado = {
76
+ args: {
77
+ visible: false
78
+ }
79
+ };
80
+ const Aberto = exports.Aberto = {
81
+ args: {
82
+ visible: true,
83
+ textTitle: "Incluir atividade"
84
+ }
85
+ };
86
+ //# sourceMappingURL=modal-create-activitie.stories.js.map