@gyramais/gyra-design 0.2.43 → 0.2.44

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.
@@ -50,7 +50,6 @@ import "./components/MultiSelectPicker/index.css";
50
50
  import "./components/RuleSearchPicker/index.css";
51
51
  import "./components/OperatorPicker/index.css";
52
52
  import "./components/ContextMenu/index.css";
53
- import "./components/Skeleton/index.css";
54
53
  import "./components/StatusTag/index.css";
55
54
  import "./components/Switch/index.css";
56
55
  import "./components/SyncChip/index.css";
@@ -50,7 +50,6 @@ import "./components/MultiSelectPicker/index.css";
50
50
  import "./components/RuleSearchPicker/index.css";
51
51
  import "./components/OperatorPicker/index.css";
52
52
  import "./components/ContextMenu/index.css";
53
- import "./components/Skeleton/index.css";
54
53
  import "./components/StatusTag/index.css";
55
54
  import "./components/Switch/index.css";
56
55
  import "./components/SyncChip/index.css";
package/dist/index.css CHANGED
@@ -6101,9 +6101,9 @@ h6 {
6101
6101
 
6102
6102
  .gyramais-hover-card-content {
6103
6103
 
6104
- width: -moz-fit-content;
6104
+ width: -moz-fit-content !important;
6105
6105
 
6106
- width: fit-content;
6106
+ width: fit-content !important;
6107
6107
 
6108
6108
  border-radius: 20px;
6109
6109
 
@@ -6119,6 +6119,7 @@ h6 {
6119
6119
 
6120
6120
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
6121
6121
  }
6122
+
6122
6123
  .gyramais-icon {
6123
6124
  content: var(--icon-url);
6124
6125
  }
@@ -9851,72 +9852,6 @@ h6 {
9851
9852
  height: 16px;
9852
9853
  }
9853
9854
 
9854
- /* Skeleton shimmer — silhueta cinza do conteudo que carrega */
9855
-
9856
- .gyramais-skeleton {
9857
- position: relative;
9858
- display: block;
9859
- overflow: hidden;
9860
- background-color: var(--color-border-subtle);
9861
- border-radius: 6px;
9862
- }
9863
- .gyramais-skeleton::after {
9864
- position: absolute;
9865
- inset: 0px;
9866
- --tw-content: '';
9867
- content: var(--tw-content);
9868
- transform: translateX(-100%);
9869
- background: linear-gradient(
9870
- 90deg,
9871
- transparent,
9872
- rgba(255, 255, 255, 0.55),
9873
- transparent
9874
- );
9875
- animation: gyramais-skeleton-sweep 1.4s ease-in-out infinite;
9876
- }
9877
- .gyramais-skeleton-text {
9878
- height: 12px;
9879
- width: 100%;
9880
- }
9881
- .gyramais-skeleton-rect {
9882
- height: 64px;
9883
- width: 100%;
9884
- }
9885
- .gyramais-skeleton-circle {
9886
- border-radius: 9999px;
9887
- }
9888
- .gyramais-skeleton-stack {
9889
- display: flex;
9890
- width: 100%;
9891
- flex-direction: column;
9892
- gap: 8px;
9893
- }
9894
-
9895
- @keyframes gyramais-skeleton-sweep {
9896
- 100% {
9897
- transform: translateX(100%);
9898
- }
9899
- }
9900
-
9901
- /* Sem movimento deslizante pra quem pediu menos animacao: pulso de opacidade */
9902
- @media (prefers-reduced-motion: reduce) {
9903
- .gyramais-skeleton::after {
9904
- animation: none;
9905
- }
9906
- .gyramais-skeleton {
9907
- animation: gyramais-skeleton-pulse 1.6s ease-in-out infinite;
9908
- }
9909
- }
9910
- @keyframes gyramais-skeleton-pulse {
9911
- 0%,
9912
- 100% {
9913
- opacity: 1;
9914
- }
9915
- 50% {
9916
- opacity: 0.55;
9917
- }
9918
- }
9919
-
9920
9855
  .gyramais-status-tag {
9921
9856
 
9922
9857
  display: inline-flex;
@@ -10057,27 +9992,23 @@ h6 {
10057
9992
  color: var(--color-text-primary);
10058
9993
  font-feature-settings: "tnum";
10059
9994
  }
10060
- /* "Sincronizando" — 3 pontos com pulso escalonado (estilo Apple), no lugar
10061
- da barra deslizante. Cada ponto anima scale+opacity com delay crescente,
10062
- dando a onda da esquerda pra direita. Sem framer-motion: keyframes CSS. */
10063
- .gyramais-sync-chip .gyramais-sync-chip-dots {
10064
- display: inline-flex;
10065
- align-items: center;
10066
- gap: 4px;
10067
- }
10068
- .gyramais-sync-chip .gyramais-sync-chip-dots-dot {
10069
- height: 5px;
10070
- width: 5px;
10071
- flex-shrink: 0;
10072
- border-radius: 9999px;
10073
- background-color: var(--color-text-tertiary);
10074
- animation: gyramais-sync-chip-pulse 1.2s ease-in-out infinite;
10075
- }
10076
- .gyramais-sync-chip .gyramais-sync-chip-dots-dot:nth-child(2) {
10077
- animation-delay: 0.15s;
9995
+ .gyramais-sync-chip .gyramais-sync-chip-loading {
9996
+ position: relative;
9997
+ height: 4px;
9998
+ width: 64px;
9999
+ overflow: hidden;
10000
+ border-radius: 2px;
10001
+ background-color: var(--color-border-subtle);
10078
10002
  }
10079
- .gyramais-sync-chip .gyramais-sync-chip-dots-dot:nth-child(3) {
10080
- animation-delay: 0.3s;
10003
+ .gyramais-sync-chip .gyramais-sync-chip-loading::after {
10004
+ position: absolute;
10005
+ height: 100%;
10006
+ width: 32px;
10007
+ border-radius: 2px;
10008
+ background-color: var(--gyra-blue);
10009
+ --tw-content: '';
10010
+ content: var(--tw-content);
10011
+ animation: gyramais-sync-chip-bar 1.6s ease-in-out infinite;
10081
10012
  }
10082
10013
 
10083
10014
  .gyramais-sync-chip.gyramais-sync-chip-error {
@@ -10089,13 +10020,10 @@ h6 {
10089
10020
  .gyramais-sync-chip.gyramais-sync-chip-error .gyramais-sync-chip-label {
10090
10021
  color: var(--status-danger-text);
10091
10022
  }
10092
- /* "Sincronizando" e' status neutro (em andamento), nao warning: pilula,
10093
- ponto e pulse em cinza — sincronizar nao sinaliza problema. Erro fica
10094
- vermelho e sucesso verde; so o em-andamento saiu do laranja. */
10095
10023
  .gyramais-sync-chip.gyramais-sync-chip-warning {
10096
- border-color: var(--color-border-secondary);
10097
- background-color: var(--color-surface-secondary);
10098
- color: var(--color-text-secondary);
10024
+ border-color: rgba(255,159,10,0.20);
10025
+ background-color: rgba(255,159,10,0.08);
10026
+ color: var(--warning-color);
10099
10027
  }
10100
10028
  .gyramais-sync-chip.gyramais-sync-chip-success {
10101
10029
  border-color: rgba(52,199,89,0.18);
@@ -10109,15 +10037,15 @@ h6 {
10109
10037
  background-color: var(--status-danger-text);
10110
10038
  }
10111
10039
 
10112
- @keyframes gyramais-sync-chip-pulse {
10113
- 0%,
10114
- 100% {
10115
- transform: scale(0.5);
10116
- opacity: 0.3;
10040
+ @keyframes gyramais-sync-chip-bar {
10041
+ 0% {
10042
+ transform: translateX(-32px);
10117
10043
  }
10118
10044
  50% {
10119
- transform: scale(1);
10120
- opacity: 1;
10045
+ transform: translateX(64px);
10046
+ }
10047
+ 100% {
10048
+ transform: translateX(-32px);
10121
10049
  }
10122
10050
  }
10123
10051
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gyramais/gyra-design",
3
- "version": "0.2.43",
3
+ "version": "0.2.44",
4
4
  "description": "Gyramais Design System",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import "./index.css";
3
- type SkeletonVariant = "text" | "rect" | "circle";
4
- type SkeletonProps = {
5
- id?: string;
6
- className?: string;
7
- /** Formato do bloco. `text` = linha fina; `rect` = bloco; `circle` = avatar. */
8
- variant?: SkeletonVariant;
9
- width?: number | string;
10
- height?: number | string;
11
- /** Quando > 1 (variant text), empilha N linhas; a ultima sai mais curta. */
12
- lines?: number;
13
- /** Override do border-radius. */
14
- radius?: number | string;
15
- };
16
- declare const Skeleton: ({ id, className, variant, width, height, lines, radius, }: SkeletonProps) => React.JSX.Element;
17
- export { Skeleton };
18
- export type { SkeletonProps };
@@ -1 +0,0 @@
1
- export * from "./Skeleton";
@@ -1,7 +0,0 @@
1
- "use client";import e from"react";function t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var r,a={exports:{}};
2
- /*!
3
- Copyright (c) 2018 Jed Watson.
4
- Licensed under the MIT License (MIT), see
5
- http://jedwatson.github.io/classnames
6
- */r=a,function(){var e={}.hasOwnProperty;function t(){for(var e="",t=0;t<arguments.length;t++){var r=arguments[t];r&&(e=n(e,a(r)))}return e}function a(r){if("string"==typeof r||"number"==typeof r)return r;if("object"!=typeof r)return"";if(Array.isArray(r))return t.apply(null,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var a="";for(var i in r)e.call(r,i)&&r[i]&&(a=n(a,i));return a}function n(e,t){return t?e?e+" "+t:e+t:e}r.exports?(t.default=t,r.exports=t):window.classNames=t}();var n=t(a.exports);const i=e=>"number"==typeof e?`${e}px`:e,o=({id:t,className:r,variant:a="text",width:o,height:s,lines:l,radius:u})=>"text"===a&&l&&l>1?e.createElement("div",{id:t,className:n("gyramais-skeleton-stack",r),"aria-hidden":"true"},Array.from({length:l}).map((t,r)=>{const a=r===l-1;return e.createElement("span",{key:r,className:"gyramais-skeleton gyramais-skeleton-text",style:{width:a?"60%":i(o)??"100%",height:i(s),borderRadius:i(u)}})})):e.createElement("span",{id:t,className:n("gyramais-skeleton",`gyramais-skeleton-${a}`,r),style:{width:i(o),height:i(s),borderRadius:i(u)},"aria-hidden":"true"});export{o as Skeleton};
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/classnames/index.js","../../../src/components/Skeleton/Skeleton.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport \"./index.css\";\n\n/* Placeholder de carregamento (shimmer). Primitivo generico: mostra a\n silhueta cinza do conteudo que vai chegar, em vez de um spinner. Compõe\n varios pra montar o esqueleto de um card/tabela. Respeita\n prefers-reduced-motion (troca o brilho deslizante por um pulso suave). */\n\ntype SkeletonVariant = \"text\" | \"rect\" | \"circle\";\n\ntype SkeletonProps = {\n id?: string;\n className?: string;\n /** Formato do bloco. `text` = linha fina; `rect` = bloco; `circle` = avatar. */\n variant?: SkeletonVariant;\n width?: number | string;\n height?: number | string;\n /** Quando > 1 (variant text), empilha N linhas; a ultima sai mais curta. */\n lines?: number;\n /** Override do border-radius. */\n radius?: number | string;\n};\n\nconst toCss = (value?: number | string) =>\n typeof value === \"number\" ? `${value}px` : value;\n\nconst Skeleton = ({\n id,\n className,\n variant = \"text\",\n width,\n height,\n lines,\n radius,\n}: SkeletonProps) => {\n if (variant === \"text\" && lines && lines > 1) {\n return (\n <div\n id={id}\n className={classNames(\"gyramais-skeleton-stack\", className)}\n aria-hidden=\"true\"\n >\n {Array.from({ length: lines }).map((_, index) => {\n const isLast = index === lines - 1;\n return (\n <span\n key={index}\n className=\"gyramais-skeleton gyramais-skeleton-text\"\n style={{\n width: isLast ? \"60%\" : toCss(width) ?? \"100%\",\n height: toCss(height),\n borderRadius: toCss(radius),\n }}\n />\n );\n })}\n </div>\n );\n }\n\n return (\n <span\n id={id}\n className={classNames(\n \"gyramais-skeleton\",\n `gyramais-skeleton-${variant}`,\n className,\n )}\n style={{\n width: toCss(width),\n height: toCss(height),\n borderRadius: toCss(radius),\n }}\n aria-hidden=\"true\"\n />\n );\n};\n\nexport { Skeleton };\nexport type { SkeletonProps };\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","module","exports","default","window","toCss","Skeleton","id","className","variant","width","height","lines","radius","React","createElement","from","map","_","index","isLast","style","borderRadius"],"mappings":";;;;;MAOC,WAGA,IAAIA,EAAS,CAAA,EAAGC,eAEhB,SAASC,IAGR,IAFA,IAAIC,EAAU,GAELC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAC1C,IAAIG,EAAMF,UAAUD,GAChBG,IACHJ,EAAUK,EAAYL,EAASM,EAAWF,IAE9C,CAEE,OAAOJ,CACT,CAEC,SAASM,EAAYF,GACpB,GAAmB,iBAARA,GAAmC,iBAARA,EACrC,OAAOA,EAGR,GAAmB,iBAARA,EACV,MAAO,GAGR,GAAIG,MAAMC,QAAQJ,GACjB,OAAOL,EAAWU,MAAM,KAAML,GAG/B,GAAIA,EAAIM,WAAaC,OAAOC,UAAUF,WAAaN,EAAIM,SAASA,WAAWG,SAAS,iBACnF,OAAOT,EAAIM,WAGZ,IAAIV,EAAU,GAEd,IAAK,IAAIc,KAAOV,EACXP,EAAOkB,KAAKX,EAAKU,IAAQV,EAAIU,KAChCd,EAAUK,EAAYL,EAASc,IAIjC,OAAOd,CACT,CAEC,SAASK,EAAaW,EAAOC,GAC5B,OAAKA,EAIDD,EACIA,EAAQ,IAAMC,EAGfD,EAAQC,EAPPD,CAQV,CAEsCE,EAAOC,SAC3CpB,EAAWqB,QAAUrB,EACrBmB,UAAiBnB,GAOjBsB,OAAOtB,WAAaA,CAEtB,CArEA,sBCiBA,MAAMuB,EAASN,GACI,iBAAVA,EAAqB,GAAGA,MAAYA,EAEvCO,EAAW,EACfC,KACAC,YACAC,UAAU,OACVC,QACAC,SACAC,QACAC,YAEgB,SAAZJ,GAAsBG,GAASA,EAAQ,EAEvCE,EAAAC,cAAA,MAAA,CACER,GAAIA,EACJC,UAAW1B,EAAW,0BAA2B0B,iBACrC,QAEXlB,MAAM0B,KAAK,CAAE9B,OAAQ0B,IAASK,IAAI,CAACC,EAAGC,KACrC,MAAMC,EAASD,IAAUP,EAAQ,EACjC,OACEE,EAAAC,cAAA,OAAA,CACElB,IAAKsB,EACLX,UAAU,2CACVa,MAAO,CACLX,MAAOU,EAAS,MAAQf,EAAMK,IAAU,OACxCC,OAAQN,EAAMM,GACdW,aAAcjB,EAAMQ,SAUhCC,wBACEP,GAAIA,EACJC,UAAW1B,EACT,oBACA,qBAAqB2B,IACrBD,GAEFa,MAAO,CACLX,MAAOL,EAAMK,GACbC,OAAQN,EAAMM,GACdW,aAAcjB,EAAMQ,IACrB,cACW","x_google_ignoreList":[0]}
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import "./index.css";
3
- type SkeletonVariant = "text" | "rect" | "circle";
4
- type SkeletonProps = {
5
- id?: string;
6
- className?: string;
7
- /** Formato do bloco. `text` = linha fina; `rect` = bloco; `circle` = avatar. */
8
- variant?: SkeletonVariant;
9
- width?: number | string;
10
- height?: number | string;
11
- /** Quando > 1 (variant text), empilha N linhas; a ultima sai mais curta. */
12
- lines?: number;
13
- /** Override do border-radius. */
14
- radius?: number | string;
15
- };
16
- declare const Skeleton: ({ id, className, variant, width, height, lines, radius, }: SkeletonProps) => React.JSX.Element;
17
- export { Skeleton };
18
- export type { SkeletonProps };
@@ -1 +0,0 @@
1
- export * from "./Skeleton";
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import "./index.css";
3
- type SkeletonVariant = "text" | "rect" | "circle";
4
- type SkeletonProps = {
5
- id?: string;
6
- className?: string;
7
- /** Formato do bloco. `text` = linha fina; `rect` = bloco; `circle` = avatar. */
8
- variant?: SkeletonVariant;
9
- width?: number | string;
10
- height?: number | string;
11
- /** Quando > 1 (variant text), empilha N linhas; a ultima sai mais curta. */
12
- lines?: number;
13
- /** Override do border-radius. */
14
- radius?: number | string;
15
- };
16
- declare const Skeleton: ({ id, className, variant, width, height, lines, radius, }: SkeletonProps) => React.JSX.Element;
17
- export { Skeleton };
18
- export type { SkeletonProps };
@@ -1 +0,0 @@
1
- export * from "./Skeleton";