@kanaries/graphic-walker 0.2.5 → 0.2.6
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.
|
@@ -733,5 +733,5 @@ License: MIT
|
|
|
733
733
|
`,QMe=qt(e=>{const t=oe.useRef(null),{commonStore:n}=Ut(),{tmpDSName:r,tmpDataSource:i}=n,a=oe.useCallback(()=>{n.commitTempDS()},[]),{t:o}=gn("translation",{keyPrefix:"DataSource.dialog.file"});return W.default.createElement($Me,null,W.default.createElement("input",{style:{display:"none"},type:"file",ref:t,onChange:s=>{const l=s.target.files;if(l!==null){const u=l[0];jMe({file:u,config:{type:"reservoirSampling",size:1/0},onLoading:()=>{}}).then(c=>{n.updateTempDS(c)})}}}),W.default.createElement("div",{className:"mt-1 mb-1"},W.default.createElement("button",{className:"inline-block min-w-96 text-xs mr-2 pt-1 pb-1 pl-6 pr-6 border border-gray-500 rounded-sm cursor-pointer hover:bg-gray-200",onClick:()=>{t.current&&t.current.click()}},o("open")),W.default.createElement("button",{className:"inline-block min-w-96 text-xs mr-2 pt-1 pb-1 pl-6 pr-6 bg-yellow-600 rounded-sm hover:bg-yellow-500 text-white font-bold disabled:bg-gray-300",disabled:i.length===0,onClick:()=>{a()}},o("submit"))),W.default.createElement("div",{className:"mt-1 mb-1"},W.default.createElement("label",{className:"block text-xs text-gray-800"},o("dataset_name")),W.default.createElement("input",{type:"text",placeholder:o("dataset_name"),value:r,onChange:s=>{n.updateTempName(s.target.value)},className:"text-xs p-1 border border-gray-300 outline-none focus:outline-none focus:border-blue-500"})),W.default.createElement(j6,null))}),qMe=process.env.NODE_ENV==="production"?{CARS:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-cars-service.json",STUDENTS:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-students-service.json",BTC_GOLD:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds_btc_gold_service.json",BIKE_SHARING:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-bikesharing-service.json",CAR_SALES:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-carsales-service.json",COLLAGE:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-collage-service.json",TITANIC:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-titanic-service.json",KELPER:"https://chspace.oss-cn-hongkong.aliyuncs.com/api/ds-kelper-service.json"}:{CARS:"/datasets/ds-cars-service.json",STUDENTS:"/datasets/ds-students-service.json",BTC_GOLD:"/datasets/ds_btc_gold_service.json",BIKE_SHARING:"/datasets/ds-bikesharing-service.json",CAR_SALES:"/datasets/ds-carsales-service.json",COLLAGE:"/datasets/ds-collage-service.json",TITANIC:"/datasets/ds-titanic-service.json",KELPER:"/datasets/ds-kelper-service.json"},ePe=[{key:"CARS",title:"Cars"},{key:"STUDENTS",title:"Students' Performance"},{key:"BIKE_SHARING",title:"Bike Sharing"},{key:"CAR_SALES",title:"Car Sales"},{key:"COLLAGE",title:"Collage"},{key:"KELPER",title:"NASA Kelper"},{key:"BTC_GOLD",title:"2022MCM Problem C: Trading Strategies"},{key:"TITANIC",title:"Titanic"}],tPe=qt(e=>{const{commonStore:t}=Ut(),{tmpDataSource:n}=t,{t:r}=gn("translation",{keyPrefix:"DataSource.dialog.public"});return W.default.createElement("div",null,W.default.createElement("div",{className:"h-48 overflow-auto mb-1"},ePe.map(i=>W.default.createElement("div",{key:i.key,onClick:()=>{fetch(qMe[i.key]).then(a=>a.json()).then(a=>{t.updateTempSTDDS({dataSource:a.dataSource,rawFields:a.fields.map(o=>({fid:o.fid,name:o.name,analyticType:o.analyticType,semanticType:o.semanticType,dataType:o.dataType||"?"})),name:i.title})})},className:"border rounded border-gray-400 p-2 m-2 cursor-pointer hover:bg-gray-50"},W.default.createElement("div",null,i.title)))),W.default.createElement("hr",{className:"m-1"}),W.default.createElement("button",{className:"inline-block min-w-96 text-xs mr-2 pt-1 pb-1 pl-6 pr-6 bg-yellow-600 rounded-sm hover:bg-yellow-500 text-white font-bold disabled:bg-gray-300",disabled:n.length===0,onClick:()=>{t.commitTempDS()}},r("submit")),W.default.createElement("hr",{className:"m-1"}),W.default.createElement(j6,null))}),nPe=e=>{const[t,n]=oe.useState("file"),{t:r}=gn("translation",{keyPrefix:"DataSource"});return W.default.createElement("div",{className:"grid grid-cols-6 text-sm"},W.default.createElement("div",{className:"col-span-1 bg-gray-100 pl-2 pr-2 pb-2 pt-1 text-xs"},W.default.createElement("h1",{className:"cursor-default"},r("dialog.data_types")),W.default.createElement("hr",{className:"mt-1 mb-1"}),W.default.createElement("div",{className:`pb-1 cursor-pointer ${t==="file"?"underline":""} hover:bg-gray-200 hover:text-purple-600`,onClick:()=>{n("file")}},r("dialog.text_file_data")),W.default.createElement("div",{className:`pb-1 cursor-pointer ${t==="public"?"underline":""} hover:bg-gray-200 hover:text-purple-600`,onClick:()=>{n("public")}},r("dialog.public_data"))),W.default.createElement("div",{className:"col-span-5 pl-2 pr-2"},W.default.createElement("h1",{className:"text-base font-semibold"},r("dialog.data_source_type",{sourceType:t})),W.default.createElement("hr",{className:"mt-1 mb-1"}),t==="file"&&W.default.createElement(QMe,null),t==="public"&&W.default.createElement(tPe,null)))},rPe=qt(e=>{const{preWorkDone:t}=e,{commonStore:n,vizStore:r}=Ut(),i=oe.useRef(null),{t:a}=gn(),{currentDataset:o,datasets:s,showDSPanel:l}=n;return W.default.createElement(B_,{className:"flex flex-row items-stretch"},W.default.createElement(DMe,{fileRef:i}),!t&&W.default.createElement("div",{className:"animate-spin inline-block mr-2 ml-2 w-4 h-4 rounded-full border-t-2 border-l-2 border-blue-500"}),W.default.createElement("label",{className:"text-xs mr-1 whitespace-nowrap self-center h-4"},a("DataSource.labels.cur_dataset")),W.default.createElement("select",{className:"border border-gray-500 rounded-sm text-xs pt-0.5 pb-0.5 pl-2 pr-2",value:o.id,onChange:u=>{n.useDS(u.target.value)}},s.map(u=>W.default.createElement("option",{value:u.id,key:u.id},u.name))),W.default.createElement("button",{className:"inline-block min-w-96 text-xs ml-2 pt-1 pb-1 pl-6 pr-6 border border-gray-500 rounded-sm hover:bg-gray-200",onClick:()=>{n.startDSBuildingTask()}},a("DataSource.buttons.create_dataset")),W.default.createElement("button",{className:"inline-block min-w-96 text-xs ml-2 pt-1 pb-1 pl-6 pr-6 border border-gray-500 rounded-sm hover:bg-gray-200",onClick:()=>{const u=r.exportAsRaw();Sie(u,"graphic-walker-notebook.json","text/plain")}},a("DataSource.buttons.export_as_file")),W.default.createElement("button",{className:"inline-block min-w-96 text-xs ml-2 pt-1 pb-1 pl-6 pr-6 border border-gray-500 rounded-sm hover:bg-gray-200",onClick:()=>{i.current&&i.current.click()}},a("DataSource.buttons.import_file")),l&&W.default.createElement(Dw,{title:a("DataSource.dialog.create_data_source"),onClose:()=>{n.setShowDSPanel(!1)}},W.default.createElement(nPe,null)),t&&W.default.createElement(CL,{className:"text-green-500 w-5 inline-block ml-2"}),!t&&W.default.createElement(vq,{className:"text-yellow-500 w-5 inline-block ml-2"}))});function iPe(...e){return e.filter(Boolean).join(" ")}function aPe(e){const{tabs:t,selectedKey:n,onSelected:r,allowEdit:i,onEditLabel:a}=e,[o,s]=oe.useState([]),{t:l}=gn(),u=oe.useCallback(()=>{s(new Array(t.length).fill(!1))},[t.length]);return oe.useEffect(()=>{},[u]),W.default.createElement("div",{className:"border-b border-gray-200 overflow-x-auto overflow-y-hidden",onMouseLeave:u},W.default.createElement("nav",{className:"-mb-px flex h-8 border-gray-300 border-l",role:"tablist","aria-label":"Tabs"},t.map((c,f)=>W.default.createElement("span",{role:"tab",tabIndex:0,dangerouslySetInnerHTML:{__html:l(c.label,c.options)},onClick:()=>{r(c.key,f)},onDoubleClick:()=>{s(d=>{const h=[...d];return h[f]=!0,h})},contentEditable:o[f],onInput:d=>{a&&a(`${d.currentTarget.textContent}`,f)},key:c.key,className:iPe(c.key===n?"border-transparent text-black bg-gray-100":"text-gray-500 hover:text-gray-700 hover:border-gray-300","whitespace-nowrap border-gray-300 py-1 px-2 border-t border-r border-b pr-6 text-sm cursor-pointer")}))))}const B6="_add",oPe=qt(e=>{const{vizStore:t,commonStore:n}=Ut(),{visIndex:r,visList:i}=t,{currentDataset:a}=n,o=i.map(u=>{var c,f;return{key:u.visId,label:((c=u.name)==null?void 0:c[0])||"vis",options:(f=u.name)==null?void 0:f[1]}});o.push({key:B6,label:"main.tablist.new"});const s=oe.useCallback((u,c)=>{u===B6?(t.addVisualization(),t.initMetaState(a)):t.selectVisualization(c)},[a,t]),l=oe.useCallback((u,c)=>{t.setVisName(c,u)},[]);return W.default.createElement(aPe,{selectedKey:i[r].visId,tabs:o,onEditLabel:l,onSelected:s})});var H6=[],sPe=H6.forEach,lPe=H6.slice;function uPe(e){return sPe.call(lPe.call(arguments,1),function(t){if(t)for(var n in t)e[n]===void 0&&(e[n]=t[n])}),e}var K6=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,cPe=function(t,n,r){var i=r||{};i.path=i.path||"/";var a=encodeURIComponent(n),o="".concat(t,"=").concat(a);if(i.maxAge>0){var s=i.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");o+="; Max-Age=".concat(Math.floor(s))}if(i.domain){if(!K6.test(i.domain))throw new TypeError("option domain is invalid");o+="; Domain=".concat(i.domain)}if(i.path){if(!K6.test(i.path))throw new TypeError("option path is invalid");o+="; Path=".concat(i.path)}if(i.expires){if(typeof i.expires.toUTCString!="function")throw new TypeError("option expires is invalid");o+="; Expires=".concat(i.expires.toUTCString())}if(i.httpOnly&&(o+="; HttpOnly"),i.secure&&(o+="; Secure"),i.sameSite){var l=typeof i.sameSite=="string"?i.sameSite.toLowerCase():i.sameSite;switch(l){case!0:o+="; SameSite=Strict";break;case"lax":o+="; SameSite=Lax";break;case"strict":o+="; SameSite=Strict";break;case"none":o+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return o},J6={create:function(t,n,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};r&&(a.expires=new Date,a.expires.setTime(a.expires.getTime()+r*60*1e3)),i&&(a.domain=i),document.cookie=cPe(t,encodeURIComponent(n),a)},read:function(t){for(var n="".concat(t,"="),r=document.cookie.split(";"),i=0;i<r.length;i++){for(var a=r[i];a.charAt(0)===" ";)a=a.substring(1,a.length);if(a.indexOf(n)===0)return a.substring(n.length,a.length)}return null},remove:function(t){this.create(t,"",-1)}},fPe={name:"cookie",lookup:function(t){var n;if(t.lookupCookie&&typeof document<"u"){var r=J6.read(t.lookupCookie);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupCookie&&typeof document<"u"&&J6.create(n.lookupCookie,t,n.cookieMinutes,n.cookieDomain,n.cookieOptions)}},dPe={name:"querystring",lookup:function(t){var n;if(typeof window<"u"){var r=window.location.search;!window.location.search&&window.location.hash&&window.location.hash.indexOf("?")>-1&&(r=window.location.hash.substring(window.location.hash.indexOf("?")));for(var i=r.substring(1),a=i.split("&"),o=0;o<a.length;o++){var s=a[o].indexOf("=");if(s>0){var l=a[o].substring(0,s);l===t.lookupQuerystring&&(n=a[o].substring(s+1))}}}return n}},wb=null,U6=function(){if(wb!==null)return wb;try{wb=window!=="undefined"&&window.localStorage!==null;var t="i18next.translate.boo";window.localStorage.setItem(t,"foo"),window.localStorage.removeItem(t)}catch{wb=!1}return wb},hPe={name:"localStorage",lookup:function(t){var n;if(t.lookupLocalStorage&&U6()){var r=window.localStorage.getItem(t.lookupLocalStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupLocalStorage&&U6()&&window.localStorage.setItem(n.lookupLocalStorage,t)}},Eb=null,$6=function(){if(Eb!==null)return Eb;try{Eb=window!=="undefined"&&window.sessionStorage!==null;var t="i18next.translate.boo";window.sessionStorage.setItem(t,"foo"),window.sessionStorage.removeItem(t)}catch{Eb=!1}return Eb},pPe={name:"sessionStorage",lookup:function(t){var n;if(t.lookupSessionStorage&&$6()){var r=window.sessionStorage.getItem(t.lookupSessionStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupSessionStorage&&$6()&&window.sessionStorage.setItem(n.lookupSessionStorage,t)}},mPe={name:"navigator",lookup:function(t){var n=[];if(typeof navigator<"u"){if(navigator.languages)for(var r=0;r<navigator.languages.length;r++)n.push(navigator.languages[r]);navigator.userLanguage&&n.push(navigator.userLanguage),navigator.language&&n.push(navigator.language)}return n.length>0?n:void 0}},gPe={name:"htmlTag",lookup:function(t){var n,r=t.htmlTag||(typeof document<"u"?document.documentElement:null);return r&&typeof r.getAttribute=="function"&&(n=r.getAttribute("lang")),n}},bPe={name:"path",lookup:function(t){var n;if(typeof window<"u"){var r=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(r instanceof Array)if(typeof t.lookupFromPathIndex=="number"){if(typeof r[t.lookupFromPathIndex]!="string")return;n=r[t.lookupFromPathIndex].replace("/","")}else n=r[0].replace("/","")}return n}},vPe={name:"subdomain",lookup:function(t){var n=typeof t.lookupFromSubdomainIndex=="number"?t.lookupFromSubdomainIndex+1:1,r=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(!!r)return r[n]}};function yPe(){return{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"]}}var Q6=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Di(this,e),this.type="languageDetector",this.detectors={},this.init(t,n)}return Yi(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=n,this.options=uPe(r,this.options||{},yPe()),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=i,this.addDetector(fPe),this.addDetector(dPe),this.addDetector(hPe),this.addDetector(pPe),this.addDetector(mPe),this.addDetector(gPe),this.addDetector(bPe),this.addDetector(vPe)}},{key:"addDetector",value:function(n){this.detectors[n.name]=n}},{key:"detect",value:function(n){var r=this;n||(n=this.options.order);var i=[];return n.forEach(function(a){if(r.detectors[a]){var o=r.detectors[a].lookup(r.options);o&&typeof o=="string"&&(o=[o]),o&&(i=i.concat(o))}}),this.services.languageUtils.getBestMatchFromCodes?i:i.length>0?i[0]:null}},{key:"cacheUserLanguage",value:function(n,r){var i=this;r||(r=this.options.caches),r&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(n)>-1||r.forEach(function(a){i.detectors[a]&&i.detectors[a].cacheUserLanguage(n,i.options)}))}}]),e}();Q6.type="languageDetector";const q6={constant:{row_count:"Row count",analytic_type:{dimension:"dimension",measure:"measure"},mark_type:{__enum__:"Mark Type",auto:"Auto",bar:"Bar",line:"Line",area:"Area",trail:"Trail",point:"Scatter",circle:"Circle",tick:"Tick",rect:"Rectangle",arc:"Arc",boxplot:"Box (Box Plot)"},stack_mode:{__enum__:"Stack Mode",none:"None",stack:"Stack",normalize:"Normalize"},layout_type:{__enum__:"Layout Mode",auto:"Auto",fixed:"Fixed"},draggable_key:{fields:"Fields",columns:"Columns",rows:"Rows",color:"Color",opacity:"Opacity",size:"Size",shape:"Shape",theta:"Angle",radius:"Radius",filters:"Filters"},aggregator:{sum:"Sum",mean:"Mean",count:"Count"},filter_type:{one_of:"One-Of",range:"Range",temporal_range:"Date Range"}},App:{labels:{data_interpretation:"Interpret Data"}},DataSource:{labels:{cur_dataset:"Current Dataset"},buttons:{create_dataset:"Create Dataset",export_as_file:"Save As File",import_file:"Import Graphic Walker File"},dialog:{create_data_source:"New Data Source",data_types:"Choose Import Methods",text_file_data:"Open Local Text File",public_data:"Use Public Dataset",data_source_type:"Data Source Type: [{{sourceType}}]",file:{open:"Open...",submit:"Submit",dataset_name:"Dataset Name"},public:{submit:"Submit"}}},main:{tablist:{new:"+ New",autoTitle:"Chart {{idx}}"},tabpanel:{menubar:{undo:"Undo",redo:"Redo"},settings:{toggle:{aggregation:"Aggregation",stack:"Stack",axes_resize:"Axes Resizing",debug:"debugging"},sort:"Sorting Order",button:{ascending:"Sort in Ascending Order",descending:"Sort in Descending Order",transpose:"Transpose"},size:"Resize",size_setting:{width:"Width",height:"Height"}},DatasetFields:{field_list:"Field List"}}},filters:{to_edit:"Edit This Rule",empty_rule:"! (empty rule)",editing:"Edit Rule",form:{name:"Field",rule:"Rule"},header:{visibility:"Visible",value:"Label",count:"Count"},selected_keys:"{{ count }} items selected",btn:{select_all:"Select All",unselect_all:"Unselect All",reverse:"Reverse Selection"}}},e8={constant:{row_count:"\u884C\u6570",analytic_type:{dimension:"\u7EF4\u5EA6",measure:"\u5EA6\u91CF"},mark_type:{__enum__:"\u6807\u8BB0\u7C7B\u578B",auto:"\u81EA\u52A8",bar:"\u6761\u5F62",line:"\u6298\u7EBF",area:"\u9762\u79EF",trail:"\u75D5\u8FF9",point:"\u6563\u70B9",circle:"\u5706",tick:"\u6807\u8BB0",rect:"\u77E9\u5F62",arc:"\u5F27\u5F62",boxplot:"\u7EDF\u8BA1\u7BB1"},layout_type:{__enum__:"\u5C3A\u5BF8\u6A21\u5F0F",auto:"\u81EA\u52A8",fixed:"\u56FA\u5B9A"},stack_mode:{__enum__:"\u5806\u53E0\u6A21\u5F0F",none:"\u5173\u95ED",stack:"\u5806\u53E0",normalize:"\u5F52\u4E00\u5316"},draggable_key:{fields:"\u5B57\u6BB5",columns:"\u5217",rows:"\u884C",color:"\u989C\u8272",opacity:"\u900F\u660E\u5EA6",size:"\u5927\u5C0F",shape:"\u5F62\u72B6",theta:"\u89D2\u5EA6",radius:"\u534A\u5F84",filters:"\u7B5B\u9009\u5668"},aggregator:{sum:"\u6C42\u548C",mean:"\u5E73\u5747\u503C",count:"\u8BA1\u6570"},filter_type:{one_of:"\u6309\u503C\u7B5B\u9009",range:"\u6309\u8303\u56F4\u7B5B\u9009",temporal_range:"\u6309\u65E5\u671F\u8303\u56F4\u7B5B\u9009"}},App:{labels:{data_interpretation:"\u6570\u636E\u89E3\u8BFB"}},DataSource:{labels:{cur_dataset:"\u5F53\u524D\u6570\u636E\u96C6"},buttons:{create_dataset:"\u521B\u5EFA\u6570\u636E\u96C6",export_as_file:"\u4FDD\u5B58\u5230\u6587\u4EF6",import_file:"\u5BFC\u5165\u6587\u4EF6"},dialog:{create_data_source:"\u521B\u5EFA\u6570\u636E\u6E90",data_types:"\u9009\u62E9\u7C7B\u578B",text_file_data:"\u4ECE\u6587\u4EF6\u4E2D\u5BFC\u5165",public_data:"\u516C\u5171\u6570\u636E\u96C6",data_source_type:"\u6570\u636E\u6E90\u7C7B\u578B\uFF1A[{{sourceType}}]",file:{open:"\u6253\u5F00\u6587\u4EF6...",submit:"\u786E\u8BA4",dataset_name:"\u6570\u636E\u96C6\u540D\u79F0"},public:{submit:"\u786E\u8BA4"}}},main:{tablist:{new:"+ \u65B0\u5EFA",autoTitle:"\u56FE\u8868 {{idx}}"},tabpanel:{menubar:{undo:"\u64A4\u9500",redo:"\u91CD\u505A"},settings:{toggle:{aggregation:"\u805A\u5408\u5EA6\u91CF",stack:"\u5F00\u542F\u5806\u53E0",axes_resize:"\u5750\u6807\u7CFB\u7F29\u653E",debug:"\u56FE\u8868\u8C03\u8BD5"},sort:"\u6392\u5E8F",button:{ascending:"\u5347\u5E8F\u6392\u5E8F",descending:"\u964D\u5E8F\u6392\u5E8F",transpose:"\u8F6C\u7F6E"},size:"\u8C03\u6574\u5C3A\u5BF8",size_setting:{width:"\u5BBD\u5EA6",height:"\u9AD8\u5EA6"}},DatasetFields:{field_list:"\u5B57\u6BB5\u5217\u8868"}}},filters:{to_edit:"\u7F16\u8F91\u8FD9\u6761\u89C4\u5219",empty_rule:"! (\u7A7A\u7684\u89C4\u5219)",editing:"\u7F16\u8F91\u89C4\u5219",form:{name:"\u5B57\u6BB5",rule:"\u89C4\u5219"},header:{visibility:"\u53EF\u89C1",value:"\u6807\u7B7E",count:"\u8BA1\u6570"},selected_keys:"{{ count }} \u4E2A\u6807\u7B7E\u5DF2\u9009\u62E9",btn:{select_all:"\u5168\u90E8\u9009\u4E2D",unselect_all:"\u5168\u90E8\u53D6\u6D88",reverse:"\u9009\u62E9\u53CD\u5411"}}},xPe={en:{translation:q6},"en-US":{translation:q6},zh:{translation:e8},"zh-CN":{translation:e8}};Nn.use(Hq).use(Q6).init({fallbackLng:"en-US",interpolation:{escapeValue:!1},resources:xPe});const t8=[],SPe=e=>{for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){if(t8.includes(t))continue;t8.push(t);const n=e[t];Nn.addResourceBundle(t,"translation",n,!1,!0)}},wPe=e=>Nn.changeLanguage(e),EPe=ct.div({marginBlock:"0 0.6em",marginInline:"0.2em"}),ZPe=ct.button(({disabled:e=!1})=>({"&:hover":e?{}:{backgroundColor:"rgba(243, 244, 246, 0.7)"},color:e?"rgba(156, 163, 175, 0.5)":"rgb(55, 65, 81)","& > pre":{display:"inline-block",marginInlineStart:"0.2em"},marginInlineStart:"0.6em","&:first-child":{marginInlineStart:"0"},cursor:e?"default":"pointer"})),n8=({label:e,shortcut:t,disabled:n,handler:r,icon:i})=>{const{t:a}=gn("translation",{keyPrefix:"main.tabpanel.menubar"}),o=W.default.useMemo(()=>{const s=t.split("+").map(l=>l.trim());return{key:s.filter(l=>/^[a-z]$/i.test(l))[0],ctrlKey:s.includes("Ctrl"),shiftKey:s.includes("Shift"),altKey:s.includes("Alt")}},[t]);return W.default.useEffect(()=>{const s=l=>{l.ctrlKey===o.ctrlKey&&l.shiftKey===o.shiftKey&&l.altKey===o.altKey&&l.key.toLowerCase()===o.key.toLowerCase()&&(r(),l.stopPropagation())};return document.body.addEventListener("keydown",s),()=>document.body.removeEventListener("keydown",s)},[o,r]),W.default.createElement(ZPe,{className:"text-sm px-3 py-1 border text-gray-400 select-none",disabled:n,onClick:r,"aria-label":a(e),title:`${a(e)} (${t})`},i||a(e))},IPe=qt(()=>{const{vizStore:e}=Ut(),{canUndo:t,canRedo:n}=e;return W.default.createElement(EPe,null,W.default.createElement(n8,{label:"undo",disabled:!t,handler:e.undo.bind(e),shortcut:"Ctrl+Z",icon:W.default.createElement(ete,{width:"1.4em",height:"1.4em"})}),W.default.createElement(n8,{label:"redo",disabled:!n,handler:e.redo.bind(e),shortcut:"Ctrl+Shift+Z",icon:W.default.createElement(nte,{width:"1.4em",height:"1.4em"})}))}),RPe=ct.div({userSelect:"none",alignItems:"stretch",borderStyle:"solid",borderWidth:"1px",boxSizing:"border-box",cursor:"default",display:"flex",flexDirection:"column",fontSize:"12px",minWidth:"150px",overflowY:"hidden",padding:0,"> *":{flexGrow:1,paddingBlock:"0.2em",paddingInline:"0.5em"},"> header":{height:"20px",borderBottomWidth:"1px"},"> div.output":{minHeight:"20px","> span":{overflowY:"hidden",maxHeight:"4em"}},"> .output .icon":{display:"none"},"> .output:hover .icon":{display:"unset"}}),CPe=qt(e=>{const{provided:t,fIndex:n}=e,{vizStore:r}=Ut(),{draggableFieldState:i}=r,a=i.filters[n],{t:o}=gn("translation",{keyPrefix:"filters"});return W.default.createElement(RPe,{className:"text-gray-900",ref:t.innerRef,...t.draggableProps,...t.dragHandleProps},W.default.createElement("header",{className:"bg-indigo-50"},a.name),W.default.createElement("div",{className:"bg-white text-gray-500 hover:bg-gray-100 flex flex-row output",onClick:()=>r.setFilterEditing(n),style:{cursor:"pointer"},title:o("to_edit")},a.rule?W.default.createElement("span",{className:"flex-1"},a.rule.type==="one of"?`oneOf: [${[...a.rule.value].map(s=>JSON.stringify(s)).join(", ")}]`:a.rule.type==="range"?`range: [${a.rule.value[0]}, ${a.rule.value[1]}]`:a.rule.type==="temporal range"?`range: [${new Date(a.rule.value[0])}, ${new Date(a.rule.value[1])}]`:null):W.default.createElement("span",{className:"text-gray-600 flex-1"},o("empty_rule")),W.default.createElement(ite,{className:"icon flex-grow-0 flex-shrink-0 pointer-events-none text-gray-500",role:"presentation","aria-hidden":!0,width:"1.4em",height:"1.4em"})))}),OPe=ct.div({display:"flex",flexDirection:"column",alignItems:"stretch",justifyContent:"stretch",overflow:"hidden",paddingBlock:"1em","> .output":{display:"flex",flexDirection:"row",flexWrap:"wrap",alignItems:"stretch",justifyContent:"space-between","> output":{userSelect:"none",minWidth:"4em",paddingInline:"0.5em",textAlign:"center"}}}),NPe=ct.div({marginInline:"1em",paddingBlock:"10px",flexGrow:1,flexShrink:1,display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"stretch"}),GPe=ct.div({flexGrow:1,flexShrink:1,backgroundColor:"#ccc",border:"1px solid #aaa",height:"10px",borderRadius:"5px",position:"relative"}),r8=ct.div({position:"absolute",top:"50%",cursor:"ew-resize",backgroundColor:"#e2e2e2",backgroundImage:`
|
|
734
734
|
linear-gradient(#666, #666 4%, transparent 4%, transparent 96%, #666 95%),
|
|
735
735
|
linear-gradient(90deg, #666, #666 10%, transparent 10%, transparent 90%, #666 90%)
|
|
736
|
-
`,width:"10px",height:"20px",borderRadius:"2px",outline:"none",":hover":{backgroundColor:"#fff"}}),WPe=ct.div({backgroundColor:"#fff",position:"absolute",height:"100%",borderRadius:"5px",":hover":{backgroundColor:"#fff"}}),$2=(e,t)=>{const n=/(\.\d*)$/.exec(((e[1]-e[0])/1e3).toString())[0].length;return t.toFixed(n).replace(/\.?0+$/,"")},i8=W.default.memo(function({min:t,max:n,value:r,onChange:i,isDateTime:a=!1}){const[o,s]=W.default.useState(null),l=W.default.useRef(null),u=W.default.useRef(null),c=[(r[0]-t)/(n-t||1),(r[1]-t)/(n-t||1)],f=W.default.useRef(0);return W.default.useEffect(()=>{if(o){const d=p=>{s(null),p==null||p.stopPropagation()},h=Mk(document.body,"mousemove").pipe(WMe(100),Fk(p=>{if(!l.current||!o)return null;if(p.buttons!==1)return d(),null;const{x:m,width:g}=l.current.getBoundingClientRect();return Math.min(o==="left"?c[1]:1,Math.max(o==="right"?c[0]:0,(p.clientX-f.current-m)/g))}),A6(p=>p!==null&&p!==c[o==="left"?0:1])).subscribe(p=>{const m=[...c];m[o==="left"?0:1]=p,m[0]=m[0]*(n-t||1)+t,m[1]=m[1]*(n-t||1)+t,i(m)});return document.body.addEventListener("mouseup",d),()=>{document.body.removeEventListener("mouseup",d),h.unsubscribe()}}},[o,c,i,t,n]),W.default.createElement(OPe,null,W.default.createElement("div",{className:"output"},W.default.createElement("output",{htmlFor:"slider:min"},a?`${new Date(r[0])}`:$2([t,n],r[0])),W.default.createElement("output",{htmlFor:"slider:max"},a?`${new Date(r[1])}`:$2([t,n],r[1]))),W.default.createElement(NPe,null,W.default.createElement(GPe,{ref:d=>l.current=d},W.default.createElement(WPe,{role:"presentation",ref:d=>u.current=d,style:{left:`${c[0]*100}%`,width:`${(c[1]-c[0])*100}%`}}),W.default.createElement(r8,{role:"slider","aria-label":"minimum",id:"slider:min","aria-valuemin":t,"aria-valuemax":n,"aria-valuenow":r[0],"aria-valuetext":a?`${new Date(r[0])}`:$2([t,n],r[0]),tabIndex:-1,onMouseDown:d=>{d.buttons===1&&(f.current=d.nativeEvent.offsetX,s("left"))},style:{left:`${c[0]*100}%`,transform:"translate(-100%, -50%)"}}),W.default.createElement(r8,{role:"slider","aria-label":"maximum",id:"slider:max","aria-valuemin":t,"aria-valuemax":n,"aria-valuenow":r[1],"aria-valuetext":a?`${new Date(r[1])}`:$2([t,n],r[1]),tabIndex:-1,onMouseDown:d=>{d.buttons===1&&(f.current=d.nativeEvent.offsetX,s("right"))},style:{left:`${c[1]*100}%`,transform:"translate(0, -50%)"}}))))}),zk=ct.div({marginBlock:"1em",marginInline:"2em","> .btn-grp":{display:"flex",flexDirection:"row",marginBlock:"0.4em 0.6em","> *":{marginInlineStart:"0.6em","&:first-child":{marginInlineStart:0}}}}),a8=ct.button({"&:hover":{backgroundColor:"rgba(243, 244, 246, 0.5)"},color:"rgb(55, 65, 81)",boxShadow:"1px 1px 2px #0002, inset 2px 2px 4px #0001",paddingBlock:"0.2em",paddingInline:"0.5em",userSelect:"none",cursor:"pointer"}),jk=ct.div({display:"grid",gridTemplateColumns:"4em auto max-content",maxHeight:"30vh",overflowY:"scroll","& > *":{marginBlock:"2px",paddingInline:"4px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",userSelect:"none"},"& > input, & > *[for]":{cursor:"pointer"}}),kPe=ct.div({display:"flex",flexDirection:"column",alignItems:"stretch",justifyContent:"stretch"}),LPe=ct.div({display:"flex",flexDirection:"row",alignItems:"stretch",justifyContent:"flex-start",overflow:"hidden"}),TPe=ct.label({outline:"none",userSelect:"none",paddingBlock:"0.4em",paddingInline:"1em 2em",borderWidth:"1px",borderRadius:"4px 4px 0 0",position:"relative","&[aria-selected]":{borderBottomColor:"#0000",zIndex:15},"&[aria-selected=false]":{backgroundColor:"#f8f8f8",borderBottomColor:"#e2e2e2",cursor:"pointer",zIndex:14}}),_Pe=ct.div({}),XPe=ct.div({}),VPe=qt(({active:e,field:t,onChange:n})=>{var s;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.reduce((l,u)=>{var f;const c=u[t.fid];return l.set(c,((f=l.get(c))!=null?f:0)+1),l},new Map),[i,t]),{t:o}=gn("translation",{keyPrefix:"filters"});return W.default.useEffect(()=>{var l;e&&((l=t.rule)==null?void 0:l.type)!=="one of"&&n({type:"one of",value:new Set(a.keys())})},[e,n,t,a]),((s=t.rule)==null?void 0:s.type)==="one of"?W.default.createElement(zk,null,W.default.createElement(jk,null,W.default.createElement("label",{className:"header"},o("header.visibility")),W.default.createElement("label",{className:"header"},o("header.value")),W.default.createElement("label",{className:"header"},o("header.count"))),W.default.createElement(jk,null,[...a.entries()].map(([l,u],c)=>{var d;const f=`rule_checkbox_${c}`;return W.default.createElement(W.default.Fragment,{key:c},W.default.createElement("input",{type:"checkbox",checked:((d=t.rule)==null?void 0:d.type)==="one of"&&t.rule.value.has(l),id:f,"aria-describedby":`${f}_label`,title:String(l),onChange:({target:{checked:h}})=>{var m;if(((m=t.rule)==null?void 0:m.type)!=="one of")return;const p={type:"one of",value:new Set(t.rule.value)};h?p.value.add(l):p.value.delete(l),n(p)}}),W.default.createElement("label",{id:`${f}_label`,htmlFor:f,title:String(l)},l),W.default.createElement("label",{htmlFor:f},u))})),W.default.createElement(jk,{className:"text-gray-600"},W.default.createElement("label",null),W.default.createElement("label",null,o("selected_keys",{count:t.rule.value.size})),W.default.createElement("label",null,[...t.rule.value].reduce((l,u)=>{const c=i.filter(f=>f[t.fid]===u).length;return l+c},0))),W.default.createElement("div",{className:"btn-grp"},W.default.createElement(a8,{onClick:()=>{var l;if(((l=t.rule)==null?void 0:l.type)==="one of"){const u=t.rule.value;n({type:"one of",value:new Set(u.size===a.size?[]:a.keys())})}}},t.rule.value.size===a.size?o("btn.unselect_all"):o("btn.select_all")),W.default.createElement(a8,{onClick:()=>{var l;if(((l=t.rule)==null?void 0:l.type)==="one of"){const u=t.rule.value;n({type:"one of",value:new Set([...a.keys()].filter(c=>!u.has(c)))})}}},o("btn.reverse")))):null}),FPe=qt(({active:e,field:t,onChange:n})=>{var u;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.reduce((c,f)=>{try{const d=new Date(f[t.fid]).getTime();c.push(d)}catch{}return c},[]).sort((c,f)=>c-f),[i,t]),[o,s]=W.default.useMemo(()=>{var c,f,d;return[(c=a[0])!=null?c:0,Math.max((f=a[a.length-1])!=null?f:0,(d=a[0])!=null?d:0)]},[a]);W.default.useEffect(()=>{var c,f,d,h;e&&((c=t.rule)==null?void 0:c.type)!=="temporal range"&&n({type:"temporal range",value:[(f=a[0])!=null?f:0,Math.max((d=a[a.length-1])!=null?d:0,(h=a[0])!=null?h:0)]})},[n,t,a,e]);const l=W.default.useCallback(c=>{n({type:"temporal range",value:c})},[]);return((u=t.rule)==null?void 0:u.type)==="temporal range"?W.default.createElement(zk,null,W.default.createElement(i8,{min:o,max:s,value:t.rule.value,onChange:l,isDateTime:!0})):null}),MPe=qt(({active:e,field:t,onChange:n})=>{var u;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.map(c=>c[t.fid]).sort((c,f)=>c-f),[i,t]),[o,s]=W.default.useMemo(()=>{var c,f,d;return[(c=a[0])!=null?c:0,Math.max((f=a[a.length-1])!=null?f:0,(d=a[0])!=null?d:0)]},[a]);W.default.useEffect(()=>{var c;e&&((c=t.rule)==null?void 0:c.type)!=="range"&&n({type:"range",value:[o,s]})},[n,t,o,s,e]);const l=W.default.useCallback(c=>{n({type:"range",value:c})},[]);return((u=t.rule)==null?void 0:u.type)==="range"?W.default.createElement(zk,null,W.default.createElement(i8,{min:o,max:s,value:t.rule.value,onChange:l})):null}),PPe={"one of":VPe,range:MPe,"temporal range":FPe},Q2=qt(({field:e,onChange:t,tabs:n})=>{var l,u;const{vizStore:r}=Ut(),{draggableFieldState:i}=r,{t:a}=gn("translation",{keyPrefix:"constant.filter_type"}),[o,s]=W.default.useState((u=(l=e.rule)==null?void 0:l.type)!=null?u:n[0]);return W.default.createElement(kPe,null,W.default.createElement(LPe,{role:"tablist"},n.map((c,f)=>W.default.createElement(TPe,{key:f,role:"tab","aria-selected":o===c,id:`filter-tab-${c.replaceAll(/ /g,"_")}`,"aria-controls":`filter-panel-${c.replaceAll(/ /g,"_")}`,tabIndex:-1,onClick:()=>{o!==c&&s(c)}},a(c.replaceAll(/ /g,"_"))))),W.default.createElement(_Pe,null,n.map((c,f)=>{const d=PPe[c];return i===null?null:W.default.createElement(XPe,{key:f,id:`filter-panel-${c.replaceAll(/ /g,"_")}`,"aria-labelledby":`filter-tab-${c.replaceAll(/ /g,"_")}`,role:"tabpanel",hidden:o!==c,tabIndex:0},W.default.createElement(d,{field:e,onChange:t,active:o===c}))})))}),APe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["range","one of"]}),DPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["one of"]}),YPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["range","one of"]}),zPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["one of","temporal range"]}),jPe=()=>W.default.createElement(W.default.Fragment,null),BPe=qt(()=>{const{vizStore:e}=Ut(),{editingFilterIdx:t,draggableFieldState:n}=e,{t:r}=gn("translation",{keyPrefix:"filters"}),i=W.default.useMemo(()=>t!==null?n.filters[t]:null,[t,n]),[a,o]=W.default.useState(i),s=W.default.useRef(a);s.current=a,W.default.useEffect(()=>{i!==s.current&&o(i)},[i]);const l=W.default.useCallback(f=>{t!==null&&o(d=>({...d,rule:f}))},[t]),u=W.default.useCallback(()=>{var f;t!==null&&e.writeFilter(t,(f=a==null?void 0:a.rule)!=null?f:null),e.closeFilterEditing()},[t,a]),c=i?{quantitative:APe,nominal:DPe,ordinal:YPe,temporal:zPe}[i.semanticType]:jPe;return a?W.default.createElement(Dw,{title:r("editing"),onClose:()=>e.closeFilterEditing()},W.default.createElement("header",{className:"text-lg font-semibold py-2 outline-none"},r("form.name")),W.default.createElement("input",{className:"border py-1 px-4",readOnly:!0,value:a.name}),W.default.createElement("header",{className:"text-lg font-semibold py-2 outline-none"},r("form.rule")),W.default.createElement(c,{field:a,onChange:l}),W.default.createElement("div",{className:"flex justify-center text-green-500 mt-4"},W.default.createElement(CL,{width:"3em",height:"3em",role:"button",tabIndex:0,"aria-label":"ok",className:"cursor-pointer hover:bg-green-50 p-1",onClick:u,strokeWidth:"1.5"}))):null}),HPe=qt(({provided:e})=>{const{vizStore:t}=Ut(),{draggableFieldState:{filters:n}}=t;return W.default.createElement(pFe,{...e.droppableProps,ref:e.innerRef},n.map((r,i)=>W.default.createElement(M2,{key:r.dragId,draggableId:r.dragId,index:i},(a,o)=>W.default.createElement(CPe,{fIndex:i,provided:a}))),e.placeholder,W.default.createElement(BPe,null))}),KPe=()=>W.default.createElement("div",null,W.default.createElement(dFe,null,W.default.createElement(Th,{droppableId:"filters",direction:"vertical"},(e,t)=>W.default.createElement(HPe,{provided:e})))),VDe="",FDe="",JPe=qt(e=>{const{dataSource:t=[],rawFields:n=[],spec:r,i18nLang:i="en-US",i18nResources:a,hideDataSourceConfig:o}=e,{commonStore:s,vizStore:l}=Ut(),[u,c]=oe.useState(!0),{currentDataset:f,datasets:d,vizEmbededMenu:h}=s,{t:p,i18n:m}=gn(),g=m.language;return oe.useEffect(()=>{a&&SPe(a)},[a]),oe.useEffect(()=>{i!==g&&wPe(i)},[i,g]),oe.useEffect(()=>{t.length>0&&s.addAndUseDS({name:"context dataset",dataSource:t,rawFields:n})},[t,n]),oe.useEffect(()=>{const v=f;return v&&v.dataSource.length>0&&v.rawFields.length>0&&(c(!1),fLe({dataSource:v.dataSource,fields:dn(v.rawFields)}).then(()=>{c(!0),r&&l.renderSpec(r)})),()=>{dLe()}},[f,r]),W.default.createElement("div",{className:"App"},!o&&W.default.createElement(rPe,{preWorkDone:u}),W.default.createElement("div",{className:"px-2 mx-2"},W.default.createElement(oPe,null)),W.default.createElement(B_,{style:{marginTop:"0em",borderTop:"none"}},W.default.createElement(IPe,null),W.default.createElement(Nie,null),W.default.createElement("div",{className:"grid grid-cols-12 xl:grid-cols-6"},W.default.createElement("div",{className:"col-span-3 xl:col-span-1"},W.default.createElement(RFe,null)),W.default.createElement("div",{className:"col-span-2 xl:col-span-1"},W.default.createElement(KPe,null),W.default.createElement(EFe,null)),W.default.createElement("div",{className:"col-span-7 xl:col-span-4"},W.default.createElement("div",null,W.default.createElement(SFe,null)),W.default.createElement(H_,{style:{minHeight:"600px",overflow:"auto"},onMouseLeave:()=>{h.show&&s.closeEmbededMenu()}},d.length>0&&W.default.createElement(AMe,null),W.default.createElement(xLe,null),h.show&&W.default.createElement(Wie,{x:h.position[0],y:h.position[1]},W.default.createElement("div",{className:"flex items-center whitespace-nowrap py-1 px-4 hover:bg-gray-100",onClick:()=>{s.closeEmbededMenu(),s.setShowInsightBoard(!0)}},W.default.createElement("span",{className:"flex-1 pr-2"},p("App.labels.data_interpretation")),W.default.createElement(Wq,{className:"ml-1 w-3 flex-grow-0 flex-shrink-0"}))))))))}),UPe=e=>W.default.createElement(Cie,null,W.default.createElement(vFe,null,W.default.createElement(JPe,{...e})));Pr.GraphicWalker=UPe,Object.defineProperties(Pr,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
736
|
+
`,width:"10px",height:"20px",borderRadius:"2px",outline:"none",":hover":{backgroundColor:"#fff"}}),WPe=ct.div({backgroundColor:"#fff",position:"absolute",height:"100%",borderRadius:"5px",":hover":{backgroundColor:"#fff"}}),$2=(e,t)=>{const n=/(\.\d*)$/.exec(((e[1]-e[0])/1e3).toString())[0].length;return t.toFixed(n).replace(/\.?0+$/,"")},i8=W.default.memo(function({min:t,max:n,value:r,onChange:i,isDateTime:a=!1}){const[o,s]=W.default.useState(null),l=W.default.useRef(null),u=W.default.useRef(null),c=[(r[0]-t)/(n-t||1),(r[1]-t)/(n-t||1)],f=W.default.useRef(0);return W.default.useEffect(()=>{if(o){const d=p=>{s(null),p==null||p.stopPropagation()},h=Mk(document.body,"mousemove").pipe(WMe(100),Fk(p=>{if(!l.current||!o)return null;if(p.buttons!==1)return d(),null;const{x:m,width:g}=l.current.getBoundingClientRect();return Math.min(o==="left"?c[1]:1,Math.max(o==="right"?c[0]:0,(p.clientX-f.current-m)/g))}),A6(p=>p!==null&&p!==c[o==="left"?0:1])).subscribe(p=>{const m=[...c];m[o==="left"?0:1]=p,m[0]=m[0]*(n-t||1)+t,m[1]=m[1]*(n-t||1)+t,i(m)});return document.body.addEventListener("mouseup",d),()=>{document.body.removeEventListener("mouseup",d),h.unsubscribe()}}},[o,c,i,t,n]),W.default.createElement(OPe,null,W.default.createElement("div",{className:"output"},W.default.createElement("output",{htmlFor:"slider:min"},a?`${new Date(r[0])}`:$2([t,n],r[0])),W.default.createElement("output",{htmlFor:"slider:max"},a?`${new Date(r[1])}`:$2([t,n],r[1]))),W.default.createElement(NPe,null,W.default.createElement(GPe,{ref:d=>l.current=d},W.default.createElement(WPe,{role:"presentation",ref:d=>u.current=d,style:{left:`${c[0]*100}%`,width:`${(c[1]-c[0])*100}%`}}),W.default.createElement(r8,{role:"slider","aria-label":"minimum",id:"slider:min","aria-valuemin":t,"aria-valuemax":n,"aria-valuenow":r[0],"aria-valuetext":a?`${new Date(r[0])}`:$2([t,n],r[0]),tabIndex:-1,onMouseDown:d=>{d.buttons===1&&(f.current=d.nativeEvent.offsetX,s("left"))},style:{left:`${c[0]*100}%`,transform:"translate(-100%, -50%)"}}),W.default.createElement(r8,{role:"slider","aria-label":"maximum",id:"slider:max","aria-valuemin":t,"aria-valuemax":n,"aria-valuenow":r[1],"aria-valuetext":a?`${new Date(r[1])}`:$2([t,n],r[1]),tabIndex:-1,onMouseDown:d=>{d.buttons===1&&(f.current=d.nativeEvent.offsetX,s("right"))},style:{left:`${c[1]*100}%`,transform:"translate(0, -50%)"}}))))}),zk=ct.div({marginBlock:"1em",marginInline:"2em","> .btn-grp":{display:"flex",flexDirection:"row",marginBlock:"0.4em 0.6em","> *":{marginInlineStart:"0.6em","&:first-child":{marginInlineStart:0}}}}),a8=ct.button({"&:hover":{backgroundColor:"rgba(243, 244, 246, 0.5)"},color:"rgb(55, 65, 81)",boxShadow:"1px 1px 2px #0002, inset 2px 2px 4px #0001",paddingBlock:"0.2em",paddingInline:"0.5em",userSelect:"none",cursor:"pointer"}),jk=ct.div({display:"grid",gridTemplateColumns:"4em auto max-content",maxHeight:"30vh",overflowY:"scroll","& > *":{marginBlock:"2px",paddingInline:"4px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",userSelect:"none"},"& > input, & > *[for]":{cursor:"pointer"}}),kPe=ct.div({display:"flex",flexDirection:"column",alignItems:"stretch",justifyContent:"stretch"}),LPe=ct.div({display:"flex",flexDirection:"row",alignItems:"stretch",justifyContent:"flex-start",overflow:"hidden"}),TPe=ct.label({outline:"none",userSelect:"none",paddingBlock:"0.4em",paddingInline:"1em 2em",borderWidth:"1px",borderRadius:"4px 4px 0 0",position:"relative","&[aria-selected]":{borderBottomColor:"#0000",zIndex:15},"&[aria-selected=false]":{backgroundColor:"#f8f8f8",borderBottomColor:"#e2e2e2",cursor:"pointer",zIndex:14}}),_Pe=ct.div({}),XPe=ct.div({}),VPe=qt(({active:e,field:t,onChange:n})=>{var s;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.reduce((l,u)=>{var f;const c=u[t.fid];return l.set(c,((f=l.get(c))!=null?f:0)+1),l},new Map),[i,t]),{t:o}=gn("translation",{keyPrefix:"filters"});return W.default.useEffect(()=>{var l;e&&((l=t.rule)==null?void 0:l.type)!=="one of"&&n({type:"one of",value:new Set(a.keys())})},[e,n,t,a]),((s=t.rule)==null?void 0:s.type)==="one of"?W.default.createElement(zk,null,W.default.createElement(jk,null,W.default.createElement("label",{className:"header"},o("header.visibility")),W.default.createElement("label",{className:"header"},o("header.value")),W.default.createElement("label",{className:"header"},o("header.count"))),W.default.createElement(jk,null,[...a.entries()].map(([l,u],c)=>{var d;const f=`rule_checkbox_${c}`;return W.default.createElement(W.default.Fragment,{key:c},W.default.createElement("input",{type:"checkbox",checked:((d=t.rule)==null?void 0:d.type)==="one of"&&t.rule.value.has(l),id:f,"aria-describedby":`${f}_label`,title:String(l),onChange:({target:{checked:h}})=>{var m;if(((m=t.rule)==null?void 0:m.type)!=="one of")return;const p={type:"one of",value:new Set(t.rule.value)};h?p.value.add(l):p.value.delete(l),n(p)}}),W.default.createElement("label",{id:`${f}_label`,htmlFor:f,title:String(l)},l),W.default.createElement("label",{htmlFor:f},u))})),W.default.createElement(jk,{className:"text-gray-600"},W.default.createElement("label",null),W.default.createElement("label",null,o("selected_keys",{count:t.rule.value.size})),W.default.createElement("label",null,[...t.rule.value].reduce((l,u)=>{const c=i.filter(f=>f[t.fid]===u).length;return l+c},0))),W.default.createElement("div",{className:"btn-grp"},W.default.createElement(a8,{onClick:()=>{var l;if(((l=t.rule)==null?void 0:l.type)==="one of"){const u=t.rule.value;n({type:"one of",value:new Set(u.size===a.size?[]:a.keys())})}}},t.rule.value.size===a.size?o("btn.unselect_all"):o("btn.select_all")),W.default.createElement(a8,{onClick:()=>{var l;if(((l=t.rule)==null?void 0:l.type)==="one of"){const u=t.rule.value;n({type:"one of",value:new Set([...a.keys()].filter(c=>!u.has(c)))})}}},o("btn.reverse")))):null}),FPe=qt(({active:e,field:t,onChange:n})=>{var u;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.reduce((c,f)=>{try{const d=new Date(f[t.fid]).getTime();c.push(d)}catch{}return c},[]).sort((c,f)=>c-f),[i,t]),[o,s]=W.default.useMemo(()=>{var c,f,d;return[(c=a[0])!=null?c:0,Math.max((f=a[a.length-1])!=null?f:0,(d=a[0])!=null?d:0)]},[a]);W.default.useEffect(()=>{var c,f,d,h;e&&((c=t.rule)==null?void 0:c.type)!=="temporal range"&&n({type:"temporal range",value:[(f=a[0])!=null?f:0,Math.max((d=a[a.length-1])!=null?d:0,(h=a[0])!=null?h:0)]})},[n,t,a,e]);const l=W.default.useCallback(c=>{n({type:"temporal range",value:c})},[]);return((u=t.rule)==null?void 0:u.type)==="temporal range"?W.default.createElement(zk,null,W.default.createElement(i8,{min:o,max:s,value:t.rule.value,onChange:l,isDateTime:!0})):null}),MPe=qt(({active:e,field:t,onChange:n})=>{var u;const{commonStore:r}=Ut(),{currentDataset:{dataSource:i}}=r,a=W.default.useMemo(()=>i.map(c=>c[t.fid]).sort((c,f)=>c-f),[i,t]),[o,s]=W.default.useMemo(()=>{var c,f,d;return[(c=a[0])!=null?c:0,Math.max((f=a[a.length-1])!=null?f:0,(d=a[0])!=null?d:0)]},[a]);W.default.useEffect(()=>{var c;e&&((c=t.rule)==null?void 0:c.type)!=="range"&&n({type:"range",value:[o,s]})},[n,t,o,s,e]);const l=W.default.useCallback(c=>{n({type:"range",value:c})},[]);return((u=t.rule)==null?void 0:u.type)==="range"?W.default.createElement(zk,null,W.default.createElement(i8,{min:o,max:s,value:t.rule.value,onChange:l})):null}),PPe={"one of":VPe,range:MPe,"temporal range":FPe},Q2=qt(({field:e,onChange:t,tabs:n})=>{var l,u;const{vizStore:r}=Ut(),{draggableFieldState:i}=r,{t:a}=gn("translation",{keyPrefix:"constant.filter_type"}),[o,s]=W.default.useState((u=(l=e.rule)==null?void 0:l.type)!=null?u:n[0]);return W.default.createElement(kPe,null,W.default.createElement(LPe,{role:"tablist"},n.map((c,f)=>W.default.createElement(TPe,{key:f,role:"tab","aria-selected":o===c,id:`filter-tab-${c.replaceAll(/ /g,"_")}`,"aria-controls":`filter-panel-${c.replaceAll(/ /g,"_")}`,tabIndex:-1,onClick:()=>{o!==c&&s(c)}},a(c.replaceAll(/ /g,"_"))))),W.default.createElement(_Pe,null,n.map((c,f)=>{const d=PPe[c];return i===null?null:W.default.createElement(XPe,{key:f,id:`filter-panel-${c.replaceAll(/ /g,"_")}`,"aria-labelledby":`filter-tab-${c.replaceAll(/ /g,"_")}`,role:"tabpanel",hidden:o!==c,tabIndex:0},W.default.createElement(d,{field:e,onChange:t,active:o===c}))})))}),APe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["range","one of"]}),DPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["one of"]}),YPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["range","one of"]}),zPe=({field:e,onChange:t})=>W.default.createElement(Q2,{field:e,onChange:t,tabs:["one of","temporal range"]}),jPe=()=>W.default.createElement(W.default.Fragment,null),BPe=qt(()=>{const{vizStore:e}=Ut(),{editingFilterIdx:t,draggableFieldState:n}=e,{t:r}=gn("translation",{keyPrefix:"filters"}),i=W.default.useMemo(()=>t!==null?n.filters[t]:null,[t,n]),[a,o]=W.default.useState(i),s=W.default.useRef(a);s.current=a,W.default.useEffect(()=>{i!==s.current&&o(i)},[i]);const l=W.default.useCallback(f=>{t!==null&&o(d=>({...d,rule:f}))},[t]),u=W.default.useCallback(()=>{var f;t!==null&&e.writeFilter(t,(f=a==null?void 0:a.rule)!=null?f:null),e.closeFilterEditing()},[t,a]),c=i?{quantitative:APe,nominal:DPe,ordinal:YPe,temporal:zPe}[i.semanticType]:jPe;return a?W.default.createElement(Dw,{title:r("editing"),onClose:()=>e.closeFilterEditing()},W.default.createElement("header",{className:"text-lg font-semibold py-2 outline-none"},r("form.name")),W.default.createElement("input",{className:"border py-1 px-4",readOnly:!0,value:a.name}),W.default.createElement("header",{className:"text-lg font-semibold py-2 outline-none"},r("form.rule")),W.default.createElement(c,{field:a,onChange:l}),W.default.createElement("div",{className:"flex justify-center text-green-500 mt-4"},W.default.createElement(CL,{width:"3em",height:"3em",role:"button",tabIndex:0,"aria-label":"ok",className:"cursor-pointer hover:bg-green-50 p-1",onClick:u,strokeWidth:"1.5"}))):null}),HPe=qt(({provided:e})=>{const{vizStore:t}=Ut(),{draggableFieldState:{filters:n}}=t;return W.default.createElement(pFe,{...e.droppableProps,ref:e.innerRef},n.map((r,i)=>W.default.createElement(M2,{key:r.dragId,draggableId:r.dragId,index:i},(a,o)=>W.default.createElement(CPe,{fIndex:i,provided:a}))),e.placeholder,W.default.createElement(BPe,null))}),KPe=()=>W.default.createElement("div",null,W.default.createElement(dFe,null,W.default.createElement(Th,{droppableId:"filters",direction:"vertical"},(e,t)=>W.default.createElement(HPe,{provided:e})))),VDe="",FDe="",JPe=qt(e=>{const{dataSource:t=[],rawFields:n=[],spec:r,i18nLang:i="en-US",i18nResources:a,hideDataSourceConfig:o}=e,{commonStore:s,vizStore:l}=Ut(),[u,c]=oe.useState(!0),{currentDataset:f,datasets:d,vizEmbededMenu:h}=s,{t:p,i18n:m}=gn(),g=m.language;return oe.useEffect(()=>{a&&SPe(a)},[a]),oe.useEffect(()=>{i!==g&&wPe(i)},[i,g]),oe.useEffect(()=>{t.length>0&&s.addAndUseDS({name:"context dataset",dataSource:t,rawFields:n})},[t,n]),oe.useEffect(()=>{const v=f;return v&&v.dataSource.length>0&&v.rawFields.length>0&&(c(!1),fLe({dataSource:v.dataSource,fields:dn(v.rawFields)}).then(()=>{c(!0),r&&l.renderSpec(r)})),()=>{dLe()}},[f,r]),W.default.createElement("div",{className:"App"},!o&&W.default.createElement(rPe,{preWorkDone:u}),W.default.createElement("div",{className:"px-2 mx-2"},W.default.createElement(oPe,null)),W.default.createElement(B_,{style:{marginTop:"0em",borderTop:"none"}},W.default.createElement(IPe,null),W.default.createElement(Nie,null),W.default.createElement("div",{className:"grid grid-cols-12 xl:grid-cols-6"},W.default.createElement("div",{className:"col-span-3 xl:col-span-1"},W.default.createElement(RFe,null)),W.default.createElement("div",{className:"col-span-2 xl:col-span-1"},W.default.createElement(KPe,null),W.default.createElement(EFe,null)),W.default.createElement("div",{className:"col-span-7 xl:col-span-4"},W.default.createElement("div",null,W.default.createElement(SFe,null)),W.default.createElement(H_,{style:{minHeight:"600px",overflow:"auto"},onMouseLeave:()=>{h.show&&s.closeEmbededMenu()}},d.length>0&&W.default.createElement(AMe,null),W.default.createElement(xLe,null),h.show&&W.default.createElement(Wie,{x:h.position[0],y:h.position[1]},W.default.createElement("div",{className:"flex items-center whitespace-nowrap py-1 px-4 hover:bg-gray-100",onClick:()=>{s.closeEmbededMenu(),s.setShowInsightBoard(!0)}},W.default.createElement("span",{className:"flex-1 pr-2"},p("App.labels.data_interpretation")),W.default.createElement(Wq,{className:"ml-1 w-3 flex-grow-0 flex-shrink-0"}))))))))}),UPe=e=>W.default.createElement(Cie,{keepAlive:e.keepAlive},W.default.createElement(vFe,null,W.default.createElement(JPe,{...e})));Pr.GraphicWalker=UPe,Object.defineProperties(Pr,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
737
737
|
//# sourceMappingURL=graphic-walker.umd.js.map
|